From a4fb55d1649190c60d14d72729114428024df158 Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 22 May 2026 17:13:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/assets/{403-CZfStq7K.js => 403-CYtFk05Q.js} | 2 +- .../admin/assets/{404-C0UR64jA.js => 404-DopFFIyJ.js} | 2 +- ...anel-CHr1S2Xh.js => AppointmentRecordPanel-CNtykthG.js} | 2 +- ...signLogPanel-B1IM06sV.js => AssignLogPanel-nLggvTO6.js} | 2 +- ...og-D7UD5Dzu.js => AssistantWatchCallDialog-4k1wpmUn.js} | 2 +- ...dRecordList-CmZGbTEw.js => BloodRecordList-D8lZsyog.js} | 2 +- ...RecordPanel-DvHFqqux.js => CallRecordPanel-BQekhSi-.js} | 2 +- ...seRecordList-Bo5qAgx7.js => CaseRecordList-Dl_AaWiA.js} | 2 +- .../{DailyMatrix-j3uF_86P.js => DailyMatrix-DyqovtVx.js} | 2 +- ...sTodoList-BFQuq0si.js => DiagnosisTodoList-Be3uAeoQ.js} | 2 +- ...etRecordList-BLgHlUXr.js => DietRecordList-B-dv93xh.js} | 2 +- ...cordList-BNnQ9qPN.js => ExerciseRecordList-CLofvORP.js} | 2 +- ...cordPanel-DpRXSwhQ.js => ImChatRecordPanel-yVs1ANxt.js} | 2 +- ...MessageBubble-BalN4H2y.js => MessageBubble-CApbg15I.js} | 2 +- .../{NoteTimeline-BrIUegAJ.js => NoteTimeline-Vt4S5dzs.js} | 2 +- ...entCaseCard-D3V_iWVf.js => PatientCaseCard-MkaTBq87.js} | 2 +- ...entInfoCard-QbPK3em5.js => PatientInfoCard-D7xW7q4X.js} | 2 +- ...tOrderList-MM0hhqMY.js => PatientOrderList-_Y1o6_3U.js} | 2 +- ...lock-39655xEj.js => RecordingPlaybackBlock-BHZL3zDJ.js} | 2 +- ...Player-CRxrgEoO.js => RecordingVideoPlayer-LJMNYP-k.js} | 2 +- .../{SendPanel-BlCCqkH6.js => SendPanel-Dz5Tcn_r.js} | 2 +- ...ackingMatrix-CwF2zsXr.js => TrackingMatrix-CMAfdIxG.js} | 2 +- ...meline-CnwjkDH5.js => TrackingNoteTimeline-B1cc6OKF.js} | 2 +- ...count-adjust-DuN8Obq4.js => account-adjust-CCxpv-Lh.js} | 2 +- ...adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js} | 2 +- .../{account_cost-81Vk4hme.js => account_cost-CeAkSL4u.js} | 2 +- .../admin/assets/{add-DWErONbW.js => add-DdKFZhja.js} | 2 +- .../assets/{add-nav-iIsXnC4M.js => add-nav-gQxFxSGY.js} | 2 +- ...dd-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js} | 2 +- .../admin/assets/{admin-BAFPFiwc.js => admin-CGNFdyXh.js} | 2 +- .../{appointment-BiJAofxT.js => appointment-CmXNV-jm.js} | 2 +- .../assets/{article-nZc1fauP.js => article-CrrySQF9.js} | 2 +- .../admin/assets/{attr-BUt3xtc0.js => attr-B4x0BxoO.js} | 2 +- .../admin/assets/{attr-BMp9OJ_7.js => attr-Byjux4Bs.js} | 2 +- .../admin/assets/{attr-CWjhF9MF.js => attr-CE0o2vlh.js} | 2 +- .../admin/assets/{attr-Di5MGlZL.js => attr-CO38y5Gg.js} | 2 +- .../admin/assets/{attr-sqjT04Ci.js => attr-CX-O-xtp.js} | 2 +- .../admin/assets/{attr-Ddn-kMdm.js => attr-DDEaRP1C.js} | 2 +- .../admin/assets/{attr-B5zKWZg2.js => attr-DTDA9wc-.js} | 2 +- .../admin/assets/{attr-C9CZlLYE.js => attr-LeDws8D5.js} | 2 +- server/public/admin/assets/attr-setting-BOx1YrNf.js | 1 + server/public/admin/assets/attr-setting-lWLo6dqZ.js | 1 - ...etting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js} | 2 +- .../admin/assets/{attr-DOvELnbs.js => attr-so5YA3Dq.js} | 2 +- ...> attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js} | 2 +- ...> attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js} | 2 +- ...> attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js} | 2 +- ...> attr.vue_vue_type_script_setup_true_lang-CtlICasq.js} | 2 +- ...> attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js} | 2 +- ...> attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js} | 2 +- ...> attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js} | 2 +- .../admin/assets/{auth-DoW7pu27.js => auth-T9dg0X60.js} | 2 +- ...> auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js} | 2 +- ...nce_details-yWq_SgOS.js => balance_details-BV6ycfYV.js} | 2 +- ...ork-wechat-D0G125SZ.js => bind-work-wechat-BJictqnk.js} | 2 +- .../admin/assets/{cache-DE9um1gH.js => cache-Dcdk6Ai4.js} | 2 +- ...ge-password-BqhHJD7K.js => change-password-CmlJDDIV.js} | 2 +- .../admin/assets/{code-C9qHBHs_.js => code-CrOutkes.js} | 2 +- .../{code-preview-C7eIy808.js => code-preview-DrK3tprG.js} | 2 +- ...review.vue_vue_type_script_setup_true_lang-BqShuPMm.js} | 2 +- ...ement-DLiQO_Wt.js => commission-settlement-Dtr52e_y.js} | 2 +- .../assets/{config-CKYP7IWW.js => config-C_Ur91ii.js} | 2 +- .../assets/{consumer-CKmJdevC.js => consumer-CMvrcBkD.js} | 2 +- .../assets/{content-dDIhxzWA.js => content-B7Rh7c78.js} | 2 +- .../assets/{content-BFX6n9yY.js => content-B7hHbbXh.js} | 2 +- .../assets/{content-DPq40ncB.js => content-BLxl9Qo-.js} | 2 +- .../assets/{content-Bq2N97AM.js => content-BRFykSo7.js} | 2 +- .../assets/{content-_IxwYLuN.js => content-By25GabM.js} | 2 +- .../assets/{content-CJ-9B74m.js => content-C08_uobP.js} | 2 +- .../assets/{content-qcqJQjtP.js => content-CllbtYBr.js} | 2 +- .../assets/{content-BvpTtLa-.js => content-DDJw1TZH.js} | 2 +- .../assets/{content-CsKOm_p9.js => content-DKdIp2AF.js} | 2 +- .../assets/{content-DSbMIogU.js => content-DeSOYKs_.js} | 2 +- .../assets/{content-DLHgc5xG.js => content-T4Jkt9D0.js} | 2 +- .../assets/{content-RKc8NsXf.js => content-TNbubsqc.js} | 2 +- .../assets/{content-GmXNQpk1.js => content-bXaLxCis.js} | 2 +- ...ontent.vue_vue_type_script_setup_true_lang-BRjy6hOi.js} | 2 +- ...ontent.vue_vue_type_script_setup_true_lang-Ceh-LD36.js} | 2 +- ...ontent.vue_vue_type_script_setup_true_lang-D3j4saYE.js} | 2 +- ...ontent.vue_vue_type_script_setup_true_lang-DUYSUAuU.js} | 2 +- ...ontent.vue_vue_type_script_setup_true_lang-jnpmExki.js} | 2 +- .../{cost-edit-DGomcZem.js => cost-edit-DOI5rSqz.js} | 2 +- ...t-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js} | 2 +- .../{data-table-D0gd6MAn.js => data-table-Ba_q4X-N.js} | 2 +- ...-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js} | 2 +- .../{decoration-XX4ow94I.js => decoration-BA17WVMJ.js} | 2 +- ...coration-img-A6h02C6l.js => decoration-img-Bn25X5JS.js} | 2 +- ...default_reply-Cpi-HWLu.js => default_reply-B3C3UH9r.js} | 2 +- .../{department-CSUh_x-a.js => department-D5OVad_r.js} | 2 +- .../{dept-tongji-C7zhtC-v.js => dept-tongji-DTpWoRQ0.js} | 2 +- .../assets/{detail-D-NJ8OpW.js => detail-BHArlIAw.js} | 2 +- .../assets/{detail-D9Zbpq2C.js => detail-BIA4i862.js} | 2 +- .../admin/assets/{dict-BN4CTMA_.js => dict-DnKASfBm.js} | 2 +- .../assets/{doctor-B7qEhSpt.js => doctor-BlvK2TEo.js} | 2 +- .../admin/assets/{edit-Dd1FB-QR.js => edit-ASLpBzXk.js} | 2 +- .../admin/assets/{edit-C976a8DV.js => edit-B612o9OQ.js} | 2 +- .../admin/assets/{edit-Cti94u-p.js => edit-B6nlFjfE.js} | 2 +- .../admin/assets/{edit-DUXbzElE.js => edit-BJAaLgsl.js} | 2 +- .../admin/assets/{edit-3qCytcox.js => edit-BS5dUZ6W.js} | 2 +- .../admin/assets/{edit-BUOSeNnT.js => edit-BT12nby0.js} | 2 +- .../admin/assets/{edit-D0pt24OW.js => edit-BVcM1H4r.js} | 2 +- .../admin/assets/{edit-C1B46Nw-.js => edit-BcZRFQne.js} | 2 +- .../admin/assets/{edit-CBTeizmE.js => edit-Bj7qxXPN.js} | 2 +- .../admin/assets/{edit-D4acFfZD.js => edit-BowxPaau.js} | 2 +- .../admin/assets/{edit-Ch21x6RV.js => edit-CWxEoG6s.js} | 2 +- .../admin/assets/{edit-CYXDKzEl.js => edit-C__1lqOK.js} | 2 +- .../admin/assets/{edit-CLcIiMBx.js => edit-D6VzjpSE.js} | 2 +- .../admin/assets/{edit-Bx3YhV3D.js => edit-D_EVoHF9.js} | 2 +- .../admin/assets/{edit-CsfWrQHN.js => edit-DiacXhqZ.js} | 2 +- .../admin/assets/{edit-CABP8P7N.js => edit-ZxXJUj0T.js} | 2 +- .../admin/assets/{edit-8GAClaG6.js => edit-lTigZ_qg.js} | 2 +- .../admin/assets/{edit-lUrEdFe-.js => edit-mXenLf8p.js} | 2 +- .../admin/assets/{edit-Csi7FS4G.js => edit-q_Bxd75_.js} | 2 +- .../admin/assets/{edit-BeTgW91N.js => edit-uu_5ibVr.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-ChNKntck.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js} | 2 +- ...> edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js} | 2 +- ...ipt_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js} | 2 +- .../{environment-8DsK4TTM.js => environment-BUW8BqoD.js} | 2 +- .../admin/assets/{error-Hr3a1e0I.js => error-BqZT2_OW.js} | 2 +- .../admin/assets/{fans-DpM3qtuW.js => fans-CmdPlHB_.js} | 2 +- .../admin/assets/{file-dC1LMm1W.js => file-B0kKUfF_.js} | 2 +- .../admin/assets/{file-BLRQstYf.js => file-TV1Qmc9P.js} | 2 +- .../assets/{filing-D7ZQBdrZ.js => filing-BobnA8KA.js} | 2 +- .../assets/{finance-L1-WPbJt.js => finance-CuL8jhJS.js} | 2 +- .../{follow_reply-DnBCK_Nn.js => follow_reply-BpsbGJKg.js} | 2 +- ...footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js} | 2 +- .../assets/{guahao-BQbGoXDp.js => guahao-BYsrTfrt.js} | 2 +- .../public/admin/assets/{h5-lML7Vln5.js => h5-CmvmpHND.js} | 2 +- .../public/admin/assets/{h5-D9iauX-p.js => h5-Cnu0poEu.js} | 2 +- .../admin/assets/{icon-D8Ev5pEr.js => icon-B9pYwGq6.js} | 2 +- .../admin/assets/{index-Nt5zMHcc.js => index--WnM67ZH.js} | 4 ++-- .../admin/assets/{index-CtbZopo2.js => index--WxeEniq.js} | 2 +- .../admin/assets/{index-CHZQEiCU.js => index-2TepIesZ.js} | 2 +- .../admin/assets/{index-DmXb6F6C.js => index-3Xy1OQb4.js} | 4 ++-- .../admin/assets/{index-By_gWTUA.js => index-B64L9SAA.js} | 2 +- .../admin/assets/{index-D8ldWVxH.js => index-BFc25KGY.js} | 2 +- .../admin/assets/{index-BUOQPh2G.js => index-BHiaYJeM.js} | 2 +- .../admin/assets/{index-BBnPZgeu.js => index-BV_bClbl.js} | 4 ++-- .../admin/assets/{index-BdMgSRB8.js => index-BgP7VahB.js} | 2 +- .../admin/assets/{index-B1LIHnDq.js => index-BilNp2wo.js} | 2 +- .../admin/assets/{index-D18gAY1e.js => index-BtiRSS_3.js} | 2 +- .../admin/assets/{index-gTDcOAp2.js => index-C11LcA3l.js} | 2 +- .../admin/assets/{index-nT7Z051Q.js => index-C3w0jYsZ.js} | 2 +- .../admin/assets/{index-5vSbbrqK.js => index-C5tKSXIA.js} | 2 +- .../admin/assets/{index-DMnmuOhU.js => index-C6BRrxYh.js} | 2 +- .../admin/assets/{index-CQ2KSFsf.js => index-CBm-WmPc.js} | 2 +- .../admin/assets/{index-CPlRrjKY.js => index-CEfu2Pd8.js} | 4 ++-- .../admin/assets/{index--GZeyamQ.js => index-CH2au-Zf.js} | 2 +- .../admin/assets/{index-COkWbhdj.js => index-CSxkUFTY.js} | 2 +- .../admin/assets/{index-0_hM_7FR.js => index-CazqMJ8f.js} | 2 +- .../admin/assets/{index-CcVG7h8J.js => index-Cc-ZnmoQ.js} | 2 +- .../admin/assets/{index-DZEYWGUh.js => index-Ci3dXrw6.js} | 2 +- .../admin/assets/{index-CEGMPJ75.js => index-Cj72c8kg.js} | 2 +- .../admin/assets/{index-4jHuPsCG.js => index-Cs5gux7p.js} | 2 +- .../admin/assets/{index-C7ThElWL.js => index-D1BQ-z9J.js} | 2 +- .../admin/assets/{index-BO7ItocT.js => index-D2g_xmnm.js} | 2 +- .../admin/assets/{index-B81hG-qX.js => index-DIRz-m-f.js} | 2 +- .../admin/assets/{index-B4O8X2AF.js => index-DIUEBs-A.js} | 4 ++-- .../admin/assets/{index-C4_15yk8.js => index-DN0U2fnj.js} | 2 +- .../admin/assets/{index-r0I7TYnB.js => index-DOn0iTI1.js} | 2 +- .../admin/assets/{index-Dg2D7IT3.js => index-DPG02AxB.js} | 2 +- .../admin/assets/{index-CWwxxnGy.js => index-DV0DYErj.js} | 2 +- .../admin/assets/{index-afeGV-gc.js => index-DgkrquIz.js} | 2 +- .../admin/assets/{index-C_rFbfoa.js => index-DnJy5Y47.js} | 2 +- .../admin/assets/{index-SaLZEAlp.js => index-Dq58HRUS.js} | 2 +- .../admin/assets/{index-Cu3QQu7Q.js => index-DzLSMUVP.js} | 2 +- .../admin/assets/{index-Bde7244p.js => index-FUMZSHyo.js} | 2 +- .../admin/assets/{index-3-XRg3iQ.js => index-GlwehVLz.js} | 2 +- .../admin/assets/{index-tRldup3E.js => index-He0eWbxD.js} | 2 +- .../admin/assets/{index-LfmReHw1.js => index-IlWlPkOx.js} | 2 +- .../admin/assets/{index-BQY2-_X1.js => index-SocYjCJ1.js} | 2 +- .../admin/assets/{index-BLZ4p99f.js => index-anE0XvOM.js} | 2 +- .../admin/assets/{index-CKfzECuY.js => index-clkQE9Cl.js} | 2 +- .../admin/assets/{index-DbiC_Mh1.js => index-j275bAO5.js} | 2 +- .../admin/assets/{index-Do_lL19E.js => index-mMzAJGGu.js} | 2 +- ... index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js} | 2 +- ...s => index.vue_vue_type_style_index_0_lang-Dbv7WGME.js} | 2 +- .../assets/{index_h5-CK75hzdW.js => index_h5-CXWkZooV.js} | 4 ++-- .../{information-CItsuNNR.js => information-Dz_HQSyz.js} | 2 +- .../assets/{journal-COBt03jH.js => journal-B6J_9bs1.js} | 2 +- ...keyword_reply-CFhQ_k7m.js => keyword_reply-BLQGh5QI.js} | 2 +- .../admin/assets/{link-BT-af6Iu.js => link-CF-Ql-TB.js} | 2 +- .../admin/assets/{list-BtS9kEfd.js => list-ClE78U4n.js} | 2 +- .../admin/assets/{list-VIYlBs2m.js => list-Xx7Iy3U_.js} | 4 ++-- .../admin/assets/{login-Caw1ZFnq.js => login-BK5Sfx9J.js} | 2 +- ...gin_register-aQkOmHjq.js => login_register-FZoA6yWr.js} | 2 +- .../assets/{medicine-9zqpvZKs.js => medicine-CEyDY1rx.js} | 2 +- .../assets/{medicine-D4btWglq.js => medicine-KRcHi5G1.js} | 2 +- .../admin/assets/{menu-BNilEyUZ.js => menu-BtDKpBI_.js} | 2 +- .../admin/assets/{menu-DdD-PeZU.js => menu-DAbI419p.js} | 2 +- .../admin/assets/{menu-Dcx2e7zx.js => menu-Da1RBBpC.js} | 2 +- .../assets/{menu-set-Cn6nqNTs.js => menu-set-H0F6w48t.js} | 2 +- ...nu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js} | 2 +- .../assets/{message-DMZbcMZ3.js => message-E3FypG9J.js} | 2 +- .../{mobile-style-DMyb-tD1.js => mobile-style-4_UCVEqX.js} | 2 +- ...-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js} | 2 +- .../assets/{mubiao-BtoeHWr-.js => mubiao-KkfmSA0m.js} | 2 +- ...-dept-card-A7mXprh1.js => mubiao-dept-card-CbtPJAzl.js} | 2 +- ...-dept-node-CdPbyfnv.js => mubiao-dept-node-B-dTX5VO.js} | 2 +- .../assets/{oa-attr-DRhy74HO.js => oa-attr-Ct9DaDF9.js} | 2 +- .../{oa-menu-form-CRceKfGE.js => oa-menu-form-BVjP1ZgE.js} | 2 +- ...form-edit-D78PgDzI.js => oa-menu-form-edit-PrVRlCrB.js} | 2 +- ...m-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js} | 2 +- ...u-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js} | 2 +- .../assets/{oa-phone-CwkrkTuR.js => oa-phone-Bv_M1dC8.js} | 2 +- .../{open_setting-BvP5LkON.js => open_setting-CLvZN6m0.js} | 2 +- .../admin/assets/{order-6mkZv6ss.js => order-BqE0MdhI.js} | 2 +- .../{order_list-DMkGC0-h.js => order_list-BN8dBg8z.js} | 4 ++-- ...order_list_h5-C8MQ7JcZ.js => order_list_h5-Cw3qXm8_.js} | 4 ++-- .../assets/{overflow-Cd0bVY6j.js => overflow-Do8O2bq9.js} | 2 +- .../assets/{paiban-Bg121yd-.js => paiban-BEVhjp7u.js} | 2 +- .../assets/{patient-BKtZKzsB.js => patient-BNjmKCvA.js} | 2 +- .../{patient-call-DK0sKUyA.js => patient-call-B5zRPl8O.js} | 2 +- .../admin/assets/{pay-BdcLIgLH.js => pay-hWrQY7o1.js} | 2 +- .../public/admin/assets/{pc-CWZHJXwU.js => pc-DCi3Nq16.js} | 2 +- .../{pc_details-NldMsGZ1.js => pc_details-CR93pqsw.js} | 2 +- .../admin/assets/{perm-DkIPMPyD.js => perm-CLhA0PJe.js} | 2 +- .../assets/{picker-W7EVmvPL.js => picker-Btcf59sz.js} | 2 +- .../assets/{picker-cSgp8cEl.js => picker-DzCeqD7m.js} | 2 +- ...picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js} | 2 +- .../admin/assets/{post-CjhbCF7F.js => post-D694zeqo.js} | 2 +- ...-drawer-BfdBV89J.js => prescription-drawer-CemRD-dp.js} | 2 +- .../assets/{preview-Bxm-pT3K.js => preview-gBcw24wE.js} | 2 +- .../{preview-pc-CFpdKBXT.js => preview-pc-C8bP-zog.js} | 2 +- .../assets/{progress-DiEvcC7c.js => progress-Dk3GB0SN.js} | 2 +- .../assets/{protocol-54IflrUs.js => protocol-BloD-dLt.js} | 2 +- .../admin/assets/{qywx-D1l8A6TI.js => qywx-CDt9a_vU.js} | 2 +- .../assets/{readonly-CR0ge2o6.js => readonly-hz28EqXX.js} | 2 +- ...arge_record-B_1vUb_E.js => recharge_record-mWDEyCxs.js} | 2 +- .../{refund-log-Cq6vU47n.js => refund-log-DeGBbgar.js} | 2 +- ...nd-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js} | 2 +- ...refund_record-C_Z4S92m.js => refund_record-3X79bN9_.js} | 2 +- ...relations-add-QP6EItjc.js => relations-add-DIyG8vSg.js} | 2 +- ...ns-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js} | 2 +- .../{rich_text-DCadQVqu.js => rich_text-BnBjFfGI.js} | 2 +- .../admin/assets/{role-Dce31LXP.js => role-BvkAFvOK.js} | 2 +- .../assets/{roster-U-rezV1y.js => roster-Clo3lqg1.js} | 2 +- ...nput_stats-DMYot1WP.js => self_input_stats-C4Lr_Fd7.js} | 2 +- .../assets/{setting-BPZ7dWvp.js => setting-I73bbSku.js} | 2 +- .../admin/assets/{setup-BM_sBJNd.js => setup-BJisEyDs.js} | 2 +- .../{statistics-CKJuOq2I.js => statistics-CCqrf9HY.js} | 2 +- .../admin/assets/{stats-BCrGkFwR.js => stats-CxdEJGSN.js} | 2 +- .../admin/assets/{style--mOAeHu_.js => style-C7rdSz_0.js} | 2 +- .../assets/{tabbar-CJ50lDht.js => tabbar-BCvE1VW6.js} | 2 +- .../admin/assets/{tcm-DCW3HTOw.js => tcm-DzAQc_oE.js} | 2 +- .../{theme-picker-BmoSb7ra.js => theme-picker-6MJIe8r7.js} | 2 +- .../assets/{tongji-B6VJLvKp.js => tongji-C0pqWBk3.js} | 2 +- .../assets/{upload-3f7pufJE.js => upload-E1VfHXnC.js} | 2 +- ...eDictOptions-CT8hbU1b.js => useDictOptions-lSbSoycG.js} | 2 +- ...tions-6f8jf4SK.js => useMediaSourceOptions-D92lCyJY.js} | 2 +- .../{useMenuOa-pZ-sxT1M.js => useMenuOa-_Y0P7idX.js} | 2 +- .../admin/assets/{user-BJIsEXJM.js => user-sO2W9aq7.js} | 2 +- .../admin/assets/{weapp-Df3yaGBN.js => weapp-CSekzxlI.js} | 2 +- .../admin/assets/{weapp-BTxqP8mz.js => weapp-zf27P1tb.js} | 2 +- .../assets/{website-D92RBx7y.js => website-HcLkfBpP.js} | 2 +- .../admin/assets/{wx_oa-BOc4Brkk.js => wx_oa-CN0ZaZdj.js} | 2 +- server/public/admin/assets/yeji-4vqdUkps.js | 5 ----- server/public/admin/assets/yeji-68hw5EWU.css | 1 - server/public/admin/assets/yeji-BVbYWtU4.css | 1 + server/public/admin/assets/yeji-Wv5859YQ.js | 7 +++++++ .../{yeji-edit-DxTLAHjt.js => yeji-edit-D6URky3V.js} | 2 +- ...i-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js} | 2 +- server/public/admin/index.html | 2 +- 271 files changed, 283 insertions(+), 281 deletions(-) rename server/public/admin/assets/{403-CZfStq7K.js => 403-CYtFk05Q.js} (92%) rename server/public/admin/assets/{404-C0UR64jA.js => 404-DopFFIyJ.js} (91%) rename server/public/admin/assets/{AppointmentRecordPanel-CHr1S2Xh.js => AppointmentRecordPanel-CNtykthG.js} (97%) rename server/public/admin/assets/{AssignLogPanel-B1IM06sV.js => AssignLogPanel-nLggvTO6.js} (96%) rename server/public/admin/assets/{AssistantWatchCallDialog-D7UD5Dzu.js => AssistantWatchCallDialog-4k1wpmUn.js} (96%) rename server/public/admin/assets/{BloodRecordList-CmZGbTEw.js => BloodRecordList-D8lZsyog.js} (98%) rename server/public/admin/assets/{CallRecordPanel-DvHFqqux.js => CallRecordPanel-BQekhSi-.js} (92%) rename server/public/admin/assets/{CaseRecordList-Bo5qAgx7.js => CaseRecordList-Dl_AaWiA.js} (96%) rename server/public/admin/assets/{DailyMatrix-j3uF_86P.js => DailyMatrix-DyqovtVx.js} (97%) rename server/public/admin/assets/{DiagnosisTodoList-BFQuq0si.js => DiagnosisTodoList-Be3uAeoQ.js} (97%) rename server/public/admin/assets/{DietRecordList-BLgHlUXr.js => DietRecordList-B-dv93xh.js} (94%) rename server/public/admin/assets/{ExerciseRecordList-BNnQ9qPN.js => ExerciseRecordList-CLofvORP.js} (94%) rename server/public/admin/assets/{ImChatRecordPanel-DpRXSwhQ.js => ImChatRecordPanel-yVs1ANxt.js} (97%) rename server/public/admin/assets/{MessageBubble-BalN4H2y.js => MessageBubble-CApbg15I.js} (97%) rename server/public/admin/assets/{NoteTimeline-BrIUegAJ.js => NoteTimeline-Vt4S5dzs.js} (92%) rename server/public/admin/assets/{PatientCaseCard-D3V_iWVf.js => PatientCaseCard-MkaTBq87.js} (99%) rename server/public/admin/assets/{PatientInfoCard-QbPK3em5.js => PatientInfoCard-D7xW7q4X.js} (97%) rename server/public/admin/assets/{PatientOrderList-MM0hhqMY.js => PatientOrderList-_Y1o6_3U.js} (99%) rename server/public/admin/assets/{RecordingPlaybackBlock-39655xEj.js => RecordingPlaybackBlock-BHZL3zDJ.js} (96%) rename server/public/admin/assets/{RecordingVideoPlayer-CRxrgEoO.js => RecordingVideoPlayer-LJMNYP-k.js} (97%) rename server/public/admin/assets/{SendPanel-BlCCqkH6.js => SendPanel-Dz5Tcn_r.js} (98%) rename server/public/admin/assets/{TrackingMatrix-CwF2zsXr.js => TrackingMatrix-CMAfdIxG.js} (98%) rename server/public/admin/assets/{TrackingNoteTimeline-CnwjkDH5.js => TrackingNoteTimeline-B1cc6OKF.js} (96%) rename server/public/admin/assets/{account-adjust-DuN8Obq4.js => account-adjust-CCxpv-Lh.js} (86%) rename server/public/admin/assets/{account-adjust.vue_vue_type_script_setup_true_lang-Be9YVff0.js => account-adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js} (94%) rename server/public/admin/assets/{account_cost-81Vk4hme.js => account_cost-CeAkSL4u.js} (94%) rename server/public/admin/assets/{add-DWErONbW.js => add-DdKFZhja.js} (99%) rename server/public/admin/assets/{add-nav-iIsXnC4M.js => add-nav-gQxFxSGY.js} (70%) rename server/public/admin/assets/{add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js => add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js} (93%) rename server/public/admin/assets/{admin-BAFPFiwc.js => admin-CGNFdyXh.js} (84%) rename server/public/admin/assets/{appointment-BiJAofxT.js => appointment-CmXNV-jm.js} (98%) rename server/public/admin/assets/{article-nZc1fauP.js => article-CrrySQF9.js} (93%) rename server/public/admin/assets/{attr-BUt3xtc0.js => attr-B4x0BxoO.js} (67%) rename server/public/admin/assets/{attr-BMp9OJ_7.js => attr-Byjux4Bs.js} (73%) rename server/public/admin/assets/{attr-CWjhF9MF.js => attr-CE0o2vlh.js} (72%) rename server/public/admin/assets/{attr-Di5MGlZL.js => attr-CO38y5Gg.js} (67%) rename server/public/admin/assets/{attr-sqjT04Ci.js => attr-CX-O-xtp.js} (68%) rename server/public/admin/assets/{attr-Ddn-kMdm.js => attr-DDEaRP1C.js} (68%) rename server/public/admin/assets/{attr-B5zKWZg2.js => attr-DTDA9wc-.js} (80%) rename server/public/admin/assets/{attr-C9CZlLYE.js => attr-LeDws8D5.js} (92%) create mode 100644 server/public/admin/assets/attr-setting-BOx1YrNf.js delete mode 100644 server/public/admin/assets/attr-setting-lWLo6dqZ.js rename server/public/admin/assets/{attr-setting.vue_vue_type_script_setup_true_lang-De0qg73C.js => attr-setting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js} (94%) rename server/public/admin/assets/{attr-DOvELnbs.js => attr-so5YA3Dq.js} (68%) rename server/public/admin/assets/{attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js => attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js} (93%) rename server/public/admin/assets/{attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js => attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js} (96%) rename server/public/admin/assets/{attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js => attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js} (95%) rename server/public/admin/assets/{attr.vue_vue_type_script_setup_true_lang-Bh0NQXfx.js => attr.vue_vue_type_script_setup_true_lang-CtlICasq.js} (96%) rename server/public/admin/assets/{attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js => attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js} (96%) rename server/public/admin/assets/{attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js => attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js} (93%) rename server/public/admin/assets/{attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js => attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js} (97%) rename server/public/admin/assets/{auth-DoW7pu27.js => auth-T9dg0X60.js} (75%) rename server/public/admin/assets/{auth.vue_vue_type_script_setup_true_lang-DiRwQHdy.js => auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js} (92%) rename server/public/admin/assets/{balance_details-yWq_SgOS.js => balance_details-BV6ycfYV.js} (95%) rename server/public/admin/assets/{bind-work-wechat-D0G125SZ.js => bind-work-wechat-BJictqnk.js} (97%) rename server/public/admin/assets/{cache-DE9um1gH.js => cache-Dcdk6Ai4.js} (97%) rename server/public/admin/assets/{change-password-BqhHJD7K.js => change-password-CmlJDDIV.js} (96%) rename server/public/admin/assets/{code-C9qHBHs_.js => code-CrOutkes.js} (92%) rename server/public/admin/assets/{code-preview-C7eIy808.js => code-preview-DrK3tprG.js} (85%) rename server/public/admin/assets/{code-preview.vue_vue_type_script_setup_true_lang-Dpbw1DAf.js => code-preview.vue_vue_type_script_setup_true_lang-BqShuPMm.js} (95%) rename server/public/admin/assets/{commission-settlement-DLiQO_Wt.js => commission-settlement-Dtr52e_y.js} (99%) rename server/public/admin/assets/{config-CKYP7IWW.js => config-C_Ur91ii.js} (94%) rename server/public/admin/assets/{consumer-CKmJdevC.js => consumer-CMvrcBkD.js} (81%) rename server/public/admin/assets/{content-dDIhxzWA.js => content-B7Rh7c78.js} (90%) rename server/public/admin/assets/{content-BFX6n9yY.js => content-B7hHbbXh.js} (70%) rename server/public/admin/assets/{content-DPq40ncB.js => content-BLxl9Qo-.js} (96%) rename server/public/admin/assets/{content-Bq2N97AM.js => content-BRFykSo7.js} (95%) rename server/public/admin/assets/{content-_IxwYLuN.js => content-By25GabM.js} (96%) rename server/public/admin/assets/{content-CJ-9B74m.js => content-C08_uobP.js} (93%) rename server/public/admin/assets/{content-qcqJQjtP.js => content-CllbtYBr.js} (90%) rename server/public/admin/assets/{content-BvpTtLa-.js => content-DDJw1TZH.js} (95%) rename server/public/admin/assets/{content-CsKOm_p9.js => content-DKdIp2AF.js} (90%) rename server/public/admin/assets/{content-DSbMIogU.js => content-DeSOYKs_.js} (95%) rename server/public/admin/assets/{content-DLHgc5xG.js => content-T4Jkt9D0.js} (94%) rename server/public/admin/assets/{content-RKc8NsXf.js => content-TNbubsqc.js} (95%) rename server/public/admin/assets/{content-GmXNQpk1.js => content-bXaLxCis.js} (90%) rename server/public/admin/assets/{content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js => content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js} (89%) rename server/public/admin/assets/{content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js => content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js} (91%) rename server/public/admin/assets/{content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js => content.vue_vue_type_script_setup_true_lang-D3j4saYE.js} (91%) rename server/public/admin/assets/{content.vue_vue_type_script_setup_true_lang-BPonashY.js => content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js} (90%) rename server/public/admin/assets/{content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js => content.vue_vue_type_script_setup_true_lang-jnpmExki.js} (93%) rename server/public/admin/assets/{cost-edit-DGomcZem.js => cost-edit-DOI5rSqz.js} (87%) rename server/public/admin/assets/{cost-edit.vue_vue_type_script_setup_true_lang-Dqx_6dkh.js => cost-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js} (95%) rename server/public/admin/assets/{data-table-D0gd6MAn.js => data-table-Ba_q4X-N.js} (83%) rename server/public/admin/assets/{data-table.vue_vue_type_script_setup_true_lang-BF_waQWh.js => data-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js} (92%) rename server/public/admin/assets/{decoration-XX4ow94I.js => decoration-BA17WVMJ.js} (87%) rename server/public/admin/assets/{decoration-img-A6h02C6l.js => decoration-img-Bn25X5JS.js} (96%) rename server/public/admin/assets/{default_reply-Cpi-HWLu.js => default_reply-B3C3UH9r.js} (93%) rename server/public/admin/assets/{department-CSUh_x-a.js => department-D5OVad_r.js} (86%) rename server/public/admin/assets/{dept-tongji-C7zhtC-v.js => dept-tongji-DTpWoRQ0.js} (97%) rename server/public/admin/assets/{detail-D-NJ8OpW.js => detail-BHArlIAw.js} (94%) rename server/public/admin/assets/{detail-D9Zbpq2C.js => detail-BIA4i862.js} (97%) rename server/public/admin/assets/{dict-BN4CTMA_.js => dict-DnKASfBm.js} (92%) rename server/public/admin/assets/{doctor-B7qEhSpt.js => doctor-BlvK2TEo.js} (94%) rename server/public/admin/assets/{edit-Dd1FB-QR.js => edit-ASLpBzXk.js} (84%) rename server/public/admin/assets/{edit-C976a8DV.js => edit-B612o9OQ.js} (97%) rename server/public/admin/assets/{edit-Cti94u-p.js => edit-B6nlFjfE.js} (96%) rename server/public/admin/assets/{edit-DUXbzElE.js => edit-BJAaLgsl.js} (97%) rename server/public/admin/assets/{edit-3qCytcox.js => edit-BS5dUZ6W.js} (95%) rename server/public/admin/assets/{edit-BUOSeNnT.js => edit-BT12nby0.js} (77%) rename server/public/admin/assets/{edit-D0pt24OW.js => edit-BVcM1H4r.js} (74%) rename server/public/admin/assets/{edit-C1B46Nw-.js => edit-BcZRFQne.js} (83%) rename server/public/admin/assets/{edit-CBTeizmE.js => edit-Bj7qxXPN.js} (90%) rename server/public/admin/assets/{edit-D4acFfZD.js => edit-BowxPaau.js} (95%) rename server/public/admin/assets/{edit-Ch21x6RV.js => edit-CWxEoG6s.js} (77%) rename server/public/admin/assets/{edit-CYXDKzEl.js => edit-C__1lqOK.js} (94%) rename server/public/admin/assets/{edit-CLcIiMBx.js => edit-D6VzjpSE.js} (77%) rename server/public/admin/assets/{edit-Bx3YhV3D.js => edit-D_EVoHF9.js} (77%) rename server/public/admin/assets/{edit-CsfWrQHN.js => edit-DiacXhqZ.js} (96%) rename server/public/admin/assets/{edit-CABP8P7N.js => edit-ZxXJUj0T.js} (77%) rename server/public/admin/assets/{edit-8GAClaG6.js => edit-lTigZ_qg.js} (82%) rename server/public/admin/assets/{edit-lUrEdFe-.js => edit-mXenLf8p.js} (97%) rename server/public/admin/assets/{edit-Csi7FS4G.js => edit-q_Bxd75_.js} (65%) rename server/public/admin/assets/{edit-BeTgW91N.js => edit-uu_5ibVr.js} (77%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js => edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js} (98%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-mezlrvEI.js => edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js} (94%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-CitHzUnN.js => edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js} (96%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-DXBj1QMo.js => edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js} (95%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-CeopjxTy.js => edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js} (95%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-D0_v-7QH.js => edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js} (94%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-V9yb54Tt.js => edit.vue_vue_type_script_setup_true_lang-ChNKntck.js} (93%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-C66WHFUi.js => edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js} (96%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-Csv2cIsH.js => edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js} (95%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_lang-CCRvmlU6.js => edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js} (96%) rename server/public/admin/assets/{edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-B1Ws5Kwo.js => edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js} (93%) rename server/public/admin/assets/{environment-8DsK4TTM.js => environment-BUW8BqoD.js} (97%) rename server/public/admin/assets/{error-Hr3a1e0I.js => error-BqZT2_OW.js} (96%) rename server/public/admin/assets/{fans-DpM3qtuW.js => fans-CmdPlHB_.js} (89%) rename server/public/admin/assets/{file-dC1LMm1W.js => file-B0kKUfF_.js} (95%) rename server/public/admin/assets/{file-BLRQstYf.js => file-TV1Qmc9P.js} (90%) rename server/public/admin/assets/{filing-D7ZQBdrZ.js => filing-BobnA8KA.js} (94%) rename server/public/admin/assets/{finance-L1-WPbJt.js => finance-CuL8jhJS.js} (95%) rename server/public/admin/assets/{follow_reply-DnBCK_Nn.js => follow_reply-BpsbGJKg.js} (93%) rename server/public/admin/assets/{footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js => footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js} (89%) rename server/public/admin/assets/{guahao-BQbGoXDp.js => guahao-BYsrTfrt.js} (98%) rename server/public/admin/assets/{h5-lML7Vln5.js => h5-CmvmpHND.js} (99%) rename server/public/admin/assets/{h5-D9iauX-p.js => h5-Cnu0poEu.js} (96%) rename server/public/admin/assets/{icon-D8Ev5pEr.js => icon-B9pYwGq6.js} (96%) rename server/public/admin/assets/{index-Nt5zMHcc.js => index--WnM67ZH.js} (91%) rename server/public/admin/assets/{index-CtbZopo2.js => index--WxeEniq.js} (99%) rename server/public/admin/assets/{index-CHZQEiCU.js => index-2TepIesZ.js} (74%) rename server/public/admin/assets/{index-DmXb6F6C.js => index-3Xy1OQb4.js} (87%) rename server/public/admin/assets/{index-By_gWTUA.js => index-B64L9SAA.js} (69%) rename server/public/admin/assets/{index-D8ldWVxH.js => index-BFc25KGY.js} (88%) rename server/public/admin/assets/{index-BUOQPh2G.js => index-BHiaYJeM.js} (87%) rename server/public/admin/assets/{index-BBnPZgeu.js => index-BV_bClbl.js} (98%) rename server/public/admin/assets/{index-BdMgSRB8.js => index-BgP7VahB.js} (93%) rename server/public/admin/assets/{index-B1LIHnDq.js => index-BilNp2wo.js} (94%) rename server/public/admin/assets/{index-D18gAY1e.js => index-BtiRSS_3.js} (90%) rename server/public/admin/assets/{index-gTDcOAp2.js => index-C11LcA3l.js} (98%) rename server/public/admin/assets/{index-nT7Z051Q.js => index-C3w0jYsZ.js} (90%) rename server/public/admin/assets/{index-5vSbbrqK.js => index-C5tKSXIA.js} (99%) rename server/public/admin/assets/{index-DMnmuOhU.js => index-C6BRrxYh.js} (96%) rename server/public/admin/assets/{index-CQ2KSFsf.js => index-CBm-WmPc.js} (87%) rename server/public/admin/assets/{index-CPlRrjKY.js => index-CEfu2Pd8.js} (95%) rename server/public/admin/assets/{index--GZeyamQ.js => index-CH2au-Zf.js} (98%) rename server/public/admin/assets/{index-COkWbhdj.js => index-CSxkUFTY.js} (96%) rename server/public/admin/assets/{index-0_hM_7FR.js => index-CazqMJ8f.js} (93%) rename server/public/admin/assets/{index-CcVG7h8J.js => index-Cc-ZnmoQ.js} (99%) rename server/public/admin/assets/{index-DZEYWGUh.js => index-Ci3dXrw6.js} (99%) rename server/public/admin/assets/{index-CEGMPJ75.js => index-Cj72c8kg.js} (99%) rename server/public/admin/assets/{index-4jHuPsCG.js => index-Cs5gux7p.js} (99%) rename server/public/admin/assets/{index-C7ThElWL.js => index-D1BQ-z9J.js} (97%) rename server/public/admin/assets/{index-BO7ItocT.js => index-D2g_xmnm.js} (94%) rename server/public/admin/assets/{index-B81hG-qX.js => index-DIRz-m-f.js} (98%) rename server/public/admin/assets/{index-B4O8X2AF.js => index-DIUEBs-A.js} (94%) rename server/public/admin/assets/{index-C4_15yk8.js => index-DN0U2fnj.js} (94%) rename server/public/admin/assets/{index-r0I7TYnB.js => index-DOn0iTI1.js} (95%) rename server/public/admin/assets/{index-Dg2D7IT3.js => index-DPG02AxB.js} (94%) rename server/public/admin/assets/{index-CWwxxnGy.js => index-DV0DYErj.js} (95%) rename server/public/admin/assets/{index-afeGV-gc.js => index-DgkrquIz.js} (91%) rename server/public/admin/assets/{index-C_rFbfoa.js => index-DnJy5Y47.js} (97%) rename server/public/admin/assets/{index-SaLZEAlp.js => index-Dq58HRUS.js} (90%) rename server/public/admin/assets/{index-Cu3QQu7Q.js => index-DzLSMUVP.js} (95%) rename server/public/admin/assets/{index-Bde7244p.js => index-FUMZSHyo.js} (94%) rename server/public/admin/assets/{index-3-XRg3iQ.js => index-GlwehVLz.js} (95%) rename server/public/admin/assets/{index-tRldup3E.js => index-He0eWbxD.js} (91%) rename server/public/admin/assets/{index-LfmReHw1.js => index-IlWlPkOx.js} (86%) rename server/public/admin/assets/{index-BQY2-_X1.js => index-SocYjCJ1.js} (97%) rename server/public/admin/assets/{index-BLZ4p99f.js => index-anE0XvOM.js} (96%) rename server/public/admin/assets/{index-CKfzECuY.js => index-clkQE9Cl.js} (95%) rename server/public/admin/assets/{index-DbiC_Mh1.js => index-j275bAO5.js} (86%) rename server/public/admin/assets/{index-Do_lL19E.js => index-mMzAJGGu.js} (94%) rename server/public/admin/assets/{index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js => index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js} (96%) rename server/public/admin/assets/{index.vue_vue_type_style_index_0_lang-BHpNHC57.js => index.vue_vue_type_style_index_0_lang-Dbv7WGME.js} (96%) rename server/public/admin/assets/{index_h5-CK75hzdW.js => index_h5-CXWkZooV.js} (94%) rename server/public/admin/assets/{information-CItsuNNR.js => information-Dz_HQSyz.js} (94%) rename server/public/admin/assets/{journal-COBt03jH.js => journal-B6J_9bs1.js} (96%) rename server/public/admin/assets/{keyword_reply-CFhQ_k7m.js => keyword_reply-BLQGh5QI.js} (94%) rename server/public/admin/assets/{link-BT-af6Iu.js => link-CF-Ql-TB.js} (86%) rename server/public/admin/assets/{list-BtS9kEfd.js => list-ClE78U4n.js} (97%) rename server/public/admin/assets/{list-VIYlBs2m.js => list-Xx7Iy3U_.js} (94%) rename server/public/admin/assets/{login-Caw1ZFnq.js => login-BK5Sfx9J.js} (98%) rename server/public/admin/assets/{login_register-aQkOmHjq.js => login_register-FZoA6yWr.js} (96%) rename server/public/admin/assets/{medicine-9zqpvZKs.js => medicine-CEyDY1rx.js} (98%) rename server/public/admin/assets/{medicine-D4btWglq.js => medicine-KRcHi5G1.js} (81%) rename server/public/admin/assets/{menu-BNilEyUZ.js => menu-BtDKpBI_.js} (79%) rename server/public/admin/assets/{menu-DdD-PeZU.js => menu-DAbI419p.js} (96%) rename server/public/admin/assets/{menu-Dcx2e7zx.js => menu-Da1RBBpC.js} (86%) rename server/public/admin/assets/{menu-set-Cn6nqNTs.js => menu-set-H0F6w48t.js} (70%) rename server/public/admin/assets/{menu-set.vue_vue_type_script_setup_true_lang-QbiHfNG8.js => menu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js} (94%) rename server/public/admin/assets/{message-DMZbcMZ3.js => message-E3FypG9J.js} (87%) rename server/public/admin/assets/{mobile-style-DMyb-tD1.js => mobile-style-4_UCVEqX.js} (91%) rename server/public/admin/assets/{mobile-style.vue_vue_type_script_setup_true_lang-CvaVjBKl.js => mobile-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js} (98%) rename server/public/admin/assets/{mubiao-BtoeHWr-.js => mubiao-KkfmSA0m.js} (97%) rename server/public/admin/assets/{mubiao-dept-card-A7mXprh1.js => mubiao-dept-card-CbtPJAzl.js} (99%) rename server/public/admin/assets/{mubiao-dept-node-CdPbyfnv.js => mubiao-dept-node-B-dTX5VO.js} (98%) rename server/public/admin/assets/{oa-attr-DRhy74HO.js => oa-attr-Ct9DaDF9.js} (86%) rename server/public/admin/assets/{oa-menu-form-CRceKfGE.js => oa-menu-form-BVjP1ZgE.js} (86%) rename server/public/admin/assets/{oa-menu-form-edit-D78PgDzI.js => oa-menu-form-edit-PrVRlCrB.js} (83%) rename server/public/admin/assets/{oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js => oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js} (90%) rename server/public/admin/assets/{oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js => oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js} (97%) rename server/public/admin/assets/{oa-phone-CwkrkTuR.js => oa-phone-Bv_M1dC8.js} (95%) rename server/public/admin/assets/{open_setting-BvP5LkON.js => open_setting-CLvZN6m0.js} (96%) rename server/public/admin/assets/{order-6mkZv6ss.js => order-BqE0MdhI.js} (96%) rename server/public/admin/assets/{order_list-DMkGC0-h.js => order_list-BN8dBg8z.js} (98%) rename server/public/admin/assets/{order_list_h5-C8MQ7JcZ.js => order_list_h5-Cw3qXm8_.js} (98%) rename server/public/admin/assets/{overflow-Cd0bVY6j.js => overflow-Do8O2bq9.js} (96%) rename server/public/admin/assets/{paiban-Bg121yd-.js => paiban-BEVhjp7u.js} (96%) rename server/public/admin/assets/{patient-BKtZKzsB.js => patient-BNjmKCvA.js} (88%) rename server/public/admin/assets/{patient-call-DK0sKUyA.js => patient-call-B5zRPl8O.js} (99%) rename server/public/admin/assets/{pay-BdcLIgLH.js => pay-hWrQY7o1.js} (85%) rename server/public/admin/assets/{pc-CWZHJXwU.js => pc-DCi3Nq16.js} (94%) rename server/public/admin/assets/{pc_details-NldMsGZ1.js => pc_details-CR93pqsw.js} (65%) rename server/public/admin/assets/{perm-DkIPMPyD.js => perm-CLhA0PJe.js} (67%) rename server/public/admin/assets/{picker-W7EVmvPL.js => picker-Btcf59sz.js} (97%) rename server/public/admin/assets/{picker-cSgp8cEl.js => picker-DzCeqD7m.js} (96%) rename server/public/admin/assets/{picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js => picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js} (98%) rename server/public/admin/assets/{post-CjhbCF7F.js => post-D694zeqo.js} (86%) rename server/public/admin/assets/{prescription-drawer-BfdBV89J.js => prescription-drawer-CemRD-dp.js} (98%) rename server/public/admin/assets/{preview-Bxm-pT3K.js => preview-gBcw24wE.js} (70%) rename server/public/admin/assets/{preview-pc-CFpdKBXT.js => preview-pc-C8bP-zog.js} (64%) rename server/public/admin/assets/{progress-DiEvcC7c.js => progress-Dk3GB0SN.js} (98%) rename server/public/admin/assets/{protocol-54IflrUs.js => protocol-BloD-dLt.js} (88%) rename server/public/admin/assets/{qywx-D1l8A6TI.js => qywx-CDt9a_vU.js} (99%) rename server/public/admin/assets/{readonly-CR0ge2o6.js => readonly-hz28EqXX.js} (86%) rename server/public/admin/assets/{recharge_record-B_1vUb_E.js => recharge_record-mWDEyCxs.js} (95%) rename server/public/admin/assets/{refund-log-Cq6vU47n.js => refund-log-DeGBbgar.js} (86%) rename server/public/admin/assets/{refund-log.vue_vue_type_script_setup_true_lang-DNk4F4v6.js => refund-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js} (96%) rename server/public/admin/assets/{refund_record-C_Z4S92m.js => refund_record-3X79bN9_.js} (95%) rename server/public/admin/assets/{relations-add-QP6EItjc.js => relations-add-DIyG8vSg.js} (79%) rename server/public/admin/assets/{relations-add.vue_vue_type_script_setup_true_lang-Dd5lfrrN.js => relations-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js} (93%) rename server/public/admin/assets/{rich_text-DCadQVqu.js => rich_text-BnBjFfGI.js} (82%) rename server/public/admin/assets/{role-Dce31LXP.js => role-BvkAFvOK.js} (83%) rename server/public/admin/assets/{roster-U-rezV1y.js => roster-Clo3lqg1.js} (99%) rename server/public/admin/assets/{self_input_stats-DMYot1WP.js => self_input_stats-C4Lr_Fd7.js} (91%) rename server/public/admin/assets/{setting-BPZ7dWvp.js => setting-I73bbSku.js} (94%) rename server/public/admin/assets/{setup-BM_sBJNd.js => setup-BJisEyDs.js} (84%) rename server/public/admin/assets/{statistics-CKJuOq2I.js => statistics-CCqrf9HY.js} (93%) rename server/public/admin/assets/{stats-BCrGkFwR.js => stats-CxdEJGSN.js} (90%) rename server/public/admin/assets/{style--mOAeHu_.js => style-C7rdSz_0.js} (88%) rename server/public/admin/assets/{tabbar-CJ50lDht.js => tabbar-BCvE1VW6.js} (81%) rename server/public/admin/assets/{tcm-DCW3HTOw.js => tcm-DzAQc_oE.js} (99%) rename server/public/admin/assets/{theme-picker-BmoSb7ra.js => theme-picker-6MJIe8r7.js} (96%) rename server/public/admin/assets/{tongji-B6VJLvKp.js => tongji-C0pqWBk3.js} (97%) rename server/public/admin/assets/{upload-3f7pufJE.js => upload-E1VfHXnC.js} (92%) rename server/public/admin/assets/{useDictOptions-CT8hbU1b.js => useDictOptions-lSbSoycG.js} (84%) rename server/public/admin/assets/{useMediaSourceOptions-6f8jf4SK.js => useMediaSourceOptions-D92lCyJY.js} (90%) rename server/public/admin/assets/{useMenuOa-pZ-sxT1M.js => useMenuOa-_Y0P7idX.js} (92%) rename server/public/admin/assets/{user-BJIsEXJM.js => user-sO2W9aq7.js} (82%) rename server/public/admin/assets/{weapp-Df3yaGBN.js => weapp-CSekzxlI.js} (94%) rename server/public/admin/assets/{weapp-BTxqP8mz.js => weapp-zf27P1tb.js} (68%) rename server/public/admin/assets/{website-D92RBx7y.js => website-HcLkfBpP.js} (91%) rename server/public/admin/assets/{wx_oa-BOc4Brkk.js => wx_oa-CN0ZaZdj.js} (93%) delete mode 100644 server/public/admin/assets/yeji-4vqdUkps.js delete mode 100644 server/public/admin/assets/yeji-68hw5EWU.css create mode 100644 server/public/admin/assets/yeji-BVbYWtU4.css create mode 100644 server/public/admin/assets/yeji-Wv5859YQ.js rename server/public/admin/assets/{yeji-edit-DxTLAHjt.js => yeji-edit-D6URky3V.js} (87%) rename server/public/admin/assets/{yeji-edit.vue_vue_type_script_setup_true_lang-jHpHbOvC.js => yeji-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js} (98%) diff --git a/server/public/admin/assets/403-CZfStq7K.js b/server/public/admin/assets/403-CYtFk05Q.js similarity index 92% rename from server/public/admin/assets/403-CZfStq7K.js rename to server/public/admin/assets/403-CYtFk05Q.js index 3fe4c739..434f5d6e 100644 --- a/server/public/admin/assets/403-CZfStq7K.js +++ b/server/public/admin/assets/403-CYtFk05Q.js @@ -1 +1 @@ -import r from"./error-Hr3a1e0I.js";import{f as p,ak as i,I as m,a as e,aN as s,J as o}from"./@vue/runtime-core-C6bnekPw.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const a="/admin/assets/no_perms-jDxcYpYC.png",n={class:"error404"},W=p({__name:"403",setup(c){return(_,t)=>(i(),m("div",n,[e(r,{code:"403",title:"您的账号权限不足,请联系管理员添加权限!","show-btn":!1},{content:s(()=>[...t[0]||(t[0]=[o("div",{class:"flex justify-center"},[o("img",{class:"w-[150px] h-[150px]",src:a,alt:""})],-1)])]),_:1})]))}});export{W as default}; +import r from"./error-BqZT2_OW.js";import{f as p,ak as i,I as m,a as e,aN as s,J as o}from"./@vue/runtime-core-C6bnekPw.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const a="/admin/assets/no_perms-jDxcYpYC.png",n={class:"error404"},W=p({__name:"403",setup(c){return(_,t)=>(i(),m("div",n,[e(r,{code:"403",title:"您的账号权限不足,请联系管理员添加权限!","show-btn":!1},{content:s(()=>[...t[0]||(t[0]=[o("div",{class:"flex justify-center"},[o("img",{class:"w-[150px] h-[150px]",src:a,alt:""})],-1)])]),_:1})]))}});export{W as default}; diff --git a/server/public/admin/assets/404-C0UR64jA.js b/server/public/admin/assets/404-DopFFIyJ.js similarity index 91% rename from server/public/admin/assets/404-C0UR64jA.js rename to server/public/admin/assets/404-DopFFIyJ.js index fad427cd..a74a5620 100644 --- a/server/public/admin/assets/404-C0UR64jA.js +++ b/server/public/admin/assets/404-DopFFIyJ.js @@ -1 +1 @@ -import o from"./error-Hr3a1e0I.js";import{f as r,ak as t,I as m,a as p}from"./@vue/runtime-core-C6bnekPw.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const i={class:"error404"},T=r({__name:"404",setup(e){return(a,s)=>(t(),m("div",i,[p(o,{code:"404",title:"哎呀,出错了!您访问的页面不存在…"})]))}});export{T as default}; +import o from"./error-BqZT2_OW.js";import{f as r,ak as t,I as m,a as p}from"./@vue/runtime-core-C6bnekPw.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const i={class:"error404"},T=r({__name:"404",setup(e){return(a,s)=>(t(),m("div",i,[p(o,{code:"404",title:"哎呀,出错了!您访问的页面不存在…"})]))}});export{T as default}; diff --git a/server/public/admin/assets/AppointmentRecordPanel-CHr1S2Xh.js b/server/public/admin/assets/AppointmentRecordPanel-CNtykthG.js similarity index 97% rename from server/public/admin/assets/AppointmentRecordPanel-CHr1S2Xh.js rename to server/public/admin/assets/AppointmentRecordPanel-CNtykthG.js index 75223715..6e99737f 100644 --- a/server/public/admin/assets/AppointmentRecordPanel-CHr1S2Xh.js +++ b/server/public/admin/assets/AppointmentRecordPanel-CNtykthG.js @@ -1 +1 @@ -import{M as T,N as z,T as C,L as D}from"./element-plus-DFTWCWyi.js";import{a as B}from"./doctor-B7qEhSpt.js";import{m as E,_ as L}from"./index-Nt5zMHcc.js";import{f as P,w as R,ak as m,I as V,aP as A,G as d,aN as n,a as s,O as r,J as c}from"./@vue/runtime-core-C6bnekPw.js";import{Q as l}from"./@vue/shared-mAAVTE9n.js";import{n as w}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const M={class:"appointment-record-panel"},$={class:"cell-stack"},G={class:"font-medium"},J={class:"text-gray-500 text-sm"},O={class:"cell-stack"},Q={class:"text-gray-500 text-sm"},j=P({__name:"AppointmentRecordPanel",props:{diagnosisId:{}},setup(y,{expose:b}){const u=y,_=w(!1),g=w([]),h=w({});function x(t){return t?String(t).length>=8?String(t).slice(0,5):t:""}function k(t){return t==="morning"?"上午":t==="afternoon"?"下午":t==="all"?"全天":t||"—"}function S(t){const o=t.channel_source??t.channels??"";if(o===""||o===null||o===void 0)return"—";const a=String(o),i=h.value[a]||a,p=String(t.channel_source_detail??"").trim();return p!==""?`${i}(${p})`:i}function I(t){return[...t].sort((o,a)=>{const i=String(o.appointment_date||""),p=String(a.appointment_date||"");if(i!==p)return p.localeCompare(i);const f=String(o.appointment_time||""),e=String(a.appointment_time||"");return f!==e?e.localeCompare(f):Number(a.id||0)-Number(o.id||0)})}const N=async()=>{try{const t=await E({type:"channels"}),o=((t==null?void 0:t.channels)||[]).filter(i=>i.status!==0),a={};for(const i of o)i.value!=null&&(a[String(i.value)]=i.name||String(i.value));h.value=a}catch{h.value={}}},v=async()=>{if(u.diagnosisId){_.value=!0;try{await N();const t=await B({patient_id:u.diagnosisId,diag_scope_relax:1,page_no:1,page_size:500}),o=(t==null?void 0:t.lists)||[];g.value=I(o)}catch(t){console.error(t),g.value=[]}finally{_.value=!1}}};return R(()=>u.diagnosisId,()=>{v()},{immediate:!0}),b({refresh:v}),(t,o)=>{const a=z,i=C,p=T,f=D;return m(),V("div",M,[A((m(),d(p,{data:g.value,border:"",stripe:"","empty-text":"暂无挂号记录"},{default:n(()=>[s(a,{label:"ID",prop:"id",width:"72",align:"center"}),s(a,{label:"状态",width:"100",align:"center"},{default:n(({row:e})=>[s(i,{type:e.status===1?"success":e.status===2?"info":e.status===3?"primary":"danger",size:"small",effect:"light"},{default:n(()=>[r(l(e.status_desc||"—"),1)]),_:2},1032,["type"])]),_:1}),s(a,{label:"患者(挂号人)","min-width":"150"},{default:n(({row:e})=>[c("div",$,[c("span",G,l(e.patient_name||"—"),1),c("span",J,l(e.patient_phone||""),1)])]),_:1}),s(a,{label:"挂号医生",prop:"doctor_name",width:"110","show-overflow-tooltip":""}),s(a,{label:"挂号助理",width:"110","show-overflow-tooltip":""},{default:n(({row:e})=>[r(l(e.assistant_name||"—"),1)]),_:1}),s(a,{label:"预约时间","min-width":"130"},{default:n(({row:e})=>[c("div",O,[c("span",null,l(e.appointment_date||"—"),1),c("span",Q,l(x(e.appointment_time)),1)])]),_:1}),s(a,{label:"时段",width:"80",align:"center"},{default:n(({row:e})=>[r(l(k(e.period)),1)]),_:1}),s(a,{label:"类型",width:"100","show-overflow-tooltip":""},{default:n(({row:e})=>[r(l(e.appointment_type_desc||"—"),1)]),_:1}),s(a,{label:"渠道",width:"110","show-overflow-tooltip":""},{default:n(({row:e})=>[r(l(S(e)),1)]),_:1}),s(a,{label:"确认诊单",width:"92",align:"center"},{default:n(({row:e})=>[e.diagnosis_confirmed?(m(),d(i,{key:0,type:"success",size:"small",effect:"plain"},{default:n(()=>[...o[0]||(o[0]=[r("已确认",-1)])]),_:1})):(m(),d(i,{key:1,type:"warning",size:"small",effect:"plain"},{default:n(()=>[...o[1]||(o[1]=[r("未确认",-1)])]),_:1}))]),_:1}),s(a,{label:"开方",width:"80",align:"center"},{default:n(({row:e})=>[e.has_prescription?(m(),d(i,{key:0,type:"success",size:"small",effect:"plain"},{default:n(()=>[...o[2]||(o[2]=[r("已开方",-1)])]),_:1})):(m(),d(i,{key:1,type:"info",size:"small",effect:"plain"},{default:n(()=>[...o[3]||(o[3]=[r("未开方",-1)])]),_:1}))]),_:1}),s(a,{label:"备注",prop:"remark","min-width":"100","show-overflow-tooltip":""}),s(a,{label:"创建时间",width:"165",prop:"create_time"})]),_:1},8,["data"])),[[f,_.value]])])}}}),Ct=L(j,[["__scopeId","data-v-4de87dfa"]]);export{Ct as default}; +import{M as T,N as z,T as C,L as D}from"./element-plus-DFTWCWyi.js";import{a as B}from"./doctor-BlvK2TEo.js";import{m as E,_ as L}from"./index--WnM67ZH.js";import{f as P,w as R,ak as m,I as V,aP as A,G as d,aN as n,a as s,O as r,J as c}from"./@vue/runtime-core-C6bnekPw.js";import{Q as l}from"./@vue/shared-mAAVTE9n.js";import{n as w}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const M={class:"appointment-record-panel"},$={class:"cell-stack"},G={class:"font-medium"},J={class:"text-gray-500 text-sm"},O={class:"cell-stack"},Q={class:"text-gray-500 text-sm"},j=P({__name:"AppointmentRecordPanel",props:{diagnosisId:{}},setup(y,{expose:b}){const u=y,_=w(!1),g=w([]),h=w({});function x(t){return t?String(t).length>=8?String(t).slice(0,5):t:""}function k(t){return t==="morning"?"上午":t==="afternoon"?"下午":t==="all"?"全天":t||"—"}function S(t){const o=t.channel_source??t.channels??"";if(o===""||o===null||o===void 0)return"—";const a=String(o),i=h.value[a]||a,p=String(t.channel_source_detail??"").trim();return p!==""?`${i}(${p})`:i}function I(t){return[...t].sort((o,a)=>{const i=String(o.appointment_date||""),p=String(a.appointment_date||"");if(i!==p)return p.localeCompare(i);const f=String(o.appointment_time||""),e=String(a.appointment_time||"");return f!==e?e.localeCompare(f):Number(a.id||0)-Number(o.id||0)})}const N=async()=>{try{const t=await E({type:"channels"}),o=((t==null?void 0:t.channels)||[]).filter(i=>i.status!==0),a={};for(const i of o)i.value!=null&&(a[String(i.value)]=i.name||String(i.value));h.value=a}catch{h.value={}}},v=async()=>{if(u.diagnosisId){_.value=!0;try{await N();const t=await B({patient_id:u.diagnosisId,diag_scope_relax:1,page_no:1,page_size:500}),o=(t==null?void 0:t.lists)||[];g.value=I(o)}catch(t){console.error(t),g.value=[]}finally{_.value=!1}}};return R(()=>u.diagnosisId,()=>{v()},{immediate:!0}),b({refresh:v}),(t,o)=>{const a=z,i=C,p=T,f=D;return m(),V("div",M,[A((m(),d(p,{data:g.value,border:"",stripe:"","empty-text":"暂无挂号记录"},{default:n(()=>[s(a,{label:"ID",prop:"id",width:"72",align:"center"}),s(a,{label:"状态",width:"100",align:"center"},{default:n(({row:e})=>[s(i,{type:e.status===1?"success":e.status===2?"info":e.status===3?"primary":"danger",size:"small",effect:"light"},{default:n(()=>[r(l(e.status_desc||"—"),1)]),_:2},1032,["type"])]),_:1}),s(a,{label:"患者(挂号人)","min-width":"150"},{default:n(({row:e})=>[c("div",$,[c("span",G,l(e.patient_name||"—"),1),c("span",J,l(e.patient_phone||""),1)])]),_:1}),s(a,{label:"挂号医生",prop:"doctor_name",width:"110","show-overflow-tooltip":""}),s(a,{label:"挂号助理",width:"110","show-overflow-tooltip":""},{default:n(({row:e})=>[r(l(e.assistant_name||"—"),1)]),_:1}),s(a,{label:"预约时间","min-width":"130"},{default:n(({row:e})=>[c("div",O,[c("span",null,l(e.appointment_date||"—"),1),c("span",Q,l(x(e.appointment_time)),1)])]),_:1}),s(a,{label:"时段",width:"80",align:"center"},{default:n(({row:e})=>[r(l(k(e.period)),1)]),_:1}),s(a,{label:"类型",width:"100","show-overflow-tooltip":""},{default:n(({row:e})=>[r(l(e.appointment_type_desc||"—"),1)]),_:1}),s(a,{label:"渠道",width:"110","show-overflow-tooltip":""},{default:n(({row:e})=>[r(l(S(e)),1)]),_:1}),s(a,{label:"确认诊单",width:"92",align:"center"},{default:n(({row:e})=>[e.diagnosis_confirmed?(m(),d(i,{key:0,type:"success",size:"small",effect:"plain"},{default:n(()=>[...o[0]||(o[0]=[r("已确认",-1)])]),_:1})):(m(),d(i,{key:1,type:"warning",size:"small",effect:"plain"},{default:n(()=>[...o[1]||(o[1]=[r("未确认",-1)])]),_:1}))]),_:1}),s(a,{label:"开方",width:"80",align:"center"},{default:n(({row:e})=>[e.has_prescription?(m(),d(i,{key:0,type:"success",size:"small",effect:"plain"},{default:n(()=>[...o[2]||(o[2]=[r("已开方",-1)])]),_:1})):(m(),d(i,{key:1,type:"info",size:"small",effect:"plain"},{default:n(()=>[...o[3]||(o[3]=[r("未开方",-1)])]),_:1}))]),_:1}),s(a,{label:"备注",prop:"remark","min-width":"100","show-overflow-tooltip":""}),s(a,{label:"创建时间",width:"165",prop:"create_time"})]),_:1},8,["data"])),[[f,_.value]])])}}}),Ct=L(j,[["__scopeId","data-v-4de87dfa"]]);export{Ct as default}; diff --git a/server/public/admin/assets/AssignLogPanel-B1IM06sV.js b/server/public/admin/assets/AssignLogPanel-nLggvTO6.js similarity index 96% rename from server/public/admin/assets/AssignLogPanel-B1IM06sV.js rename to server/public/admin/assets/AssignLogPanel-nLggvTO6.js index 25e865db..08868c70 100644 --- a/server/public/admin/assets/AssignLogPanel-B1IM06sV.js +++ b/server/public/admin/assets/AssignLogPanel-nLggvTO6.js @@ -1 +1 @@ -import{M as x,N as y,r as I,d as C,L as $}from"./element-plus-DFTWCWyi.js";import{W as D}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a3 as L}from"./tcm-DCW3HTOw.js";import{f as T,w as P,ak as g,I as A,aP as E,G as k,aN as n,a,O as m,J as B}from"./@vue/runtime-core-C6bnekPw.js";import{Q as p}from"./@vue/shared-mAAVTE9n.js";import{y as F,n as b}from"./@vue/reactivity-DiY1c2vO.js";import{_ as M}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const V={class:"assign-log-panel"},K=T({__name:"AssignLogPanel",props:{diagnosisId:{}},setup(h,{expose:w}){const c=h,d=b(!1),_=b([]);function v(o){const e=o.related_po_creator_name;if(e!=null&&String(e).trim()!=="")return String(e);const t=Number(o.related_po_creator_id);return Number.isFinite(t)&&t>0?`ID:${t}`:"—"}function N(o){const e=o.related_po_create_time_text;if(e!=null&&String(e).trim()!=="")return String(e);const t=Number(o.related_po_create_time);if(!Number.isFinite(t)||t<=0)return"—";const i=new Date(t*1e3);if(Number.isNaN(i.getTime()))return"—";const r=s=>String(s).padStart(2,"0");return`${i.getFullYear()}-${r(i.getMonth()+1)}-${r(i.getDate())} ${r(i.getHours())}:${r(i.getMinutes())}:${r(i.getSeconds())}`}function u(o,e){const t=e==="from"?"from_assistant_name":"to_assistant_name",i=e==="from"?"from_assistant_id":"to_assistant_id",r=o[t];if(r!=null&&String(r).trim()!==""&&String(r)!=="—")return String(r);const s=Number(o[i]);return Number.isFinite(s)&&s>0?`ID:${s}`:"—"}const f=async()=>{if(c.diagnosisId){d.value=!0;try{const o=await L({id:c.diagnosisId}),e=Array.isArray(o)?o:[];_.value=e}catch(o){console.error(o),_.value=[]}finally{d.value=!1}}};return P(()=>c.diagnosisId,()=>{f()},{immediate:!0}),w({refresh:f}),(o,e)=>{const t=y,i=C,r=I,s=x,S=$;return g(),A("div",V,[E((g(),k(s,{data:_.value,border:"",stripe:"","empty-text":"暂无指派记录"},{default:n(()=>[a(t,{label:"操作时间",width:"175",prop:"create_time_text"}),a(t,{label:"原医助","min-width":"120"},{default:n(({row:l})=>[m(p(u(l,"from")),1)]),_:1}),a(t,{label:"新医助","min-width":"120"},{default:n(({row:l})=>[m(p(u(l,"to")),1)]),_:1}),a(t,{label:"快照·业务单创建人","min-width":"130","show-overflow-tooltip":""},{default:n(({row:l})=>[m(p(v(l)),1)]),_:1}),a(t,{label:"快照·业务单创建时间",width:"190"},{header:n(()=>[e[0]||(e[0]=B("span",null,"快照·业务单创建时间",-1)),a(r,{placement:"top",content:"related_po_create_time:触发本次操作的处方业务订单 create_time;与原文助一致时表示医助创建订单时间"},{default:n(()=>[a(i,{class:"assign-log-col-hint"},{default:n(()=>[a(F(D))]),_:1})]),_:1})]),default:n(({row:l})=>[m(p(N(l)),1)]),_:1}),a(t,{label:"操作人",width:"110",prop:"operator_name"}),a(t,{label:"操作账号",width:"120",prop:"operator_account","show-overflow-tooltip":""}),a(t,{label:"IP",width:"130",prop:"ip","show-overflow-tooltip":""})]),_:1},8,["data"])),[[S,d.value]])])}}}),yt=M(K,[["__scopeId","data-v-5465d5eb"]]);export{yt as default}; +import{M as x,N as y,r as I,d as C,L as $}from"./element-plus-DFTWCWyi.js";import{W as D}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a3 as L}from"./tcm-DzAQc_oE.js";import{f as T,w as P,ak as g,I as A,aP as E,G as k,aN as n,a,O as m,J as B}from"./@vue/runtime-core-C6bnekPw.js";import{Q as p}from"./@vue/shared-mAAVTE9n.js";import{y as F,n as b}from"./@vue/reactivity-DiY1c2vO.js";import{_ as M}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const V={class:"assign-log-panel"},K=T({__name:"AssignLogPanel",props:{diagnosisId:{}},setup(h,{expose:w}){const c=h,d=b(!1),_=b([]);function v(o){const e=o.related_po_creator_name;if(e!=null&&String(e).trim()!=="")return String(e);const t=Number(o.related_po_creator_id);return Number.isFinite(t)&&t>0?`ID:${t}`:"—"}function N(o){const e=o.related_po_create_time_text;if(e!=null&&String(e).trim()!=="")return String(e);const t=Number(o.related_po_create_time);if(!Number.isFinite(t)||t<=0)return"—";const i=new Date(t*1e3);if(Number.isNaN(i.getTime()))return"—";const r=s=>String(s).padStart(2,"0");return`${i.getFullYear()}-${r(i.getMonth()+1)}-${r(i.getDate())} ${r(i.getHours())}:${r(i.getMinutes())}:${r(i.getSeconds())}`}function u(o,e){const t=e==="from"?"from_assistant_name":"to_assistant_name",i=e==="from"?"from_assistant_id":"to_assistant_id",r=o[t];if(r!=null&&String(r).trim()!==""&&String(r)!=="—")return String(r);const s=Number(o[i]);return Number.isFinite(s)&&s>0?`ID:${s}`:"—"}const f=async()=>{if(c.diagnosisId){d.value=!0;try{const o=await L({id:c.diagnosisId}),e=Array.isArray(o)?o:[];_.value=e}catch(o){console.error(o),_.value=[]}finally{d.value=!1}}};return P(()=>c.diagnosisId,()=>{f()},{immediate:!0}),w({refresh:f}),(o,e)=>{const t=y,i=C,r=I,s=x,S=$;return g(),A("div",V,[E((g(),k(s,{data:_.value,border:"",stripe:"","empty-text":"暂无指派记录"},{default:n(()=>[a(t,{label:"操作时间",width:"175",prop:"create_time_text"}),a(t,{label:"原医助","min-width":"120"},{default:n(({row:l})=>[m(p(u(l,"from")),1)]),_:1}),a(t,{label:"新医助","min-width":"120"},{default:n(({row:l})=>[m(p(u(l,"to")),1)]),_:1}),a(t,{label:"快照·业务单创建人","min-width":"130","show-overflow-tooltip":""},{default:n(({row:l})=>[m(p(v(l)),1)]),_:1}),a(t,{label:"快照·业务单创建时间",width:"190"},{header:n(()=>[e[0]||(e[0]=B("span",null,"快照·业务单创建时间",-1)),a(r,{placement:"top",content:"related_po_create_time:触发本次操作的处方业务订单 create_time;与原文助一致时表示医助创建订单时间"},{default:n(()=>[a(i,{class:"assign-log-col-hint"},{default:n(()=>[a(F(D))]),_:1})]),_:1})]),default:n(({row:l})=>[m(p(N(l)),1)]),_:1}),a(t,{label:"操作人",width:"110",prop:"operator_name"}),a(t,{label:"操作账号",width:"120",prop:"operator_account","show-overflow-tooltip":""}),a(t,{label:"IP",width:"130",prop:"ip","show-overflow-tooltip":""})]),_:1},8,["data"])),[[S,d.value]])])}}}),yt=M(K,[["__scopeId","data-v-5465d5eb"]]);export{yt as default}; diff --git a/server/public/admin/assets/AssistantWatchCallDialog-D7UD5Dzu.js b/server/public/admin/assets/AssistantWatchCallDialog-4k1wpmUn.js similarity index 96% rename from server/public/admin/assets/AssistantWatchCallDialog-D7UD5Dzu.js rename to server/public/admin/assets/AssistantWatchCallDialog-4k1wpmUn.js index f83f2248..fd061a4a 100644 --- a/server/public/admin/assets/AssistantWatchCallDialog-D7UD5Dzu.js +++ b/server/public/admin/assets/AssistantWatchCallDialog-4k1wpmUn.js @@ -1 +1 @@ -import{i as b,V as D}from"./element-plus-DFTWCWyi.js";import{q as O}from"./@vue/runtime-dom-DDAG46FW.js";import{T as d}from"./trtc-sdk-v5-D4DbeRqz.js";import{a4 as S}from"./tcm-DCW3HTOw.js";import{f as x,w as W,ak as y,G as P,aN as E,I as _,H as U,aP as $,J as h,a as j,O as H,A as Y}from"./@vue/runtime-core-C6bnekPw.js";import{Q as q}from"./@vue/shared-mAAVTE9n.js";import{n as v}from"./@vue/reactivity-DiY1c2vO.js";import{_ as G}from"./index-Nt5zMHcc.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const J={key:0,class:"watch-state"},K={key:1,class:"watch-state watch-error"},Q=x({__name:"AssistantWatchCallDialog",props:{modelValue:{type:Boolean},diagnosisId:{}},emits:["update:modelValue","closed"],setup(A,{emit:R}){const c=A,w=R,I=Y({get:()=>c.modelValue,set:e=>w("update:modelValue",e)}),s=v(null),l=v(!1),i=v(""),p=v("旁观视频通话"),n=new Map;let o=null,f=0;function g(e,t){return`${e}\0${String(t)}`}function N(e){return e.startsWith("patient_")?"患者":e.startsWith("doctor_")?"医护":e}async function V(e){if(!o||!s.value||e.streamType!==d.TYPE.STREAM_TYPE_MAIN)return;const t=g(e.userId,e.streamType);if(n.has(t))return;const a=document.createElement("div");a.className="watch-tile";const r=document.createElement("div");r.className="watch-tile-cap",r.textContent=N(e.userId);const m=document.createElement("div");m.className="watch-tile-view",a.appendChild(r),a.appendChild(m),s.value.appendChild(a),n.set(t,{wrap:a,userId:e.userId,streamType:e.streamType});try{await o.startRemoteVideo({userId:e.userId,streamType:e.streamType,view:m})}catch(M){console.warn("[AssistantWatchCall] startRemoteVideo",M)}}async function T(e){if(!o)return;const t=g(e.userId,e.streamType),a=n.get(t);if(a){try{await o.stopRemoteVideo({userId:e.userId,streamType:e.streamType})}catch{}a.wrap.remove(),n.delete(t)}}function C(){o&&(o.on(d.EVENT.REMOTE_VIDEO_AVAILABLE,V),o.on(d.EVENT.REMOTE_VIDEO_UNAVAILABLE,T))}function k(){o&&(o.off(d.EVENT.REMOTE_VIDEO_AVAILABLE,V),o.off(d.EVENT.REMOTE_VIDEO_UNAVAILABLE,T))}async function u(){if(k(),o){for(const[,e]of n){try{await o.stopRemoteVideo({userId:e.userId,streamType:e.streamType})}catch{}e.wrap.remove()}n.clear(),s.value&&(s.value.innerHTML="");try{await o.exitRoom()}catch{}try{o.destroy()}catch{}o=null}else n.clear(),s.value&&(s.value.innerHTML="")}async function L(){const e=++f;if(await u(),!c.diagnosisId){i.value="诊单无效";return}l.value=!0,i.value="",p.value="旁观视频通话";try{const t=await S({diagnosis_id:c.diagnosisId});if(e!==f)return;t.patientName&&(p.value=`旁观视频通话 · ${t.patientName}`),o=d.create(),C();const a={sdkAppId:t.sdkAppId,userId:t.userId,userSig:t.userSig,autoReceiveAudio:!0,autoReceiveVideo:!0,...t.roomId!=null&&t.roomId>0?{roomId:t.roomId}:{strRoomId:t.strRoomId}};if(!(t.roomId!=null&&t.roomId>0)&&!t.strRoomId)throw new Error("缺少房间号");if(await o.enterRoom(a),e!==f){await u();return}l.value=!1}catch(t){l.value=!1;let a="进入房间失败";if(typeof t=="string")a=t;else if(t&&typeof t=="object"){const r=t;r.msg?a=String(r.msg):r.message&&(a=String(r.message))}i.value=a,await u()}}function B(){u(),l.value=!1,i.value="",p.value="旁观视频通话",w("closed")}return W(()=>[c.modelValue,c.diagnosisId],([e,t])=>{if(!e){f++,u();return}t>0&&L()}),(e,t)=>{const a=b,r=D;return y(),P(r,{modelValue:I.value,"onUpdate:modelValue":t[1]||(t[1]=m=>I.value=m),title:p.value,width:"760px","destroy-on-close":"","append-to-body":"","close-on-click-modal":!1,class:"assistant-watch-call-dialog",onClosed:B},{footer:E(()=>[t[3]||(t[3]=h("span",{class:"watch-hint"},"仅观看,不会开启摄像头与麦克风",-1)),j(a,{type:"primary",onClick:t[0]||(t[0]=m=>I.value=!1)},{default:E(()=>[...t[2]||(t[2]=[H("离开",-1)])]),_:1})]),default:E(()=>[l.value?(y(),_("div",J,"正在连接房间…")):i.value?(y(),_("div",K,q(i.value),1)):U("",!0),$(h("div",{ref_key:"gridRef",ref:s,class:"watch-grid"},null,512),[[O,!l.value&&!i.value]])]),_:1},8,["modelValue","title"])}}}),Ot=G(Q,[["__scopeId","data-v-7aff665d"]]);export{Ot as default}; +import{i as b,V as D}from"./element-plus-DFTWCWyi.js";import{q as O}from"./@vue/runtime-dom-DDAG46FW.js";import{T as d}from"./trtc-sdk-v5-D4DbeRqz.js";import{a4 as S}from"./tcm-DzAQc_oE.js";import{f as x,w as W,ak as y,G as P,aN as E,I as _,H as U,aP as $,J as h,a as j,O as H,A as Y}from"./@vue/runtime-core-C6bnekPw.js";import{Q as q}from"./@vue/shared-mAAVTE9n.js";import{n as v}from"./@vue/reactivity-DiY1c2vO.js";import{_ as G}from"./index--WnM67ZH.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const J={key:0,class:"watch-state"},K={key:1,class:"watch-state watch-error"},Q=x({__name:"AssistantWatchCallDialog",props:{modelValue:{type:Boolean},diagnosisId:{}},emits:["update:modelValue","closed"],setup(A,{emit:R}){const c=A,w=R,I=Y({get:()=>c.modelValue,set:e=>w("update:modelValue",e)}),s=v(null),l=v(!1),i=v(""),p=v("旁观视频通话"),n=new Map;let o=null,f=0;function g(e,t){return`${e}\0${String(t)}`}function N(e){return e.startsWith("patient_")?"患者":e.startsWith("doctor_")?"医护":e}async function V(e){if(!o||!s.value||e.streamType!==d.TYPE.STREAM_TYPE_MAIN)return;const t=g(e.userId,e.streamType);if(n.has(t))return;const a=document.createElement("div");a.className="watch-tile";const r=document.createElement("div");r.className="watch-tile-cap",r.textContent=N(e.userId);const m=document.createElement("div");m.className="watch-tile-view",a.appendChild(r),a.appendChild(m),s.value.appendChild(a),n.set(t,{wrap:a,userId:e.userId,streamType:e.streamType});try{await o.startRemoteVideo({userId:e.userId,streamType:e.streamType,view:m})}catch(M){console.warn("[AssistantWatchCall] startRemoteVideo",M)}}async function T(e){if(!o)return;const t=g(e.userId,e.streamType),a=n.get(t);if(a){try{await o.stopRemoteVideo({userId:e.userId,streamType:e.streamType})}catch{}a.wrap.remove(),n.delete(t)}}function C(){o&&(o.on(d.EVENT.REMOTE_VIDEO_AVAILABLE,V),o.on(d.EVENT.REMOTE_VIDEO_UNAVAILABLE,T))}function k(){o&&(o.off(d.EVENT.REMOTE_VIDEO_AVAILABLE,V),o.off(d.EVENT.REMOTE_VIDEO_UNAVAILABLE,T))}async function u(){if(k(),o){for(const[,e]of n){try{await o.stopRemoteVideo({userId:e.userId,streamType:e.streamType})}catch{}e.wrap.remove()}n.clear(),s.value&&(s.value.innerHTML="");try{await o.exitRoom()}catch{}try{o.destroy()}catch{}o=null}else n.clear(),s.value&&(s.value.innerHTML="")}async function L(){const e=++f;if(await u(),!c.diagnosisId){i.value="诊单无效";return}l.value=!0,i.value="",p.value="旁观视频通话";try{const t=await S({diagnosis_id:c.diagnosisId});if(e!==f)return;t.patientName&&(p.value=`旁观视频通话 · ${t.patientName}`),o=d.create(),C();const a={sdkAppId:t.sdkAppId,userId:t.userId,userSig:t.userSig,autoReceiveAudio:!0,autoReceiveVideo:!0,...t.roomId!=null&&t.roomId>0?{roomId:t.roomId}:{strRoomId:t.strRoomId}};if(!(t.roomId!=null&&t.roomId>0)&&!t.strRoomId)throw new Error("缺少房间号");if(await o.enterRoom(a),e!==f){await u();return}l.value=!1}catch(t){l.value=!1;let a="进入房间失败";if(typeof t=="string")a=t;else if(t&&typeof t=="object"){const r=t;r.msg?a=String(r.msg):r.message&&(a=String(r.message))}i.value=a,await u()}}function B(){u(),l.value=!1,i.value="",p.value="旁观视频通话",w("closed")}return W(()=>[c.modelValue,c.diagnosisId],([e,t])=>{if(!e){f++,u();return}t>0&&L()}),(e,t)=>{const a=b,r=D;return y(),P(r,{modelValue:I.value,"onUpdate:modelValue":t[1]||(t[1]=m=>I.value=m),title:p.value,width:"760px","destroy-on-close":"","append-to-body":"","close-on-click-modal":!1,class:"assistant-watch-call-dialog",onClosed:B},{footer:E(()=>[t[3]||(t[3]=h("span",{class:"watch-hint"},"仅观看,不会开启摄像头与麦克风",-1)),j(a,{type:"primary",onClick:t[0]||(t[0]=m=>I.value=!1)},{default:E(()=>[...t[2]||(t[2]=[H("离开",-1)])]),_:1})]),default:E(()=>[l.value?(y(),_("div",J,"正在连接房间…")):i.value?(y(),_("div",K,q(i.value),1)):U("",!0),$(h("div",{ref_key:"gridRef",ref:s,class:"watch-grid"},null,512),[[O,!l.value&&!i.value]])]),_:1},8,["modelValue","title"])}}}),Ot=G(Q,[["__scopeId","data-v-7aff665d"]]);export{Ot as default}; diff --git a/server/public/admin/assets/BloodRecordList-CmZGbTEw.js b/server/public/admin/assets/BloodRecordList-D8lZsyog.js similarity index 98% rename from server/public/admin/assets/BloodRecordList-CmZGbTEw.js rename to server/public/admin/assets/BloodRecordList-D8lZsyog.js index 31c4c823..2c90b0f5 100644 --- a/server/public/admin/assets/BloodRecordList-CmZGbTEw.js +++ b/server/public/admin/assets/BloodRecordList-D8lZsyog.js @@ -1 +1 @@ -import{i as ee,Q as le,P as te,a2 as oe,J as ae,N as se,M as re,D as ne,B as de,a3 as ie,h as ue,C as me,V as pe}from"./element-plus-DFTWCWyi.js";import{a5 as _e,a6 as ce,a7 as fe,O as ge,P as be}from"./tcm-DCW3HTOw.js";import{i as k,_ as ye}from"./index-Nt5zMHcc.js";import{i as ve}from"./echarts-CNLwa9wG.js";import{f as Ve,b as he,d as ke,w as Y,ak as V,I as M,J as u,G as O,aN as r,O as p,H as F,a as l,A as we,n as Ie}from"./@vue/runtime-core-C6bnekPw.js";import{n as _,a as A,y as s}from"./@vue/reactivity-DiY1c2vO.js";import{Q as w}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";const xe={class:"blood-record-list"},Ce={class:"mb-4"},Ee={class:"mb-4"},De={key:0},Te={key:1},Ne=5,Ue=Ve({__name:"BloodRecordList",props:{diagnosisId:{type:Number,default:0},patientId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},setup(T){const n=T,P=_([]),c=_(!1),N=_(!1),$=we(()=>a.value.id?"编辑记录":"添加记录"),f=_(7),g=_(null),m=_({dates:[],fasting:[],postprandial_2h:[],other:[]}),U=_();let b=null,R=0;const a=_({id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",record_time:"",fasting_blood_sugar:0,postprandial_blood_sugar:0,other_blood_sugar:0,systolic_pressure:0,diastolic_pressure:0,western_medicine:"",insulin:"",remark:""});function B(o){if(o==null||o==="")return"-";const e=Number(String(o).trim());return!Number.isFinite(e)||e===0?"-":String(e.toFixed(2).replace(/\.?0+$/,""))}const h=async()=>{if(!(!n.diagnosisId&&!n.patientId))try{const o={diagnosis_id:n.diagnosisId,patient_id:n.patientId};f.value===0&&g.value?(o.start_date=Math.floor(g.value[0].getTime()/1e3),o.end_date=Math.floor(g.value[1].getTime()/1e3)):o.days=f.value;const e=await _e(o);m.value=e,L()}catch(o){console.error("获取趋势图数据失败:",o)}},G=()=>{f.value!==0&&(g.value=null),h()},L=()=>{Ie(()=>{setTimeout(()=>{if(!U.value)return;const o=U.value;if(o.clientWidth===0||o.clientHeight===0){RL(),100));return}R=0,b&&b.dispose(),b=ve(o);const e=(H,i)=>{const C=new Map;return H.forEach(d=>{C.set(d.date,d.value)}),i.map(d=>C.get(d)||null)},y=e(m.value.fasting,m.value.dates),v=e(m.value.postprandial_2h,m.value.dates),S=e(m.value.other,m.value.dates),x={tooltip:{trigger:"axis",axisPointer:{type:"cross"}},legend:{data:["空腹血糖","餐后2小时血糖","其他血糖"]},grid:{left:"3%",right:"4%",bottom:"3%",containLabel:!0},xAxis:{type:"category",boundaryGap:!1,data:m.value.dates},yAxis:{type:"value",name:"血糖值 (mmol/L)"},series:[{name:"空腹血糖",type:"line",data:y,smooth:!0,connectNulls:!0},{name:"餐后2小时血糖",type:"line",data:v,smooth:!0,connectNulls:!0},{name:"其他血糖",type:"line",data:S,smooth:!0,connectNulls:!0}]};b.setOption(x),b.resize()},100)})},I=async()=>{if(!(!n.diagnosisId&&!n.patientId))try{const o=await ce({diagnosis_id:n.diagnosisId,patient_id:n.patientId});P.value=o}catch(o){console.error("获取记录失败:",o)}},J=()=>{a.value={id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",record_time:"",fasting_blood_sugar:0,postprandial_blood_sugar:0,other_blood_sugar:0,systolic_pressure:0,diastolic_pressure:0,western_medicine:"",insulin:"",remark:""},c.value=!0},Q=o=>{a.value={...o,fasting_blood_sugar:parseFloat(o.fasting_blood_sugar)||0,postprandial_blood_sugar:parseFloat(o.postprandial_blood_sugar)||0,other_blood_sugar:parseFloat(o.other_blood_sugar)||0,systolic_pressure:parseInt(o.systolic_pressure)||0,diastolic_pressure:parseInt(o.diastolic_pressure)||0},c.value=!0},W=o=>{a.value.other_blood_sugar=o.replace(/[^\d.]/g,"")},q=async o=>{await k.confirm("确定要删除这条记录吗?");try{await fe({id:o.id}),k.msgSuccess("删除成功"),I()}catch(e){console.error("删除失败:",e)}},z=async()=>{if(!a.value.record_date){k.msgWarning("请选择记录日期");return}N.value=!0;try{a.value.id?(await ge(a.value),k.msgSuccess("编辑成功")):(await be(a.value),k.msgSuccess("添加成功")),c.value=!1,I(),h()}catch(o){console.error("提交失败:",o)}finally{N.value=!1}};return he(()=>{setTimeout(()=>{I(),h()},500)}),ke(()=>{b&&b.dispose()}),Y(()=>[n.diagnosisId,n.patientId],()=>{I(),h()}),Y(()=>n.diagnosisId,o=>{o&&setTimeout(()=>{L()},500)}),(o,e)=>{const y=ee,v=le,S=te,x=oe,H=ae,i=se,C=re,d=de,X=ie,E=ue,D=me,j=ne,K=pe;return V(),M("div",xe,[u("div",Ce,[T.readOnly?F("",!0):(V(),O(y,{key:0,type:"primary",onClick:J},{default:r(()=>[...e[14]||(e[14]=[p("添加记录",-1)])]),_:1})),l(S,{modelValue:s(f),"onUpdate:modelValue":e[0]||(e[0]=t=>A(f)?f.value=t:null),onChange:G,class:"ml-2",style:{width:"150px"}},{default:r(()=>[l(v,{label:"最近7天",value:7}),l(v,{label:"最近30天",value:30}),l(v,{label:"最近90天",value:90}),l(v,{label:"最近一年",value:365}),l(v,{label:"自定义",value:0})]),_:1},8,["modelValue"]),s(f)===0?(V(),O(x,{key:1,modelValue:s(g),"onUpdate:modelValue":e[1]||(e[1]=t=>A(g)?g.value=t:null),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",onChange:h,class:"ml-2",style:{width:"300px"}},null,8,["modelValue"])):F("",!0)]),u("div",Ee,[l(H,null,{header:r(()=>[...e[15]||(e[15]=[u("div",{class:"card-header"},[u("span",null,"血糖趋势图")],-1)])]),default:r(()=>[u("div",{ref_key:"chartRef",ref:U,style:{width:"100%",height:"400px"}},null,512)]),_:1})]),l(C,{data:s(P),border:"",style:{width:"100%"}},{default:r(()=>[l(i,{prop:"record_date",label:"记录日期",width:"120"}),l(i,{prop:"record_time",label:"记录时间",width:"100"}),l(i,{label:"空腹血糖(mmol/L)",width:"120"},{default:r(({row:t})=>[p(w(B(t.fasting_blood_sugar)),1)]),_:1}),l(i,{label:"餐后2小时血糖(mmol/L)",width:"150"},{default:r(({row:t})=>[p(w(B(t.postprandial_blood_sugar)),1)]),_:1}),l(i,{label:"其他血糖(mmol/L)",width:"120"},{default:r(({row:t})=>[p(w(B(t.other_blood_sugar)),1)]),_:1}),l(i,{label:"血压(mmHg)",width:"150"},{default:r(({row:t})=>[t.systolic_pressure&&t.diastolic_pressure?(V(),M("span",De,w(t.systolic_pressure)+"/"+w(t.diastolic_pressure),1)):(V(),M("span",Te,"-"))]),_:1}),l(i,{prop:"western_medicine",label:"西药","show-overflow-tooltip":""}),l(i,{prop:"insulin",label:"胰岛素","show-overflow-tooltip":""}),l(i,{prop:"remark",label:"备注","show-overflow-tooltip":""}),T.readOnly?F("",!0):(V(),O(i,{key:0,label:"操作",width:"150",fixed:"right"},{default:r(({row:t})=>[l(y,{link:"",type:"primary",onClick:Z=>Q(t)},{default:r(()=>[...e[16]||(e[16]=[p("编辑",-1)])]),_:1},8,["onClick"]),l(y,{link:"",type:"danger",onClick:Z=>q(t)},{default:r(()=>[...e[17]||(e[17]=[p("删除",-1)])]),_:1},8,["onClick"])]),_:1}))]),_:1},8,["data"]),l(K,{modelValue:s(c),"onUpdate:modelValue":e[13]||(e[13]=t=>A(c)?c.value=t:null),title:s($),width:"600px"},{footer:r(()=>[l(y,{onClick:e[12]||(e[12]=t=>c.value=!1)},{default:r(()=>[...e[23]||(e[23]=[p("取消",-1)])]),_:1}),l(y,{type:"primary",onClick:z,loading:s(N)},{default:r(()=>[...e[24]||(e[24]=[p("确定",-1)])]),_:1},8,["loading"])]),default:r(()=>[l(j,{model:s(a),"label-width":"120px"},{default:r(()=>[l(d,{label:"记录日期",required:""},{default:r(()=>[l(x,{modelValue:s(a).record_date,"onUpdate:modelValue":e[2]||(e[2]=t=>s(a).record_date=t),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),l(d,{label:"记录时间"},{default:r(()=>[l(X,{modelValue:s(a).record_time,"onUpdate:modelValue":e[3]||(e[3]=t=>s(a).record_time=t),placeholder:"选择时间",format:"HH:mm","value-format":"HH:mm",class:"w-full"},null,8,["modelValue"])]),_:1}),l(d,{label:"空腹血糖"},{default:r(()=>[l(E,{modelValue:s(a).fasting_blood_sugar,"onUpdate:modelValue":e[4]||(e[4]=t=>s(a).fasting_blood_sugar=t),precision:2,step:.1,min:0,max:50,placeholder:"请输入空腹血糖"},null,8,["modelValue"]),e[18]||(e[18]=u("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),l(d,{label:"餐后2小时血糖"},{default:r(()=>[l(E,{modelValue:s(a).postprandial_blood_sugar,"onUpdate:modelValue":e[5]||(e[5]=t=>s(a).postprandial_blood_sugar=t),precision:2,step:.1,min:0,max:50,placeholder:"请输入餐后2小时血糖"},null,8,["modelValue"]),e[19]||(e[19]=u("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),l(d,{label:"其他血糖"},{default:r(()=>[l(D,{modelValue:s(a).other_blood_sugar,"onUpdate:modelValue":e[6]||(e[6]=t=>s(a).other_blood_sugar=t),placeholder:"请输入其他血糖",type:"number",maxlength:"10",onInput:W,style:{width:"200px"}},null,8,["modelValue"]),e[20]||(e[20]=u("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),l(d,{label:"收缩压(高压)"},{default:r(()=>[l(E,{modelValue:s(a).systolic_pressure,"onUpdate:modelValue":e[7]||(e[7]=t=>s(a).systolic_pressure=t),min:0,max:300,placeholder:"请输入收缩压"},null,8,["modelValue"]),e[21]||(e[21]=u("span",{class:"ml-2"},"mmHg",-1))]),_:1}),l(d,{label:"舒张压(低压)"},{default:r(()=>[l(E,{modelValue:s(a).diastolic_pressure,"onUpdate:modelValue":e[8]||(e[8]=t=>s(a).diastolic_pressure=t),min:0,max:200,placeholder:"请输入舒张压"},null,8,["modelValue"]),e[22]||(e[22]=u("span",{class:"ml-2"},"mmHg",-1))]),_:1}),l(d,{label:"西药"},{default:r(()=>[l(D,{modelValue:s(a).western_medicine,"onUpdate:modelValue":e[9]||(e[9]=t=>s(a).western_medicine=t),placeholder:"请输入西药"},null,8,["modelValue"])]),_:1}),l(d,{label:"胰岛素"},{default:r(()=>[l(D,{modelValue:s(a).insulin,"onUpdate:modelValue":e[10]||(e[10]=t=>s(a).insulin=t),placeholder:"请输入胰岛素"},null,8,["modelValue"])]),_:1}),l(d,{label:"备注"},{default:r(()=>[l(D,{modelValue:s(a).remark,"onUpdate:modelValue":e[11]||(e[11]=t=>s(a).remark=t),type:"textarea",rows:3,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),gl=ye(Ue,[["__scopeId","data-v-3a187401"]]);export{gl as default}; +import{i as ee,Q as le,P as te,a2 as oe,J as ae,N as se,M as re,D as ne,B as de,a3 as ie,h as ue,C as me,V as pe}from"./element-plus-DFTWCWyi.js";import{a5 as _e,a6 as ce,a7 as fe,O as ge,P as be}from"./tcm-DzAQc_oE.js";import{i as k,_ as ye}from"./index--WnM67ZH.js";import{i as ve}from"./echarts-CNLwa9wG.js";import{f as Ve,b as he,d as ke,w as Y,ak as V,I as M,J as u,G as O,aN as r,O as p,H as F,a as l,A as we,n as Ie}from"./@vue/runtime-core-C6bnekPw.js";import{n as _,a as A,y as s}from"./@vue/reactivity-DiY1c2vO.js";import{Q as w}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";const xe={class:"blood-record-list"},Ce={class:"mb-4"},Ee={class:"mb-4"},De={key:0},Te={key:1},Ne=5,Ue=Ve({__name:"BloodRecordList",props:{diagnosisId:{type:Number,default:0},patientId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},setup(T){const n=T,P=_([]),c=_(!1),N=_(!1),$=we(()=>a.value.id?"编辑记录":"添加记录"),f=_(7),g=_(null),m=_({dates:[],fasting:[],postprandial_2h:[],other:[]}),U=_();let b=null,R=0;const a=_({id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",record_time:"",fasting_blood_sugar:0,postprandial_blood_sugar:0,other_blood_sugar:0,systolic_pressure:0,diastolic_pressure:0,western_medicine:"",insulin:"",remark:""});function B(o){if(o==null||o==="")return"-";const e=Number(String(o).trim());return!Number.isFinite(e)||e===0?"-":String(e.toFixed(2).replace(/\.?0+$/,""))}const h=async()=>{if(!(!n.diagnosisId&&!n.patientId))try{const o={diagnosis_id:n.diagnosisId,patient_id:n.patientId};f.value===0&&g.value?(o.start_date=Math.floor(g.value[0].getTime()/1e3),o.end_date=Math.floor(g.value[1].getTime()/1e3)):o.days=f.value;const e=await _e(o);m.value=e,L()}catch(o){console.error("获取趋势图数据失败:",o)}},G=()=>{f.value!==0&&(g.value=null),h()},L=()=>{Ie(()=>{setTimeout(()=>{if(!U.value)return;const o=U.value;if(o.clientWidth===0||o.clientHeight===0){RL(),100));return}R=0,b&&b.dispose(),b=ve(o);const e=(H,i)=>{const C=new Map;return H.forEach(d=>{C.set(d.date,d.value)}),i.map(d=>C.get(d)||null)},y=e(m.value.fasting,m.value.dates),v=e(m.value.postprandial_2h,m.value.dates),S=e(m.value.other,m.value.dates),x={tooltip:{trigger:"axis",axisPointer:{type:"cross"}},legend:{data:["空腹血糖","餐后2小时血糖","其他血糖"]},grid:{left:"3%",right:"4%",bottom:"3%",containLabel:!0},xAxis:{type:"category",boundaryGap:!1,data:m.value.dates},yAxis:{type:"value",name:"血糖值 (mmol/L)"},series:[{name:"空腹血糖",type:"line",data:y,smooth:!0,connectNulls:!0},{name:"餐后2小时血糖",type:"line",data:v,smooth:!0,connectNulls:!0},{name:"其他血糖",type:"line",data:S,smooth:!0,connectNulls:!0}]};b.setOption(x),b.resize()},100)})},I=async()=>{if(!(!n.diagnosisId&&!n.patientId))try{const o=await ce({diagnosis_id:n.diagnosisId,patient_id:n.patientId});P.value=o}catch(o){console.error("获取记录失败:",o)}},J=()=>{a.value={id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",record_time:"",fasting_blood_sugar:0,postprandial_blood_sugar:0,other_blood_sugar:0,systolic_pressure:0,diastolic_pressure:0,western_medicine:"",insulin:"",remark:""},c.value=!0},Q=o=>{a.value={...o,fasting_blood_sugar:parseFloat(o.fasting_blood_sugar)||0,postprandial_blood_sugar:parseFloat(o.postprandial_blood_sugar)||0,other_blood_sugar:parseFloat(o.other_blood_sugar)||0,systolic_pressure:parseInt(o.systolic_pressure)||0,diastolic_pressure:parseInt(o.diastolic_pressure)||0},c.value=!0},W=o=>{a.value.other_blood_sugar=o.replace(/[^\d.]/g,"")},q=async o=>{await k.confirm("确定要删除这条记录吗?");try{await fe({id:o.id}),k.msgSuccess("删除成功"),I()}catch(e){console.error("删除失败:",e)}},z=async()=>{if(!a.value.record_date){k.msgWarning("请选择记录日期");return}N.value=!0;try{a.value.id?(await ge(a.value),k.msgSuccess("编辑成功")):(await be(a.value),k.msgSuccess("添加成功")),c.value=!1,I(),h()}catch(o){console.error("提交失败:",o)}finally{N.value=!1}};return he(()=>{setTimeout(()=>{I(),h()},500)}),ke(()=>{b&&b.dispose()}),Y(()=>[n.diagnosisId,n.patientId],()=>{I(),h()}),Y(()=>n.diagnosisId,o=>{o&&setTimeout(()=>{L()},500)}),(o,e)=>{const y=ee,v=le,S=te,x=oe,H=ae,i=se,C=re,d=de,X=ie,E=ue,D=me,j=ne,K=pe;return V(),M("div",xe,[u("div",Ce,[T.readOnly?F("",!0):(V(),O(y,{key:0,type:"primary",onClick:J},{default:r(()=>[...e[14]||(e[14]=[p("添加记录",-1)])]),_:1})),l(S,{modelValue:s(f),"onUpdate:modelValue":e[0]||(e[0]=t=>A(f)?f.value=t:null),onChange:G,class:"ml-2",style:{width:"150px"}},{default:r(()=>[l(v,{label:"最近7天",value:7}),l(v,{label:"最近30天",value:30}),l(v,{label:"最近90天",value:90}),l(v,{label:"最近一年",value:365}),l(v,{label:"自定义",value:0})]),_:1},8,["modelValue"]),s(f)===0?(V(),O(x,{key:1,modelValue:s(g),"onUpdate:modelValue":e[1]||(e[1]=t=>A(g)?g.value=t:null),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",onChange:h,class:"ml-2",style:{width:"300px"}},null,8,["modelValue"])):F("",!0)]),u("div",Ee,[l(H,null,{header:r(()=>[...e[15]||(e[15]=[u("div",{class:"card-header"},[u("span",null,"血糖趋势图")],-1)])]),default:r(()=>[u("div",{ref_key:"chartRef",ref:U,style:{width:"100%",height:"400px"}},null,512)]),_:1})]),l(C,{data:s(P),border:"",style:{width:"100%"}},{default:r(()=>[l(i,{prop:"record_date",label:"记录日期",width:"120"}),l(i,{prop:"record_time",label:"记录时间",width:"100"}),l(i,{label:"空腹血糖(mmol/L)",width:"120"},{default:r(({row:t})=>[p(w(B(t.fasting_blood_sugar)),1)]),_:1}),l(i,{label:"餐后2小时血糖(mmol/L)",width:"150"},{default:r(({row:t})=>[p(w(B(t.postprandial_blood_sugar)),1)]),_:1}),l(i,{label:"其他血糖(mmol/L)",width:"120"},{default:r(({row:t})=>[p(w(B(t.other_blood_sugar)),1)]),_:1}),l(i,{label:"血压(mmHg)",width:"150"},{default:r(({row:t})=>[t.systolic_pressure&&t.diastolic_pressure?(V(),M("span",De,w(t.systolic_pressure)+"/"+w(t.diastolic_pressure),1)):(V(),M("span",Te,"-"))]),_:1}),l(i,{prop:"western_medicine",label:"西药","show-overflow-tooltip":""}),l(i,{prop:"insulin",label:"胰岛素","show-overflow-tooltip":""}),l(i,{prop:"remark",label:"备注","show-overflow-tooltip":""}),T.readOnly?F("",!0):(V(),O(i,{key:0,label:"操作",width:"150",fixed:"right"},{default:r(({row:t})=>[l(y,{link:"",type:"primary",onClick:Z=>Q(t)},{default:r(()=>[...e[16]||(e[16]=[p("编辑",-1)])]),_:1},8,["onClick"]),l(y,{link:"",type:"danger",onClick:Z=>q(t)},{default:r(()=>[...e[17]||(e[17]=[p("删除",-1)])]),_:1},8,["onClick"])]),_:1}))]),_:1},8,["data"]),l(K,{modelValue:s(c),"onUpdate:modelValue":e[13]||(e[13]=t=>A(c)?c.value=t:null),title:s($),width:"600px"},{footer:r(()=>[l(y,{onClick:e[12]||(e[12]=t=>c.value=!1)},{default:r(()=>[...e[23]||(e[23]=[p("取消",-1)])]),_:1}),l(y,{type:"primary",onClick:z,loading:s(N)},{default:r(()=>[...e[24]||(e[24]=[p("确定",-1)])]),_:1},8,["loading"])]),default:r(()=>[l(j,{model:s(a),"label-width":"120px"},{default:r(()=>[l(d,{label:"记录日期",required:""},{default:r(()=>[l(x,{modelValue:s(a).record_date,"onUpdate:modelValue":e[2]||(e[2]=t=>s(a).record_date=t),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),l(d,{label:"记录时间"},{default:r(()=>[l(X,{modelValue:s(a).record_time,"onUpdate:modelValue":e[3]||(e[3]=t=>s(a).record_time=t),placeholder:"选择时间",format:"HH:mm","value-format":"HH:mm",class:"w-full"},null,8,["modelValue"])]),_:1}),l(d,{label:"空腹血糖"},{default:r(()=>[l(E,{modelValue:s(a).fasting_blood_sugar,"onUpdate:modelValue":e[4]||(e[4]=t=>s(a).fasting_blood_sugar=t),precision:2,step:.1,min:0,max:50,placeholder:"请输入空腹血糖"},null,8,["modelValue"]),e[18]||(e[18]=u("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),l(d,{label:"餐后2小时血糖"},{default:r(()=>[l(E,{modelValue:s(a).postprandial_blood_sugar,"onUpdate:modelValue":e[5]||(e[5]=t=>s(a).postprandial_blood_sugar=t),precision:2,step:.1,min:0,max:50,placeholder:"请输入餐后2小时血糖"},null,8,["modelValue"]),e[19]||(e[19]=u("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),l(d,{label:"其他血糖"},{default:r(()=>[l(D,{modelValue:s(a).other_blood_sugar,"onUpdate:modelValue":e[6]||(e[6]=t=>s(a).other_blood_sugar=t),placeholder:"请输入其他血糖",type:"number",maxlength:"10",onInput:W,style:{width:"200px"}},null,8,["modelValue"]),e[20]||(e[20]=u("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),l(d,{label:"收缩压(高压)"},{default:r(()=>[l(E,{modelValue:s(a).systolic_pressure,"onUpdate:modelValue":e[7]||(e[7]=t=>s(a).systolic_pressure=t),min:0,max:300,placeholder:"请输入收缩压"},null,8,["modelValue"]),e[21]||(e[21]=u("span",{class:"ml-2"},"mmHg",-1))]),_:1}),l(d,{label:"舒张压(低压)"},{default:r(()=>[l(E,{modelValue:s(a).diastolic_pressure,"onUpdate:modelValue":e[8]||(e[8]=t=>s(a).diastolic_pressure=t),min:0,max:200,placeholder:"请输入舒张压"},null,8,["modelValue"]),e[22]||(e[22]=u("span",{class:"ml-2"},"mmHg",-1))]),_:1}),l(d,{label:"西药"},{default:r(()=>[l(D,{modelValue:s(a).western_medicine,"onUpdate:modelValue":e[9]||(e[9]=t=>s(a).western_medicine=t),placeholder:"请输入西药"},null,8,["modelValue"])]),_:1}),l(d,{label:"胰岛素"},{default:r(()=>[l(D,{modelValue:s(a).insulin,"onUpdate:modelValue":e[10]||(e[10]=t=>s(a).insulin=t),placeholder:"请输入胰岛素"},null,8,["modelValue"])]),_:1}),l(d,{label:"备注"},{default:r(()=>[l(D,{modelValue:s(a).remark,"onUpdate:modelValue":e[11]||(e[11]=t=>s(a).remark=t),type:"textarea",rows:3,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),gl=ye(Ue,[["__scopeId","data-v-3a187401"]]);export{gl as default}; diff --git a/server/public/admin/assets/CallRecordPanel-DvHFqqux.js b/server/public/admin/assets/CallRecordPanel-BQekhSi-.js similarity index 92% rename from server/public/admin/assets/CallRecordPanel-DvHFqqux.js rename to server/public/admin/assets/CallRecordPanel-BQekhSi-.js index c9a01b41..6d31f38e 100644 --- a/server/public/admin/assets/CallRecordPanel-DvHFqqux.js +++ b/server/public/admin/assets/CallRecordPanel-BQekhSi-.js @@ -1 +1 @@ -import{i as T,M as O,N as P,L as V}from"./element-plus-DFTWCWyi.js";import L from"./RecordingPlaybackBlock-39655xEj.js";import{U as h}from"./index-DMnmuOhU.js";import{i as d,_ as z}from"./index-Nt5zMHcc.js";import{a8 as D,a9 as w,aa as G}from"./tcm-DCW3HTOw.js";import{f as M,aG as H,w as J,ak as c,I as _,a as r,aN as l,O as m,H as v,aP as Q,G as x,J as y}from"./@vue/runtime-core-C6bnekPw.js";import{Q as n}from"./@vue/shared-mAAVTE9n.js";import{n as k}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./RecordingVideoPlayer-CRxrgEoO.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const j={class:"call-record-panel"},q={key:0,class:"call-record-toolbar"},A={class:"call-record-empty"},F={class:"call-record-empty__desc"},K={key:0,class:"text-primary"},W={key:1,class:"text-gray-400"},X=M({__name:"CallRecordPanel",props:{diagnosisId:{},readOnly:{type:Boolean,default:!1}},setup(p,{expose:R}){const s=p,f=k(!1),g=k([]),U=H("toolbarUploadRef"),u=async()=>{if(s.diagnosisId){f.value=!0;try{g.value=await D({diagnosis_id:s.diagnosisId})||[]}catch(a){console.error(a),g.value=[]}finally{f.value=!1}}};J(()=>s.diagnosisId,()=>{u()},{immediate:!0}),R({refresh:u});function C(a){return{1:"进行中",2:"已结束",3:"未接听",4:"已取消"}[a]??"—"}async function I(a){const e=b(a);if(!e){d.msgError("上传成功但未返回视频地址");return}try{const t=await G({diagnosis_id:s.diagnosisId});await w({diagnosis_id:s.diagnosisId,call_record_id:Number((t==null?void 0:t.id)||0),file_url:e}),d.msgSuccess("视频回放上传成功"),await u()}catch(t){d.msgError((t==null?void 0:t.message)||"写入回放失败")}}async function S(a,e){const t=b(e);if(!t){d.msgError("上传成功但未返回视频地址");return}try{await w({diagnosis_id:s.diagnosisId,call_record_id:Number(a.id||0),file_url:t}),d.msgSuccess("视频回放上传成功"),await u()}catch(o){d.msgError((o==null?void 0:o.message)||"写入回放失败")}}function b(a){var e,t;return String(((e=a==null?void 0:a.data)==null?void 0:e.uri)||((t=a==null?void 0:a.data)==null?void 0:t.url)||"").trim()}return(a,e)=>{const t=T,o=P,E=O,N=V;return c(),_("div",j,[p.readOnly?v("",!0):(c(),_("div",q,[r(h,{ref_key:"toolbarUploadRef",ref:U,type:"video",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:I},{default:l(()=>[r(t,{type:"primary"},{default:l(()=>[...e[0]||(e[0]=[m("上传视频",-1)])]),_:1})]),_:1},512)])),Q((c(),x(E,{data:g.value,border:"",stripe:""},{empty:l(()=>[y("div",A,[e[1]||(e[1]=y("div",{class:"call-record-empty__title"},"暂无通话记录",-1)),y("div",F,n(p.readOnly?"暂无录制回放数据。":"现在可以直接点击上方“上传视频”。系统会自动生成一条默认通话记录来承载回放。"),1)])]),default:l(()=>[r(o,{label:"录制回放","min-width":"320"},{default:l(({row:i})=>[r(L,{"record-id":i.id,urls:i.recording_urls_list},null,8,["record-id","urls"])]),_:1}),r(o,{label:"开始时间",width:"170",prop:"start_time_text"}),r(o,{label:"结束时间",width:"170",prop:"end_time_text"}),r(o,{label:"通话类型",width:"100"},{default:l(({row:i})=>[m(n(i.call_type===1?"语音":"视频"),1)]),_:1}),r(o,{label:"房间号",width:"180"},{default:l(({row:i})=>[i.room_id?(c(),_("span",K,n(i.room_id),1)):(c(),_("span",W,"—"))]),_:1}),r(o,{label:"时长",width:"110",prop:"duration_text"}),r(o,{label:"状态",width:"90"},{default:l(({row:i})=>[m(n(C(i.status)),1)]),_:1}),r(o,{label:"录制",width:"100"},{default:l(({row:i})=>[m(n(i.recording_status_text||"—"),1)]),_:1}),p.readOnly?v("",!0):(c(),x(o,{key:0,label:"上传回放",width:"180"},{default:l(({row:i})=>[r(h,{type:"video",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:B=>S(i,B)},{default:l(()=>[r(t,{type:"primary",plain:"",size:"small"},{default:l(()=>[...e[2]||(e[2]=[m("上传视频",-1)])]),_:1})]),_:1},8,["onSuccess"])]),_:1}))]),_:1},8,["data"])),[[N,f.value]])])}}}),Mt=z(X,[["__scopeId","data-v-78d5c9e4"]]);export{Mt as default}; +import{i as T,M as O,N as P,L as V}from"./element-plus-DFTWCWyi.js";import L from"./RecordingPlaybackBlock-BHZL3zDJ.js";import{U as h}from"./index-C6BRrxYh.js";import{i as d,_ as z}from"./index--WnM67ZH.js";import{a8 as D,a9 as w,aa as G}from"./tcm-DzAQc_oE.js";import{f as M,aG as H,w as J,ak as c,I as _,a as r,aN as l,O as m,H as v,aP as Q,G as x,J as y}from"./@vue/runtime-core-C6bnekPw.js";import{Q as n}from"./@vue/shared-mAAVTE9n.js";import{n as k}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./RecordingVideoPlayer-LJMNYP-k.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const j={class:"call-record-panel"},q={key:0,class:"call-record-toolbar"},A={class:"call-record-empty"},F={class:"call-record-empty__desc"},K={key:0,class:"text-primary"},W={key:1,class:"text-gray-400"},X=M({__name:"CallRecordPanel",props:{diagnosisId:{},readOnly:{type:Boolean,default:!1}},setup(p,{expose:R}){const s=p,f=k(!1),g=k([]),U=H("toolbarUploadRef"),u=async()=>{if(s.diagnosisId){f.value=!0;try{g.value=await D({diagnosis_id:s.diagnosisId})||[]}catch(a){console.error(a),g.value=[]}finally{f.value=!1}}};J(()=>s.diagnosisId,()=>{u()},{immediate:!0}),R({refresh:u});function C(a){return{1:"进行中",2:"已结束",3:"未接听",4:"已取消"}[a]??"—"}async function I(a){const e=b(a);if(!e){d.msgError("上传成功但未返回视频地址");return}try{const t=await G({diagnosis_id:s.diagnosisId});await w({diagnosis_id:s.diagnosisId,call_record_id:Number((t==null?void 0:t.id)||0),file_url:e}),d.msgSuccess("视频回放上传成功"),await u()}catch(t){d.msgError((t==null?void 0:t.message)||"写入回放失败")}}async function S(a,e){const t=b(e);if(!t){d.msgError("上传成功但未返回视频地址");return}try{await w({diagnosis_id:s.diagnosisId,call_record_id:Number(a.id||0),file_url:t}),d.msgSuccess("视频回放上传成功"),await u()}catch(o){d.msgError((o==null?void 0:o.message)||"写入回放失败")}}function b(a){var e,t;return String(((e=a==null?void 0:a.data)==null?void 0:e.uri)||((t=a==null?void 0:a.data)==null?void 0:t.url)||"").trim()}return(a,e)=>{const t=T,o=P,E=O,N=V;return c(),_("div",j,[p.readOnly?v("",!0):(c(),_("div",q,[r(h,{ref_key:"toolbarUploadRef",ref:U,type:"video",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:I},{default:l(()=>[r(t,{type:"primary"},{default:l(()=>[...e[0]||(e[0]=[m("上传视频",-1)])]),_:1})]),_:1},512)])),Q((c(),x(E,{data:g.value,border:"",stripe:""},{empty:l(()=>[y("div",A,[e[1]||(e[1]=y("div",{class:"call-record-empty__title"},"暂无通话记录",-1)),y("div",F,n(p.readOnly?"暂无录制回放数据。":"现在可以直接点击上方“上传视频”。系统会自动生成一条默认通话记录来承载回放。"),1)])]),default:l(()=>[r(o,{label:"录制回放","min-width":"320"},{default:l(({row:i})=>[r(L,{"record-id":i.id,urls:i.recording_urls_list},null,8,["record-id","urls"])]),_:1}),r(o,{label:"开始时间",width:"170",prop:"start_time_text"}),r(o,{label:"结束时间",width:"170",prop:"end_time_text"}),r(o,{label:"通话类型",width:"100"},{default:l(({row:i})=>[m(n(i.call_type===1?"语音":"视频"),1)]),_:1}),r(o,{label:"房间号",width:"180"},{default:l(({row:i})=>[i.room_id?(c(),_("span",K,n(i.room_id),1)):(c(),_("span",W,"—"))]),_:1}),r(o,{label:"时长",width:"110",prop:"duration_text"}),r(o,{label:"状态",width:"90"},{default:l(({row:i})=>[m(n(C(i.status)),1)]),_:1}),r(o,{label:"录制",width:"100"},{default:l(({row:i})=>[m(n(i.recording_status_text||"—"),1)]),_:1}),p.readOnly?v("",!0):(c(),x(o,{key:0,label:"上传回放",width:"180"},{default:l(({row:i})=>[r(h,{type:"video",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:B=>S(i,B)},{default:l(()=>[r(t,{type:"primary",plain:"",size:"small"},{default:l(()=>[...e[2]||(e[2]=[m("上传视频",-1)])]),_:1})]),_:1},8,["onSuccess"])]),_:1}))]),_:1},8,["data"])),[[N,f.value]])])}}}),Mt=z(X,[["__scopeId","data-v-78d5c9e4"]]);export{Mt as default}; diff --git a/server/public/admin/assets/CaseRecordList-Bo5qAgx7.js b/server/public/admin/assets/CaseRecordList-Dl_AaWiA.js similarity index 96% rename from server/public/admin/assets/CaseRecordList-Bo5qAgx7.js rename to server/public/admin/assets/CaseRecordList-Dl_AaWiA.js index f265f8c8..26310d63 100644 --- a/server/public/admin/assets/CaseRecordList-Bo5qAgx7.js +++ b/server/public/admin/assets/CaseRecordList-Dl_AaWiA.js @@ -1 +1 @@ -import{i as L,L as T,N as V,T as D,M as z,R as M}from"./element-plus-DFTWCWyi.js";import{ab as O}from"./tcm-DCW3HTOw.js";import{f as P,b as F,w as R,ak as a,I as n,a as i,aN as s,O as m,H as w,aP as j,G as g,F as A,J as H}from"./@vue/runtime-core-C6bnekPw.js";import{y as d,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as c}from"./@vue/shared-mAAVTE9n.js";import{_ as G}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const J={class:"case-record-list"},Q={key:0,class:"mb-3 flex justify-end"},Y={key:0},q={key:1,class:"text-gray-400"},K={class:"void-detail text-xs text-gray-500 mt-1"},U=P({__name:"CaseRecordList",props:{diagnosisId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},emits:["view","openPrescription"],setup(y,{expose:x,emit:C}){const _=y,b=C,l=k([]),p=k(!1),u=async()=>{if(_.diagnosisId){p.value=!0;try{const e=await O({diagnosis_id:_.diagnosisId});l.value=Array.isArray(e)?e:[]}catch(e){console.error("获取病历记录失败:",e),l.value=[]}finally{p.value=!1}}},S=e=>{if(!e)return"";const t=new Date(e*1e3);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")} ${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}`},$=e=>{b("view",e)},B=()=>{b("openPrescription")};return F(()=>{u()}),R(()=>_.diagnosisId,()=>{u()}),x({refresh:u}),(e,t)=>{const h=L,r=V,v=D,E=z,N=M,I=T;return a(),n("div",J,[y.readOnly?w("",!0):(a(),n("div",Q,[i(h,{type:"primary",size:"small",onClick:B},{default:s(()=>[...t[0]||(t[0]=[m("开方",-1)])]),_:1})])),j((a(),g(E,{data:d(l),border:""},{default:s(()=>[i(r,{prop:"prescription_date",label:"就诊日期",width:"120"}),i(r,{prop:"visit_no",label:"门诊号",width:"120"}),i(r,{prop:"clinical_diagnosis",label:"临床诊断","min-width":"160","show-overflow-tooltip":""}),i(r,{label:"处方摘要","min-width":"180"},{default:s(({row:o})=>[o.herbs&&o.herbs.length?(a(),n("span",Y,c(o.herbs.slice(0,3).map(f=>`${f.name}${f.dosage}克`).join("、"))+c(o.herbs.length>3?"...":""),1)):(a(),n("span",q,"—"))]),_:1}),i(r,{prop:"doctor_name",label:"医师",width:"90","show-overflow-tooltip":""}),i(r,{label:"状态",width:"140",align:"center"},{default:s(({row:o})=>[o.void_status===1?(a(),n(A,{key:0},[i(v,{type:"danger",size:"small"},{default:s(()=>[...t[1]||(t[1]=[m("已作废",-1)])]),_:1}),H("div",K,c(o.void_by_name||"—")+" "+c(S(o.void_time)),1)],64)):(a(),g(v,{key:1,type:"success",size:"small"},{default:s(()=>[...t[2]||(t[2]=[m("正常",-1)])]),_:1}))]),_:1}),i(r,{label:"操作",width:"120",fixed:"right"},{default:s(({row:o})=>[i(h,{link:"",type:"primary",size:"small",onClick:f=>$(o)},{default:s(()=>[...t[3]||(t[3]=[m(" 查看 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[I,d(p)]]),!d(p)&&d(l).length===0?(a(),g(N,{key:1,description:"暂无病历记录,开方后会自动显示",class:"mt-4"})):w("",!0)])}}}),zt=G(U,[["__scopeId","data-v-043d2738"]]);export{zt as default}; +import{i as L,L as T,N as V,T as D,M as z,R as M}from"./element-plus-DFTWCWyi.js";import{ab as O}from"./tcm-DzAQc_oE.js";import{f as P,b as F,w as R,ak as a,I as n,a as i,aN as s,O as m,H as w,aP as j,G as g,F as A,J as H}from"./@vue/runtime-core-C6bnekPw.js";import{y as d,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as c}from"./@vue/shared-mAAVTE9n.js";import{_ as G}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const J={class:"case-record-list"},Q={key:0,class:"mb-3 flex justify-end"},Y={key:0},q={key:1,class:"text-gray-400"},K={class:"void-detail text-xs text-gray-500 mt-1"},U=P({__name:"CaseRecordList",props:{diagnosisId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},emits:["view","openPrescription"],setup(y,{expose:x,emit:C}){const _=y,b=C,l=k([]),p=k(!1),u=async()=>{if(_.diagnosisId){p.value=!0;try{const e=await O({diagnosis_id:_.diagnosisId});l.value=Array.isArray(e)?e:[]}catch(e){console.error("获取病历记录失败:",e),l.value=[]}finally{p.value=!1}}},S=e=>{if(!e)return"";const t=new Date(e*1e3);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")} ${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}`},$=e=>{b("view",e)},B=()=>{b("openPrescription")};return F(()=>{u()}),R(()=>_.diagnosisId,()=>{u()}),x({refresh:u}),(e,t)=>{const h=L,r=V,v=D,E=z,N=M,I=T;return a(),n("div",J,[y.readOnly?w("",!0):(a(),n("div",Q,[i(h,{type:"primary",size:"small",onClick:B},{default:s(()=>[...t[0]||(t[0]=[m("开方",-1)])]),_:1})])),j((a(),g(E,{data:d(l),border:""},{default:s(()=>[i(r,{prop:"prescription_date",label:"就诊日期",width:"120"}),i(r,{prop:"visit_no",label:"门诊号",width:"120"}),i(r,{prop:"clinical_diagnosis",label:"临床诊断","min-width":"160","show-overflow-tooltip":""}),i(r,{label:"处方摘要","min-width":"180"},{default:s(({row:o})=>[o.herbs&&o.herbs.length?(a(),n("span",Y,c(o.herbs.slice(0,3).map(f=>`${f.name}${f.dosage}克`).join("、"))+c(o.herbs.length>3?"...":""),1)):(a(),n("span",q,"—"))]),_:1}),i(r,{prop:"doctor_name",label:"医师",width:"90","show-overflow-tooltip":""}),i(r,{label:"状态",width:"140",align:"center"},{default:s(({row:o})=>[o.void_status===1?(a(),n(A,{key:0},[i(v,{type:"danger",size:"small"},{default:s(()=>[...t[1]||(t[1]=[m("已作废",-1)])]),_:1}),H("div",K,c(o.void_by_name||"—")+" "+c(S(o.void_time)),1)],64)):(a(),g(v,{key:1,type:"success",size:"small"},{default:s(()=>[...t[2]||(t[2]=[m("正常",-1)])]),_:1}))]),_:1}),i(r,{label:"操作",width:"120",fixed:"right"},{default:s(({row:o})=>[i(h,{link:"",type:"primary",size:"small",onClick:f=>$(o)},{default:s(()=>[...t[3]||(t[3]=[m(" 查看 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[I,d(p)]]),!d(p)&&d(l).length===0?(a(),g(N,{key:1,description:"暂无病历记录,开方后会自动显示",class:"mt-4"})):w("",!0)])}}}),zt=G(U,[["__scopeId","data-v-043d2738"]]);export{zt as default}; diff --git a/server/public/admin/assets/DailyMatrix-j3uF_86P.js b/server/public/admin/assets/DailyMatrix-DyqovtVx.js similarity index 97% rename from server/public/admin/assets/DailyMatrix-j3uF_86P.js rename to server/public/admin/assets/DailyMatrix-DyqovtVx.js index 104c89cc..6a20a6a2 100644 --- a/server/public/admin/assets/DailyMatrix-j3uF_86P.js +++ b/server/public/admin/assets/DailyMatrix-DyqovtVx.js @@ -1,2 +1,2 @@ -import{G as ul,F as dl,i as ml,M as pl,N as fl,r as vl,V as gl,D as _l,B as cl,a2 as bl,a3 as yl,h as kl,C as Vl,U as xl,P as wl,Q as Dl,L as Rl,R as Cl}from"./element-plus-DFTWCWyi.js";import{_ as Sl}from"./picker-cSgp8cEl.js";import{H as Ul}from"./vue-echarts-BNtg2q_G.js";import Tl from"./DiagnosisTodoList-BFQuq0si.js";import{h as El}from"./perm-DkIPMPyD.js";import{M as Hl,N as Ml,O as Yl,P as Nl,Q as Bl,R as Wl,S as hl,T as $l,U as Al}from"./tcm-DCW3HTOw.js";import{c as Fl,f as Ll,d as Il,e as ql,b as Pl}from"./blood-thresholds-CJ1fqMjh.js";import{i as C,_ as Ol}from"./index-Nt5zMHcc.js";import{f as zl,w as Gl,n as _e,b as Ql,d as Jl,aP as jl,ak as _,I as y,J as c,a,aN as i,O as v,G as T,H as L,F as I,ap as ce,A as d}from"./@vue/runtime-core-C6bnekPw.js";import{n as g,y as Kl}from"./@vue/reactivity-DiY1c2vO.js";import{o as Xl,Q as ie}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Zl={class:"daily-matrix"},ea={class:"daily-matrix__toolbar"},la={class:"daily-matrix__toolbar-left"},aa={key:0,class:"daily-matrix__toolbar-right"},ta={key:1,class:"daily-matrix__toolbar-right"},oa=["onClick"],na={class:"daily-matrix__tracking-tooltip"},ia={class:"daily-matrix__tracking-preview"},ra={key:0,class:"daily-matrix__cell-up"},sa={class:"daily-matrix__chart"},ua={key:0,class:"daily-matrix__todo"},da={class:"daily-matrix__tracking-existing"},ma=120,pa=zl({__name:"DailyMatrix",props:{diagnosisId:{},patientId:{},age:{default:void 0},readOnly:{type:Boolean,default:!1},patientName:{default:""}},setup(Ye,{expose:Ne}){const Be=["tcm.diagnosis/dailyRecord"],D=Ye,R=d(()=>Number(D.diagnosisId||0)),q=d(()=>Number(D.patientId||0)),re=d(()=>!!D.readOnly),We=d(()=>D.patientName||""),be=d(()=>El(Be)),S=d(()=>be.value&&!re.value),he=d(()=>be.value),se=g(!1),U=g("7"),B=g(null),P=g([]),O=g([]),z=g([]),G=g([]),E=g(!1),H=g(!1),M=g(!1),Y=g(!1),ue=g(!1),de=g(!1),me=g(!1),pe=g(!1),s=g(j()),m=g(K()),p=g(X()),b=g({note_date:"",existing_content:"",content:""}),$e=d(()=>s.value.id?"编辑血糖血压记录":"新增血糖血压记录"),Ae=d(()=>m.value.id?"编辑饮食记录":"新增饮食记录"),Fe=d(()=>p.value.id?"编辑运动记录":"新增运动记录"),Q=d(()=>W(new Date)),N=d(()=>!re.value&&b.value.note_date===Q.value),Le=d(()=>N.value?"新增/追加跟踪备注":"查看跟踪备注"),ye=g(null),ke=g(0),Ie=[{key:"fasting",label:"空腹血糖"},{key:"postprandial",label:"餐后2h血糖"},{key:"other",label:"其他血糖"},{key:"bp",label:"血压"},{key:"western",label:"西药"},{key:"insulin",label:"胰岛素"},{key:"breakfast",label:"早餐"},{key:"lunch",label:"午餐"},{key:"dinner",label:"晚餐"},{key:"exercise",label:"运动"},{key:"tracking",label:"跟踪备注"}],qe=d(()=>[...Ie]),Pe=d(()=>{const t=$.value.length;if(t<=0||t>7)return 100;const e=Math.max(ke.value-ma-2,0),l=e>0?Math.floor(e/t):100;return Math.max(100,l)});let J=0;function W(t){return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function Ve(t){return new Date(`${t}T00:00:00`)}function h(){var t;ke.value=((t=ye.value)==null?void 0:t.clientWidth)||0}function j(t=""){return{id:"",diagnosis_id:R.value,patient_id:q.value,record_date:t,record_time:"",fasting_blood_sugar:0,postprandial_blood_sugar:0,other_blood_sugar:"",systolic_pressure:0,diastolic_pressure:0,western_medicine:"",insulin:"",remark:""}}function K(t=""){return{id:"",diagnosis_id:R.value,patient_id:q.value,record_date:t,breakfast_foods:"",breakfast_images:[],lunch_foods:"",lunch_images:[],dinner_foods:"",dinner_images:[],note:""}}function X(t=""){return{id:"",diagnosis_id:R.value,patient_id:q.value,record_date:t,exercise_type:"",duration:0,intensity:1,images:[],note:""}}function Oe(t){return t.getTime()>Date.now()}function xe(t){if(t==="custom"){const[f,r]=B.value||["",""];return{start:f||"",end:r||""}}const e=t==="7"?7:30,l=new Date;l.setHours(0,0,0,0);const n=new Date(l);return n.setDate(n.getDate()-(e-1)),{start:W(n),end:W(l)}}const we=d(()=>xe(U.value)),$=d(()=>{const{start:t,end:e}=we.value;if(!t||!e)return[];const l=[],n=Ve(e),f=Ve(t).getTime();for(;n.getTime()>=f;)l.push(W(n)),n.setDate(n.getDate()-1);return l}),fe=d(()=>{const t=new Map;for(const e of P.value){const l=String(e.record_date||"");if(!l)continue;t.has(l)||t.set(l,{id:e.id,diagnosis_id:e.diagnosis_id,patient_id:e.patient_id,record_date:l,record_time:e.record_time||"",record_date_ts:e.record_date_ts});const n=t.get(l),f=["fasting_blood_sugar","postprandial_blood_sugar","other_blood_sugar","systolic_pressure","diastolic_pressure","western_medicine","insulin","remark"];for(const r of f)(n[r]===void 0||n[r]===null||n[r]==="")&&e[r]!==void 0&&e[r]!==null&&e[r]!==""&&(n[r]=e[r])}return t}),De=d(()=>{const t=new Map;for(const e of O.value){const l=String(e.record_date||"");!l||t.has(l)||t.set(l,e)}return t}),Re=d(()=>{const t=new Map;for(const e of z.value){const l=String(e.record_date||"");!l||t.has(l)||t.set(l,e)}return t}),Z=d(()=>{const t=new Map;for(const e of G.value){const l=String(e.note_date||"");!l||t.has(l)||t.set(l,e)}return t}),Ce=d(()=>[...$.value].reverse()),ee=d(()=>Ce.value.reduce((t,e)=>{const l=fe.value.get(e);return t.fasting.push(Ue(l==null?void 0:l.fasting_blood_sugar)),t.postprandial.push(Ue(l==null?void 0:l.postprandial_blood_sugar)),t},{fasting:[],postprandial:[]})),ze=d(()=>[...ee.value.fasting,...ee.value.postprandial].some(t=>t!=null)),Ge=d(()=>({tooltip:{trigger:"axis"},legend:{top:0,data:["空腹血糖","餐后血糖"]},grid:{left:24,right:24,top:52,bottom:20,containLabel:!0},xAxis:{type:"category",boundaryGap:!1,data:Ce.value.map(t=>Se(t))},yAxis:{type:"value",name:"mmol/L",splitLine:{lineStyle:{color:"#e5e7eb"}}},series:[{name:"空腹血糖",type:"line",smooth:!0,connectNulls:!0,data:ee.value.fasting,symbolSize:7,itemStyle:{color:"#2563eb"},lineStyle:{width:3,color:"#2563eb"}},{name:"餐后血糖",type:"line",smooth:!0,connectNulls:!0,data:ee.value.postprandial,symbolSize:7,itemStyle:{color:"#f97316"},lineStyle:{width:3,color:"#f97316"}}]}));function Se(t){return t.slice(5)}function Ue(t){if(t===""||t==null)return null;const e=Number(t);return!Number.isFinite(e)||e===0?null:e}function A(t,e){const l=fe.value.get(e),n=De.value.get(e),f=Re.value.get(e),r=Z.value.get(e);switch(t){case"fasting":return{value:(l==null?void 0:l.fasting_blood_sugar)!=null&&l.fasting_blood_sugar!==""?String(l.fasting_blood_sugar):"",isHigh:Pl(l==null?void 0:l.fasting_blood_sugar,D.age),hasRecord:!!l&&l.fasting_blood_sugar!=null&&l.fasting_blood_sugar!==""};case"postprandial":return{value:(l==null?void 0:l.postprandial_blood_sugar)!=null&&l.postprandial_blood_sugar!==""?String(l.postprandial_blood_sugar):"",isHigh:ql(l==null?void 0:l.postprandial_blood_sugar,D.age),hasRecord:!!l&&l.postprandial_blood_sugar!=null&&l.postprandial_blood_sugar!==""};case"other":return{value:(l==null?void 0:l.other_blood_sugar)!=null&&l.other_blood_sugar!==""?String(l.other_blood_sugar):"",isHigh:Il(l==null?void 0:l.other_blood_sugar,D.age),hasRecord:!!l&&l.other_blood_sugar!=null&&l.other_blood_sugar!==""};case"bp":return{value:l&&(l.systolic_pressure||l.diastolic_pressure)?Ll(l):"",isHigh:Fl(l),hasRecord:!!l&&!!(l.systolic_pressure||l.diastolic_pressure)};case"western":return{value:(l==null?void 0:l.western_medicine)||"",isHigh:!1,hasRecord:!!(l!=null&&l.western_medicine)};case"insulin":return{value:(l==null?void 0:l.insulin)||"",isHigh:!1,hasRecord:!!(l!=null&&l.insulin)};case"breakfast":return{value:n!=null&&n.breakfast||n!=null&&n.breakfast_foods?"✓":"",isHigh:!1,hasRecord:!!(n!=null&&n.breakfast||n!=null&&n.breakfast_foods)};case"lunch":return{value:n!=null&&n.lunch||n!=null&&n.lunch_foods?"✓":"",isHigh:!1,hasRecord:!!(n!=null&&n.lunch||n!=null&&n.lunch_foods)};case"dinner":return{value:n!=null&&n.dinner||n!=null&&n.dinner_foods?"✓":"",isHigh:!1,hasRecord:!!(n!=null&&n.dinner||n!=null&&n.dinner_foods)};case"exercise":return{value:f!=null&&f.duration?`${f.duration}min`:"",isHigh:!1,hasRecord:!!(f!=null&&f.id)};case"tracking":return{value:r!=null&&r.content?Te(r.content):"",isHigh:!1,hasRecord:!!(r!=null&&r.content)};default:return{value:"",isHigh:!1,hasRecord:!1}}}async function k(){if(!R.value){P.value=[],O.value=[],z.value=[],G.value=[];return}const{start:t,end:e}=we.value;if(U.value==="custom"&&(!t||!e))return;const l=++J;se.value=!0;try{const n=await Hl({id:R.value,start_date:t,end_date:e}),f=await Ml({diagnosis_id:R.value});if(l!==J)return;P.value=Array.isArray(n==null?void 0:n.blood_records)?n.blood_records:[],O.value=Array.isArray(n==null?void 0:n.diet_records)?n.diet_records:[],z.value=Array.isArray(n==null?void 0:n.exercise_records)?n.exercise_records:[],G.value=Array.isArray(f)?f.filter(r=>$.value.includes(String((r==null?void 0:r.note_date)||""))):[]}catch{l===J&&(P.value=[],O.value=[],z.value=[],G.value=[])}finally{l===J&&(se.value=!1)}}function Qe(){if(U.value==="custom"&&!B.value){const t=xe("7");B.value=[t.start,t.end]}k(),_e(h)}function Je(){U.value==="custom"&&k()}function le(t){if(!S.value)return;const e=$.value[0]||W(new Date);if(t==="blood"){s.value=j(e),E.value=!0;return}if(t==="diet"){m.value=K(e),H.value=!0;return}if(t==="tracking"){const l=Q.value,n=Z.value.get(l);b.value={note_date:l,existing_content:String((n==null?void 0:n.content)||""),content:""},Y.value=!0;return}p.value=X(e),M.value=!0}function je(t,e){if(!S.value)return;if(["fasting","postprandial","other","bp","western","insulin"].includes(t)){const n=fe.value.get(e);s.value=n?{...j(e),...n}:j(e),E.value=!0;return}if(["breakfast","lunch","dinner"].includes(t)){const n=De.value.get(e);m.value=n?{...K(e),...n}:K(e),H.value=!0;return}if(t==="tracking"){const n=Z.value.get(e);if(!n&&e!==Q.value)return;b.value={note_date:e,existing_content:String((n==null?void 0:n.content)||""),content:""},Y.value=!0;return}const l=Re.value.get(e);p.value=l?{...X(e),...l}:X(e),M.value=!0}async function Ke(){if(!s.value.record_date){C.msgWarning("请选择记录日期");return}ue.value=!0;try{s.value.id?await Yl(s.value):await Nl(s.value),E.value=!1,await k()}finally{ue.value=!1}}async function Xe(){if(!m.value.record_date){C.msgWarning("请选择记录日期");return}de.value=!0;try{m.value.id?await Bl(m.value):await Wl(m.value),H.value=!1,await k()}finally{de.value=!1}}async function Ze(){if(!p.value.record_date){C.msgWarning("请选择记录日期");return}if(!p.value.exercise_type){C.msgWarning("请选择运动类型");return}if(!p.value.duration){C.msgWarning("请输入运动时长");return}me.value=!0;try{p.value.id?await hl(p.value):await $l(p.value),M.value=!1,await k()}finally{me.value=!1}}async function el(){if(!b.value.note_date){C.msgWarning("请选择记录日期");return}if(!N.value){C.msgWarning("仅支持给今天追加跟踪备注");return}const t=b.value.content.trim();if(!t){C.msgWarning("请输入跟踪备注");return}pe.value=!0;try{await Al({diagnosis_id:R.value,tracking_content:t}),Y.value=!1,await k()}finally{pe.value=!1}}function Te(t){return ve(t)[0]||""}function ve(t){return t.split(` +import{G as ul,F as dl,i as ml,M as pl,N as fl,r as vl,V as gl,D as _l,B as cl,a2 as bl,a3 as yl,h as kl,C as Vl,U as xl,P as wl,Q as Dl,L as Rl,R as Cl}from"./element-plus-DFTWCWyi.js";import{_ as Sl}from"./picker-DzCeqD7m.js";import{H as Ul}from"./vue-echarts-BNtg2q_G.js";import Tl from"./DiagnosisTodoList-Be3uAeoQ.js";import{h as El}from"./perm-CLhA0PJe.js";import{M as Hl,N as Ml,O as Yl,P as Nl,Q as Bl,R as Wl,S as hl,T as $l,U as Al}from"./tcm-DzAQc_oE.js";import{c as Fl,f as Ll,d as Il,e as ql,b as Pl}from"./blood-thresholds-CJ1fqMjh.js";import{i as C,_ as Ol}from"./index--WnM67ZH.js";import{f as zl,w as Gl,n as _e,b as Ql,d as Jl,aP as jl,ak as _,I as y,J as c,a,aN as i,O as v,G as T,H as L,F as I,ap as ce,A as d}from"./@vue/runtime-core-C6bnekPw.js";import{n as g,y as Kl}from"./@vue/reactivity-DiY1c2vO.js";import{o as Xl,Q as ie}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Zl={class:"daily-matrix"},ea={class:"daily-matrix__toolbar"},la={class:"daily-matrix__toolbar-left"},aa={key:0,class:"daily-matrix__toolbar-right"},ta={key:1,class:"daily-matrix__toolbar-right"},oa=["onClick"],na={class:"daily-matrix__tracking-tooltip"},ia={class:"daily-matrix__tracking-preview"},ra={key:0,class:"daily-matrix__cell-up"},sa={class:"daily-matrix__chart"},ua={key:0,class:"daily-matrix__todo"},da={class:"daily-matrix__tracking-existing"},ma=120,pa=zl({__name:"DailyMatrix",props:{diagnosisId:{},patientId:{},age:{default:void 0},readOnly:{type:Boolean,default:!1},patientName:{default:""}},setup(Ye,{expose:Ne}){const Be=["tcm.diagnosis/dailyRecord"],D=Ye,R=d(()=>Number(D.diagnosisId||0)),q=d(()=>Number(D.patientId||0)),re=d(()=>!!D.readOnly),We=d(()=>D.patientName||""),be=d(()=>El(Be)),S=d(()=>be.value&&!re.value),he=d(()=>be.value),se=g(!1),U=g("7"),B=g(null),P=g([]),O=g([]),z=g([]),G=g([]),E=g(!1),H=g(!1),M=g(!1),Y=g(!1),ue=g(!1),de=g(!1),me=g(!1),pe=g(!1),s=g(j()),m=g(K()),p=g(X()),b=g({note_date:"",existing_content:"",content:""}),$e=d(()=>s.value.id?"编辑血糖血压记录":"新增血糖血压记录"),Ae=d(()=>m.value.id?"编辑饮食记录":"新增饮食记录"),Fe=d(()=>p.value.id?"编辑运动记录":"新增运动记录"),Q=d(()=>W(new Date)),N=d(()=>!re.value&&b.value.note_date===Q.value),Le=d(()=>N.value?"新增/追加跟踪备注":"查看跟踪备注"),ye=g(null),ke=g(0),Ie=[{key:"fasting",label:"空腹血糖"},{key:"postprandial",label:"餐后2h血糖"},{key:"other",label:"其他血糖"},{key:"bp",label:"血压"},{key:"western",label:"西药"},{key:"insulin",label:"胰岛素"},{key:"breakfast",label:"早餐"},{key:"lunch",label:"午餐"},{key:"dinner",label:"晚餐"},{key:"exercise",label:"运动"},{key:"tracking",label:"跟踪备注"}],qe=d(()=>[...Ie]),Pe=d(()=>{const t=$.value.length;if(t<=0||t>7)return 100;const e=Math.max(ke.value-ma-2,0),l=e>0?Math.floor(e/t):100;return Math.max(100,l)});let J=0;function W(t){return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function Ve(t){return new Date(`${t}T00:00:00`)}function h(){var t;ke.value=((t=ye.value)==null?void 0:t.clientWidth)||0}function j(t=""){return{id:"",diagnosis_id:R.value,patient_id:q.value,record_date:t,record_time:"",fasting_blood_sugar:0,postprandial_blood_sugar:0,other_blood_sugar:"",systolic_pressure:0,diastolic_pressure:0,western_medicine:"",insulin:"",remark:""}}function K(t=""){return{id:"",diagnosis_id:R.value,patient_id:q.value,record_date:t,breakfast_foods:"",breakfast_images:[],lunch_foods:"",lunch_images:[],dinner_foods:"",dinner_images:[],note:""}}function X(t=""){return{id:"",diagnosis_id:R.value,patient_id:q.value,record_date:t,exercise_type:"",duration:0,intensity:1,images:[],note:""}}function Oe(t){return t.getTime()>Date.now()}function xe(t){if(t==="custom"){const[f,r]=B.value||["",""];return{start:f||"",end:r||""}}const e=t==="7"?7:30,l=new Date;l.setHours(0,0,0,0);const n=new Date(l);return n.setDate(n.getDate()-(e-1)),{start:W(n),end:W(l)}}const we=d(()=>xe(U.value)),$=d(()=>{const{start:t,end:e}=we.value;if(!t||!e)return[];const l=[],n=Ve(e),f=Ve(t).getTime();for(;n.getTime()>=f;)l.push(W(n)),n.setDate(n.getDate()-1);return l}),fe=d(()=>{const t=new Map;for(const e of P.value){const l=String(e.record_date||"");if(!l)continue;t.has(l)||t.set(l,{id:e.id,diagnosis_id:e.diagnosis_id,patient_id:e.patient_id,record_date:l,record_time:e.record_time||"",record_date_ts:e.record_date_ts});const n=t.get(l),f=["fasting_blood_sugar","postprandial_blood_sugar","other_blood_sugar","systolic_pressure","diastolic_pressure","western_medicine","insulin","remark"];for(const r of f)(n[r]===void 0||n[r]===null||n[r]==="")&&e[r]!==void 0&&e[r]!==null&&e[r]!==""&&(n[r]=e[r])}return t}),De=d(()=>{const t=new Map;for(const e of O.value){const l=String(e.record_date||"");!l||t.has(l)||t.set(l,e)}return t}),Re=d(()=>{const t=new Map;for(const e of z.value){const l=String(e.record_date||"");!l||t.has(l)||t.set(l,e)}return t}),Z=d(()=>{const t=new Map;for(const e of G.value){const l=String(e.note_date||"");!l||t.has(l)||t.set(l,e)}return t}),Ce=d(()=>[...$.value].reverse()),ee=d(()=>Ce.value.reduce((t,e)=>{const l=fe.value.get(e);return t.fasting.push(Ue(l==null?void 0:l.fasting_blood_sugar)),t.postprandial.push(Ue(l==null?void 0:l.postprandial_blood_sugar)),t},{fasting:[],postprandial:[]})),ze=d(()=>[...ee.value.fasting,...ee.value.postprandial].some(t=>t!=null)),Ge=d(()=>({tooltip:{trigger:"axis"},legend:{top:0,data:["空腹血糖","餐后血糖"]},grid:{left:24,right:24,top:52,bottom:20,containLabel:!0},xAxis:{type:"category",boundaryGap:!1,data:Ce.value.map(t=>Se(t))},yAxis:{type:"value",name:"mmol/L",splitLine:{lineStyle:{color:"#e5e7eb"}}},series:[{name:"空腹血糖",type:"line",smooth:!0,connectNulls:!0,data:ee.value.fasting,symbolSize:7,itemStyle:{color:"#2563eb"},lineStyle:{width:3,color:"#2563eb"}},{name:"餐后血糖",type:"line",smooth:!0,connectNulls:!0,data:ee.value.postprandial,symbolSize:7,itemStyle:{color:"#f97316"},lineStyle:{width:3,color:"#f97316"}}]}));function Se(t){return t.slice(5)}function Ue(t){if(t===""||t==null)return null;const e=Number(t);return!Number.isFinite(e)||e===0?null:e}function A(t,e){const l=fe.value.get(e),n=De.value.get(e),f=Re.value.get(e),r=Z.value.get(e);switch(t){case"fasting":return{value:(l==null?void 0:l.fasting_blood_sugar)!=null&&l.fasting_blood_sugar!==""?String(l.fasting_blood_sugar):"",isHigh:Pl(l==null?void 0:l.fasting_blood_sugar,D.age),hasRecord:!!l&&l.fasting_blood_sugar!=null&&l.fasting_blood_sugar!==""};case"postprandial":return{value:(l==null?void 0:l.postprandial_blood_sugar)!=null&&l.postprandial_blood_sugar!==""?String(l.postprandial_blood_sugar):"",isHigh:ql(l==null?void 0:l.postprandial_blood_sugar,D.age),hasRecord:!!l&&l.postprandial_blood_sugar!=null&&l.postprandial_blood_sugar!==""};case"other":return{value:(l==null?void 0:l.other_blood_sugar)!=null&&l.other_blood_sugar!==""?String(l.other_blood_sugar):"",isHigh:Il(l==null?void 0:l.other_blood_sugar,D.age),hasRecord:!!l&&l.other_blood_sugar!=null&&l.other_blood_sugar!==""};case"bp":return{value:l&&(l.systolic_pressure||l.diastolic_pressure)?Ll(l):"",isHigh:Fl(l),hasRecord:!!l&&!!(l.systolic_pressure||l.diastolic_pressure)};case"western":return{value:(l==null?void 0:l.western_medicine)||"",isHigh:!1,hasRecord:!!(l!=null&&l.western_medicine)};case"insulin":return{value:(l==null?void 0:l.insulin)||"",isHigh:!1,hasRecord:!!(l!=null&&l.insulin)};case"breakfast":return{value:n!=null&&n.breakfast||n!=null&&n.breakfast_foods?"✓":"",isHigh:!1,hasRecord:!!(n!=null&&n.breakfast||n!=null&&n.breakfast_foods)};case"lunch":return{value:n!=null&&n.lunch||n!=null&&n.lunch_foods?"✓":"",isHigh:!1,hasRecord:!!(n!=null&&n.lunch||n!=null&&n.lunch_foods)};case"dinner":return{value:n!=null&&n.dinner||n!=null&&n.dinner_foods?"✓":"",isHigh:!1,hasRecord:!!(n!=null&&n.dinner||n!=null&&n.dinner_foods)};case"exercise":return{value:f!=null&&f.duration?`${f.duration}min`:"",isHigh:!1,hasRecord:!!(f!=null&&f.id)};case"tracking":return{value:r!=null&&r.content?Te(r.content):"",isHigh:!1,hasRecord:!!(r!=null&&r.content)};default:return{value:"",isHigh:!1,hasRecord:!1}}}async function k(){if(!R.value){P.value=[],O.value=[],z.value=[],G.value=[];return}const{start:t,end:e}=we.value;if(U.value==="custom"&&(!t||!e))return;const l=++J;se.value=!0;try{const n=await Hl({id:R.value,start_date:t,end_date:e}),f=await Ml({diagnosis_id:R.value});if(l!==J)return;P.value=Array.isArray(n==null?void 0:n.blood_records)?n.blood_records:[],O.value=Array.isArray(n==null?void 0:n.diet_records)?n.diet_records:[],z.value=Array.isArray(n==null?void 0:n.exercise_records)?n.exercise_records:[],G.value=Array.isArray(f)?f.filter(r=>$.value.includes(String((r==null?void 0:r.note_date)||""))):[]}catch{l===J&&(P.value=[],O.value=[],z.value=[],G.value=[])}finally{l===J&&(se.value=!1)}}function Qe(){if(U.value==="custom"&&!B.value){const t=xe("7");B.value=[t.start,t.end]}k(),_e(h)}function Je(){U.value==="custom"&&k()}function le(t){if(!S.value)return;const e=$.value[0]||W(new Date);if(t==="blood"){s.value=j(e),E.value=!0;return}if(t==="diet"){m.value=K(e),H.value=!0;return}if(t==="tracking"){const l=Q.value,n=Z.value.get(l);b.value={note_date:l,existing_content:String((n==null?void 0:n.content)||""),content:""},Y.value=!0;return}p.value=X(e),M.value=!0}function je(t,e){if(!S.value)return;if(["fasting","postprandial","other","bp","western","insulin"].includes(t)){const n=fe.value.get(e);s.value=n?{...j(e),...n}:j(e),E.value=!0;return}if(["breakfast","lunch","dinner"].includes(t)){const n=De.value.get(e);m.value=n?{...K(e),...n}:K(e),H.value=!0;return}if(t==="tracking"){const n=Z.value.get(e);if(!n&&e!==Q.value)return;b.value={note_date:e,existing_content:String((n==null?void 0:n.content)||""),content:""},Y.value=!0;return}const l=Re.value.get(e);p.value=l?{...X(e),...l}:X(e),M.value=!0}async function Ke(){if(!s.value.record_date){C.msgWarning("请选择记录日期");return}ue.value=!0;try{s.value.id?await Yl(s.value):await Nl(s.value),E.value=!1,await k()}finally{ue.value=!1}}async function Xe(){if(!m.value.record_date){C.msgWarning("请选择记录日期");return}de.value=!0;try{m.value.id?await Bl(m.value):await Wl(m.value),H.value=!1,await k()}finally{de.value=!1}}async function Ze(){if(!p.value.record_date){C.msgWarning("请选择记录日期");return}if(!p.value.exercise_type){C.msgWarning("请选择运动类型");return}if(!p.value.duration){C.msgWarning("请输入运动时长");return}me.value=!0;try{p.value.id?await hl(p.value):await $l(p.value),M.value=!1,await k()}finally{me.value=!1}}async function el(){if(!b.value.note_date){C.msgWarning("请选择记录日期");return}if(!N.value){C.msgWarning("仅支持给今天追加跟踪备注");return}const t=b.value.content.trim();if(!t){C.msgWarning("请输入跟踪备注");return}pe.value=!0;try{await Al({diagnosis_id:R.value,tracking_content:t}),Y.value=!1,await k()}finally{pe.value=!1}}function Te(t){return ve(t)[0]||""}function ve(t){return t.split(` `).map(e=>e.trim()).filter(Boolean)}function ae(t){var e;return String(((e=Z.value.get(t))==null?void 0:e.content)||"")}function ll(t){return Te(t)}function al(t,e){return S.value?t!=="tracking"?!0:e===Q.value||!!ae(e):!1}return Gl(()=>D.diagnosisId,t=>{t&&k(),_e(h)}),Ql(()=>{D.diagnosisId&&k(),_e(h),window.addEventListener("resize",h)}),Jl(()=>{window.removeEventListener("resize",h)}),Ne({refresh:k}),(t,e)=>{const l=dl,n=ul,f=bl,r=ml,Ee=fl,tl=vl,ol=pl,nl=Cl,u=cl,il=yl,F=kl,V=Vl,te=_l,oe=gl,ge=xl,ne=Sl,x=Dl,He=wl,rl=Rl;return jl((_(),y("div",Zl,[c("div",ea,[c("div",la,[a(n,{modelValue:U.value,"onUpdate:modelValue":e[0]||(e[0]=o=>U.value=o),onChange:Qe},{default:i(()=>[a(l,{value:"7"},{default:i(()=>[...e[40]||(e[40]=[v("最近7天",-1)])]),_:1}),a(l,{value:"30"},{default:i(()=>[...e[41]||(e[41]=[v("最近30天",-1)])]),_:1}),a(l,{value:"custom"},{default:i(()=>[...e[42]||(e[42]=[v("自定义",-1)])]),_:1})]),_:1},8,["modelValue"]),U.value==="custom"?(_(),T(f,{key:0,modelValue:B.value,"onUpdate:modelValue":e[1]||(e[1]=o=>B.value=o),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",clearable:!1,"disabled-date":Oe,onChange:Je},null,8,["modelValue"])):L("",!0)]),S.value?(_(),y("div",aa,[a(r,{type:"primary",onClick:e[2]||(e[2]=o=>le("blood"))},{default:i(()=>[...e[43]||(e[43]=[v("+血糖",-1)])]),_:1}),a(r,{onClick:e[3]||(e[3]=o=>le("diet"))},{default:i(()=>[...e[44]||(e[44]=[v("+饮食",-1)])]),_:1}),a(r,{onClick:e[4]||(e[4]=o=>le("exercise"))},{default:i(()=>[...e[45]||(e[45]=[v("+运动",-1)])]),_:1}),a(r,{onClick:e[5]||(e[5]=o=>le("tracking"))},{default:i(()=>[...e[46]||(e[46]=[v("+备注",-1)])]),_:1}),a(r,{onClick:k},{default:i(()=>[...e[47]||(e[47]=[v("刷新",-1)])]),_:1})])):(_(),y("div",ta,[a(r,{onClick:k},{default:i(()=>[...e[48]||(e[48]=[v("刷新",-1)])]),_:1})]))]),c("div",{ref_key:"tableWrapRef",ref:ye,class:"daily-matrix__table-wrap"},[a(ol,{data:qe.value,border:"",stripe:"","row-key":"key",class:"daily-matrix__table","empty-text":"暂无记录"},{default:i(()=>[a(Ee,{prop:"label",label:"指标",fixed:"left",width:"120"}),(_(!0),y(I,null,ce($.value,o=>(_(),T(Ee,{key:o,label:Se(o),"min-width":Pe.value,align:"center"},{default:i(({row:w})=>[c("div",{class:Xl(["daily-matrix__cell",{"is-clickable":al(w.key,o),"is-empty":!A(w.key,o).hasRecord,"is-high":A(w.key,o).isHigh}]),onClick:Me=>je(w.key,o)},[w.key==="tracking"&&ae(o)?(_(),T(tl,{key:0,placement:"top",effect:"light","show-after":150},{content:i(()=>[c("div",na,[(_(!0),y(I,null,ce(ve(ae(o)),(Me,sl)=>(_(),y("div",{key:`${o}-${sl}`,class:"daily-matrix__tracking-tooltip-line"},ie(Me),1))),128))])]),default:i(()=>[c("div",ia,ie(ll(ae(o))),1)]),_:2},1024)):A(w.key,o).value?(_(),y(I,{key:1},[c("span",null,ie(A(w.key,o).value),1),A(w.key,o).isHigh?(_(),y("span",ra,"↑")):L("",!0)],64)):(_(),y(I,{key:2},[v("—")],64))],10,oa)]),_:2},1032,["label","min-width"]))),128))]),_:1},8,["data"])],512),c("div",sa,[e[49]||(e[49]=c("div",{class:"daily-matrix__section-title"},"血糖趋势",-1)),ze.value?(_(),T(Kl(Ul),{key:0,class:"daily-matrix__chart-canvas",option:Ge.value,autoresize:""},null,8,["option"])):(_(),T(nl,{key:1,description:"当前时间范围暂无血糖数据","image-size":84}))]),he.value?(_(),y("div",ua,[e[50]||(e[50]=c("div",{class:"daily-matrix__section-title"},"待办事项",-1)),a(Tl,{"diagnosis-id":R.value,"patient-id":q.value,"patient-name":We.value,"read-only":re.value},null,8,["diagnosis-id","patient-id","patient-name","read-only"])])):L("",!0),a(oe,{modelValue:E.value,"onUpdate:modelValue":e[17]||(e[17]=o=>E.value=o),title:$e.value,width:"600px","close-on-click-modal":!1},{footer:i(()=>[a(r,{onClick:e[16]||(e[16]=o=>E.value=!1)},{default:i(()=>[...e[56]||(e[56]=[v("取消",-1)])]),_:1}),a(r,{type:"primary",loading:ue.value,disabled:!S.value,onClick:Ke},{default:i(()=>[...e[57]||(e[57]=[v("确定",-1)])]),_:1},8,["loading","disabled"])]),default:i(()=>[a(te,{model:s.value,"label-width":"120px"},{default:i(()=>[a(u,{label:"记录日期",required:""},{default:i(()=>[a(f,{modelValue:s.value.record_date,"onUpdate:modelValue":e[6]||(e[6]=o=>s.value.record_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),a(u,{label:"记录时间"},{default:i(()=>[a(il,{modelValue:s.value.record_time,"onUpdate:modelValue":e[7]||(e[7]=o=>s.value.record_time=o),placeholder:"选择时间",format:"HH:mm","value-format":"HH:mm",class:"w-full"},null,8,["modelValue"])]),_:1}),a(u,{label:"空腹血糖"},{default:i(()=>[a(F,{modelValue:s.value.fasting_blood_sugar,"onUpdate:modelValue":e[8]||(e[8]=o=>s.value.fasting_blood_sugar=o),precision:2,step:.1,min:0,max:50},null,8,["modelValue"]),e[51]||(e[51]=c("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),a(u,{label:"餐后2小时血糖"},{default:i(()=>[a(F,{modelValue:s.value.postprandial_blood_sugar,"onUpdate:modelValue":e[9]||(e[9]=o=>s.value.postprandial_blood_sugar=o),precision:2,step:.1,min:0,max:50},null,8,["modelValue"]),e[52]||(e[52]=c("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),a(u,{label:"其他血糖"},{default:i(()=>[a(V,{modelValue:s.value.other_blood_sugar,"onUpdate:modelValue":e[10]||(e[10]=o=>s.value.other_blood_sugar=o),type:"number",style:{width:"200px"}},null,8,["modelValue"]),e[53]||(e[53]=c("span",{class:"ml-2"},"mmol/L",-1))]),_:1}),a(u,{label:"收缩压(高压)"},{default:i(()=>[a(F,{modelValue:s.value.systolic_pressure,"onUpdate:modelValue":e[11]||(e[11]=o=>s.value.systolic_pressure=o),min:0,max:300},null,8,["modelValue"]),e[54]||(e[54]=c("span",{class:"ml-2"},"mmHg",-1))]),_:1}),a(u,{label:"舒张压(低压)"},{default:i(()=>[a(F,{modelValue:s.value.diastolic_pressure,"onUpdate:modelValue":e[12]||(e[12]=o=>s.value.diastolic_pressure=o),min:0,max:200},null,8,["modelValue"]),e[55]||(e[55]=c("span",{class:"ml-2"},"mmHg",-1))]),_:1}),a(u,{label:"西药"},{default:i(()=>[a(V,{modelValue:s.value.western_medicine,"onUpdate:modelValue":e[13]||(e[13]=o=>s.value.western_medicine=o)},null,8,["modelValue"])]),_:1}),a(u,{label:"胰岛素"},{default:i(()=>[a(V,{modelValue:s.value.insulin,"onUpdate:modelValue":e[14]||(e[14]=o=>s.value.insulin=o)},null,8,["modelValue"])]),_:1}),a(u,{label:"备注"},{default:i(()=>[a(V,{modelValue:s.value.remark,"onUpdate:modelValue":e[15]||(e[15]=o=>s.value.remark=o),type:"textarea",rows:3},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(oe,{modelValue:H.value,"onUpdate:modelValue":e[27]||(e[27]=o=>H.value=o),title:Ae.value,width:"800px","close-on-click-modal":!1},{footer:i(()=>[a(r,{onClick:e[26]||(e[26]=o=>H.value=!1)},{default:i(()=>[...e[61]||(e[61]=[v("取消",-1)])]),_:1}),a(r,{type:"primary",loading:de.value,disabled:!S.value,onClick:Xe},{default:i(()=>[...e[62]||(e[62]=[v("确定",-1)])]),_:1},8,["loading","disabled"])]),default:i(()=>[a(te,{model:m.value,"label-width":"100px"},{default:i(()=>[a(u,{label:"记录日期",required:""},{default:i(()=>[a(f,{modelValue:m.value.record_date,"onUpdate:modelValue":e[18]||(e[18]=o=>m.value.record_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),a(ge,{"content-position":"left"},{default:i(()=>[...e[58]||(e[58]=[v("早餐",-1)])]),_:1}),a(u,{label:"食物描述"},{default:i(()=>[a(V,{modelValue:m.value.breakfast_foods,"onUpdate:modelValue":e[19]||(e[19]=o=>m.value.breakfast_foods=o),type:"textarea",rows:2,placeholder:"请输入早餐食物"},null,8,["modelValue"])]),_:1}),a(u,{label:"图片"},{default:i(()=>[a(ne,{modelValue:m.value.breakfast_images,"onUpdate:modelValue":e[20]||(e[20]=o=>m.value.breakfast_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),a(ge,{"content-position":"left"},{default:i(()=>[...e[59]||(e[59]=[v("午餐",-1)])]),_:1}),a(u,{label:"食物描述"},{default:i(()=>[a(V,{modelValue:m.value.lunch_foods,"onUpdate:modelValue":e[21]||(e[21]=o=>m.value.lunch_foods=o),type:"textarea",rows:2,placeholder:"请输入午餐食物"},null,8,["modelValue"])]),_:1}),a(u,{label:"图片"},{default:i(()=>[a(ne,{modelValue:m.value.lunch_images,"onUpdate:modelValue":e[22]||(e[22]=o=>m.value.lunch_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),a(ge,{"content-position":"left"},{default:i(()=>[...e[60]||(e[60]=[v("晚餐",-1)])]),_:1}),a(u,{label:"食物描述"},{default:i(()=>[a(V,{modelValue:m.value.dinner_foods,"onUpdate:modelValue":e[23]||(e[23]=o=>m.value.dinner_foods=o),type:"textarea",rows:2,placeholder:"请输入晚餐食物"},null,8,["modelValue"])]),_:1}),a(u,{label:"图片"},{default:i(()=>[a(ne,{modelValue:m.value.dinner_images,"onUpdate:modelValue":e[24]||(e[24]=o=>m.value.dinner_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),a(u,{label:"备注"},{default:i(()=>[a(V,{modelValue:m.value.note,"onUpdate:modelValue":e[25]||(e[25]=o=>m.value.note=o),type:"textarea",rows:3,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(oe,{modelValue:M.value,"onUpdate:modelValue":e[35]||(e[35]=o=>M.value=o),title:Fe.value,width:"600px","close-on-click-modal":!1},{footer:i(()=>[a(r,{onClick:e[34]||(e[34]=o=>M.value=!1)},{default:i(()=>[...e[63]||(e[63]=[v("取消",-1)])]),_:1}),a(r,{type:"primary",loading:me.value,disabled:!S.value,onClick:Ze},{default:i(()=>[...e[64]||(e[64]=[v("确定",-1)])]),_:1},8,["loading","disabled"])]),default:i(()=>[a(te,{model:p.value,"label-width":"120px"},{default:i(()=>[a(u,{label:"记录日期",required:""},{default:i(()=>[a(f,{modelValue:p.value.record_date,"onUpdate:modelValue":e[28]||(e[28]=o=>p.value.record_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),a(u,{label:"运动类型",required:""},{default:i(()=>[a(He,{modelValue:p.value.exercise_type,"onUpdate:modelValue":e[29]||(e[29]=o=>p.value.exercise_type=o),placeholder:"请选择运动类型",class:"w-full"},{default:i(()=>[a(x,{label:"散步",value:"散步"}),a(x,{label:"慢跑",value:"慢跑"}),a(x,{label:"游泳",value:"游泳"}),a(x,{label:"瑜伽",value:"瑜伽"}),a(x,{label:"骑自行车",value:"骑自行车"}),a(x,{label:"打太极拳",value:"打太极拳"}),a(x,{label:"其他",value:"其他"})]),_:1},8,["modelValue"])]),_:1}),a(u,{label:"运动时长(分钟)",required:""},{default:i(()=>[a(F,{modelValue:p.value.duration,"onUpdate:modelValue":e[30]||(e[30]=o=>p.value.duration=o),min:0,max:300},null,8,["modelValue"])]),_:1}),a(u,{label:"运动强度",required:""},{default:i(()=>[a(He,{modelValue:p.value.intensity,"onUpdate:modelValue":e[31]||(e[31]=o=>p.value.intensity=o),placeholder:"请选择运动强度",class:"w-full"},{default:i(()=>[a(x,{label:"低强度",value:1}),a(x,{label:"中强度",value:2}),a(x,{label:"高强度",value:3})]),_:1},8,["modelValue"])]),_:1}),a(u,{label:"运动图片"},{default:i(()=>[a(ne,{modelValue:p.value.images,"onUpdate:modelValue":e[32]||(e[32]=o=>p.value.images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),a(u,{label:"备注"},{default:i(()=>[a(V,{modelValue:p.value.note,"onUpdate:modelValue":e[33]||(e[33]=o=>p.value.note=o),type:"textarea",rows:3},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(oe,{modelValue:Y.value,"onUpdate:modelValue":e[39]||(e[39]=o=>Y.value=o),title:Le.value,width:"600px","close-on-click-modal":!1},{footer:i(()=>[a(r,{onClick:e[38]||(e[38]=o=>Y.value=!1)},{default:i(()=>[...e[65]||(e[65]=[v("取消",-1)])]),_:1}),N.value?(_(),T(r,{key:0,type:"primary",loading:pe.value,onClick:el},{default:i(()=>[...e[66]||(e[66]=[v("确定",-1)])]),_:1},8,["loading"])):L("",!0)]),default:i(()=>[a(te,{model:b.value,"label-width":"100px"},{default:i(()=>[a(u,{label:"记录日期",required:""},{default:i(()=>[a(f,{modelValue:b.value.note_date,"onUpdate:modelValue":e[36]||(e[36]=o=>b.value.note_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full",disabled:!0},null,8,["modelValue"])]),_:1}),b.value.existing_content?(_(),T(u,{key:0,label:"已有备注"},{default:i(()=>[c("div",da,[(_(!0),y(I,null,ce(ve(b.value.existing_content),(o,w)=>(_(),y("div",{key:`${b.value.note_date}-${w}`,class:"daily-matrix__tracking-line"},ie(o),1))),128))])]),_:1})):L("",!0),a(u,{label:N.value?"追加备注":"备注内容",required:""},{default:i(()=>[a(V,{modelValue:b.value.content,"onUpdate:modelValue":e[37]||(e[37]=o=>b.value.content=o),type:"textarea",rows:5,maxlength:"1000","show-word-limit":"",disabled:!N.value,placeholder:N.value?"请输入跟踪备注":"历史跟踪备注仅支持查看"},null,8,["modelValue","disabled","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])),[[rl,se.value]])}}}),ct=Ol(pa,[["__scopeId","data-v-3f89758f"]]);export{ct as default}; diff --git a/server/public/admin/assets/DiagnosisTodoList-BFQuq0si.js b/server/public/admin/assets/DiagnosisTodoList-Be3uAeoQ.js similarity index 97% rename from server/public/admin/assets/DiagnosisTodoList-BFQuq0si.js rename to server/public/admin/assets/DiagnosisTodoList-Be3uAeoQ.js index 88b4d446..d00cea90 100644 --- a/server/public/admin/assets/DiagnosisTodoList-BFQuq0si.js +++ b/server/public/admin/assets/DiagnosisTodoList-Be3uAeoQ.js @@ -1 +1 @@ -import{G as j,F as K,i as Z,N as tt,T as et,L as at,V as ot,D as it,B as st,a2 as lt,C as nt,M as rt}from"./element-plus-DFTWCWyi.js";import{_ as dt}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{V as mt,W as ut,X as pt}from"./tcm-DCW3HTOw.js";import{h as ct}from"./perm-DkIPMPyD.js";import{i as y,_ as ft}from"./index-Nt5zMHcc.js";import{f as _t,w as gt,as as vt,ak as p,I as w,J as N,aP as T,G as h,aN as o,O as l,a as e,A as bt,n as yt}from"./@vue/runtime-core-C6bnekPw.js";import{a as A,y as n,r as I,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const wt={class:"diagnosis-todo-list"},kt={class:"toolbar"},Vt={key:0,class:"text-danger"},xt={key:1},Dt={key:1,class:"text-muted"},Ct={class:"pagination-wrap"},Nt=_t({__name:"DiagnosisTodoList",props:{diagnosisId:{},patientId:{},patientName:{},readOnly:{type:Boolean}},setup(R,{expose:B}){const x=["tcm.diagnosis/dailyRecord"],r=R,v=bt(()=>ct(x)),s=I({page:1,size:15,count:0,loading:!1,lists:[]}),c=k(""),m=async()=>{if(!r.diagnosisId||Number(r.diagnosisId)<=0||!v.value){s.lists=[],s.count=0;return}s.loading=!0;try{const i={page_no:s.page,page_size:s.size,diagnosis_id:Number(r.diagnosisId)};c.value!==""&&c.value!==void 0&&(i.status=Number(c.value));const t=await mt(i);s.count=Number((t==null?void 0:t.count)??0),s.lists=Array.isArray(t==null?void 0:t.lists)?t.lists:[]}catch{s.lists=[],s.count=0}finally{s.loading=!1}};gt(()=>r.diagnosisId,()=>{s.page=1,m()},{immediate:!0});const F=()=>{s.page=1,m()},L=i=>{switch(Number(i)){case 0:return"info";case 1:return"success";case 2:return"warning";case 3:return"danger";default:return"info"}},f=k(!1),D=k(!1),b=k(),d=I({remindAt:"",content:""}),M={remindAt:[{required:!0,message:"请选择提醒时间",trigger:"change"}],content:[{required:!0,message:"请输入提醒内容",trigger:"blur"},{max:500,message:"内容最多 500 字",trigger:"blur"}]},P=i=>{const t=new Date;return t.setHours(0,0,0,0),i.getTime(){if(!r.diagnosisId||!v.value){y.msgWarning("诊单未保存,无法添加待办");return}d.remindAt="",d.content="",f.value=!0,yt(()=>{var i;return(i=b.value)==null?void 0:i.clearValidate()})},O=async()=>{if(!b.value||!await b.value.validate().catch(()=>!1))return;const t=Number(d.remindAt);if(!Number.isFinite(t)||t<=Date.now()+30*1e3){y.msgWarning("提醒时间必须晚于当前时间至少 30 秒");return}D.value=!0;try{await ut({diagnosis_id:Number(r.diagnosisId),content:d.content.trim(),remind_time:Math.floor(t/1e3)}),f.value=!1,m()}catch{}finally{D.value=!1}},U=async i=>{if(!(!v.value||r.readOnly)){try{await y.confirm(`确认取消「${i.remind_time_text} · ${Y(i.content,30)}」吗?`)}catch{return}try{await pt({id:Number(i.id)}),y.msgSuccess("已取消"),m()}catch{}}},Y=(i,t)=>i?i.length>t?i.slice(0,t)+"...":i:"";return B({refresh:m}),(i,t)=>{const _=Z,g=K,$=j,u=tt,z=et,G=rt,H=dt,W=lt,C=st,q=nt,J=it,Q=ot,E=vt("perms"),X=at;return p(),w("div",wt,[N("div",kt,[T((p(),h(_,{type:"primary",disabled:!r.diagnosisId||!v.value,onClick:S},{default:o(()=>[...t[6]||(t[6]=[l(" + 新增待办 ",-1)])]),_:1},8,["disabled"])),[[E,x]]),e($,{modelValue:n(c),"onUpdate:modelValue":t[0]||(t[0]=a=>A(c)?c.value=a:null),class:"ml-3",onChange:F},{default:o(()=>[e(g,{value:""},{default:o(()=>[...t[7]||(t[7]=[l("全部",-1)])]),_:1}),e(g,{value:0},{default:o(()=>[...t[8]||(t[8]=[l("待执行",-1)])]),_:1}),e(g,{value:1},{default:o(()=>[...t[9]||(t[9]=[l("已发送",-1)])]),_:1}),e(g,{value:3},{default:o(()=>[...t[10]||(t[10]=[l("失败",-1)])]),_:1}),e(g,{value:2},{default:o(()=>[...t[11]||(t[11]=[l("已取消",-1)])]),_:1})]),_:1},8,["modelValue"]),e(_,{class:"ml-3",onClick:m},{default:o(()=>[...t[12]||(t[12]=[l("刷新",-1)])]),_:1})]),T((p(),h(G,{data:n(s).lists,border:"",class:"todo-table","empty-text":"暂无待办","row-key":"id"},{default:o(()=>[e(u,{label:"提醒时间",prop:"remind_time_text",width:"160"}),e(u,{label:"内容",prop:"content","min-width":"240","show-overflow-tooltip":""}),e(u,{label:"状态",width:"110",align:"center"},{default:o(({row:a})=>[e(z,{type:L(a.status),effect:"light",size:"small"},{default:o(()=>[l(V(a.status_text),1)]),_:2},1032,["type"])]),_:1}),e(u,{label:"创建人",prop:"creator_name",width:"120"},{default:o(({row:a})=>[l(V(a.creator_name||"-"),1)]),_:1}),e(u,{label:"推送时间",prop:"notified_at_text",width:"160"},{default:o(({row:a})=>[l(V(a.notified_at_text||"-"),1)]),_:1}),e(u,{label:"失败原因",prop:"error","min-width":"200","show-overflow-tooltip":""},{default:o(({row:a})=>[a.status===3?(p(),w("span",Vt,V(a.error||"未知错误"),1)):(p(),w("span",xt,"-"))]),_:1}),e(u,{label:"操作",width:"120",fixed:"right",align:"center"},{default:o(({row:a})=>[!r.readOnly&&a.status===0&&a.can_cancel?T((p(),h(_,{key:0,link:"",type:"danger",onClick:Tt=>U(a)},{default:o(()=>[...t[13]||(t[13]=[l(" 取消 ",-1)])]),_:1},8,["onClick"])),[[E,x]]):(p(),w("span",Dt,"-"))]),_:1})]),_:1},8,["data"])),[[X,n(s).loading]]),N("div",Ct,[e(H,{modelValue:n(s),"onUpdate:modelValue":t[1]||(t[1]=a=>A(s)?s.value=a:null),onChange:m},null,8,["modelValue"])]),e(Q,{modelValue:n(f),"onUpdate:modelValue":t[5]||(t[5]=a=>A(f)?f.value=a:null),title:"新增待办",width:"520px","close-on-click-modal":!1},{footer:o(()=>[e(_,{onClick:t[4]||(t[4]=a=>f.value=!1)},{default:o(()=>[...t[15]||(t[15]=[l("取消",-1)])]),_:1}),e(_,{type:"primary",loading:n(D),onClick:O},{default:o(()=>[...t[16]||(t[16]=[l(" 提交 ",-1)])]),_:1},8,["loading"])]),default:o(()=>[e(J,{ref_key:"addFormRef",ref:b,model:n(d),rules:M,"label-width":"100px"},{default:o(()=>[e(C,{label:"提醒时间",prop:"remindAt"},{default:o(()=>[e(W,{modelValue:n(d).remindAt,"onUpdate:modelValue":t[2]||(t[2]=a=>n(d).remindAt=a),type:"datetime",placeholder:"选择提醒时间",format:"YYYY-MM-DD HH:mm","value-format":"x","disabled-date":P,class:"w-full"},null,8,["modelValue"])]),_:1}),e(C,{label:"提醒内容",prop:"content"},{default:o(()=>[e(q,{modelValue:n(d).content,"onUpdate:modelValue":t[3]||(t[3]=a=>n(d).content=a),type:"textarea",rows:4,maxlength:500,"show-word-limit":"",placeholder:"例:3 天后回访患者复测餐后血糖"},null,8,["modelValue"])]),_:1}),e(C,{label:"提醒人"},{default:o(()=>[...t[14]||(t[14]=[N("span",{class:"text-muted"},"企微推送给当前登录账号(创建人本人)",-1)])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),fe=ft(Nt,[["__scopeId","data-v-c136d72f"]]);export{fe as default}; +import{G as j,F as K,i as Z,N as tt,T as et,L as at,V as ot,D as it,B as st,a2 as lt,C as nt,M as rt}from"./element-plus-DFTWCWyi.js";import{_ as dt}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{V as mt,W as ut,X as pt}from"./tcm-DzAQc_oE.js";import{h as ct}from"./perm-CLhA0PJe.js";import{i as y,_ as ft}from"./index--WnM67ZH.js";import{f as _t,w as gt,as as vt,ak as p,I as w,J as N,aP as T,G as h,aN as o,O as l,a as e,A as bt,n as yt}from"./@vue/runtime-core-C6bnekPw.js";import{a as A,y as n,r as I,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const wt={class:"diagnosis-todo-list"},kt={class:"toolbar"},Vt={key:0,class:"text-danger"},xt={key:1},Dt={key:1,class:"text-muted"},Ct={class:"pagination-wrap"},Nt=_t({__name:"DiagnosisTodoList",props:{diagnosisId:{},patientId:{},patientName:{},readOnly:{type:Boolean}},setup(R,{expose:B}){const x=["tcm.diagnosis/dailyRecord"],r=R,v=bt(()=>ct(x)),s=I({page:1,size:15,count:0,loading:!1,lists:[]}),c=k(""),m=async()=>{if(!r.diagnosisId||Number(r.diagnosisId)<=0||!v.value){s.lists=[],s.count=0;return}s.loading=!0;try{const i={page_no:s.page,page_size:s.size,diagnosis_id:Number(r.diagnosisId)};c.value!==""&&c.value!==void 0&&(i.status=Number(c.value));const t=await mt(i);s.count=Number((t==null?void 0:t.count)??0),s.lists=Array.isArray(t==null?void 0:t.lists)?t.lists:[]}catch{s.lists=[],s.count=0}finally{s.loading=!1}};gt(()=>r.diagnosisId,()=>{s.page=1,m()},{immediate:!0});const F=()=>{s.page=1,m()},L=i=>{switch(Number(i)){case 0:return"info";case 1:return"success";case 2:return"warning";case 3:return"danger";default:return"info"}},f=k(!1),D=k(!1),b=k(),d=I({remindAt:"",content:""}),M={remindAt:[{required:!0,message:"请选择提醒时间",trigger:"change"}],content:[{required:!0,message:"请输入提醒内容",trigger:"blur"},{max:500,message:"内容最多 500 字",trigger:"blur"}]},P=i=>{const t=new Date;return t.setHours(0,0,0,0),i.getTime(){if(!r.diagnosisId||!v.value){y.msgWarning("诊单未保存,无法添加待办");return}d.remindAt="",d.content="",f.value=!0,yt(()=>{var i;return(i=b.value)==null?void 0:i.clearValidate()})},O=async()=>{if(!b.value||!await b.value.validate().catch(()=>!1))return;const t=Number(d.remindAt);if(!Number.isFinite(t)||t<=Date.now()+30*1e3){y.msgWarning("提醒时间必须晚于当前时间至少 30 秒");return}D.value=!0;try{await ut({diagnosis_id:Number(r.diagnosisId),content:d.content.trim(),remind_time:Math.floor(t/1e3)}),f.value=!1,m()}catch{}finally{D.value=!1}},U=async i=>{if(!(!v.value||r.readOnly)){try{await y.confirm(`确认取消「${i.remind_time_text} · ${Y(i.content,30)}」吗?`)}catch{return}try{await pt({id:Number(i.id)}),y.msgSuccess("已取消"),m()}catch{}}},Y=(i,t)=>i?i.length>t?i.slice(0,t)+"...":i:"";return B({refresh:m}),(i,t)=>{const _=Z,g=K,$=j,u=tt,z=et,G=rt,H=dt,W=lt,C=st,q=nt,J=it,Q=ot,E=vt("perms"),X=at;return p(),w("div",wt,[N("div",kt,[T((p(),h(_,{type:"primary",disabled:!r.diagnosisId||!v.value,onClick:S},{default:o(()=>[...t[6]||(t[6]=[l(" + 新增待办 ",-1)])]),_:1},8,["disabled"])),[[E,x]]),e($,{modelValue:n(c),"onUpdate:modelValue":t[0]||(t[0]=a=>A(c)?c.value=a:null),class:"ml-3",onChange:F},{default:o(()=>[e(g,{value:""},{default:o(()=>[...t[7]||(t[7]=[l("全部",-1)])]),_:1}),e(g,{value:0},{default:o(()=>[...t[8]||(t[8]=[l("待执行",-1)])]),_:1}),e(g,{value:1},{default:o(()=>[...t[9]||(t[9]=[l("已发送",-1)])]),_:1}),e(g,{value:3},{default:o(()=>[...t[10]||(t[10]=[l("失败",-1)])]),_:1}),e(g,{value:2},{default:o(()=>[...t[11]||(t[11]=[l("已取消",-1)])]),_:1})]),_:1},8,["modelValue"]),e(_,{class:"ml-3",onClick:m},{default:o(()=>[...t[12]||(t[12]=[l("刷新",-1)])]),_:1})]),T((p(),h(G,{data:n(s).lists,border:"",class:"todo-table","empty-text":"暂无待办","row-key":"id"},{default:o(()=>[e(u,{label:"提醒时间",prop:"remind_time_text",width:"160"}),e(u,{label:"内容",prop:"content","min-width":"240","show-overflow-tooltip":""}),e(u,{label:"状态",width:"110",align:"center"},{default:o(({row:a})=>[e(z,{type:L(a.status),effect:"light",size:"small"},{default:o(()=>[l(V(a.status_text),1)]),_:2},1032,["type"])]),_:1}),e(u,{label:"创建人",prop:"creator_name",width:"120"},{default:o(({row:a})=>[l(V(a.creator_name||"-"),1)]),_:1}),e(u,{label:"推送时间",prop:"notified_at_text",width:"160"},{default:o(({row:a})=>[l(V(a.notified_at_text||"-"),1)]),_:1}),e(u,{label:"失败原因",prop:"error","min-width":"200","show-overflow-tooltip":""},{default:o(({row:a})=>[a.status===3?(p(),w("span",Vt,V(a.error||"未知错误"),1)):(p(),w("span",xt,"-"))]),_:1}),e(u,{label:"操作",width:"120",fixed:"right",align:"center"},{default:o(({row:a})=>[!r.readOnly&&a.status===0&&a.can_cancel?T((p(),h(_,{key:0,link:"",type:"danger",onClick:Tt=>U(a)},{default:o(()=>[...t[13]||(t[13]=[l(" 取消 ",-1)])]),_:1},8,["onClick"])),[[E,x]]):(p(),w("span",Dt,"-"))]),_:1})]),_:1},8,["data"])),[[X,n(s).loading]]),N("div",Ct,[e(H,{modelValue:n(s),"onUpdate:modelValue":t[1]||(t[1]=a=>A(s)?s.value=a:null),onChange:m},null,8,["modelValue"])]),e(Q,{modelValue:n(f),"onUpdate:modelValue":t[5]||(t[5]=a=>A(f)?f.value=a:null),title:"新增待办",width:"520px","close-on-click-modal":!1},{footer:o(()=>[e(_,{onClick:t[4]||(t[4]=a=>f.value=!1)},{default:o(()=>[...t[15]||(t[15]=[l("取消",-1)])]),_:1}),e(_,{type:"primary",loading:n(D),onClick:O},{default:o(()=>[...t[16]||(t[16]=[l(" 提交 ",-1)])]),_:1},8,["loading"])]),default:o(()=>[e(J,{ref_key:"addFormRef",ref:b,model:n(d),rules:M,"label-width":"100px"},{default:o(()=>[e(C,{label:"提醒时间",prop:"remindAt"},{default:o(()=>[e(W,{modelValue:n(d).remindAt,"onUpdate:modelValue":t[2]||(t[2]=a=>n(d).remindAt=a),type:"datetime",placeholder:"选择提醒时间",format:"YYYY-MM-DD HH:mm","value-format":"x","disabled-date":P,class:"w-full"},null,8,["modelValue"])]),_:1}),e(C,{label:"提醒内容",prop:"content"},{default:o(()=>[e(q,{modelValue:n(d).content,"onUpdate:modelValue":t[3]||(t[3]=a=>n(d).content=a),type:"textarea",rows:4,maxlength:500,"show-word-limit":"",placeholder:"例:3 天后回访患者复测餐后血糖"},null,8,["modelValue"])]),_:1}),e(C,{label:"提醒人"},{default:o(()=>[...t[14]||(t[14]=[N("span",{class:"text-muted"},"企微推送给当前登录账号(创建人本人)",-1)])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),fe=ft(Nt,[["__scopeId","data-v-c136d72f"]]);export{fe as default}; diff --git a/server/public/admin/assets/DietRecordList-BLgHlUXr.js b/server/public/admin/assets/DietRecordList-B-dv93xh.js similarity index 94% rename from server/public/admin/assets/DietRecordList-BLgHlUXr.js rename to server/public/admin/assets/DietRecordList-B-dv93xh.js index 70e57d97..18d73255 100644 --- a/server/public/admin/assets/DietRecordList-BLgHlUXr.js +++ b/server/public/admin/assets/DietRecordList-B-dv93xh.js @@ -1 +1 @@ -import{i as T,N as Y,M as A,D as F,B as L,a2 as $,U as P,C as Q,V as q}from"./element-plus-DFTWCWyi.js";import{_ as G}from"./picker-cSgp8cEl.js";import{ac as H,ad as W,Q as j,R as z}from"./tcm-DCW3HTOw.js";import{i as c,_ as J}from"./index-Nt5zMHcc.js";import{f as K,b as X,w as Z,ak as r,I as m,a as t,aN as a,O as p,H as C,G as ee,A as te}from"./@vue/runtime-core-C6bnekPw.js";import{n as y,y as i,a as oe}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const le={class:"diet-record-list"},ae={key:0,class:"mb-4"},ie={key:0},de={key:1},ne={key:0},re={key:1},se={key:0},me={key:1},pe=K({__name:"DietRecordList",props:{diagnosisId:{type:Number,default:0},patientId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},setup(k){const d=k,x=y([]),u=y(!1),V=y(!1),D=te(()=>l.value.id?"编辑记录":"添加记录"),l=y({id:"",diagnosis_id:d.diagnosisId,patient_id:d.patientId,record_date:"",breakfast_foods:"",breakfast_images:[],lunch_foods:"",lunch_images:[],dinner_foods:"",dinner_images:[],note:""}),g=async()=>{if(!(!d.diagnosisId&&!d.patientId))try{const n=await H({diagnosis_id:d.diagnosisId,patient_id:d.patientId});x.value=n}catch(n){console.error("获取记录失败:",n)}},E=()=>{l.value={id:"",diagnosis_id:d.diagnosisId,patient_id:d.patientId,record_date:"",breakfast_foods:"",breakfast_images:[],lunch_foods:"",lunch_images:[],dinner_foods:"",dinner_images:[],note:""},u.value=!0},U=n=>{l.value={...n},u.value=!0},R=async n=>{await c.confirm("确定要删除这条记录吗?");try{await W({id:n.id}),c.msgSuccess("删除成功"),g()}catch(e){console.error("删除失败:",e)}},B=async()=>{if(!l.value.record_date){c.msgWarning("请选择记录日期");return}V.value=!0;try{l.value.id?(await j(l.value),c.msgSuccess("编辑成功")):(await z(l.value),c.msgSuccess("添加成功")),u.value=!1,g()}catch(n){console.error("提交失败:",n)}finally{V.value=!1}};return X(()=>{g()}),Z(()=>[d.diagnosisId,d.patientId],()=>{g()}),(n,e)=>{const _=T,f=Y,N=A,h=$,s=L,v=P,b=Q,w=G,S=F,M=q;return r(),m("div",le,[k.readOnly?C("",!0):(r(),m("div",ae,[t(_,{type:"primary",onClick:E},{default:a(()=>[...e[10]||(e[10]=[p("添加记录",-1)])]),_:1})])),t(N,{data:i(x),border:""},{default:a(()=>[t(f,{prop:"record_date",label:"记录日期",width:"120"}),t(f,{label:"早餐","min-width":"200"},{default:a(({row:o})=>[o.breakfast_foods?(r(),m("div",ie,I(o.breakfast_foods),1)):(r(),m("span",de,"-"))]),_:1}),t(f,{label:"午餐","min-width":"200"},{default:a(({row:o})=>[o.lunch_foods?(r(),m("div",ne,I(o.lunch_foods),1)):(r(),m("span",re,"-"))]),_:1}),t(f,{label:"晚餐","min-width":"200"},{default:a(({row:o})=>[o.dinner_foods?(r(),m("div",se,I(o.dinner_foods),1)):(r(),m("span",me,"-"))]),_:1}),t(f,{prop:"note",label:"备注","show-overflow-tooltip":""}),k.readOnly?C("",!0):(r(),ee(f,{key:0,label:"操作",width:"150",fixed:"right"},{default:a(({row:o})=>[t(_,{link:"",type:"primary",onClick:O=>U(o)},{default:a(()=>[...e[11]||(e[11]=[p("编辑",-1)])]),_:1},8,["onClick"]),t(_,{link:"",type:"danger",onClick:O=>R(o)},{default:a(()=>[...e[12]||(e[12]=[p("删除",-1)])]),_:1},8,["onClick"])]),_:1}))]),_:1},8,["data"]),t(M,{modelValue:i(u),"onUpdate:modelValue":e[9]||(e[9]=o=>oe(u)?u.value=o:null),title:i(D),width:"800px"},{footer:a(()=>[t(_,{onClick:e[8]||(e[8]=o=>u.value=!1)},{default:a(()=>[...e[16]||(e[16]=[p("取消",-1)])]),_:1}),t(_,{type:"primary",onClick:B,loading:i(V)},{default:a(()=>[...e[17]||(e[17]=[p("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(S,{model:i(l),"label-width":"100px"},{default:a(()=>[t(s,{label:"记录日期",required:""},{default:a(()=>[t(h,{modelValue:i(l).record_date,"onUpdate:modelValue":e[0]||(e[0]=o=>i(l).record_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),t(v,{"content-position":"left"},{default:a(()=>[...e[13]||(e[13]=[p("早餐",-1)])]),_:1}),t(s,{label:"食物描述"},{default:a(()=>[t(b,{modelValue:i(l).breakfast_foods,"onUpdate:modelValue":e[1]||(e[1]=o=>i(l).breakfast_foods=o),type:"textarea",rows:2,placeholder:"请输入早餐食物"},null,8,["modelValue"])]),_:1}),t(s,{label:"图片"},{default:a(()=>[t(w,{modelValue:i(l).breakfast_images,"onUpdate:modelValue":e[2]||(e[2]=o=>i(l).breakfast_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),t(v,{"content-position":"left"},{default:a(()=>[...e[14]||(e[14]=[p("午餐",-1)])]),_:1}),t(s,{label:"食物描述"},{default:a(()=>[t(b,{modelValue:i(l).lunch_foods,"onUpdate:modelValue":e[3]||(e[3]=o=>i(l).lunch_foods=o),type:"textarea",rows:2,placeholder:"请输入午餐食物"},null,8,["modelValue"])]),_:1}),t(s,{label:"图片"},{default:a(()=>[t(w,{modelValue:i(l).lunch_images,"onUpdate:modelValue":e[4]||(e[4]=o=>i(l).lunch_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),t(v,{"content-position":"left"},{default:a(()=>[...e[15]||(e[15]=[p("晚餐",-1)])]),_:1}),t(s,{label:"食物描述"},{default:a(()=>[t(b,{modelValue:i(l).dinner_foods,"onUpdate:modelValue":e[5]||(e[5]=o=>i(l).dinner_foods=o),type:"textarea",rows:2,placeholder:"请输入晚餐食物"},null,8,["modelValue"])]),_:1}),t(s,{label:"图片"},{default:a(()=>[t(w,{modelValue:i(l).dinner_images,"onUpdate:modelValue":e[6]||(e[6]=o=>i(l).dinner_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),t(s,{label:"备注"},{default:a(()=>[t(b,{modelValue:i(l).note,"onUpdate:modelValue":e[7]||(e[7]=o=>i(l).note=o),type:"textarea",rows:3,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),pt=J(pe,[["__scopeId","data-v-7c66f363"]]);export{pt as default}; +import{i as T,N as Y,M as A,D as F,B as L,a2 as $,U as P,C as Q,V as q}from"./element-plus-DFTWCWyi.js";import{_ as G}from"./picker-DzCeqD7m.js";import{ac as H,ad as W,Q as j,R as z}from"./tcm-DzAQc_oE.js";import{i as c,_ as J}from"./index--WnM67ZH.js";import{f as K,b as X,w as Z,ak as r,I as m,a as t,aN as a,O as p,H as C,G as ee,A as te}from"./@vue/runtime-core-C6bnekPw.js";import{n as y,y as i,a as oe}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const le={class:"diet-record-list"},ae={key:0,class:"mb-4"},ie={key:0},de={key:1},ne={key:0},re={key:1},se={key:0},me={key:1},pe=K({__name:"DietRecordList",props:{diagnosisId:{type:Number,default:0},patientId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},setup(k){const d=k,x=y([]),u=y(!1),V=y(!1),D=te(()=>l.value.id?"编辑记录":"添加记录"),l=y({id:"",diagnosis_id:d.diagnosisId,patient_id:d.patientId,record_date:"",breakfast_foods:"",breakfast_images:[],lunch_foods:"",lunch_images:[],dinner_foods:"",dinner_images:[],note:""}),g=async()=>{if(!(!d.diagnosisId&&!d.patientId))try{const n=await H({diagnosis_id:d.diagnosisId,patient_id:d.patientId});x.value=n}catch(n){console.error("获取记录失败:",n)}},E=()=>{l.value={id:"",diagnosis_id:d.diagnosisId,patient_id:d.patientId,record_date:"",breakfast_foods:"",breakfast_images:[],lunch_foods:"",lunch_images:[],dinner_foods:"",dinner_images:[],note:""},u.value=!0},U=n=>{l.value={...n},u.value=!0},R=async n=>{await c.confirm("确定要删除这条记录吗?");try{await W({id:n.id}),c.msgSuccess("删除成功"),g()}catch(e){console.error("删除失败:",e)}},B=async()=>{if(!l.value.record_date){c.msgWarning("请选择记录日期");return}V.value=!0;try{l.value.id?(await j(l.value),c.msgSuccess("编辑成功")):(await z(l.value),c.msgSuccess("添加成功")),u.value=!1,g()}catch(n){console.error("提交失败:",n)}finally{V.value=!1}};return X(()=>{g()}),Z(()=>[d.diagnosisId,d.patientId],()=>{g()}),(n,e)=>{const _=T,f=Y,N=A,h=$,s=L,v=P,b=Q,w=G,S=F,M=q;return r(),m("div",le,[k.readOnly?C("",!0):(r(),m("div",ae,[t(_,{type:"primary",onClick:E},{default:a(()=>[...e[10]||(e[10]=[p("添加记录",-1)])]),_:1})])),t(N,{data:i(x),border:""},{default:a(()=>[t(f,{prop:"record_date",label:"记录日期",width:"120"}),t(f,{label:"早餐","min-width":"200"},{default:a(({row:o})=>[o.breakfast_foods?(r(),m("div",ie,I(o.breakfast_foods),1)):(r(),m("span",de,"-"))]),_:1}),t(f,{label:"午餐","min-width":"200"},{default:a(({row:o})=>[o.lunch_foods?(r(),m("div",ne,I(o.lunch_foods),1)):(r(),m("span",re,"-"))]),_:1}),t(f,{label:"晚餐","min-width":"200"},{default:a(({row:o})=>[o.dinner_foods?(r(),m("div",se,I(o.dinner_foods),1)):(r(),m("span",me,"-"))]),_:1}),t(f,{prop:"note",label:"备注","show-overflow-tooltip":""}),k.readOnly?C("",!0):(r(),ee(f,{key:0,label:"操作",width:"150",fixed:"right"},{default:a(({row:o})=>[t(_,{link:"",type:"primary",onClick:O=>U(o)},{default:a(()=>[...e[11]||(e[11]=[p("编辑",-1)])]),_:1},8,["onClick"]),t(_,{link:"",type:"danger",onClick:O=>R(o)},{default:a(()=>[...e[12]||(e[12]=[p("删除",-1)])]),_:1},8,["onClick"])]),_:1}))]),_:1},8,["data"]),t(M,{modelValue:i(u),"onUpdate:modelValue":e[9]||(e[9]=o=>oe(u)?u.value=o:null),title:i(D),width:"800px"},{footer:a(()=>[t(_,{onClick:e[8]||(e[8]=o=>u.value=!1)},{default:a(()=>[...e[16]||(e[16]=[p("取消",-1)])]),_:1}),t(_,{type:"primary",onClick:B,loading:i(V)},{default:a(()=>[...e[17]||(e[17]=[p("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(S,{model:i(l),"label-width":"100px"},{default:a(()=>[t(s,{label:"记录日期",required:""},{default:a(()=>[t(h,{modelValue:i(l).record_date,"onUpdate:modelValue":e[0]||(e[0]=o=>i(l).record_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),t(v,{"content-position":"left"},{default:a(()=>[...e[13]||(e[13]=[p("早餐",-1)])]),_:1}),t(s,{label:"食物描述"},{default:a(()=>[t(b,{modelValue:i(l).breakfast_foods,"onUpdate:modelValue":e[1]||(e[1]=o=>i(l).breakfast_foods=o),type:"textarea",rows:2,placeholder:"请输入早餐食物"},null,8,["modelValue"])]),_:1}),t(s,{label:"图片"},{default:a(()=>[t(w,{modelValue:i(l).breakfast_images,"onUpdate:modelValue":e[2]||(e[2]=o=>i(l).breakfast_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),t(v,{"content-position":"left"},{default:a(()=>[...e[14]||(e[14]=[p("午餐",-1)])]),_:1}),t(s,{label:"食物描述"},{default:a(()=>[t(b,{modelValue:i(l).lunch_foods,"onUpdate:modelValue":e[3]||(e[3]=o=>i(l).lunch_foods=o),type:"textarea",rows:2,placeholder:"请输入午餐食物"},null,8,["modelValue"])]),_:1}),t(s,{label:"图片"},{default:a(()=>[t(w,{modelValue:i(l).lunch_images,"onUpdate:modelValue":e[4]||(e[4]=o=>i(l).lunch_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),t(v,{"content-position":"left"},{default:a(()=>[...e[15]||(e[15]=[p("晚餐",-1)])]),_:1}),t(s,{label:"食物描述"},{default:a(()=>[t(b,{modelValue:i(l).dinner_foods,"onUpdate:modelValue":e[5]||(e[5]=o=>i(l).dinner_foods=o),type:"textarea",rows:2,placeholder:"请输入晚餐食物"},null,8,["modelValue"])]),_:1}),t(s,{label:"图片"},{default:a(()=>[t(w,{modelValue:i(l).dinner_images,"onUpdate:modelValue":e[6]||(e[6]=o=>i(l).dinner_images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),t(s,{label:"备注"},{default:a(()=>[t(b,{modelValue:i(l).note,"onUpdate:modelValue":e[7]||(e[7]=o=>i(l).note=o),type:"textarea",rows:3,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),pt=J(pe,[["__scopeId","data-v-7c66f363"]]);export{pt as default}; diff --git a/server/public/admin/assets/ExerciseRecordList-BNnQ9qPN.js b/server/public/admin/assets/ExerciseRecordList-CLofvORP.js similarity index 94% rename from server/public/admin/assets/ExerciseRecordList-BNnQ9qPN.js rename to server/public/admin/assets/ExerciseRecordList-CLofvORP.js index b84c453a..bbfbf10a 100644 --- a/server/public/admin/assets/ExerciseRecordList-BNnQ9qPN.js +++ b/server/public/admin/assets/ExerciseRecordList-CLofvORP.js @@ -1 +1 @@ -import{i as L,N as P,M as W,D as $,B as h,a2 as Q,P as G,Q as H,h as j,C as z,V as J}from"./element-plus-DFTWCWyi.js";import{_ as K}from"./picker-cSgp8cEl.js";import{ae as X,af as Z,S as ee,T as te}from"./tcm-DCW3HTOw.js";import{i as p,_ as le}from"./index-Nt5zMHcc.js";import{f as oe,b as ae,w as ie,ak as g,I as w,a as e,aN as a,O as u,H as k,G as re,A as ne}from"./@vue/runtime-core-C6bnekPw.js";import{n as b,y as i,a as de}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const se={class:"exercise-record-list"},me={key:0,class:"mb-4"},pe=oe({__name:"ExerciseRecordList",props:{diagnosisId:{type:Number,default:0},patientId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},setup(y){const n=y,V=b([]),s=b(!1),v=b(!1),E=ne(()=>l.value.id?"编辑记录":"添加记录"),l=b({id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",exercise_type:"",duration:0,intensity:1,images:[],note:""}),C=[{label:"低强度",value:1},{label:"中强度",value:2},{label:"高强度",value:3}],D=r=>{const t=C.find(m=>m.value===r);return t?t.label:"未知"},f=async()=>{if(!(!n.diagnosisId&&!n.patientId))try{const r=await X({diagnosis_id:n.diagnosisId,patient_id:n.patientId});V.value=r}catch(r){console.error("获取记录失败:",r)}},N=()=>{l.value={id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",exercise_type:"",duration:0,intensity:1,images:[],note:""},s.value=!0},R=r=>{l.value={...r},s.value=!0},B=async r=>{await p.confirm("确定要删除这条记录吗?");try{await Z({id:r.id}),p.msgSuccess("删除成功"),f()}catch(t){console.error("删除失败:",t)}},S=async()=>{if(!l.value.record_date){p.msgWarning("请选择记录日期");return}if(!l.value.exercise_type){p.msgWarning("请选择运动类型");return}if(!l.value.duration){p.msgWarning("请输入运动时长");return}v.value=!0;try{l.value.id?(await ee(l.value),p.msgSuccess("编辑成功")):(await te(l.value),p.msgSuccess("添加成功")),s.value=!1,f()}catch(r){console.error("提交失败:",r)}finally{v.value=!1}};return ae(()=>{f()}),ie(()=>[n.diagnosisId,n.patientId],()=>{f()}),(r,t)=>{const m=L,c=P,U=W,O=Q,_=h,d=H,x=G,T=j,q=K,M=z,Y=$,A=J;return g(),w("div",se,[y.readOnly?k("",!0):(g(),w("div",me,[e(m,{type:"primary",onClick:N},{default:a(()=>[...t[8]||(t[8]=[u("添加记录",-1)])]),_:1})])),e(U,{data:i(V),border:"",style:{width:"100%"}},{default:a(()=>[e(c,{prop:"record_date",label:"记录日期",width:"120"}),e(c,{prop:"exercise_type",label:"运动类型",width:"150"}),e(c,{prop:"duration",label:"运动时长",width:"100"},{default:a(({row:o})=>[u(I(o.duration)+" 分钟 ",1)]),_:1}),e(c,{label:"运动强度",width:"100"},{default:a(({row:o})=>[u(I(D(o.intensity)),1)]),_:1}),e(c,{prop:"note",label:"备注","show-overflow-tooltip":""}),y.readOnly?k("",!0):(g(),re(c,{key:0,label:"操作",width:"150",fixed:"right"},{default:a(({row:o})=>[e(m,{link:"",type:"primary",onClick:F=>R(o)},{default:a(()=>[...t[9]||(t[9]=[u("编辑",-1)])]),_:1},8,["onClick"]),e(m,{link:"",type:"danger",onClick:F=>B(o)},{default:a(()=>[...t[10]||(t[10]=[u("删除",-1)])]),_:1},8,["onClick"])]),_:1}))]),_:1},8,["data"]),e(A,{modelValue:i(s),"onUpdate:modelValue":t[7]||(t[7]=o=>de(s)?s.value=o:null),title:i(E),width:"600px"},{footer:a(()=>[e(m,{onClick:t[6]||(t[6]=o=>s.value=!1)},{default:a(()=>[...t[11]||(t[11]=[u("取消",-1)])]),_:1}),e(m,{type:"primary",onClick:S,loading:i(v)},{default:a(()=>[...t[12]||(t[12]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[e(Y,{model:i(l),"label-width":"120px"},{default:a(()=>[e(_,{label:"记录日期",required:""},{default:a(()=>[e(O,{modelValue:i(l).record_date,"onUpdate:modelValue":t[0]||(t[0]=o=>i(l).record_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),e(_,{label:"运动类型",required:""},{default:a(()=>[e(x,{modelValue:i(l).exercise_type,"onUpdate:modelValue":t[1]||(t[1]=o=>i(l).exercise_type=o),placeholder:"请选择运动类型",class:"w-full"},{default:a(()=>[e(d,{label:"散步",value:"散步"}),e(d,{label:"慢跑",value:"慢跑"}),e(d,{label:"游泳",value:"游泳"}),e(d,{label:"瑜伽",value:"瑜伽"}),e(d,{label:"骑自行车",value:"骑自行车"}),e(d,{label:"打太极拳",value:"打太极拳"}),e(d,{label:"其他",value:"其他"})]),_:1},8,["modelValue"])]),_:1}),e(_,{label:"运动时长(分钟)",required:""},{default:a(()=>[e(T,{modelValue:i(l).duration,"onUpdate:modelValue":t[2]||(t[2]=o=>i(l).duration=o),min:0,max:300,placeholder:"请输入运动时长"},null,8,["modelValue"])]),_:1}),e(_,{label:"运动强度",required:""},{default:a(()=>[e(x,{modelValue:i(l).intensity,"onUpdate:modelValue":t[3]||(t[3]=o=>i(l).intensity=o),placeholder:"请选择运动强度",class:"w-full"},{default:a(()=>[e(d,{label:"低强度",value:1}),e(d,{label:"中强度",value:2}),e(d,{label:"高强度",value:3})]),_:1},8,["modelValue"])]),_:1}),e(_,{label:"运动图片"},{default:a(()=>[e(q,{modelValue:i(l).images,"onUpdate:modelValue":t[4]||(t[4]=o=>i(l).images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),e(_,{label:"备注"},{default:a(()=>[e(M,{modelValue:i(l).note,"onUpdate:modelValue":t[5]||(t[5]=o=>i(l).note=o),type:"textarea",rows:3,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),pt=le(pe,[["__scopeId","data-v-ab6f0ec7"]]);export{pt as default}; +import{i as L,N as P,M as W,D as $,B as h,a2 as Q,P as G,Q as H,h as j,C as z,V as J}from"./element-plus-DFTWCWyi.js";import{_ as K}from"./picker-DzCeqD7m.js";import{ae as X,af as Z,S as ee,T as te}from"./tcm-DzAQc_oE.js";import{i as p,_ as le}from"./index--WnM67ZH.js";import{f as oe,b as ae,w as ie,ak as g,I as w,a as e,aN as a,O as u,H as k,G as re,A as ne}from"./@vue/runtime-core-C6bnekPw.js";import{n as b,y as i,a as de}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const se={class:"exercise-record-list"},me={key:0,class:"mb-4"},pe=oe({__name:"ExerciseRecordList",props:{diagnosisId:{type:Number,default:0},patientId:{type:Number,default:0},readOnly:{type:Boolean,default:!1}},setup(y){const n=y,V=b([]),s=b(!1),v=b(!1),E=ne(()=>l.value.id?"编辑记录":"添加记录"),l=b({id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",exercise_type:"",duration:0,intensity:1,images:[],note:""}),C=[{label:"低强度",value:1},{label:"中强度",value:2},{label:"高强度",value:3}],D=r=>{const t=C.find(m=>m.value===r);return t?t.label:"未知"},f=async()=>{if(!(!n.diagnosisId&&!n.patientId))try{const r=await X({diagnosis_id:n.diagnosisId,patient_id:n.patientId});V.value=r}catch(r){console.error("获取记录失败:",r)}},N=()=>{l.value={id:"",diagnosis_id:n.diagnosisId,patient_id:n.patientId,record_date:"",exercise_type:"",duration:0,intensity:1,images:[],note:""},s.value=!0},R=r=>{l.value={...r},s.value=!0},B=async r=>{await p.confirm("确定要删除这条记录吗?");try{await Z({id:r.id}),p.msgSuccess("删除成功"),f()}catch(t){console.error("删除失败:",t)}},S=async()=>{if(!l.value.record_date){p.msgWarning("请选择记录日期");return}if(!l.value.exercise_type){p.msgWarning("请选择运动类型");return}if(!l.value.duration){p.msgWarning("请输入运动时长");return}v.value=!0;try{l.value.id?(await ee(l.value),p.msgSuccess("编辑成功")):(await te(l.value),p.msgSuccess("添加成功")),s.value=!1,f()}catch(r){console.error("提交失败:",r)}finally{v.value=!1}};return ae(()=>{f()}),ie(()=>[n.diagnosisId,n.patientId],()=>{f()}),(r,t)=>{const m=L,c=P,U=W,O=Q,_=h,d=H,x=G,T=j,q=K,M=z,Y=$,A=J;return g(),w("div",se,[y.readOnly?k("",!0):(g(),w("div",me,[e(m,{type:"primary",onClick:N},{default:a(()=>[...t[8]||(t[8]=[u("添加记录",-1)])]),_:1})])),e(U,{data:i(V),border:"",style:{width:"100%"}},{default:a(()=>[e(c,{prop:"record_date",label:"记录日期",width:"120"}),e(c,{prop:"exercise_type",label:"运动类型",width:"150"}),e(c,{prop:"duration",label:"运动时长",width:"100"},{default:a(({row:o})=>[u(I(o.duration)+" 分钟 ",1)]),_:1}),e(c,{label:"运动强度",width:"100"},{default:a(({row:o})=>[u(I(D(o.intensity)),1)]),_:1}),e(c,{prop:"note",label:"备注","show-overflow-tooltip":""}),y.readOnly?k("",!0):(g(),re(c,{key:0,label:"操作",width:"150",fixed:"right"},{default:a(({row:o})=>[e(m,{link:"",type:"primary",onClick:F=>R(o)},{default:a(()=>[...t[9]||(t[9]=[u("编辑",-1)])]),_:1},8,["onClick"]),e(m,{link:"",type:"danger",onClick:F=>B(o)},{default:a(()=>[...t[10]||(t[10]=[u("删除",-1)])]),_:1},8,["onClick"])]),_:1}))]),_:1},8,["data"]),e(A,{modelValue:i(s),"onUpdate:modelValue":t[7]||(t[7]=o=>de(s)?s.value=o:null),title:i(E),width:"600px"},{footer:a(()=>[e(m,{onClick:t[6]||(t[6]=o=>s.value=!1)},{default:a(()=>[...t[11]||(t[11]=[u("取消",-1)])]),_:1}),e(m,{type:"primary",onClick:S,loading:i(v)},{default:a(()=>[...t[12]||(t[12]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[e(Y,{model:i(l),"label-width":"120px"},{default:a(()=>[e(_,{label:"记录日期",required:""},{default:a(()=>[e(O,{modelValue:i(l).record_date,"onUpdate:modelValue":t[0]||(t[0]=o=>i(l).record_date=o),type:"date",placeholder:"选择日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),e(_,{label:"运动类型",required:""},{default:a(()=>[e(x,{modelValue:i(l).exercise_type,"onUpdate:modelValue":t[1]||(t[1]=o=>i(l).exercise_type=o),placeholder:"请选择运动类型",class:"w-full"},{default:a(()=>[e(d,{label:"散步",value:"散步"}),e(d,{label:"慢跑",value:"慢跑"}),e(d,{label:"游泳",value:"游泳"}),e(d,{label:"瑜伽",value:"瑜伽"}),e(d,{label:"骑自行车",value:"骑自行车"}),e(d,{label:"打太极拳",value:"打太极拳"}),e(d,{label:"其他",value:"其他"})]),_:1},8,["modelValue"])]),_:1}),e(_,{label:"运动时长(分钟)",required:""},{default:a(()=>[e(T,{modelValue:i(l).duration,"onUpdate:modelValue":t[2]||(t[2]=o=>i(l).duration=o),min:0,max:300,placeholder:"请输入运动时长"},null,8,["modelValue"])]),_:1}),e(_,{label:"运动强度",required:""},{default:a(()=>[e(x,{modelValue:i(l).intensity,"onUpdate:modelValue":t[3]||(t[3]=o=>i(l).intensity=o),placeholder:"请选择运动强度",class:"w-full"},{default:a(()=>[e(d,{label:"低强度",value:1}),e(d,{label:"中强度",value:2}),e(d,{label:"高强度",value:3})]),_:1},8,["modelValue"])]),_:1}),e(_,{label:"运动图片"},{default:a(()=>[e(q,{modelValue:i(l).images,"onUpdate:modelValue":t[4]||(t[4]=o=>i(l).images=o),limit:3,type:"image"},null,8,["modelValue"])]),_:1}),e(_,{label:"备注"},{default:a(()=>[e(M,{modelValue:i(l).note,"onUpdate:modelValue":t[5]||(t[5]=o=>i(l).note=o),type:"textarea",rows:3,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),pt=le(pe,[["__scopeId","data-v-ab6f0ec7"]]);export{pt as default}; diff --git a/server/public/admin/assets/ImChatRecordPanel-DpRXSwhQ.js b/server/public/admin/assets/ImChatRecordPanel-yVs1ANxt.js similarity index 97% rename from server/public/admin/assets/ImChatRecordPanel-DpRXSwhQ.js rename to server/public/admin/assets/ImChatRecordPanel-yVs1ANxt.js index 5856f6ec..ca6540fb 100644 --- a/server/public/admin/assets/ImChatRecordPanel-DpRXSwhQ.js +++ b/server/public/admin/assets/ImChatRecordPanel-yVs1ANxt.js @@ -1 +1 @@ -import{K as F,d as H,i as G,R as J,L as $,T as j,v as q,_ as K,E as x}from"./element-plus-DFTWCWyi.js";import{d as O}from"./dayjs-DG77mNTn.js";import{a9 as Q,L as W}from"./@element-plus/icons-vue-HOEUG8sr.js";import{ag as U,ah as X}from"./tcm-DCW3HTOw.js";import{p as Z}from"./im-business-message-parse-QKjFLn3X.js";import{f as tt,w as et,ak as s,I as o,a as l,aN as c,J as r,O as d,aP as at,F as E,ap as st,G as _,H as v,A as ot}from"./@vue/runtime-core-C6bnekPw.js";import{y as C,n as u,q as rt}from"./@vue/reactivity-DiY1c2vO.js";import{o as nt,Q as n}from"./@vue/shared-mAAVTE9n.js";import{_ as it}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const lt={class:"im-chat-record-panel"},ct={class:"toolbar mb-3"},mt={class:"chat-wrap"},dt={key:0,class:"chat-list"},pt={class:"meta"},_t={class:"name"},ut={class:"time"},ft={class:"bubble"},gt={key:0,class:"friendly-text"},yt={class:"friendly-main"},vt={key:0,class:"friendly-sub"},ht={key:1,class:"text-content"},wt={key:2,class:"text-content"},kt={key:3,class:"muted"},It=tt({__name:"ImChatRecordPanel",props:{diagnosisId:{}},setup(L,{expose:B}){const p=L,m=u(!1),f=u(!1),g=rt([]),M=u(""),y=u(""),N={text:"",image:"图片",file:"文件",sound:"语音",video:"视频",location:"位置",custom:"自定义",face:"表情",other:""},h=ot(()=>g.value.map(t=>{const a=P(t);let i="";return a!=null&&a.tag?i=a.tag:i=N[t.msg_type]||(t.msg_type!=="other"?t.msg_type:""),{raw:t,friendly:a,tag:i}}));function D(t){if(t==null||!t)return"—";const a=t>1e12?Math.floor(t/1e3):t;return O.unix(a).format("YYYY-MM-DD HH:mm:ss")}function P(t){const a=(t.text||"").trim();if(!a)return null;const i=a.startsWith("{")&&(/\bbusinessID\b/.test(a)||/\bcmd\b/.test(a));return t.msg_type==="custom"||i?Z(a):null}function R(t){return t.is_from_doctor?t.from_staff_name?`医生(${t.from_staff_name})`:"医生/员工":y.value?`患者(${y.value})`:"患者"}async function w(){if(p.diagnosisId){m.value=!0;try{const t=await U({diagnosis_id:p.diagnosisId,only_archived:1});g.value=(t==null?void 0:t.lists)||[],M.value=(t==null?void 0:t.patient_im_id)||"",y.value=(t==null?void 0:t.patient_name)||""}catch(t){console.error(t),g.value=[]}finally{m.value=!1}}}function k(){w()}async function S(){if(p.diagnosisId){f.value=!0;try{await X({diagnosis_id:p.diagnosisId}),x.success('已发起后台同步,几秒后请点击"重新加载已归档"查看新消息')}catch(t){console.error(t),x.error("发起同步失败")}finally{f.value=!1}}}return et(()=>p.diagnosisId,()=>{w()},{immediate:!0}),B({refresh:k}),(t,a)=>{const i=F,I=H,b=G,T=j,Y=q,A=K,V=J,z=$;return s(),o("div",lt,[l(i,{type:"info","show-icon":"",closable:!1,class:"mb-4",title:"说明"},{default:c(()=>[...a[0]||(a[0]=[r("p",{class:"panel-tip"},[d(" 展示单聊记录:已合并患者 与 "),r("strong",null,"所有医生 / 医助账号"),d("分别产生的会话,按时间排序。 数据由后台定时任务从腾讯云 IM 漫游消息同步至本地归档;点击下方按钮可立即触发后台同步。 ")],-1)])]),_:1}),r("div",ct,[l(b,{type:"primary",link:"",loading:f.value,onClick:S},{default:c(()=>[l(I,{class:"mr-1"},{default:c(()=>[l(C(Q))]),_:1}),a[1]||(a[1]=d(" 同步最新(后台异步) ",-1))]),_:1},8,["loading"]),l(b,{type:"primary",link:"",loading:m.value,onClick:k},{default:c(()=>[l(I,{class:"mr-1"},{default:c(()=>[l(C(W))]),_:1}),a[2]||(a[2]=d(" 重新加载已归档 ",-1))]),_:1},8,["loading"])]),at((s(),o("div",mt,[!m.value&&h.value.length?(s(),o("div",dt,[(s(!0),o(E,null,st(h.value,e=>(s(),o("div",{key:e.raw.msg_id,class:nt(["chat-row",e.raw.is_from_doctor?"from-doctor":"from-patient"])},[r("div",pt,[r("span",_t,n(R(e.raw)),1),r("span",ut,n(D(e.raw.time)),1),e.tag?(s(),_(T,{key:0,size:"small",type:"info",class:"ml-2"},{default:c(()=>[d(n(e.tag),1)]),_:2},1024)):v("",!0)]),r("div",ft,[e.raw.msg_type==="image"&&e.raw.image_url?(s(),_(Y,{key:0,src:e.raw.image_url,"preview-src-list":[e.raw.image_url],fit:"contain",class:"chat-img"},null,8,["src","preview-src-list"])):(e.raw.msg_type==="file"||e.raw.msg_type==="sound"||e.raw.msg_type==="video")&&e.raw.file_url?(s(),_(A,{key:1,href:e.raw.file_url,target:"_blank",type:"primary"},{default:c(()=>[d(n(e.raw.file_name||"打开文件"),1)]),_:2},1032,["href"])):(s(),o(E,{key:2},[e.friendly?(s(),o("div",gt,[r("div",yt,n(e.friendly.main),1),e.friendly.sub?(s(),o("div",vt,n(e.friendly.sub),1)):v("",!0)])):e.raw.msg_type==="text"&&e.raw.text?(s(),o("div",ht,n(e.raw.text),1)):e.raw.text?(s(),o("div",wt,n(e.raw.text),1)):(s(),o("span",kt,"(无法展示该消息类型)"))],64))])],2))),128))])):m.value?v("",!0):(s(),_(V,{key:1,description:"暂无 IM 聊天记录"}))])),[[z,m.value]])])}}}),le=it(It,[["__scopeId","data-v-58b699dd"]]);export{le as default}; +import{K as F,d as H,i as G,R as J,L as $,T as j,v as q,_ as K,E as x}from"./element-plus-DFTWCWyi.js";import{d as O}from"./dayjs-DG77mNTn.js";import{a9 as Q,L as W}from"./@element-plus/icons-vue-HOEUG8sr.js";import{ag as U,ah as X}from"./tcm-DzAQc_oE.js";import{p as Z}from"./im-business-message-parse-QKjFLn3X.js";import{f as tt,w as et,ak as s,I as o,a as l,aN as c,J as r,O as d,aP as at,F as E,ap as st,G as _,H as v,A as ot}from"./@vue/runtime-core-C6bnekPw.js";import{y as C,n as u,q as rt}from"./@vue/reactivity-DiY1c2vO.js";import{o as nt,Q as n}from"./@vue/shared-mAAVTE9n.js";import{_ as it}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const lt={class:"im-chat-record-panel"},ct={class:"toolbar mb-3"},mt={class:"chat-wrap"},dt={key:0,class:"chat-list"},pt={class:"meta"},_t={class:"name"},ut={class:"time"},ft={class:"bubble"},gt={key:0,class:"friendly-text"},yt={class:"friendly-main"},vt={key:0,class:"friendly-sub"},ht={key:1,class:"text-content"},wt={key:2,class:"text-content"},kt={key:3,class:"muted"},It=tt({__name:"ImChatRecordPanel",props:{diagnosisId:{}},setup(L,{expose:B}){const p=L,m=u(!1),f=u(!1),g=rt([]),M=u(""),y=u(""),N={text:"",image:"图片",file:"文件",sound:"语音",video:"视频",location:"位置",custom:"自定义",face:"表情",other:""},h=ot(()=>g.value.map(t=>{const a=P(t);let i="";return a!=null&&a.tag?i=a.tag:i=N[t.msg_type]||(t.msg_type!=="other"?t.msg_type:""),{raw:t,friendly:a,tag:i}}));function D(t){if(t==null||!t)return"—";const a=t>1e12?Math.floor(t/1e3):t;return O.unix(a).format("YYYY-MM-DD HH:mm:ss")}function P(t){const a=(t.text||"").trim();if(!a)return null;const i=a.startsWith("{")&&(/\bbusinessID\b/.test(a)||/\bcmd\b/.test(a));return t.msg_type==="custom"||i?Z(a):null}function R(t){return t.is_from_doctor?t.from_staff_name?`医生(${t.from_staff_name})`:"医生/员工":y.value?`患者(${y.value})`:"患者"}async function w(){if(p.diagnosisId){m.value=!0;try{const t=await U({diagnosis_id:p.diagnosisId,only_archived:1});g.value=(t==null?void 0:t.lists)||[],M.value=(t==null?void 0:t.patient_im_id)||"",y.value=(t==null?void 0:t.patient_name)||""}catch(t){console.error(t),g.value=[]}finally{m.value=!1}}}function k(){w()}async function S(){if(p.diagnosisId){f.value=!0;try{await X({diagnosis_id:p.diagnosisId}),x.success('已发起后台同步,几秒后请点击"重新加载已归档"查看新消息')}catch(t){console.error(t),x.error("发起同步失败")}finally{f.value=!1}}}return et(()=>p.diagnosisId,()=>{w()},{immediate:!0}),B({refresh:k}),(t,a)=>{const i=F,I=H,b=G,T=j,Y=q,A=K,V=J,z=$;return s(),o("div",lt,[l(i,{type:"info","show-icon":"",closable:!1,class:"mb-4",title:"说明"},{default:c(()=>[...a[0]||(a[0]=[r("p",{class:"panel-tip"},[d(" 展示单聊记录:已合并患者 与 "),r("strong",null,"所有医生 / 医助账号"),d("分别产生的会话,按时间排序。 数据由后台定时任务从腾讯云 IM 漫游消息同步至本地归档;点击下方按钮可立即触发后台同步。 ")],-1)])]),_:1}),r("div",ct,[l(b,{type:"primary",link:"",loading:f.value,onClick:S},{default:c(()=>[l(I,{class:"mr-1"},{default:c(()=>[l(C(Q))]),_:1}),a[1]||(a[1]=d(" 同步最新(后台异步) ",-1))]),_:1},8,["loading"]),l(b,{type:"primary",link:"",loading:m.value,onClick:k},{default:c(()=>[l(I,{class:"mr-1"},{default:c(()=>[l(C(W))]),_:1}),a[2]||(a[2]=d(" 重新加载已归档 ",-1))]),_:1},8,["loading"])]),at((s(),o("div",mt,[!m.value&&h.value.length?(s(),o("div",dt,[(s(!0),o(E,null,st(h.value,e=>(s(),o("div",{key:e.raw.msg_id,class:nt(["chat-row",e.raw.is_from_doctor?"from-doctor":"from-patient"])},[r("div",pt,[r("span",_t,n(R(e.raw)),1),r("span",ut,n(D(e.raw.time)),1),e.tag?(s(),_(T,{key:0,size:"small",type:"info",class:"ml-2"},{default:c(()=>[d(n(e.tag),1)]),_:2},1024)):v("",!0)]),r("div",ft,[e.raw.msg_type==="image"&&e.raw.image_url?(s(),_(Y,{key:0,src:e.raw.image_url,"preview-src-list":[e.raw.image_url],fit:"contain",class:"chat-img"},null,8,["src","preview-src-list"])):(e.raw.msg_type==="file"||e.raw.msg_type==="sound"||e.raw.msg_type==="video")&&e.raw.file_url?(s(),_(A,{key:1,href:e.raw.file_url,target:"_blank",type:"primary"},{default:c(()=>[d(n(e.raw.file_name||"打开文件"),1)]),_:2},1032,["href"])):(s(),o(E,{key:2},[e.friendly?(s(),o("div",gt,[r("div",yt,n(e.friendly.main),1),e.friendly.sub?(s(),o("div",vt,n(e.friendly.sub),1)):v("",!0)])):e.raw.msg_type==="text"&&e.raw.text?(s(),o("div",ht,n(e.raw.text),1)):e.raw.text?(s(),o("div",wt,n(e.raw.text),1)):(s(),o("span",kt,"(无法展示该消息类型)"))],64))])],2))),128))])):m.value?v("",!0):(s(),_(V,{key:1,description:"暂无 IM 聊天记录"}))])),[[z,m.value]])])}}}),le=it(It,[["__scopeId","data-v-58b699dd"]]);export{le as default}; diff --git a/server/public/admin/assets/MessageBubble-BalN4H2y.js b/server/public/admin/assets/MessageBubble-CApbg15I.js similarity index 97% rename from server/public/admin/assets/MessageBubble-BalN4H2y.js rename to server/public/admin/assets/MessageBubble-CApbg15I.js index 481c9879..a32ffe60 100644 --- a/server/public/admin/assets/MessageBubble-BalN4H2y.js +++ b/server/public/admin/assets/MessageBubble-CApbg15I.js @@ -1 +1 @@ -import{q as G,T as S,v as A,d as O,i as Q}from"./element-plus-DFTWCWyi.js";import{O as q,P as D,Q as H,G as J}from"./@element-plus/icons-vue-HOEUG8sr.js";import{t as K,_ as L}from"./index-Nt5zMHcc.js";import{f as P,ak as a,I as o,a as r,aN as c,O as d,J as i,G as g,H as x,F as U,A as u}from"./@vue/runtime-core-C6bnekPw.js";import{o as B,Q as n}from"./@vue/shared-mAAVTE9n.js";import{y as p}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const j={class:"msg-body"},R={class:"msg-meta"},W={class:"msg-sender"},X={class:"msg-time"},Y={key:0,class:"content-text"},Z={key:2,class:"content-pending"},ee=["src"],te={key:4,class:"content-pending"},se=["src"],ae={key:6,class:"content-pending"},ie={key:7,class:"content-file"},oe={class:"file-meta"},ne=["title"],le={class:"file-info"},me={key:8,class:"content-fallback"},re={class:"fallback-title"},ce={class:"fallback-desc"},ue=P({__name:"MessageBubble",props:{message:{}},setup(t){const l=t,w=u(()=>l.message.from_is_staff),m=u(()=>(l.message.media||[]).find(s=>s.status===1)??null),v=u(()=>{const e=l.message.from_profile;return e&&e.name||l.message.from_user}),z=u(()=>{const e=l.message.from_profile;return(e==null?void 0:e.avatar)||""}),F=u(()=>(v.value||"").slice(-2)||"?"),N=u(()=>{const e=l.message.msgtype;return e==="image"||e==="video"||e==="voice"?"bubble-media":e==="file"?"bubble-file":"bubble-text"}),C=u(()=>{switch(l.message.msgtype){case"link":return"[链接]";case"weapp":return"[小程序]";case"chatrecord":return"[聊天记录]";case"location":return"[位置]";case"card":return"[名片]";case"meeting":return"[会议]";case"docmsg":return"[文档]";case"mixed":return"[混合消息]";case"emotion":return"[表情]";default:return`[${l.message.msgtype}]`}});function E(e){return e?K(e*1e3,"mm-dd hh:MM"):""}function M(e){return e?e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/1024/1024).toFixed(2)} MB`:`${(e/1024/1024/1024).toFixed(2)} GB`:""}function $(e){window.open(e,"_blank","noopener")}return(e,s)=>{var k,y,b,h;const I=G,_=S,T=A,f=O,V=Q;return a(),o("div",{class:B(["msg-bubble",{"is-staff":w.value}])},[r(I,{class:"msg-avatar",size:36,src:z.value},{default:c(()=>[d(n(F.value),1)]),_:1},8,["src"]),i("div",j,[i("div",R,[i("span",W,n(v.value),1),i("span",X,n(E(t.message.send_time)),1),t.message.action==="recall"?(a(),g(_,{key:0,size:"small",type:"info"},{default:c(()=>[...s[1]||(s[1]=[d(" 已撤回 ",-1)])]),_:1})):x("",!0)]),i("div",{class:B(["msg-content",N.value])},[t.message.msgtype==="text"||t.message.msgtype==="markdown"?(a(),o("div",Y,n(t.message.content),1)):t.message.msgtype==="image"&&((k=m.value)!=null&&k.file_url)?(a(),g(T,{key:1,src:m.value.file_url,"preview-src-list":[m.value.file_url],fit:"contain",class:"content-image","hide-on-click-modal":""},null,8,["src","preview-src-list"])):t.message.msgtype==="image"?(a(),o("div",Z,[r(f,null,{default:c(()=>[r(p(q))]),_:1}),s[2]||(s[2]=i("span",null,"图片下载中…",-1))])):t.message.msgtype==="video"&&((y=m.value)!=null&&y.file_url)?(a(),o("video",{key:3,src:m.value.file_url,controls:"",class:"content-video"},null,8,ee)):t.message.msgtype==="video"?(a(),o("div",te,[r(f,null,{default:c(()=>[r(p(D))]),_:1}),s[3]||(s[3]=i("span",null,"视频下载中…",-1))])):t.message.msgtype==="voice"&&((b=m.value)!=null&&b.file_url)?(a(),o("audio",{key:5,src:m.value.file_url,controls:"",class:"content-audio"},null,8,se)):t.message.msgtype==="voice"?(a(),o("div",ae,[r(f,null,{default:c(()=>[r(p(H))]),_:1}),i("span",null,"语音下载中…("+n(t.message.play_length)+"s)",1)])):t.message.msgtype==="file"?(a(),o("div",ie,[r(f,{size:24},{default:c(()=>[r(p(J))]),_:1}),i("div",oe,[i("div",{class:"file-name",title:t.message.file_name},n(t.message.file_name||"未命名文件"),9,ne),i("div",le,[d(n(M(t.message.file_size))+" ",1),t.message.file_ext?(a(),o(U,{key:0},[d("· "+n(t.message.file_ext),1)],64)):x("",!0)])]),(h=m.value)!=null&&h.file_url?(a(),g(V,{key:0,size:"small",type:"primary",link:"",onClick:s[0]||(s[0]=de=>$(m.value.file_url))},{default:c(()=>[...s[4]||(s[4]=[d(" 下载 ",-1)])]),_:1})):(a(),g(_,{key:1,size:"small",type:"info"},{default:c(()=>[...s[5]||(s[5]=[d("下载中…",-1)])]),_:1}))])):(a(),o("div",me,[i("div",re,n(C.value),1),i("div",ce,n(t.message.content),1)]))],2)])],2)}}}),We=L(ue,[["__scopeId","data-v-b5ff1168"]]);export{We as default}; +import{q as G,T as S,v as A,d as O,i as Q}from"./element-plus-DFTWCWyi.js";import{O as q,P as D,Q as H,G as J}from"./@element-plus/icons-vue-HOEUG8sr.js";import{t as K,_ as L}from"./index--WnM67ZH.js";import{f as P,ak as a,I as o,a as r,aN as c,O as d,J as i,G as g,H as x,F as U,A as u}from"./@vue/runtime-core-C6bnekPw.js";import{o as B,Q as n}from"./@vue/shared-mAAVTE9n.js";import{y as p}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const j={class:"msg-body"},R={class:"msg-meta"},W={class:"msg-sender"},X={class:"msg-time"},Y={key:0,class:"content-text"},Z={key:2,class:"content-pending"},ee=["src"],te={key:4,class:"content-pending"},se=["src"],ae={key:6,class:"content-pending"},ie={key:7,class:"content-file"},oe={class:"file-meta"},ne=["title"],le={class:"file-info"},me={key:8,class:"content-fallback"},re={class:"fallback-title"},ce={class:"fallback-desc"},ue=P({__name:"MessageBubble",props:{message:{}},setup(t){const l=t,w=u(()=>l.message.from_is_staff),m=u(()=>(l.message.media||[]).find(s=>s.status===1)??null),v=u(()=>{const e=l.message.from_profile;return e&&e.name||l.message.from_user}),z=u(()=>{const e=l.message.from_profile;return(e==null?void 0:e.avatar)||""}),F=u(()=>(v.value||"").slice(-2)||"?"),N=u(()=>{const e=l.message.msgtype;return e==="image"||e==="video"||e==="voice"?"bubble-media":e==="file"?"bubble-file":"bubble-text"}),C=u(()=>{switch(l.message.msgtype){case"link":return"[链接]";case"weapp":return"[小程序]";case"chatrecord":return"[聊天记录]";case"location":return"[位置]";case"card":return"[名片]";case"meeting":return"[会议]";case"docmsg":return"[文档]";case"mixed":return"[混合消息]";case"emotion":return"[表情]";default:return`[${l.message.msgtype}]`}});function E(e){return e?K(e*1e3,"mm-dd hh:MM"):""}function M(e){return e?e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/1024/1024).toFixed(2)} MB`:`${(e/1024/1024/1024).toFixed(2)} GB`:""}function $(e){window.open(e,"_blank","noopener")}return(e,s)=>{var k,y,b,h;const I=G,_=S,T=A,f=O,V=Q;return a(),o("div",{class:B(["msg-bubble",{"is-staff":w.value}])},[r(I,{class:"msg-avatar",size:36,src:z.value},{default:c(()=>[d(n(F.value),1)]),_:1},8,["src"]),i("div",j,[i("div",R,[i("span",W,n(v.value),1),i("span",X,n(E(t.message.send_time)),1),t.message.action==="recall"?(a(),g(_,{key:0,size:"small",type:"info"},{default:c(()=>[...s[1]||(s[1]=[d(" 已撤回 ",-1)])]),_:1})):x("",!0)]),i("div",{class:B(["msg-content",N.value])},[t.message.msgtype==="text"||t.message.msgtype==="markdown"?(a(),o("div",Y,n(t.message.content),1)):t.message.msgtype==="image"&&((k=m.value)!=null&&k.file_url)?(a(),g(T,{key:1,src:m.value.file_url,"preview-src-list":[m.value.file_url],fit:"contain",class:"content-image","hide-on-click-modal":""},null,8,["src","preview-src-list"])):t.message.msgtype==="image"?(a(),o("div",Z,[r(f,null,{default:c(()=>[r(p(q))]),_:1}),s[2]||(s[2]=i("span",null,"图片下载中…",-1))])):t.message.msgtype==="video"&&((y=m.value)!=null&&y.file_url)?(a(),o("video",{key:3,src:m.value.file_url,controls:"",class:"content-video"},null,8,ee)):t.message.msgtype==="video"?(a(),o("div",te,[r(f,null,{default:c(()=>[r(p(D))]),_:1}),s[3]||(s[3]=i("span",null,"视频下载中…",-1))])):t.message.msgtype==="voice"&&((b=m.value)!=null&&b.file_url)?(a(),o("audio",{key:5,src:m.value.file_url,controls:"",class:"content-audio"},null,8,se)):t.message.msgtype==="voice"?(a(),o("div",ae,[r(f,null,{default:c(()=>[r(p(H))]),_:1}),i("span",null,"语音下载中…("+n(t.message.play_length)+"s)",1)])):t.message.msgtype==="file"?(a(),o("div",ie,[r(f,{size:24},{default:c(()=>[r(p(J))]),_:1}),i("div",oe,[i("div",{class:"file-name",title:t.message.file_name},n(t.message.file_name||"未命名文件"),9,ne),i("div",le,[d(n(M(t.message.file_size))+" ",1),t.message.file_ext?(a(),o(U,{key:0},[d("· "+n(t.message.file_ext),1)],64)):x("",!0)])]),(h=m.value)!=null&&h.file_url?(a(),g(V,{key:0,size:"small",type:"primary",link:"",onClick:s[0]||(s[0]=de=>$(m.value.file_url))},{default:c(()=>[...s[4]||(s[4]=[d(" 下载 ",-1)])]),_:1})):(a(),g(_,{key:1,size:"small",type:"info"},{default:c(()=>[...s[5]||(s[5]=[d("下载中…",-1)])]),_:1}))])):(a(),o("div",me,[i("div",re,n(C.value),1),i("div",ce,n(t.message.content),1)]))],2)])],2)}}}),We=L(ue,[["__scopeId","data-v-b5ff1168"]]);export{We as default}; diff --git a/server/public/admin/assets/NoteTimeline-BrIUegAJ.js b/server/public/admin/assets/NoteTimeline-Vt4S5dzs.js similarity index 92% rename from server/public/admin/assets/NoteTimeline-BrIUegAJ.js rename to server/public/admin/assets/NoteTimeline-Vt4S5dzs.js index 6d99c980..dc40e2dc 100644 --- a/server/public/admin/assets/NoteTimeline-BrIUegAJ.js +++ b/server/public/admin/assets/NoteTimeline-Vt4S5dzs.js @@ -1,2 +1,2 @@ -import{R as W,v as Z,d as q,a as K}from"./element-plus-DFTWCWyi.js";import{_ as Y}from"./picker-cSgp8cEl.js";import{e as ee,c as te,i as S,_ as ie}from"./index-Nt5zMHcc.js";import{s as A}from"./@vue/runtime-dom-DDAG46FW.js";import{b as B,G as se}from"./@element-plus/icons-vue-HOEUG8sr.js";import{d as oe,a as R}from"./patient-BKtZKzsB.js";import{f as ne,w as re,ak as i,I as n,a as l,aN as c,J as a,H as d,F as v,ap as k,G as I}from"./@vue/runtime-core-C6bnekPw.js";import{n as w,y as C}from"./@vue/reactivity-DiY1c2vO.js";import{Q as z}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const le={class:"note-timeline-wrap"},ae={key:0,class:"timeline-actions"},me={class:"upload-trigger"},de={class:"upload-trigger"},pe={key:1,class:"note-timeline"},ce={class:"timeline-date"},ue={class:"timeline-body"},ge={key:0,class:"timeline-content"},_e={key:1,class:"timeline-images"},fe={key:2,class:"timeline-images"},ve={key:0,class:"thumb-wrap"},he={key:1,class:"file-wrap"},ye=["href","title"],ke={class:"file-name"},T=8e3,Ie=ne({__name:"NoteTimeline",props:{notes:{},diagnosisId:{},readonly:{type:Boolean}},emits:["refresh"],setup(m,{emit:G}){const u=m,b=G,L=ee(),g=t=>L.getImageUrl(t),x=w([]),E=w([]),_=w(0),f=w(0),$=["jpg","jpeg","png","gif","bmp","webp","svg"],N=t=>{var s;const e=((s=t.split(".").pop())==null?void 0:s.toLowerCase().split("?")[0])||"";return $.includes(e)},M=t=>{var s;const e=t.split("/");return decodeURIComponent(((s=e[e.length-1])==null?void 0:s.split("?")[0])||"文件")},j=t=>t.filter(N).map(g),O=(t,e)=>{const s=t.filter(N),h=t[e];return s.indexOf(h)},X=t=>t?t.split(` +import{R as W,v as Z,d as q,a as K}from"./element-plus-DFTWCWyi.js";import{_ as Y}from"./picker-DzCeqD7m.js";import{e as ee,c as te,i as S,_ as ie}from"./index--WnM67ZH.js";import{s as A}from"./@vue/runtime-dom-DDAG46FW.js";import{b as B,G as se}from"./@element-plus/icons-vue-HOEUG8sr.js";import{d as oe,a as R}from"./patient-BNjmKCvA.js";import{f as ne,w as re,ak as i,I as n,a as l,aN as c,J as a,H as d,F as v,ap as k,G as I}from"./@vue/runtime-core-C6bnekPw.js";import{n as w,y as C}from"./@vue/reactivity-DiY1c2vO.js";import{Q as z}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const le={class:"note-timeline-wrap"},ae={key:0,class:"timeline-actions"},me={class:"upload-trigger"},de={class:"upload-trigger"},pe={key:1,class:"note-timeline"},ce={class:"timeline-date"},ue={class:"timeline-body"},ge={key:0,class:"timeline-content"},_e={key:1,class:"timeline-images"},fe={key:2,class:"timeline-images"},ve={key:0,class:"thumb-wrap"},he={key:1,class:"file-wrap"},ye=["href","title"],ke={class:"file-name"},T=8e3,Ie=ne({__name:"NoteTimeline",props:{notes:{},diagnosisId:{},readonly:{type:Boolean}},emits:["refresh"],setup(m,{emit:G}){const u=m,b=G,L=ee(),g=t=>L.getImageUrl(t),x=w([]),E=w([]),_=w(0),f=w(0),$=["jpg","jpeg","png","gif","bmp","webp","svg"],N=t=>{var s;const e=((s=t.split(".").pop())==null?void 0:s.toLowerCase().split("?")[0])||"";return $.includes(e)},M=t=>{var s;const e=t.split("/");return decodeURIComponent(((s=e[e.length-1])==null?void 0:s.split("?")[0])||"文件")},j=t=>t.filter(N).map(g),O=(t,e)=>{const s=t.filter(N),h=t[e];return s.indexOf(h)},X=t=>t?t.split(` `).filter(Boolean):[],H=t=>{if(!u.diagnosisId)return;const e=Array.isArray(t)?t:[t];if(e.length<=_.value){_.value=e.length;return}const s=e.slice(_.value);_.value=e.length,s.length>0&&R({diagnosis_id:u.diagnosisId,tongue_images:s}).then(()=>{S.msgSuccess("舌苔照片已添加"),b("refresh")})},J=t=>{if(!u.diagnosisId)return;const e=Array.isArray(t)?t:[t];if(e.length<=f.value){f.value=e.length;return}const s=e.slice(f.value);f.value=e.length,s.length>0&&R({diagnosis_id:u.diagnosisId,report_files:s}).then(()=>{S.msgSuccess("检查报告已添加"),b("refresh")})};re(()=>u.notes,()=>{x.value=[],E.value=[],_.value=0,f.value=0});const V=async(t,e,s)=>{try{await K.confirm("确认删除?","提示",{type:"warning"})}catch{return}await oe({note_id:t,image_type:e,image_path:s}),S.msgSuccess("已删除"),b("refresh")};return(t,e)=>{const s=te,h=Y,U=Z,y=q,Q=W;return i(),n("div",le,[!m.readonly&&m.diagnosisId?(i(),n("div",ae,[l(h,{modelValue:x.value,"onUpdate:modelValue":e[0]||(e[0]=o=>x.value=o),limit:99,type:"image","exclude-domain":!0,onChange:H},{upload:c(()=>[a("div",me,[l(s,{size:20,name:"el-icon-Plus"}),e[2]||(e[2]=a("span",null,"舌苔照片",-1))])]),_:1},8,["modelValue"]),l(h,{modelValue:E.value,"onUpdate:modelValue":e[1]||(e[1]=o=>E.value=o),limit:99,type:"file","exclude-domain":!0,onChange:J},{upload:c(()=>[a("div",de,[l(s,{size:20,name:"el-icon-Plus"}),e[3]||(e[3]=a("span",null,"检查报告",-1))])]),_:1},8,["modelValue"])])):d("",!0),m.notes.length?(i(),n("div",pe,[(i(!0),n(v,null,k(m.notes,o=>{var D,F;return i(),n("div",{key:o.id,class:"timeline-node"},[e[6]||(e[6]=a("div",{class:"timeline-dot"},null,-1)),a("div",ce,z(o.note_date),1),a("div",ue,[o.content?(i(),n("div",ge,[(i(!0),n(v,null,k(X(o.content),(r,p)=>(i(),n("div",{key:p,class:"content-line"},z(r),1))),128))])):d("",!0),(D=o.tongue_images)!=null&&D.length?(i(),n("div",_e,[e[4]||(e[4]=a("span",{class:"images-label"},"舌苔照片",-1)),(i(!0),n(v,null,k(o.tongue_images,(r,p)=>(i(),n("div",{key:p,class:"thumb-wrap"},[l(U,{src:g(r),"preview-src-list":o.tongue_images.map(g),"initial-index":p,"z-index":T,fit:"cover",class:"timeline-thumb","preview-teleported":""},null,8,["src","preview-src-list","initial-index"]),m.readonly?d("",!0):(i(),I(y,{key:0,class:"thumb-delete",onClick:A(P=>V(o.id,"tongue_images",r),["stop"])},{default:c(()=>[l(C(B))]),_:1},8,["onClick"]))]))),128))])):d("",!0),(F=o.report_files)!=null&&F.length?(i(),n("div",fe,[e[5]||(e[5]=a("span",{class:"images-label"},"检查报告",-1)),(i(!0),n(v,null,k(o.report_files,(r,p)=>(i(),n(v,{key:p},[N(r)?(i(),n("div",ve,[l(U,{src:g(r),"preview-src-list":j(o.report_files),"initial-index":O(o.report_files,p),"z-index":T,fit:"cover",class:"timeline-thumb","preview-teleported":""},null,8,["src","preview-src-list","initial-index"]),m.readonly?d("",!0):(i(),I(y,{key:0,class:"thumb-delete",onClick:A(P=>V(o.id,"report_files",r),["stop"])},{default:c(()=>[l(C(B))]),_:1},8,["onClick"]))])):(i(),n("div",he,[a("a",{href:g(r),target:"_blank",class:"file-link",title:M(r)},[l(y,{size:20},{default:c(()=>[l(C(se))]),_:1}),a("span",ke,z(M(r)),1)],8,ye),m.readonly?d("",!0):(i(),I(y,{key:0,class:"file-delete",onClick:A(P=>V(o.id,"report_files",r),["stop"])},{default:c(()=>[l(C(B))]),_:1},8,["onClick"]))]))],64))),128))])):d("",!0)])])}),128))])):d("",!0),!m.notes.length&&m.readonly?(i(),I(Q,{key:2,description:"暂无备注","image-size":48})):d("",!0)])}}}),It=ie(Ie,[["__scopeId","data-v-f77bb3f4"]]);export{It as default}; diff --git a/server/public/admin/assets/PatientCaseCard-D3V_iWVf.js b/server/public/admin/assets/PatientCaseCard-MkaTBq87.js similarity index 99% rename from server/public/admin/assets/PatientCaseCard-D3V_iWVf.js rename to server/public/admin/assets/PatientCaseCard-MkaTBq87.js index 05cb3fd7..9b4ae3b6 100644 --- a/server/public/admin/assets/PatientCaseCard-D3V_iWVf.js +++ b/server/public/admin/assets/PatientCaseCard-MkaTBq87.js @@ -1 +1 @@ -import{i as Q,a as q,b as z}from"./blood-thresholds-CJ1fqMjh.js";import{m as G,j as R,b as U}from"./diag-display-DCz_VAqj.js";import{f as E}from"./diabetes-discovery-display-B_wmGXQJ.js";import{f as W,ak as F,I as J,J as s,O as X,a as l,H as Y,A as Z,i as d}from"./@vue/runtime-core-C6bnekPw.js";import{Q as r}from"./@vue/shared-mAAVTE9n.js";import{y as i}from"./@vue/reactivity-DiY1c2vO.js";import{_ as P}from"./index-Nt5zMHcc.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ll={class:"card case-card"},al={class:"card-title"},el={class:"case-sub"},il={class:"grid-block"},tl={class:"kv-grid four"},sl={class:"grid-block"},ul={class:"kv-grid four"},nl={class:"grid-block"},dl={class:"kv-grid four"},ol={class:"grid-block"},vl={class:"kv-grid three"},rl={class:"grid-block"},gl={class:"kv-grid three"},cl={class:"grid-block"},ml={class:"kv-grid three"},bl={key:0,class:"grid-block"},hl={class:"kv-grid one"},yl={class:"grid-block"},fl={class:"rx-note"},pl=W({__name:"PatientCaseCard",props:{apt:{default:()=>({})},diag:{default:()=>({})}},setup(e){const g=e,M=Z(()=>(g.diag||{}).consultation_type==="follow_up"?"复诊":"初诊"),u=U(()=>g.diag||{}),a=n=>{const t=n.value,o=t==null||t===""||Array.isArray(t)&&t.length===0;return d("div",{class:["kv-item",n.multiline?"multiline":"",o?"empty":""],style:n.span?`grid-column: span ${n.span}`:""},[d("span",{class:"kv-label"},n.label),d("span",{class:"kv-value"},o?"—":String(t))])},v=n=>{const t=n.value===void 0||n.value===null||n.value==="";return d("div",{class:["kv-item","metric-kv-item",t?"empty":""],style:n.span?`grid-column: span ${n.span}`:""},[d("span",{class:"kv-label"},n.label),d("span",{class:["kv-value","metric-kv-value",n.high?"high":""]},t?"—":[`${n.value}${n.unit||""}`,n.high?d("span",{class:"metric-up"},"↑"):null])])};return(n,t)=>{var o,c,m,b,h,y,f,p,k,_,x,w,C,D,H,V,I,A,B,N,S,$,O,T,j,K,L;return F(),J("div",ll,[s("div",al,[t[0]||(t[0]=X(" 患者病例 ",-1)),s("span",el,r(M.value)+" · 诊断日期 "+r(((o=e.diag)==null?void 0:o.diagnosis_date)||((c=e.apt)==null?void 0:c.appointment_date)||"—"),1)]),s("div",il,[t[1]||(t[1]=s("div",{class:"grid-title"},"基本信息",-1)),s("div",tl,[l(a,{label:"诊单ID",value:(m=e.diag)==null?void 0:m.patient_id},null,8,["value"]),l(a,{label:"姓名",value:(b=e.diag)==null?void 0:b.patient_name},null,8,["value"]),l(a,{label:"身份证号",value:(h=e.diag)==null?void 0:h.id_card},null,8,["value"]),l(a,{label:"手机号",value:i(G)(((y=e.diag)==null?void 0:y.phone)||((f=e.apt)==null?void 0:f.patient_phone))},null,8,["value"]),l(a,{label:"性别",value:i(u)("gender")},null,8,["value"]),l(a,{label:"年龄",value:((p=e.diag)==null?void 0:p.age)!=null?e.diag.age+"岁":""},null,8,["value"]),l(a,{label:"婚姻状态",value:i(u)("marital_status")},null,8,["value"]),l(a,{label:"地区",value:(k=e.diag)==null?void 0:k.region},null,8,["value"])])]),s("div",sl,[t[2]||(t[2]=s("div",{class:"grid-title"},"生命体征",-1)),s("div",ul,[l(a,{label:"身高",value:(_=e.diag)!=null&&_.height?e.diag.height+" cm":""},null,8,["value"]),l(a,{label:"体重",value:(x=e.diag)!=null&&x.weight?e.diag.weight+" kg":""},null,8,["value"]),l(v,{label:"高压",value:(w=e.diag)==null?void 0:w.systolic_pressure,unit:" mmHg",high:i(Q)((C=e.diag)==null?void 0:C.systolic_pressure)},null,8,["value","high"]),l(v,{label:"低压",value:(D=e.diag)==null?void 0:D.diastolic_pressure,unit:" mmHg",high:i(q)((H=e.diag)==null?void 0:H.diastolic_pressure)},null,8,["value","high"]),l(a,{label:"诊断类型",value:i(u)("diagnosis_type")},null,8,["value"]),l(v,{label:"空腹血糖",value:(V=e.diag)==null?void 0:V.fasting_blood_sugar,unit:" mmol/L",high:i(z)((I=e.diag)==null?void 0:I.fasting_blood_sugar,(A=e.diag)==null?void 0:A.age)},null,8,["value","high"]),l(a,{label:"在用药物",value:(B=e.diag)==null?void 0:B.current_medications,multiline:""},null,8,["value"])])]),s("div",nl,[t[3]||(t[3]=s("div",{class:"grid-title"},"主诉",-1)),s("div",dl,[l(a,{label:"当地医院诊断日期",value:(N=e.diag)==null?void 0:N.diagnosis_date},null,8,["value"]),l(a,{label:"发现糖尿病病史",value:i(E)?i(E)((S=e.diag)==null?void 0:S.diabetes_discovery_year):($=e.diag)==null?void 0:$.diabetes_discovery_year},null,8,["value"]),l(a,{label:"当地就诊医院",value:(O=e.diag)==null?void 0:O.local_hospital_name},null,8,["value"]),l(a,{label:"当地医院诊断结果",value:i(R)((T=e.diag)==null?void 0:T.local_hospital_diagnosis)},null,8,["value"])])]),s("div",ol,[t[4]||(t[4]=s("div",{class:"grid-title"},"现病史",-1)),s("div",vl,[l(a,{label:"口腔感觉",value:i(u)("appetite")},null,8,["value"]),l(a,{label:"每日饮水量",value:i(u)("water_intake")},null,8,["value"]),l(a,{label:"近月体重变化",value:i(u)("weight_change")},null,8,["value"]),l(a,{label:"脂肪肝程度",value:i(u)("fatty_liver_degree")},null,8,["value"]),l(a,{label:"饮食情况",value:i(u)("diet_condition"),span:"2"},null,8,["value"]),l(a,{label:"肢体感觉",value:i(u)("body_feeling")},null,8,["value"]),l(a,{label:"睡眠情况",value:i(u)("sleep_condition")},null,8,["value"]),l(a,{label:"眼睛情况",value:i(u)("eye_condition")},null,8,["value"]),l(a,{label:"头部感觉",value:i(u)("head_feeling")},null,8,["value"]),l(a,{label:"出汗情况",value:i(u)("sweat_condition")},null,8,["value"]),l(a,{label:"皮肤情况",value:i(u)("skin_condition")},null,8,["value"]),l(a,{label:"小便情况",value:i(u)("urine_condition")},null,8,["value"]),l(a,{label:"大便情况",value:i(u)("stool_condition")},null,8,["value"]),l(a,{label:"腰肾情况",value:i(u)("kidney_condition")},null,8,["value"]),l(a,{label:"其他补充",value:(j=e.diag)==null?void 0:j.symptoms,span:"3",multiline:""},null,8,["value"])])]),s("div",rl,[t[5]||(t[5]=s("div",{class:"grid-title"},"既往史",-1)),s("div",gl,[l(a,{label:"既往病史",value:i(u)("past_history"),span:"3"},null,8,["value"])])]),s("div",cl,[t[6]||(t[6]=s("div",{class:"grid-title"},"其他病史",-1)),s("div",ml,[l(a,{label:"外伤史",value:i(u)("trauma_history")},null,8,["value"]),l(a,{label:"手术史",value:i(u)("surgery_history")},null,8,["value"]),l(a,{label:"过敏史",value:i(u)("allergy_history")},null,8,["value"]),l(a,{label:"家族病史",value:i(u)("family_history")},null,8,["value"]),l(a,{label:"妊娠哺乳史",value:i(u)("pregnancy_history")},null,8,["value"])])]),(K=e.diag)!=null&&K.remark?(F(),J("div",bl,[t[7]||(t[7]=s("div",{class:"grid-title"},"病史补充",-1)),s("div",hl,[l(a,{label:"",value:e.diag.remark,multiline:""},null,8,["value"])])])):Y("",!0),s("div",yl,[t[8]||(t[8]=s("div",{class:"grid-title"},"处方意见",-1)),s("div",fl,r((L=e.apt)!=null&&L.has_prescription?"已开方。":"当前未开方。"),1)])])}}}),ua=P(pl,[["__scopeId","data-v-5de08f8e"]]);export{ua as default}; +import{i as Q,a as q,b as z}from"./blood-thresholds-CJ1fqMjh.js";import{m as G,j as R,b as U}from"./diag-display-DCz_VAqj.js";import{f as E}from"./diabetes-discovery-display-B_wmGXQJ.js";import{f as W,ak as F,I as J,J as s,O as X,a as l,H as Y,A as Z,i as d}from"./@vue/runtime-core-C6bnekPw.js";import{Q as r}from"./@vue/shared-mAAVTE9n.js";import{y as i}from"./@vue/reactivity-DiY1c2vO.js";import{_ as P}from"./index--WnM67ZH.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ll={class:"card case-card"},al={class:"card-title"},el={class:"case-sub"},il={class:"grid-block"},tl={class:"kv-grid four"},sl={class:"grid-block"},ul={class:"kv-grid four"},nl={class:"grid-block"},dl={class:"kv-grid four"},ol={class:"grid-block"},vl={class:"kv-grid three"},rl={class:"grid-block"},gl={class:"kv-grid three"},cl={class:"grid-block"},ml={class:"kv-grid three"},bl={key:0,class:"grid-block"},hl={class:"kv-grid one"},yl={class:"grid-block"},fl={class:"rx-note"},pl=W({__name:"PatientCaseCard",props:{apt:{default:()=>({})},diag:{default:()=>({})}},setup(e){const g=e,M=Z(()=>(g.diag||{}).consultation_type==="follow_up"?"复诊":"初诊"),u=U(()=>g.diag||{}),a=n=>{const t=n.value,o=t==null||t===""||Array.isArray(t)&&t.length===0;return d("div",{class:["kv-item",n.multiline?"multiline":"",o?"empty":""],style:n.span?`grid-column: span ${n.span}`:""},[d("span",{class:"kv-label"},n.label),d("span",{class:"kv-value"},o?"—":String(t))])},v=n=>{const t=n.value===void 0||n.value===null||n.value==="";return d("div",{class:["kv-item","metric-kv-item",t?"empty":""],style:n.span?`grid-column: span ${n.span}`:""},[d("span",{class:"kv-label"},n.label),d("span",{class:["kv-value","metric-kv-value",n.high?"high":""]},t?"—":[`${n.value}${n.unit||""}`,n.high?d("span",{class:"metric-up"},"↑"):null])])};return(n,t)=>{var o,c,m,b,h,y,f,p,k,_,x,w,C,D,H,V,I,A,B,N,S,$,O,T,j,K,L;return F(),J("div",ll,[s("div",al,[t[0]||(t[0]=X(" 患者病例 ",-1)),s("span",el,r(M.value)+" · 诊断日期 "+r(((o=e.diag)==null?void 0:o.diagnosis_date)||((c=e.apt)==null?void 0:c.appointment_date)||"—"),1)]),s("div",il,[t[1]||(t[1]=s("div",{class:"grid-title"},"基本信息",-1)),s("div",tl,[l(a,{label:"诊单ID",value:(m=e.diag)==null?void 0:m.patient_id},null,8,["value"]),l(a,{label:"姓名",value:(b=e.diag)==null?void 0:b.patient_name},null,8,["value"]),l(a,{label:"身份证号",value:(h=e.diag)==null?void 0:h.id_card},null,8,["value"]),l(a,{label:"手机号",value:i(G)(((y=e.diag)==null?void 0:y.phone)||((f=e.apt)==null?void 0:f.patient_phone))},null,8,["value"]),l(a,{label:"性别",value:i(u)("gender")},null,8,["value"]),l(a,{label:"年龄",value:((p=e.diag)==null?void 0:p.age)!=null?e.diag.age+"岁":""},null,8,["value"]),l(a,{label:"婚姻状态",value:i(u)("marital_status")},null,8,["value"]),l(a,{label:"地区",value:(k=e.diag)==null?void 0:k.region},null,8,["value"])])]),s("div",sl,[t[2]||(t[2]=s("div",{class:"grid-title"},"生命体征",-1)),s("div",ul,[l(a,{label:"身高",value:(_=e.diag)!=null&&_.height?e.diag.height+" cm":""},null,8,["value"]),l(a,{label:"体重",value:(x=e.diag)!=null&&x.weight?e.diag.weight+" kg":""},null,8,["value"]),l(v,{label:"高压",value:(w=e.diag)==null?void 0:w.systolic_pressure,unit:" mmHg",high:i(Q)((C=e.diag)==null?void 0:C.systolic_pressure)},null,8,["value","high"]),l(v,{label:"低压",value:(D=e.diag)==null?void 0:D.diastolic_pressure,unit:" mmHg",high:i(q)((H=e.diag)==null?void 0:H.diastolic_pressure)},null,8,["value","high"]),l(a,{label:"诊断类型",value:i(u)("diagnosis_type")},null,8,["value"]),l(v,{label:"空腹血糖",value:(V=e.diag)==null?void 0:V.fasting_blood_sugar,unit:" mmol/L",high:i(z)((I=e.diag)==null?void 0:I.fasting_blood_sugar,(A=e.diag)==null?void 0:A.age)},null,8,["value","high"]),l(a,{label:"在用药物",value:(B=e.diag)==null?void 0:B.current_medications,multiline:""},null,8,["value"])])]),s("div",nl,[t[3]||(t[3]=s("div",{class:"grid-title"},"主诉",-1)),s("div",dl,[l(a,{label:"当地医院诊断日期",value:(N=e.diag)==null?void 0:N.diagnosis_date},null,8,["value"]),l(a,{label:"发现糖尿病病史",value:i(E)?i(E)((S=e.diag)==null?void 0:S.diabetes_discovery_year):($=e.diag)==null?void 0:$.diabetes_discovery_year},null,8,["value"]),l(a,{label:"当地就诊医院",value:(O=e.diag)==null?void 0:O.local_hospital_name},null,8,["value"]),l(a,{label:"当地医院诊断结果",value:i(R)((T=e.diag)==null?void 0:T.local_hospital_diagnosis)},null,8,["value"])])]),s("div",ol,[t[4]||(t[4]=s("div",{class:"grid-title"},"现病史",-1)),s("div",vl,[l(a,{label:"口腔感觉",value:i(u)("appetite")},null,8,["value"]),l(a,{label:"每日饮水量",value:i(u)("water_intake")},null,8,["value"]),l(a,{label:"近月体重变化",value:i(u)("weight_change")},null,8,["value"]),l(a,{label:"脂肪肝程度",value:i(u)("fatty_liver_degree")},null,8,["value"]),l(a,{label:"饮食情况",value:i(u)("diet_condition"),span:"2"},null,8,["value"]),l(a,{label:"肢体感觉",value:i(u)("body_feeling")},null,8,["value"]),l(a,{label:"睡眠情况",value:i(u)("sleep_condition")},null,8,["value"]),l(a,{label:"眼睛情况",value:i(u)("eye_condition")},null,8,["value"]),l(a,{label:"头部感觉",value:i(u)("head_feeling")},null,8,["value"]),l(a,{label:"出汗情况",value:i(u)("sweat_condition")},null,8,["value"]),l(a,{label:"皮肤情况",value:i(u)("skin_condition")},null,8,["value"]),l(a,{label:"小便情况",value:i(u)("urine_condition")},null,8,["value"]),l(a,{label:"大便情况",value:i(u)("stool_condition")},null,8,["value"]),l(a,{label:"腰肾情况",value:i(u)("kidney_condition")},null,8,["value"]),l(a,{label:"其他补充",value:(j=e.diag)==null?void 0:j.symptoms,span:"3",multiline:""},null,8,["value"])])]),s("div",rl,[t[5]||(t[5]=s("div",{class:"grid-title"},"既往史",-1)),s("div",gl,[l(a,{label:"既往病史",value:i(u)("past_history"),span:"3"},null,8,["value"])])]),s("div",cl,[t[6]||(t[6]=s("div",{class:"grid-title"},"其他病史",-1)),s("div",ml,[l(a,{label:"外伤史",value:i(u)("trauma_history")},null,8,["value"]),l(a,{label:"手术史",value:i(u)("surgery_history")},null,8,["value"]),l(a,{label:"过敏史",value:i(u)("allergy_history")},null,8,["value"]),l(a,{label:"家族病史",value:i(u)("family_history")},null,8,["value"]),l(a,{label:"妊娠哺乳史",value:i(u)("pregnancy_history")},null,8,["value"])])]),(K=e.diag)!=null&&K.remark?(F(),J("div",bl,[t[7]||(t[7]=s("div",{class:"grid-title"},"病史补充",-1)),s("div",hl,[l(a,{label:"",value:e.diag.remark,multiline:""},null,8,["value"])])])):Y("",!0),s("div",yl,[t[8]||(t[8]=s("div",{class:"grid-title"},"处方意见",-1)),s("div",fl,r((L=e.apt)!=null&&L.has_prescription?"已开方。":"当前未开方。"),1)])])}}}),ua=P(pl,[["__scopeId","data-v-5de08f8e"]]);export{ua as default}; diff --git a/server/public/admin/assets/PatientInfoCard-QbPK3em5.js b/server/public/admin/assets/PatientInfoCard-D7xW7q4X.js similarity index 97% rename from server/public/admin/assets/PatientInfoCard-QbPK3em5.js rename to server/public/admin/assets/PatientInfoCard-D7xW7q4X.js index b4ca609a..e19fe929 100644 --- a/server/public/admin/assets/PatientInfoCard-QbPK3em5.js +++ b/server/public/admin/assets/PatientInfoCard-D7xW7q4X.js @@ -1 +1 @@ -import{m as x,f as y,a as B}from"./diag-display-DCz_VAqj.js";import{f as w,ak as I,I as P,J as a,H as N}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{y as e}from"./@vue/reactivity-DiY1c2vO.js";import{_ as V}from"./index-Nt5zMHcc.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const D={class:"card patient-card"},E={class:"patient-hero"},G={class:"patient-name"},H={class:"patient-meta"},J={key:0},Q=w({__name:"PatientInfoCard",props:{apt:{default:()=>({})},diag:{default:()=>({})}},setup(t){return(S,o)=>{var m,r,n,d,p,s,c,l,g,f,u,h,v,k,C;return I(),P("div",D,[o[0]||(o[0]=a("div",{class:"card-title"},"患者信息",-1)),a("div",E,[a("div",G,i(((m=t.apt)==null?void 0:m.patient_name)||"—"),1),a("div",H,[a("div",null,i(e(x)((r=t.apt)==null?void 0:r.patient_phone))+" · "+i(e(y)((n=t.diag)==null?void 0:n.gender))+" · "+i(((d=t.diag)==null?void 0:d.age)!=null?t.diag.age+"岁":"—"),1),a("div",null,i((p=t.diag)!=null&&p.height?t.diag.height+"cm":"—")+" / "+i((s=t.diag)!=null&&s.weight?t.diag.weight+"kg":"—")+" · "+i(((c=t.diag)==null?void 0:c.region)||"—"),1),a("div",null," 预约:"+i((l=t.apt)==null?void 0:l.appointment_date)+" "+i((g=t.apt)==null?void 0:g.appointment_time)+" · "+i(e(B)((f=t.apt)==null?void 0:f.period)),1),a("div",null,"医生:"+i(((u=t.apt)==null?void 0:u.doctor_name)||"—")+" 医助:"+i(((h=t.apt)==null?void 0:h.assistant_name)||"—"),1),a("div",null," 状态:"+i(((v=t.apt)==null?void 0:v.status_desc)||"—")+" · "+i((k=t.apt)!=null&&k.has_prescription?"已开方":"未开方"),1),(C=t.apt)!=null&&C.remark?(I(),P("div",J,"备注:"+i(t.apt.remark),1)):N("",!0)])])])}}}),Ct=V(Q,[["__scopeId","data-v-e3476da5"]]);export{Ct as default}; +import{m as x,f as y,a as B}from"./diag-display-DCz_VAqj.js";import{f as w,ak as I,I as P,J as a,H as N}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{y as e}from"./@vue/reactivity-DiY1c2vO.js";import{_ as V}from"./index--WnM67ZH.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const D={class:"card patient-card"},E={class:"patient-hero"},G={class:"patient-name"},H={class:"patient-meta"},J={key:0},Q=w({__name:"PatientInfoCard",props:{apt:{default:()=>({})},diag:{default:()=>({})}},setup(t){return(S,o)=>{var m,r,n,d,p,s,c,l,g,f,u,h,v,k,C;return I(),P("div",D,[o[0]||(o[0]=a("div",{class:"card-title"},"患者信息",-1)),a("div",E,[a("div",G,i(((m=t.apt)==null?void 0:m.patient_name)||"—"),1),a("div",H,[a("div",null,i(e(x)((r=t.apt)==null?void 0:r.patient_phone))+" · "+i(e(y)((n=t.diag)==null?void 0:n.gender))+" · "+i(((d=t.diag)==null?void 0:d.age)!=null?t.diag.age+"岁":"—"),1),a("div",null,i((p=t.diag)!=null&&p.height?t.diag.height+"cm":"—")+" / "+i((s=t.diag)!=null&&s.weight?t.diag.weight+"kg":"—")+" · "+i(((c=t.diag)==null?void 0:c.region)||"—"),1),a("div",null," 预约:"+i((l=t.apt)==null?void 0:l.appointment_date)+" "+i((g=t.apt)==null?void 0:g.appointment_time)+" · "+i(e(B)((f=t.apt)==null?void 0:f.period)),1),a("div",null,"医生:"+i(((u=t.apt)==null?void 0:u.doctor_name)||"—")+" 医助:"+i(((h=t.apt)==null?void 0:h.assistant_name)||"—"),1),a("div",null," 状态:"+i(((v=t.apt)==null?void 0:v.status_desc)||"—")+" · "+i((k=t.apt)!=null&&k.has_prescription?"已开方":"未开方"),1),(C=t.apt)!=null&&C.remark?(I(),P("div",J,"备注:"+i(t.apt.remark),1)):N("",!0)])])])}}}),Ct=V(Q,[["__scopeId","data-v-e3476da5"]]);export{Ct as default}; diff --git a/server/public/admin/assets/PatientOrderList-MM0hhqMY.js b/server/public/admin/assets/PatientOrderList-_Y1o6_3U.js similarity index 99% rename from server/public/admin/assets/PatientOrderList-MM0hhqMY.js rename to server/public/admin/assets/PatientOrderList-_Y1o6_3U.js index 8468c576..e67cbecc 100644 --- a/server/public/admin/assets/PatientOrderList-MM0hhqMY.js +++ b/server/public/admin/assets/PatientOrderList-_Y1o6_3U.js @@ -1 +1 @@ -import{R as Me,M as Ue,N as He,T as Je,i as Ke,L as Qe,a9 as qe,a4 as Ge,a5 as Ye,J as We,aa as Xe,ab as Ze,k as et,j as tt,C as at,P as st,Q as lt,ac as rt,ad as nt,e as it}from"./element-plus-DFTWCWyi.js";import{_ as ot}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as ut}from"./@vue/runtime-dom-DDAG46FW.js";import{u as dt}from"./usePaging-VsbTxSU0.js";import{l as pt,t as ct,u as mt,b as _t,s as ft}from"./tcm-DCW3HTOw.js";import{u as vt,i as gt,m as yt,_ as bt}from"./index-Nt5zMHcc.js";import{f as xt,b as ht,w as kt,as as wt,ak as i,I as f,a as s,F as w,aP as P,G as v,aN as a,J as o,O as d,H as g,ap as M,A as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as U,a as Tt,n as k,r as St}from"./@vue/reactivity-DiY1c2vO.js";import{Q as l,o as L}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Nt={class:"patient-order-list"},Ot={key:0,class:"po-empty-tip"},Et={class:"text-red-500 font-semibold"},zt={class:"flex justify-end mt-3"},Dt={class:"flex items-center"},It={key:1,class:"px-6 pb-6 overflow-y-auto"},Pt={class:"text-red-500 font-bold text-xl"},Lt={class:"text-green-600 font-bold text-xl"},At={class:"text-primary font-bold text-xl"},Ct={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},jt={key:0,class:"audit-stamp stamp-pass"},Vt={key:1,class:"audit-stamp stamp-reject"},Bt={class:"flex items-center justify-between"},Rt={class:"flex items-center gap-3"},Ft={key:0,class:"text-xs text-gray-500"},$t={class:"text-primary font-medium"},Mt={class:"text-xs text-gray-400"},Ut={class:"text-red-500 font-medium"},Ht={key:1,class:"ml-2 text-gray-500"},Jt={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},Kt={class:"flex flex-col gap-4 h-full"},Qt={class:"text-red-500"},qt={key:0,class:"audit-stamp stamp-pass"},Gt={key:1,class:"audit-stamp stamp-reject"},Yt={class:"flex items-center gap-3"},Wt={key:0,class:"text-xs text-gray-500"},Xt={class:"text-primary font-medium"},Zt={class:"text-red-500"},ea={class:"font-mono"},ta={key:0,class:"text-[13px] space-y-1"},aa={class:"font-medium text-gray-900"},sa={key:0,class:"text-gray-600 text-xs"},la={key:1,class:"text-gray-400"},ra={key:0,class:"space-y-1.5"},na={class:"text-gray-800"},ia={key:1,class:"text-gray-400"},oa={class:"flex flex-wrap items-center gap-3 mb-4"},ua={key:0,class:"py-6 text-center text-sm text-gray-500"},da={key:1,class:"bg-gray-50/50 p-4 rounded-md"},pa={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},ca={class:"text-gray-800"},ma={class:"flex items-center gap-2 mb-1"},_a={class:"font-medium text-[13px]"},fa=2,va=xt({__name:"PatientOrderList",props:{diagnosisId:{},patientId:{}},setup(de,{expose:pe}){const W=vt(),A=de,H=b(()=>{const t=Number(A.patientId);return Number.isFinite(t)&&t>0?t:0}),J=b(()=>H.value>0),N=St({}),{pager:T,getLists:X,resetPage:ce}=dt({fetchFun:pt,params:N,size:10}),me=()=>{Object.keys(N).forEach(t=>delete N[t]),A.diagnosisId>0&&(N.context_diagnosis_id=A.diagnosisId),J.value&&(N.patient_id=H.value),N.scene="diagnosis_edit"},_e=[0,3,6],fe=b(()=>{const t=W.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(p=>Number(p)):[];return e.includes(fa)?e.some(p=>_e.includes(p)):!0}),C=k(!1),K=k(!1),u=k(null),O=k([]),E=k([]),c=b(()=>{var e;const t=(e=u.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null}),Q=b(()=>{var e;const t=(e=u.value)==null?void 0:e.linked_pay_orders;return Array.isArray(t)?t:[]}),Z=b(()=>{const t=u.value;if(!t)return 0;const e=Number(t.amount)||0,p=Number(t.linked_pay_paid_total)||0;return Math.round((e-p)*100)/100}),j=b(()=>{var p,r;const t=se((p=c.value)==null?void 0:p.phone),e=se((r=u.value)==null?void 0:r.recipient_phone);return!t||!e?!1:t!==e}),ve=b(()=>{const t=u.value;if(!t)return"—";const e=[];return t.shipping_province&&e.push(t.shipping_province),t.shipping_city&&e.push(t.shipping_city),t.shipping_district&&e.push(t.shipping_district),t.shipping_address&&e.push(t.shipping_address),e.length>0?e.join(" "):"—"}),ee=b(()=>{const t=u.value;if(!t)return"";const e=String(t.creator_account??"").trim(),p=String(t.creator_mobile??"").trim(),r=[];return e&&r.push(`登录账号:${e}`),p&&r.push(`手机:${p}`),r.join(" · ")}),te=b(()=>{var e,p;const t=String(((e=u.value)==null?void 0:e.order_creator_dept_path)??((p=u.value)==null?void 0:p.diagnosis_creator_dept_path)??"").trim();return t?t.split(";").map(r=>r.trim()).filter(Boolean).map(r=>r.includes(" / ")?r.split(" / ").map(_=>_.trim()).filter(Boolean):r.split("/").map(_=>_.trim()).filter(Boolean)).filter(r=>r.length>0):[]}),z=k("auto"),V=k(!1),x=k(null),D=k(""),ae=b(()=>{const t=x.value;return!t||!Array.isArray(t.traces)?[]:t.traces});async function q(){var e;const t=Number((e=u.value)==null?void 0:e.id);if(t){V.value=!0;try{const p=String(D.value||"").replace(/\D/g,""),r={id:t,express_company:z.value};p.length>=4&&(r.phone_tail=p);const _=await ct(r);x.value=(_==null?void 0:_.data)??_}catch{x.value=null}finally{V.value=!1}}}async function ge(t){u.value=null,E.value=[],x.value=null,z.value="auto",D.value="",O.value=[],C.value=!0,K.value=!0;try{const e=await mt({id:t}),p=(e==null?void 0:e.data)??e??null;if(u.value=p,p){z.value=String(p.express_company||"auto")||"auto";const r=String(p.recipient_phone||"").replace(/\D/g,"");D.value=r.length>=4?r:"",String(p.tracking_number||"").trim()&&q(),xe(t),p.diagnosis_id&&ye(p.diagnosis_id,t,p.pay_order_ids||[])}}catch(e){gt.msgError((e==null?void 0:e.message)||"加载详情失败"),C.value=!1}finally{K.value=!1}}async function ye(t,e,p){var r;if(!t){E.value=[];return}try{const _=await _t({diagnosis_id:t,prescription_order_id:e}),S=(_==null?void 0:_.lists)??((r=_==null?void 0:_.data)==null?void 0:r.lists)??[];E.value=Array.isArray(S)?S.filter(I=>!p.includes(I.id)):[]}catch{E.value=[]}}function be(){const t=W.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function xe(t){if(!be()){O.value=[];return}try{const e=await ft({id:t});O.value=(e==null?void 0:e.data)??e??[]}catch{O.value=[]}}function se(t){return t==null?"":String(t).replace(/\s/g,"").trim()}const he=t=>{const e=Number(t);return Number.isFinite(e)?e.toFixed(2):"0.00"};function ke(t){const e=Number(t);return Number.isFinite(e)?e.toFixed(2):"0.00"}const B=t=>{if(t==null||t==="")return"—";if(typeof t=="number"&&t>1e9&&t<1e11){const e=new Date(t*1e3),p=r=>String(r).padStart(2,"0");return`${e.getFullYear()}-${p(e.getMonth()+1)}-${p(e.getDate())} ${p(e.getHours())}:${p(e.getMinutes())}:${p(e.getSeconds())}`}return String(t)};function le(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):B(t)}function G(t){return{1:"药费",2:"诊费",3:"药费+诊费",4:"其他"}[Number(t)]??"—"}const Y=k([]);async function we(){try{const t=await yt({type:"server_order"}),e=(t==null?void 0:t.server_order)||[];Y.value=e.filter(p=>p.status!==0)}catch{Y.value=[]}}function Te(t){if(t==null||t==="")return"—";let e=[];return Array.isArray(t)?e=t.map(r=>String(r)).filter(r=>r!==""):typeof t=="string"&&(e=t.split(",").map(r=>r.trim()).filter(r=>r!=="")),e.length===0?"—":e.map(r=>{const _=Y.value.find(S=>S.value===r);return _?_.name:r}).join("、")}ht(()=>{we()});function Se(t){const e=String(t||"").toLowerCase();return e==="sf"?"顺丰速运":e==="jd"?"京东快递":e==="jt"||e==="jtexpress"?"极兔速递":"自动识别"}function Ne(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function Oe(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function re(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function ne(t){return{0:"待支付",1:"待支付",2:"已支付",3:"已取消"}[Number(t)]??"—"}const Ee=t=>({1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"})[Number(t)]??"—",ze=t=>{const e=Number(t);return e===3||e===6?"success":e===5?"primary":e===4||e===9||e===10?"danger":e===2||e===7?"warning":"info"};function De(t){return{create:"创建",edit:"编辑",audit_rx_approve:"处方审核",audit_rx_reject:"处方审核",audit_pay_approve:"支付审核",audit_pay_reject:"支付审核",fill_tracking:"填快递单",ship:"确认发货",withdraw:"撤销",link_pay_order:"关联支付单",revoke_rx_audit:"撤回处方审核",revoke_pay_audit:"撤回支付审核",gancao_submit:"甘草下单",patch_rx_patient:"处方患者信息",update_amount:"修改订单金额",complete:"完成订单"}[t]||t}return kt(()=>[A.diagnosisId,H.value],()=>{if(!J.value){T.lists=[],T.count=0;return}me(),ce()},{immediate:!0}),pe({refresh:()=>X()}),(t,e)=>{const p=Me,r=He,_=Je,S=Ke,I=Ue,Ie=ot,Pe=qe,h=We,R=Ye,Le=Ge,m=Ze,ie=Xe,Ae=tt,Ce=et,je=at,F=lt,Ve=st,oe=nt,ue=rt,Be=it,$=wt("perms"),Re=Qe;return i(),f("div",Nt,[J.value?(i(),f(w,{key:1},[P((i(),v(I,{data:U(T).lists,border:"",stripe:"","empty-text":"暂无业务订单"},{default:a(()=>[s(r,{label:"订单编号",prop:"order_no","min-width":"200","show-overflow-tooltip":""}),s(r,{label:"金额",width:"120",align:"right"},{default:a(({row:n})=>[o("span",Et,"¥"+l(he(n.amount)),1)]),_:1}),s(r,{label:"医生",prop:"doctor_name",width:"110","show-overflow-tooltip":""},{default:a(({row:n})=>[d(l(n.doctor_name||"—"),1)]),_:1}),s(r,{label:"医助",prop:"assistant_name",width:"110","show-overflow-tooltip":""},{default:a(({row:n})=>[d(l(n.assistant_name||"—"),1)]),_:1}),s(r,{label:"履约状态",width:"110"},{default:a(({row:n})=>[s(_,{type:ze(n.fulfillment_status),size:"small",effect:"light"},{default:a(()=>[d(l(Ee(n.fulfillment_status)),1)]),_:2},1032,["type"])]),_:1}),s(r,{label:"创建时间","min-width":"170"},{default:a(({row:n})=>[d(l(B(n.create_time)),1)]),_:1}),s(r,{label:"操作",width:"100",fixed:"right"},{default:a(({row:n})=>[P((i(),v(S,{type:"primary",link:"",onClick:y=>ge(n.id)},{default:a(()=>[...e[4]||(e[4]=[d("查看详情",-1)])]),_:1},8,["onClick"])),[[$,["tcm.prescriptionOrder/detail"]]])]),_:1})]),_:1},8,["data"])),[[Re,U(T).loading]]),o("div",zt,[s(Ie,{modelValue:U(T),"onUpdate:modelValue":e[0]||(e[0]=n=>Tt(T)?T.value=n:null),onChange:U(X)},null,8,["modelValue","onChange"])])],64)):(i(),f("div",Ot,[s(p,{description:"当前诊单未携带患者ID,无法列出业务订单"})])),s(Be,{modelValue:C.value,"onUpdate:modelValue":e[3]||(e[3]=n=>C.value=n),size:"80%","destroy-on-close":"","close-on-click-modal":!1,"append-to-body":""},{header:a(()=>{var n,y;return[o("div",Dt,[e[5]||(e[5]=o("span",{class:"font-semibold text-lg"},"业务订单详情",-1)),(n=u.value)!=null&&n.order_no?(i(),v(_,{key:0,type:"primary",effect:"plain",round:"",class:"ml-3"},{default:a(()=>[d(l(u.value.order_no),1)]),_:1})):g("",!0),(y=u.value)!=null&&y.gancao_reciperl_order_no?(i(),v(_,{key:1,type:"success",effect:"plain",round:"",class:"ml-2"},{default:a(()=>[d("甘草 "+l(u.value.gancao_reciperl_order_no),1)]),_:1})):g("",!0)])]}),default:a(()=>[K.value?(i(),v(Pe,{key:0,rows:12,animated:"",class:"px-6 py-4"})):u.value?(i(),f("div",It,[s(Le,{gutter:16,class:"mb-5"},{default:a(()=>[s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[6]||(e[6]=o("div",{class:"text-gray-500 text-xs mb-1"},"总金额",-1)),o("div",Pt,"¥"+l(u.value.amount),1)]),_:1})]),_:1}),s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[7]||(e[7]=o("div",{class:"text-gray-500 text-xs mb-1"},"已付总额",-1)),o("div",Lt,"¥"+l(u.value.linked_pay_paid_total||0),1)]),_:1})]),_:1}),s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[8]||(e[8]=o("div",{class:"text-gray-500 text-xs mb-1"},"需代收",-1)),o("div",{class:L(["font-bold text-xl",Z.value>0?"text-amber-600":"text-gray-500"])},"¥"+l(ke(Z.value)),3)]),_:1})]),_:1}),s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[9]||(e[9]=o("div",{class:"text-gray-500 text-xs mb-1"},"已付笔数",-1)),o("div",At,l(Q.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),o("div",Ct,[s(h,{shadow:"never",class:"border-gray-100 h-full relative overflow-hidden"},{header:a(()=>[o("div",Bt,[o("div",Rt,[e[13]||(e[13]=o("span",{class:"font-medium text-[15px]"},"处方详情",-1)),u.value.doctor_name?(i(),f("span",Ft,[e[12]||(e[12]=d(" 开方人:",-1)),o("span",$t,l(u.value.doctor_name),1)])):g("",!0)]),o("span",Mt,"ID: "+l(u.value.prescription_id||"—"),1)])]),default:a(()=>[u.value.prescription_audit_status===1?(i(),f("div",jt,[...e[10]||(e[10]=[o("div",{class:"stamp-inner"},"审核通过",-1)])])):g("",!0),u.value.prescription_audit_status===2?(i(),f("div",Vt,[...e[11]||(e[11]=[o("div",{class:"stamp-inner"},"已驳回",-1)])])):g("",!0),c.value?(i(),v(ie,{key:2,column:2,border:"",size:"small",class:"bg-white"},{default:a(()=>[s(m,{label:"处方编号",span:2},{default:a(()=>[d(l(c.value.sn||"—"),1)]),_:1}),s(m,{label:"患者"},{default:a(()=>[d(l(c.value.patient_name||"—"),1)]),_:1}),s(m,{label:"性别 / 年龄"},{default:a(()=>[d(l(c.value.gender_desc||"—")+" · "+l(c.value.age??"—")+"岁",1)]),_:1}),s(m,{label:"手机"},{default:a(()=>[o("span",{class:L(j.value?"text-red-600 font-bold":"")},l(c.value.phone||"—"),3),j.value?(i(),v(_,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2"},{default:a(()=>[...e[14]||(e[14]=[d("与订单手机不一致",-1)])]),_:1})):g("",!0)]),_:1}),s(m,{label:"处方日期"},{default:a(()=>[d(l(c.value.prescription_date||"—"),1)]),_:1}),s(m,{label:"医师"},{default:a(()=>[d(l(c.value.doctor_name||"—"),1)]),_:1}),s(m,{label:"类型"},{default:a(()=>[d(l(c.value.prescription_type||"—"),1)]),_:1}),s(m,{label:"临床诊断",span:2},{default:a(()=>[d(l(c.value.clinical_diagnosis||"—"),1)]),_:1}),fe.value?(i(),v(m,{key:0,label:"剂数 / 用法",span:2},{default:a(()=>[d(l(u.value.dose_count??c.value.dose_count??"—")+" "+l(u.value.dose_unit||"剂")+" · "+l(c.value.usage_instruction||c.value.usage_method||"—"),1)]),_:1})):g("",!0),s(m,{label:"处方金额"},{default:a(()=>[o("span",Ut,"¥"+l(c.value.amount??"—"),1)]),_:1}),s(m,{label:"消费者审核"},{default:a(()=>[s(_,{type:Oe(c.value.audit_status),size:"small"},{default:a(()=>[d(l(Ne(c.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),s(m,{label:"用量"},{default:a(()=>[c.value.dosage_amount?(i(),f(w,{key:0},[d(l(c.value.dosage_amount)+l(c.value.dosage_unit||"g")+" ",1),c.value.prescription_type==="浓缩水丸"?(i(),f(w,{key:0},[d(" · "+l(Number(c.value.dosage_bag_count)>0?Number(c.value.dosage_bag_count):1)+"袋 ",1)],64)):g("",!0),c.value.prescription_type==="饮片"&&c.value.need_decoction!==null?(i(),f("span",Ht," ("+l(c.value.need_decoction?"代煎":"不代煎")+") ",1)):g("",!0)],64)):(i(),f(w,{key:1},[d("—")],64))]),_:1}),s(m,{label:"服用方式"},{default:a(()=>[o("div",Jt,[o("div",null,[e[15]||(e[15]=o("span",{class:"text-gray-500"},"每天次数:",-1)),d(" "+l(c.value.times_per_day?c.value.times_per_day+" 次":"—"),1)]),o("div",null,[e[16]||(e[16]=o("span",{class:"text-gray-500"},"处方开立:",-1)),d(" "+l(c.value.usage_days!=null&&c.value.usage_days!==""?c.value.usage_days+" 天":"—"),1)]),o("div",null,[e[17]||(e[17]=o("span",{class:"text-gray-500"},"订单设置:",-1)),d(" "+l(u.value.medication_days!=null&&String(u.value.medication_days).trim()!==""?u.value.medication_days+" 天":"—"),1)])])]),_:1}),s(m,{label:"状态",span:2},{default:a(()=>[s(_,{type:Number(c.value.void_status)===1?"danger":"success",size:"small"},{default:a(()=>[d(l(Number(c.value.void_status)===1?"已作废":"正常"),1)]),_:1},8,["type"])]),_:1})]),_:1})):(i(),v(p,{key:3,description:"无处方数据","image-size":72}))]),_:1}),o("div",Kt,[s(h,{shadow:"never",class:"border-gray-100"},{header:a(()=>[...e[18]||(e[18]=[o("div",{class:"flex items-center justify-between"},[o("span",{class:"font-medium text-[15px]"},"未关联的收款记录"),o("span",{class:"text-xs text-gray-400"},"本诊单下未被占用的支付单")],-1)])]),default:a(()=>[E.value.length?(i(),v(I,{key:0,data:E.value,size:"small",border:"",stripe:"","max-height":"280"},{default:a(()=>[s(r,{prop:"id",label:"ID",width:"70"}),s(r,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(r,{label:"类型",width:"90"},{default:a(({row:n})=>[d(l(n.order_type_desc||G(n.order_type)),1)]),_:1}),s(r,{label:"金额",width:"86",align:"right"},{default:a(({row:n})=>[o("span",Qt,"¥"+l(n.amount),1)]),_:1}),s(r,{label:"状态",width:"82",align:"center"},{default:a(({row:n})=>[s(_,{type:re(n.status),size:"small"},{default:a(()=>[d(l(n.status_desc||ne(n.status)),1)]),_:2},1032,["type"])]),_:1}),s(r,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(r,{label:"创建时间","min-width":"136"},{default:a(({row:n})=>[d(l(le(n.create_time)),1)]),_:1})]),_:1},8,["data"])):(i(),v(p,{key:1,description:"无未关联的收款单","image-size":60}))]),_:1}),s(h,{shadow:"never",class:"border-gray-100 relative overflow-hidden"},{header:a(()=>[o("div",Yt,[e[22]||(e[22]=o("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),u.value.creator_name?(i(),f("span",Wt,[e[21]||(e[21]=d("创建人:",-1)),o("span",Xt,l(u.value.creator_name),1)])):g("",!0)])]),default:a(()=>[u.value.payment_slip_audit_status===1?(i(),f("div",qt,[...e[19]||(e[19]=[o("div",{class:"stamp-inner"},"审核通过",-1)])])):g("",!0),u.value.payment_slip_audit_status===2?(i(),f("div",Gt,[...e[20]||(e[20]=[o("div",{class:"stamp-inner"},"已驳回",-1)])])):g("",!0),Q.value.length?(i(),v(I,{key:2,data:Q.value,size:"small",border:"",stripe:"","max-height":"280"},{default:a(()=>[s(r,{prop:"id",label:"ID",width:"70"}),s(r,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(r,{label:"类型",width:"90"},{default:a(({row:n})=>[d(l(n.order_type_desc||G(n.order_type)),1)]),_:1}),s(r,{label:"金额",width:"86",align:"right"},{default:a(({row:n})=>[o("span",Zt,"¥"+l(n.amount),1)]),_:1}),s(r,{label:"状态",width:"82",align:"center"},{default:a(({row:n})=>[s(_,{type:re(n.status),size:"small"},{default:a(()=>[d(l(n.status_desc||ne(n.status)),1)]),_:2},1032,["type"])]),_:1}),s(r,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(r,{label:"创建时间","min-width":"136"},{default:a(({row:n})=>[d(l(le(n.create_time)),1)]),_:1})]),_:1},8,["data"])):(i(),v(p,{key:3,description:"未关联收款单","image-size":60}))]),_:1})])]),s(h,{shadow:"never",class:"border-gray-100 mb-4"},{header:a(()=>[...e[23]||(e[23]=[o("span",{class:"font-medium text-[15px]"},"履约与收货信息",-1)])]),default:a(()=>[s(ie,{column:3,border:"",size:"small"},{default:a(()=>[s(m,{label:"诊单ID",span:3},{default:a(()=>[o("span",ea,l(u.value.diagnosis_id),1)]),_:1}),s(m,{label:"创建时间"},{default:a(()=>[d(l(B(u.value.create_time)),1)]),_:1}),s(m,{label:"业务订单创建人",span:2},{default:a(()=>[u.value.creator_name?(i(),f("div",ta,[o("div",null,[o("span",aa,l(u.value.creator_name||"—"),1)]),ee.value?(i(),f("div",sa,l(ee.value),1)):g("",!0)])):(i(),f("span",la,"—"))]),_:1}),s(m,{label:"创建人所属部门",span:3},{default:a(()=>[te.value.length?(i(),f("div",ra,[(i(!0),f(w,null,M(te.value,(n,y)=>(i(),f("div",{key:y},[n.length?(i(),v(Ce,{key:0,class:"text-[13px]",separator:"/"},{default:a(()=>[(i(!0),f(w,null,M(n,(Fe,$e)=>(i(),v(Ae,{key:$e},{default:a(()=>[o("span",na,l(Fe),1)]),_:2},1024))),128))]),_:2},1024)):g("",!0)]))),128))])):(i(),f("span",ia,"—"))]),_:1}),s(m,{label:"收货人"},{default:a(()=>[d(l(u.value.recipient_name),1)]),_:1}),s(m,{label:"收货手机"},{default:a(()=>[o("span",{class:L(j.value?"text-red-600 font-bold font-mono":"font-mono")},l(u.value.recipient_phone||"—"),3),j.value?(i(),v(_,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2"},{default:a(()=>[...e[24]||(e[24]=[d("与处方手机不一致",-1)])]),_:1})):g("",!0)]),_:1}),s(m,{label:"收货地址"},{default:a(()=>[d(l(ve.value),1)]),_:1}),s(m,{label:"复诊"},{default:a(()=>[d(l(u.value.is_follow_up?"是":"否"),1)]),_:1}),s(m,{label:"用药疗程"},{default:a(()=>[d(l(u.value.medication_days?u.value.medication_days+" 天":"—"),1)]),_:1}),s(m,{label:"上次医护"},{default:a(()=>[d(l(u.value.prev_staff||"—"),1)]),_:1}),s(m,{label:"服务渠道"},{default:a(()=>[d(l(u.value.service_channel||"—"),1)]),_:1}),s(m,{label:"服务套餐"},{default:a(()=>[d(l(Te(u.value.service_package)),1)]),_:1}),s(m,{label:"费用类别"},{default:a(()=>[d(l(G(u.value.fee_type)),1)]),_:1}),s(m,{label:"快递单号"},{default:a(()=>[d(l(u.value.tracking_number||"—"),1)]),_:1}),s(m,{label:"快递公司"},{default:a(()=>[d(l(Se(u.value.express_company)),1)]),_:1}),P((i(),v(m,{label:"药房备注",span:3},{default:a(()=>[d(l(u.value.remark_extra||"—"),1)]),_:1})),[[$,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(m,{label:"医助备注",span:3},{default:a(()=>[d(l(u.value.remark_assistant||"—"),1)]),_:1}),s(m,{label:"处方审核意见",span:3},{default:a(()=>[d(l(u.value.prescription_audit_remark||"—"),1)]),_:1}),s(m,{label:"支付审核意见",span:3},{default:a(()=>[d(l(u.value.payment_slip_audit_remark||"—"),1)]),_:1})]),_:1})]),_:1}),String(u.value.tracking_number||"").trim()?(i(),v(h,{key:0,shadow:"never",class:"border-gray-100 mb-4"},{header:a(()=>[...e[25]||(e[25]=[o("span",{class:"font-medium text-[15px]"},"物流轨迹",-1)])]),default:a(()=>[o("div",oa,[s(je,{modelValue:D.value,"onUpdate:modelValue":e[1]||(e[1]=n=>D.value=n),clearable:"",maxlength:"20",placeholder:"收件手机",class:"w-[180px]",onKeyup:ut(q,["enter"])},null,8,["modelValue"]),s(Ve,{modelValue:z.value,"onUpdate:modelValue":e[2]||(e[2]=n=>z.value=n),placeholder:"承运商",style:{width:"140px"}},{default:a(()=>[s(F,{label:"自动识别",value:"auto"}),s(F,{label:"顺丰速运",value:"sf"}),s(F,{label:"京东快递",value:"jd"}),s(F,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),P((i(),v(S,{type:"primary",plain:"",size:"default",loading:V.value,onClick:q},{default:a(()=>[...e[26]||(e[26]=[d("刷新轨迹",-1)])]),_:1},8,["loading"])),[[$,["tcm.prescriptionOrder/logisticsTrace"]]])]),V.value&&!x.value?(i(),f("div",ua,"正在加载物流轨迹...")):x.value?(i(),f("div",da,[x.value.state_text?(i(),f("div",pa,[o("span",ca,"状态:"+l(x.value.state_text),1),x.value.carrier_label?(i(),v(_,{key:0,size:"small",type:"info"},{default:a(()=>[d(l(x.value.carrier_label),1)]),_:1})):g("",!0)])):g("",!0),ae.value.length?(i(),v(ue,{key:1,class:"mt-2 pl-2"},{default:a(()=>[(i(!0),f(w,null,M(ae.value,(n,y)=>(i(),v(oe,{key:y,type:y===0?"primary":"info",hollow:y!==0,timestamp:n.time,placement:"top"},{default:a(()=>[o("span",{class:L(y===0?"text-gray-800 font-medium":"text-gray-500")},l(n.context),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(i(),v(p,{key:2,description:"暂无轨迹节点记录","image-size":64}))])):g("",!0)]),_:1})):g("",!0),P((i(),v(h,{shadow:"never",class:"border-gray-100"},{header:a(()=>[...e[27]||(e[27]=[o("span",{class:"font-medium text-[15px]"},"操作日志",-1)])]),default:a(()=>[O.value.length?(i(),v(ue,{key:0,class:"mt-2 pl-2"},{default:a(()=>[(i(!0),f(w,null,M(O.value,(n,y)=>(i(),v(oe,{key:n.id,type:y===0?"primary":"info",hollow:y!==0,timestamp:B(n.create_time),placement:"top"},{default:a(()=>[o("div",ma,[o("span",_a,l(n.admin_name),1),s(_,{size:"small",type:"info"},{default:a(()=>[d(l(De(n.action)),1)]),_:2},1024)]),o("span",{class:L(y===0?"text-gray-800 font-medium":"text-gray-500")},l(n.summary),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(i(),v(p,{key:1,description:"暂无操作日志","image-size":64}))]),_:1})),[[$,["tcm.prescriptionOrder/logs"]]])])):g("",!0)]),_:1},8,["modelValue"])])}}}),ss=bt(va,[["__scopeId","data-v-2e08802c"]]);export{ss as default}; +import{R as Me,M as Ue,N as He,T as Je,i as Ke,L as Qe,a9 as qe,a4 as Ge,a5 as Ye,J as We,aa as Xe,ab as Ze,k as et,j as tt,C as at,P as st,Q as lt,ac as rt,ad as nt,e as it}from"./element-plus-DFTWCWyi.js";import{_ as ot}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as ut}from"./@vue/runtime-dom-DDAG46FW.js";import{u as dt}from"./usePaging-VsbTxSU0.js";import{l as pt,t as ct,u as mt,b as _t,s as ft}from"./tcm-DzAQc_oE.js";import{u as vt,i as gt,m as yt,_ as bt}from"./index--WnM67ZH.js";import{f as xt,b as ht,w as kt,as as wt,ak as i,I as f,a as s,F as w,aP as P,G as v,aN as a,J as o,O as d,H as g,ap as M,A as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as U,a as Tt,n as k,r as St}from"./@vue/reactivity-DiY1c2vO.js";import{Q as l,o as L}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Nt={class:"patient-order-list"},Ot={key:0,class:"po-empty-tip"},Et={class:"text-red-500 font-semibold"},zt={class:"flex justify-end mt-3"},Dt={class:"flex items-center"},It={key:1,class:"px-6 pb-6 overflow-y-auto"},Pt={class:"text-red-500 font-bold text-xl"},Lt={class:"text-green-600 font-bold text-xl"},At={class:"text-primary font-bold text-xl"},Ct={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},jt={key:0,class:"audit-stamp stamp-pass"},Vt={key:1,class:"audit-stamp stamp-reject"},Bt={class:"flex items-center justify-between"},Rt={class:"flex items-center gap-3"},Ft={key:0,class:"text-xs text-gray-500"},$t={class:"text-primary font-medium"},Mt={class:"text-xs text-gray-400"},Ut={class:"text-red-500 font-medium"},Ht={key:1,class:"ml-2 text-gray-500"},Jt={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},Kt={class:"flex flex-col gap-4 h-full"},Qt={class:"text-red-500"},qt={key:0,class:"audit-stamp stamp-pass"},Gt={key:1,class:"audit-stamp stamp-reject"},Yt={class:"flex items-center gap-3"},Wt={key:0,class:"text-xs text-gray-500"},Xt={class:"text-primary font-medium"},Zt={class:"text-red-500"},ea={class:"font-mono"},ta={key:0,class:"text-[13px] space-y-1"},aa={class:"font-medium text-gray-900"},sa={key:0,class:"text-gray-600 text-xs"},la={key:1,class:"text-gray-400"},ra={key:0,class:"space-y-1.5"},na={class:"text-gray-800"},ia={key:1,class:"text-gray-400"},oa={class:"flex flex-wrap items-center gap-3 mb-4"},ua={key:0,class:"py-6 text-center text-sm text-gray-500"},da={key:1,class:"bg-gray-50/50 p-4 rounded-md"},pa={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},ca={class:"text-gray-800"},ma={class:"flex items-center gap-2 mb-1"},_a={class:"font-medium text-[13px]"},fa=2,va=xt({__name:"PatientOrderList",props:{diagnosisId:{},patientId:{}},setup(de,{expose:pe}){const W=vt(),A=de,H=b(()=>{const t=Number(A.patientId);return Number.isFinite(t)&&t>0?t:0}),J=b(()=>H.value>0),N=St({}),{pager:T,getLists:X,resetPage:ce}=dt({fetchFun:pt,params:N,size:10}),me=()=>{Object.keys(N).forEach(t=>delete N[t]),A.diagnosisId>0&&(N.context_diagnosis_id=A.diagnosisId),J.value&&(N.patient_id=H.value),N.scene="diagnosis_edit"},_e=[0,3,6],fe=b(()=>{const t=W.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(p=>Number(p)):[];return e.includes(fa)?e.some(p=>_e.includes(p)):!0}),C=k(!1),K=k(!1),u=k(null),O=k([]),E=k([]),c=b(()=>{var e;const t=(e=u.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null}),Q=b(()=>{var e;const t=(e=u.value)==null?void 0:e.linked_pay_orders;return Array.isArray(t)?t:[]}),Z=b(()=>{const t=u.value;if(!t)return 0;const e=Number(t.amount)||0,p=Number(t.linked_pay_paid_total)||0;return Math.round((e-p)*100)/100}),j=b(()=>{var p,r;const t=se((p=c.value)==null?void 0:p.phone),e=se((r=u.value)==null?void 0:r.recipient_phone);return!t||!e?!1:t!==e}),ve=b(()=>{const t=u.value;if(!t)return"—";const e=[];return t.shipping_province&&e.push(t.shipping_province),t.shipping_city&&e.push(t.shipping_city),t.shipping_district&&e.push(t.shipping_district),t.shipping_address&&e.push(t.shipping_address),e.length>0?e.join(" "):"—"}),ee=b(()=>{const t=u.value;if(!t)return"";const e=String(t.creator_account??"").trim(),p=String(t.creator_mobile??"").trim(),r=[];return e&&r.push(`登录账号:${e}`),p&&r.push(`手机:${p}`),r.join(" · ")}),te=b(()=>{var e,p;const t=String(((e=u.value)==null?void 0:e.order_creator_dept_path)??((p=u.value)==null?void 0:p.diagnosis_creator_dept_path)??"").trim();return t?t.split(";").map(r=>r.trim()).filter(Boolean).map(r=>r.includes(" / ")?r.split(" / ").map(_=>_.trim()).filter(Boolean):r.split("/").map(_=>_.trim()).filter(Boolean)).filter(r=>r.length>0):[]}),z=k("auto"),V=k(!1),x=k(null),D=k(""),ae=b(()=>{const t=x.value;return!t||!Array.isArray(t.traces)?[]:t.traces});async function q(){var e;const t=Number((e=u.value)==null?void 0:e.id);if(t){V.value=!0;try{const p=String(D.value||"").replace(/\D/g,""),r={id:t,express_company:z.value};p.length>=4&&(r.phone_tail=p);const _=await ct(r);x.value=(_==null?void 0:_.data)??_}catch{x.value=null}finally{V.value=!1}}}async function ge(t){u.value=null,E.value=[],x.value=null,z.value="auto",D.value="",O.value=[],C.value=!0,K.value=!0;try{const e=await mt({id:t}),p=(e==null?void 0:e.data)??e??null;if(u.value=p,p){z.value=String(p.express_company||"auto")||"auto";const r=String(p.recipient_phone||"").replace(/\D/g,"");D.value=r.length>=4?r:"",String(p.tracking_number||"").trim()&&q(),xe(t),p.diagnosis_id&&ye(p.diagnosis_id,t,p.pay_order_ids||[])}}catch(e){gt.msgError((e==null?void 0:e.message)||"加载详情失败"),C.value=!1}finally{K.value=!1}}async function ye(t,e,p){var r;if(!t){E.value=[];return}try{const _=await _t({diagnosis_id:t,prescription_order_id:e}),S=(_==null?void 0:_.lists)??((r=_==null?void 0:_.data)==null?void 0:r.lists)??[];E.value=Array.isArray(S)?S.filter(I=>!p.includes(I.id)):[]}catch{E.value=[]}}function be(){const t=W.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function xe(t){if(!be()){O.value=[];return}try{const e=await ft({id:t});O.value=(e==null?void 0:e.data)??e??[]}catch{O.value=[]}}function se(t){return t==null?"":String(t).replace(/\s/g,"").trim()}const he=t=>{const e=Number(t);return Number.isFinite(e)?e.toFixed(2):"0.00"};function ke(t){const e=Number(t);return Number.isFinite(e)?e.toFixed(2):"0.00"}const B=t=>{if(t==null||t==="")return"—";if(typeof t=="number"&&t>1e9&&t<1e11){const e=new Date(t*1e3),p=r=>String(r).padStart(2,"0");return`${e.getFullYear()}-${p(e.getMonth()+1)}-${p(e.getDate())} ${p(e.getHours())}:${p(e.getMinutes())}:${p(e.getSeconds())}`}return String(t)};function le(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):B(t)}function G(t){return{1:"药费",2:"诊费",3:"药费+诊费",4:"其他"}[Number(t)]??"—"}const Y=k([]);async function we(){try{const t=await yt({type:"server_order"}),e=(t==null?void 0:t.server_order)||[];Y.value=e.filter(p=>p.status!==0)}catch{Y.value=[]}}function Te(t){if(t==null||t==="")return"—";let e=[];return Array.isArray(t)?e=t.map(r=>String(r)).filter(r=>r!==""):typeof t=="string"&&(e=t.split(",").map(r=>r.trim()).filter(r=>r!=="")),e.length===0?"—":e.map(r=>{const _=Y.value.find(S=>S.value===r);return _?_.name:r}).join("、")}ht(()=>{we()});function Se(t){const e=String(t||"").toLowerCase();return e==="sf"?"顺丰速运":e==="jd"?"京东快递":e==="jt"||e==="jtexpress"?"极兔速递":"自动识别"}function Ne(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function Oe(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function re(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function ne(t){return{0:"待支付",1:"待支付",2:"已支付",3:"已取消"}[Number(t)]??"—"}const Ee=t=>({1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"})[Number(t)]??"—",ze=t=>{const e=Number(t);return e===3||e===6?"success":e===5?"primary":e===4||e===9||e===10?"danger":e===2||e===7?"warning":"info"};function De(t){return{create:"创建",edit:"编辑",audit_rx_approve:"处方审核",audit_rx_reject:"处方审核",audit_pay_approve:"支付审核",audit_pay_reject:"支付审核",fill_tracking:"填快递单",ship:"确认发货",withdraw:"撤销",link_pay_order:"关联支付单",revoke_rx_audit:"撤回处方审核",revoke_pay_audit:"撤回支付审核",gancao_submit:"甘草下单",patch_rx_patient:"处方患者信息",update_amount:"修改订单金额",complete:"完成订单"}[t]||t}return kt(()=>[A.diagnosisId,H.value],()=>{if(!J.value){T.lists=[],T.count=0;return}me(),ce()},{immediate:!0}),pe({refresh:()=>X()}),(t,e)=>{const p=Me,r=He,_=Je,S=Ke,I=Ue,Ie=ot,Pe=qe,h=We,R=Ye,Le=Ge,m=Ze,ie=Xe,Ae=tt,Ce=et,je=at,F=lt,Ve=st,oe=nt,ue=rt,Be=it,$=wt("perms"),Re=Qe;return i(),f("div",Nt,[J.value?(i(),f(w,{key:1},[P((i(),v(I,{data:U(T).lists,border:"",stripe:"","empty-text":"暂无业务订单"},{default:a(()=>[s(r,{label:"订单编号",prop:"order_no","min-width":"200","show-overflow-tooltip":""}),s(r,{label:"金额",width:"120",align:"right"},{default:a(({row:n})=>[o("span",Et,"¥"+l(he(n.amount)),1)]),_:1}),s(r,{label:"医生",prop:"doctor_name",width:"110","show-overflow-tooltip":""},{default:a(({row:n})=>[d(l(n.doctor_name||"—"),1)]),_:1}),s(r,{label:"医助",prop:"assistant_name",width:"110","show-overflow-tooltip":""},{default:a(({row:n})=>[d(l(n.assistant_name||"—"),1)]),_:1}),s(r,{label:"履约状态",width:"110"},{default:a(({row:n})=>[s(_,{type:ze(n.fulfillment_status),size:"small",effect:"light"},{default:a(()=>[d(l(Ee(n.fulfillment_status)),1)]),_:2},1032,["type"])]),_:1}),s(r,{label:"创建时间","min-width":"170"},{default:a(({row:n})=>[d(l(B(n.create_time)),1)]),_:1}),s(r,{label:"操作",width:"100",fixed:"right"},{default:a(({row:n})=>[P((i(),v(S,{type:"primary",link:"",onClick:y=>ge(n.id)},{default:a(()=>[...e[4]||(e[4]=[d("查看详情",-1)])]),_:1},8,["onClick"])),[[$,["tcm.prescriptionOrder/detail"]]])]),_:1})]),_:1},8,["data"])),[[Re,U(T).loading]]),o("div",zt,[s(Ie,{modelValue:U(T),"onUpdate:modelValue":e[0]||(e[0]=n=>Tt(T)?T.value=n:null),onChange:U(X)},null,8,["modelValue","onChange"])])],64)):(i(),f("div",Ot,[s(p,{description:"当前诊单未携带患者ID,无法列出业务订单"})])),s(Be,{modelValue:C.value,"onUpdate:modelValue":e[3]||(e[3]=n=>C.value=n),size:"80%","destroy-on-close":"","close-on-click-modal":!1,"append-to-body":""},{header:a(()=>{var n,y;return[o("div",Dt,[e[5]||(e[5]=o("span",{class:"font-semibold text-lg"},"业务订单详情",-1)),(n=u.value)!=null&&n.order_no?(i(),v(_,{key:0,type:"primary",effect:"plain",round:"",class:"ml-3"},{default:a(()=>[d(l(u.value.order_no),1)]),_:1})):g("",!0),(y=u.value)!=null&&y.gancao_reciperl_order_no?(i(),v(_,{key:1,type:"success",effect:"plain",round:"",class:"ml-2"},{default:a(()=>[d("甘草 "+l(u.value.gancao_reciperl_order_no),1)]),_:1})):g("",!0)])]}),default:a(()=>[K.value?(i(),v(Pe,{key:0,rows:12,animated:"",class:"px-6 py-4"})):u.value?(i(),f("div",It,[s(Le,{gutter:16,class:"mb-5"},{default:a(()=>[s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[6]||(e[6]=o("div",{class:"text-gray-500 text-xs mb-1"},"总金额",-1)),o("div",Pt,"¥"+l(u.value.amount),1)]),_:1})]),_:1}),s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[7]||(e[7]=o("div",{class:"text-gray-500 text-xs mb-1"},"已付总额",-1)),o("div",Lt,"¥"+l(u.value.linked_pay_paid_total||0),1)]),_:1})]),_:1}),s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[8]||(e[8]=o("div",{class:"text-gray-500 text-xs mb-1"},"需代收",-1)),o("div",{class:L(["font-bold text-xl",Z.value>0?"text-amber-600":"text-gray-500"])},"¥"+l(ke(Z.value)),3)]),_:1})]),_:1}),s(R,{xs:12,sm:6},{default:a(()=>[s(h,{shadow:"never",class:"border border-gray-100 bg-gray-50/50"},{default:a(()=>[e[9]||(e[9]=o("div",{class:"text-gray-500 text-xs mb-1"},"已付笔数",-1)),o("div",At,l(Q.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),o("div",Ct,[s(h,{shadow:"never",class:"border-gray-100 h-full relative overflow-hidden"},{header:a(()=>[o("div",Bt,[o("div",Rt,[e[13]||(e[13]=o("span",{class:"font-medium text-[15px]"},"处方详情",-1)),u.value.doctor_name?(i(),f("span",Ft,[e[12]||(e[12]=d(" 开方人:",-1)),o("span",$t,l(u.value.doctor_name),1)])):g("",!0)]),o("span",Mt,"ID: "+l(u.value.prescription_id||"—"),1)])]),default:a(()=>[u.value.prescription_audit_status===1?(i(),f("div",jt,[...e[10]||(e[10]=[o("div",{class:"stamp-inner"},"审核通过",-1)])])):g("",!0),u.value.prescription_audit_status===2?(i(),f("div",Vt,[...e[11]||(e[11]=[o("div",{class:"stamp-inner"},"已驳回",-1)])])):g("",!0),c.value?(i(),v(ie,{key:2,column:2,border:"",size:"small",class:"bg-white"},{default:a(()=>[s(m,{label:"处方编号",span:2},{default:a(()=>[d(l(c.value.sn||"—"),1)]),_:1}),s(m,{label:"患者"},{default:a(()=>[d(l(c.value.patient_name||"—"),1)]),_:1}),s(m,{label:"性别 / 年龄"},{default:a(()=>[d(l(c.value.gender_desc||"—")+" · "+l(c.value.age??"—")+"岁",1)]),_:1}),s(m,{label:"手机"},{default:a(()=>[o("span",{class:L(j.value?"text-red-600 font-bold":"")},l(c.value.phone||"—"),3),j.value?(i(),v(_,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2"},{default:a(()=>[...e[14]||(e[14]=[d("与订单手机不一致",-1)])]),_:1})):g("",!0)]),_:1}),s(m,{label:"处方日期"},{default:a(()=>[d(l(c.value.prescription_date||"—"),1)]),_:1}),s(m,{label:"医师"},{default:a(()=>[d(l(c.value.doctor_name||"—"),1)]),_:1}),s(m,{label:"类型"},{default:a(()=>[d(l(c.value.prescription_type||"—"),1)]),_:1}),s(m,{label:"临床诊断",span:2},{default:a(()=>[d(l(c.value.clinical_diagnosis||"—"),1)]),_:1}),fe.value?(i(),v(m,{key:0,label:"剂数 / 用法",span:2},{default:a(()=>[d(l(u.value.dose_count??c.value.dose_count??"—")+" "+l(u.value.dose_unit||"剂")+" · "+l(c.value.usage_instruction||c.value.usage_method||"—"),1)]),_:1})):g("",!0),s(m,{label:"处方金额"},{default:a(()=>[o("span",Ut,"¥"+l(c.value.amount??"—"),1)]),_:1}),s(m,{label:"消费者审核"},{default:a(()=>[s(_,{type:Oe(c.value.audit_status),size:"small"},{default:a(()=>[d(l(Ne(c.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),s(m,{label:"用量"},{default:a(()=>[c.value.dosage_amount?(i(),f(w,{key:0},[d(l(c.value.dosage_amount)+l(c.value.dosage_unit||"g")+" ",1),c.value.prescription_type==="浓缩水丸"?(i(),f(w,{key:0},[d(" · "+l(Number(c.value.dosage_bag_count)>0?Number(c.value.dosage_bag_count):1)+"袋 ",1)],64)):g("",!0),c.value.prescription_type==="饮片"&&c.value.need_decoction!==null?(i(),f("span",Ht," ("+l(c.value.need_decoction?"代煎":"不代煎")+") ",1)):g("",!0)],64)):(i(),f(w,{key:1},[d("—")],64))]),_:1}),s(m,{label:"服用方式"},{default:a(()=>[o("div",Jt,[o("div",null,[e[15]||(e[15]=o("span",{class:"text-gray-500"},"每天次数:",-1)),d(" "+l(c.value.times_per_day?c.value.times_per_day+" 次":"—"),1)]),o("div",null,[e[16]||(e[16]=o("span",{class:"text-gray-500"},"处方开立:",-1)),d(" "+l(c.value.usage_days!=null&&c.value.usage_days!==""?c.value.usage_days+" 天":"—"),1)]),o("div",null,[e[17]||(e[17]=o("span",{class:"text-gray-500"},"订单设置:",-1)),d(" "+l(u.value.medication_days!=null&&String(u.value.medication_days).trim()!==""?u.value.medication_days+" 天":"—"),1)])])]),_:1}),s(m,{label:"状态",span:2},{default:a(()=>[s(_,{type:Number(c.value.void_status)===1?"danger":"success",size:"small"},{default:a(()=>[d(l(Number(c.value.void_status)===1?"已作废":"正常"),1)]),_:1},8,["type"])]),_:1})]),_:1})):(i(),v(p,{key:3,description:"无处方数据","image-size":72}))]),_:1}),o("div",Kt,[s(h,{shadow:"never",class:"border-gray-100"},{header:a(()=>[...e[18]||(e[18]=[o("div",{class:"flex items-center justify-between"},[o("span",{class:"font-medium text-[15px]"},"未关联的收款记录"),o("span",{class:"text-xs text-gray-400"},"本诊单下未被占用的支付单")],-1)])]),default:a(()=>[E.value.length?(i(),v(I,{key:0,data:E.value,size:"small",border:"",stripe:"","max-height":"280"},{default:a(()=>[s(r,{prop:"id",label:"ID",width:"70"}),s(r,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(r,{label:"类型",width:"90"},{default:a(({row:n})=>[d(l(n.order_type_desc||G(n.order_type)),1)]),_:1}),s(r,{label:"金额",width:"86",align:"right"},{default:a(({row:n})=>[o("span",Qt,"¥"+l(n.amount),1)]),_:1}),s(r,{label:"状态",width:"82",align:"center"},{default:a(({row:n})=>[s(_,{type:re(n.status),size:"small"},{default:a(()=>[d(l(n.status_desc||ne(n.status)),1)]),_:2},1032,["type"])]),_:1}),s(r,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(r,{label:"创建时间","min-width":"136"},{default:a(({row:n})=>[d(l(le(n.create_time)),1)]),_:1})]),_:1},8,["data"])):(i(),v(p,{key:1,description:"无未关联的收款单","image-size":60}))]),_:1}),s(h,{shadow:"never",class:"border-gray-100 relative overflow-hidden"},{header:a(()=>[o("div",Yt,[e[22]||(e[22]=o("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),u.value.creator_name?(i(),f("span",Wt,[e[21]||(e[21]=d("创建人:",-1)),o("span",Xt,l(u.value.creator_name),1)])):g("",!0)])]),default:a(()=>[u.value.payment_slip_audit_status===1?(i(),f("div",qt,[...e[19]||(e[19]=[o("div",{class:"stamp-inner"},"审核通过",-1)])])):g("",!0),u.value.payment_slip_audit_status===2?(i(),f("div",Gt,[...e[20]||(e[20]=[o("div",{class:"stamp-inner"},"已驳回",-1)])])):g("",!0),Q.value.length?(i(),v(I,{key:2,data:Q.value,size:"small",border:"",stripe:"","max-height":"280"},{default:a(()=>[s(r,{prop:"id",label:"ID",width:"70"}),s(r,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(r,{label:"类型",width:"90"},{default:a(({row:n})=>[d(l(n.order_type_desc||G(n.order_type)),1)]),_:1}),s(r,{label:"金额",width:"86",align:"right"},{default:a(({row:n})=>[o("span",Zt,"¥"+l(n.amount),1)]),_:1}),s(r,{label:"状态",width:"82",align:"center"},{default:a(({row:n})=>[s(_,{type:re(n.status),size:"small"},{default:a(()=>[d(l(n.status_desc||ne(n.status)),1)]),_:2},1032,["type"])]),_:1}),s(r,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(r,{label:"创建时间","min-width":"136"},{default:a(({row:n})=>[d(l(le(n.create_time)),1)]),_:1})]),_:1},8,["data"])):(i(),v(p,{key:3,description:"未关联收款单","image-size":60}))]),_:1})])]),s(h,{shadow:"never",class:"border-gray-100 mb-4"},{header:a(()=>[...e[23]||(e[23]=[o("span",{class:"font-medium text-[15px]"},"履约与收货信息",-1)])]),default:a(()=>[s(ie,{column:3,border:"",size:"small"},{default:a(()=>[s(m,{label:"诊单ID",span:3},{default:a(()=>[o("span",ea,l(u.value.diagnosis_id),1)]),_:1}),s(m,{label:"创建时间"},{default:a(()=>[d(l(B(u.value.create_time)),1)]),_:1}),s(m,{label:"业务订单创建人",span:2},{default:a(()=>[u.value.creator_name?(i(),f("div",ta,[o("div",null,[o("span",aa,l(u.value.creator_name||"—"),1)]),ee.value?(i(),f("div",sa,l(ee.value),1)):g("",!0)])):(i(),f("span",la,"—"))]),_:1}),s(m,{label:"创建人所属部门",span:3},{default:a(()=>[te.value.length?(i(),f("div",ra,[(i(!0),f(w,null,M(te.value,(n,y)=>(i(),f("div",{key:y},[n.length?(i(),v(Ce,{key:0,class:"text-[13px]",separator:"/"},{default:a(()=>[(i(!0),f(w,null,M(n,(Fe,$e)=>(i(),v(Ae,{key:$e},{default:a(()=>[o("span",na,l(Fe),1)]),_:2},1024))),128))]),_:2},1024)):g("",!0)]))),128))])):(i(),f("span",ia,"—"))]),_:1}),s(m,{label:"收货人"},{default:a(()=>[d(l(u.value.recipient_name),1)]),_:1}),s(m,{label:"收货手机"},{default:a(()=>[o("span",{class:L(j.value?"text-red-600 font-bold font-mono":"font-mono")},l(u.value.recipient_phone||"—"),3),j.value?(i(),v(_,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2"},{default:a(()=>[...e[24]||(e[24]=[d("与处方手机不一致",-1)])]),_:1})):g("",!0)]),_:1}),s(m,{label:"收货地址"},{default:a(()=>[d(l(ve.value),1)]),_:1}),s(m,{label:"复诊"},{default:a(()=>[d(l(u.value.is_follow_up?"是":"否"),1)]),_:1}),s(m,{label:"用药疗程"},{default:a(()=>[d(l(u.value.medication_days?u.value.medication_days+" 天":"—"),1)]),_:1}),s(m,{label:"上次医护"},{default:a(()=>[d(l(u.value.prev_staff||"—"),1)]),_:1}),s(m,{label:"服务渠道"},{default:a(()=>[d(l(u.value.service_channel||"—"),1)]),_:1}),s(m,{label:"服务套餐"},{default:a(()=>[d(l(Te(u.value.service_package)),1)]),_:1}),s(m,{label:"费用类别"},{default:a(()=>[d(l(G(u.value.fee_type)),1)]),_:1}),s(m,{label:"快递单号"},{default:a(()=>[d(l(u.value.tracking_number||"—"),1)]),_:1}),s(m,{label:"快递公司"},{default:a(()=>[d(l(Se(u.value.express_company)),1)]),_:1}),P((i(),v(m,{label:"药房备注",span:3},{default:a(()=>[d(l(u.value.remark_extra||"—"),1)]),_:1})),[[$,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(m,{label:"医助备注",span:3},{default:a(()=>[d(l(u.value.remark_assistant||"—"),1)]),_:1}),s(m,{label:"处方审核意见",span:3},{default:a(()=>[d(l(u.value.prescription_audit_remark||"—"),1)]),_:1}),s(m,{label:"支付审核意见",span:3},{default:a(()=>[d(l(u.value.payment_slip_audit_remark||"—"),1)]),_:1})]),_:1})]),_:1}),String(u.value.tracking_number||"").trim()?(i(),v(h,{key:0,shadow:"never",class:"border-gray-100 mb-4"},{header:a(()=>[...e[25]||(e[25]=[o("span",{class:"font-medium text-[15px]"},"物流轨迹",-1)])]),default:a(()=>[o("div",oa,[s(je,{modelValue:D.value,"onUpdate:modelValue":e[1]||(e[1]=n=>D.value=n),clearable:"",maxlength:"20",placeholder:"收件手机",class:"w-[180px]",onKeyup:ut(q,["enter"])},null,8,["modelValue"]),s(Ve,{modelValue:z.value,"onUpdate:modelValue":e[2]||(e[2]=n=>z.value=n),placeholder:"承运商",style:{width:"140px"}},{default:a(()=>[s(F,{label:"自动识别",value:"auto"}),s(F,{label:"顺丰速运",value:"sf"}),s(F,{label:"京东快递",value:"jd"}),s(F,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),P((i(),v(S,{type:"primary",plain:"",size:"default",loading:V.value,onClick:q},{default:a(()=>[...e[26]||(e[26]=[d("刷新轨迹",-1)])]),_:1},8,["loading"])),[[$,["tcm.prescriptionOrder/logisticsTrace"]]])]),V.value&&!x.value?(i(),f("div",ua,"正在加载物流轨迹...")):x.value?(i(),f("div",da,[x.value.state_text?(i(),f("div",pa,[o("span",ca,"状态:"+l(x.value.state_text),1),x.value.carrier_label?(i(),v(_,{key:0,size:"small",type:"info"},{default:a(()=>[d(l(x.value.carrier_label),1)]),_:1})):g("",!0)])):g("",!0),ae.value.length?(i(),v(ue,{key:1,class:"mt-2 pl-2"},{default:a(()=>[(i(!0),f(w,null,M(ae.value,(n,y)=>(i(),v(oe,{key:y,type:y===0?"primary":"info",hollow:y!==0,timestamp:n.time,placement:"top"},{default:a(()=>[o("span",{class:L(y===0?"text-gray-800 font-medium":"text-gray-500")},l(n.context),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(i(),v(p,{key:2,description:"暂无轨迹节点记录","image-size":64}))])):g("",!0)]),_:1})):g("",!0),P((i(),v(h,{shadow:"never",class:"border-gray-100"},{header:a(()=>[...e[27]||(e[27]=[o("span",{class:"font-medium text-[15px]"},"操作日志",-1)])]),default:a(()=>[O.value.length?(i(),v(ue,{key:0,class:"mt-2 pl-2"},{default:a(()=>[(i(!0),f(w,null,M(O.value,(n,y)=>(i(),v(oe,{key:n.id,type:y===0?"primary":"info",hollow:y!==0,timestamp:B(n.create_time),placement:"top"},{default:a(()=>[o("div",ma,[o("span",_a,l(n.admin_name),1),s(_,{size:"small",type:"info"},{default:a(()=>[d(l(De(n.action)),1)]),_:2},1024)]),o("span",{class:L(y===0?"text-gray-800 font-medium":"text-gray-500")},l(n.summary),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(i(),v(p,{key:1,description:"暂无操作日志","image-size":64}))]),_:1})),[[$,["tcm.prescriptionOrder/logs"]]])])):g("",!0)]),_:1},8,["modelValue"])])}}}),ss=bt(va,[["__scopeId","data-v-2e08802c"]]);export{ss as default}; diff --git a/server/public/admin/assets/RecordingPlaybackBlock-39655xEj.js b/server/public/admin/assets/RecordingPlaybackBlock-BHZL3zDJ.js similarity index 96% rename from server/public/admin/assets/RecordingPlaybackBlock-39655xEj.js rename to server/public/admin/assets/RecordingPlaybackBlock-BHZL3zDJ.js index f5518212..19b205ee 100644 --- a/server/public/admin/assets/RecordingPlaybackBlock-39655xEj.js +++ b/server/public/admin/assets/RecordingPlaybackBlock-BHZL3zDJ.js @@ -1 +1 @@ -import{_ as L}from"./element-plus-DFTWCWyi.js";import B from"./RecordingVideoPlayer-CRxrgEoO.js";import{e as H,_ as I}from"./index-Nt5zMHcc.js";import{f as w,ak as n,I as m,J as p,F as _,G as u,aN as v,O as k,H as y,ap as R,A as d}from"./@vue/runtime-core-C6bnekPw.js";import{Q as q}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const C={key:0,class:"recording-list"},N={class:"recording-item"},P={key:1,class:"recording-alternates"},V={class:"recording-alternates__links"},A={key:1,class:"text-gray-400"},E=w({__name:"RecordingPlaybackBlock",props:{recordId:{},urls:{}},setup(c){const $=c,h=H(),l=d(()=>{const e=$.urls||[],t=new Set,r=[];for(const s of e){const o=String(s??"").trim();!o||t.has(o)||(t.add(o),r.push(o))}return r}),a=d(()=>{const e=l.value;if(!e.length)return null;const t=e.find(i=>/\.mp4(\?|#|$)/i.test(i));if(t)return t;const r=e.find(i=>/\.m3u8(\?|#|$)/i.test(i)&&/vod-qcloud\.com/i.test(i));if(r)return r;const s=e.find(i=>/\.m3u8(\?|#|$)/i.test(i)&&/\.cos\.[^/]+\.myqcloud\.com/i.test(i));if(s)return s;const o=e.find(i=>/\.m3u8(\?|#|$)/i.test(i));return o||e[0]}),f=d(()=>{const e=l.value,t=a.value;return t?e.filter(r=>r!==t):e.slice(1)});function b(e){if(!e||typeof e!="string")return!1;const t=e.trim();return/^https?:\/\//i.test(t)?/\.(mp4|webm|ogg|mov|mkv|m4v|m3u8)(\?|#|$)/i.test(t):/\.(mp4|webm|ogg|mov|mkv|m4v|m3u8)(\?|#|$)/i.test(t)||t.startsWith("/uploads/")}function g(e){return h.getImageUrl(String(e||"").trim())}function S(e,t){const r=e.trim();return/\.mp4(\?|#|$)/i.test(r)?`MP4 ${t+1}`:/vod-qcloud\.com/i.test(r)&&/\.m3u8/i.test(r)?`点播 ${t+1}`:/\.cos\.[^/]+\.myqcloud\.com/i.test(r)&&/\.m3u8/i.test(r)?`COS HLS ${t+1}`:/\.m3u8/i.test(r)?`HLS ${t+1}`:`链接 ${t+1}`}return(e,t)=>{const r=L;return l.value.length?(n(),m("div",C,[p("div",N,[a.value?(n(),m(_,{key:0},[b(a.value)?(n(),u(B,{key:`${c.recordId}-${a.value}`,src:a.value},null,8,["src"])):(n(),u(r,{key:1,href:g(a.value),target:"_blank",type:"primary"},{default:v(()=>[...t[0]||(t[0]=[k(" 打开回放 ",-1)])]),_:1},8,["href"]))],64)):y("",!0),f.value.length?(n(),m("div",P,[t[1]||(t[1]=p("span",{class:"recording-alternates__label"},"备用地址",-1)),p("div",V,[(n(!0),m(_,null,R(f.value,(s,o)=>(n(),u(r,{key:`${c.recordId}-alt-${o}-${s.slice(-32)}`,href:g(s),target:"_blank",type:"primary",class:"recording-alternates__link"},{default:v(()=>[k(q(S(s,o)),1)]),_:2},1032,["href"]))),128))])])):y("",!0)])])):(n(),m("span",A,"暂无"))}}}),ht=I(E,[["__scopeId","data-v-d67b2e91"]]);export{ht as default}; +import{_ as L}from"./element-plus-DFTWCWyi.js";import B from"./RecordingVideoPlayer-LJMNYP-k.js";import{e as H,_ as I}from"./index--WnM67ZH.js";import{f as w,ak as n,I as m,J as p,F as _,G as u,aN as v,O as k,H as y,ap as R,A as d}from"./@vue/runtime-core-C6bnekPw.js";import{Q as q}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const C={key:0,class:"recording-list"},N={class:"recording-item"},P={key:1,class:"recording-alternates"},V={class:"recording-alternates__links"},A={key:1,class:"text-gray-400"},E=w({__name:"RecordingPlaybackBlock",props:{recordId:{},urls:{}},setup(c){const $=c,h=H(),l=d(()=>{const e=$.urls||[],t=new Set,r=[];for(const s of e){const o=String(s??"").trim();!o||t.has(o)||(t.add(o),r.push(o))}return r}),a=d(()=>{const e=l.value;if(!e.length)return null;const t=e.find(i=>/\.mp4(\?|#|$)/i.test(i));if(t)return t;const r=e.find(i=>/\.m3u8(\?|#|$)/i.test(i)&&/vod-qcloud\.com/i.test(i));if(r)return r;const s=e.find(i=>/\.m3u8(\?|#|$)/i.test(i)&&/\.cos\.[^/]+\.myqcloud\.com/i.test(i));if(s)return s;const o=e.find(i=>/\.m3u8(\?|#|$)/i.test(i));return o||e[0]}),f=d(()=>{const e=l.value,t=a.value;return t?e.filter(r=>r!==t):e.slice(1)});function b(e){if(!e||typeof e!="string")return!1;const t=e.trim();return/^https?:\/\//i.test(t)?/\.(mp4|webm|ogg|mov|mkv|m4v|m3u8)(\?|#|$)/i.test(t):/\.(mp4|webm|ogg|mov|mkv|m4v|m3u8)(\?|#|$)/i.test(t)||t.startsWith("/uploads/")}function g(e){return h.getImageUrl(String(e||"").trim())}function S(e,t){const r=e.trim();return/\.mp4(\?|#|$)/i.test(r)?`MP4 ${t+1}`:/vod-qcloud\.com/i.test(r)&&/\.m3u8/i.test(r)?`点播 ${t+1}`:/\.cos\.[^/]+\.myqcloud\.com/i.test(r)&&/\.m3u8/i.test(r)?`COS HLS ${t+1}`:/\.m3u8/i.test(r)?`HLS ${t+1}`:`链接 ${t+1}`}return(e,t)=>{const r=L;return l.value.length?(n(),m("div",C,[p("div",N,[a.value?(n(),m(_,{key:0},[b(a.value)?(n(),u(B,{key:`${c.recordId}-${a.value}`,src:a.value},null,8,["src"])):(n(),u(r,{key:1,href:g(a.value),target:"_blank",type:"primary"},{default:v(()=>[...t[0]||(t[0]=[k(" 打开回放 ",-1)])]),_:1},8,["href"]))],64)):y("",!0),f.value.length?(n(),m("div",P,[t[1]||(t[1]=p("span",{class:"recording-alternates__label"},"备用地址",-1)),p("div",V,[(n(!0),m(_,null,R(f.value,(s,o)=>(n(),u(r,{key:`${c.recordId}-alt-${o}-${s.slice(-32)}`,href:g(s),target:"_blank",type:"primary",class:"recording-alternates__link"},{default:v(()=>[k(q(S(s,o)),1)]),_:2},1032,["href"]))),128))])])):y("",!0)])])):(n(),m("span",A,"暂无"))}}}),ht=I(E,[["__scopeId","data-v-d67b2e91"]]);export{ht as default}; diff --git a/server/public/admin/assets/RecordingVideoPlayer-CRxrgEoO.js b/server/public/admin/assets/RecordingVideoPlayer-LJMNYP-k.js similarity index 97% rename from server/public/admin/assets/RecordingVideoPlayer-CRxrgEoO.js rename to server/public/admin/assets/RecordingVideoPlayer-LJMNYP-k.js index aff2b030..c550f7fd 100644 --- a/server/public/admin/assets/RecordingVideoPlayer-CRxrgEoO.js +++ b/server/public/admin/assets/RecordingVideoPlayer-LJMNYP-k.js @@ -1 +1 @@ -import{_ as F}from"./jspdf-BsthCvR5.js";import{d as H,_ as K}from"./element-plus-DFTWCWyi.js";import{q as z,w as O,s as G}from"./@vue/runtime-dom-DDAG46FW.js";import{l as J}from"./@element-plus/icons-vue-HOEUG8sr.js";import{e as W,_ as $}from"./index-Nt5zMHcc.js";import{f as j,b as Q,n as I,w as X,d as Y,ak as p,I as m,J as f,aP as Z,F as w,a as h,aN as S,H as M,O as ee,A as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as te,n as v}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"recording-playback__shell"},oe=["preload"],ae=["onKeydown"],ne=j({__name:"RecordingVideoPlayer",props:{src:{}},setup(P){const A=P,B=W(),b=v(null),_=v(null),c=v(!1),i=v(!1),o=v(!1);let d=null,a=null,l=0,s=null;function u(){s!==null&&(clearTimeout(s),s=null)}const y=E(()=>{const e=String(A.src||"").trim();return e?N(B.getImageUrl(e)):""}),V=E(()=>{if(!i.value)return"none";const e=y.value;return e&&!L(e)?"metadata":"none"}),D=E(()=>!i.value||o.value);function N(e){if(!e||!/^https?:\/\//i.test(e))return e;try{const t=new URL(e),r=t.hostname.toLowerCase();if(r.includes("myqcloud.com")||r.includes("vod-qcloud.com")||r.includes("vod-qcloud"))return t.pathname.includes("+")&&(t.pathname=t.pathname.replace(/\+/g,"%2B")),t.href}catch{}return e}function L(e){return/\.m3u8(\?|#|$)/i.test(e)}function U(){var r;o.value=!1,u();const e=_.value,t=(r=e==null?void 0:e.error)==null?void 0:r.code;t===MediaError.MEDIA_ERR_ABORTED||t===1||(c.value=!0)}function k(){d&&(d.destroy(),d=null);const e=_.value;e&&(e.pause(),e.removeAttribute("src"),e.load())}function R(e,t){let r=!1;const n=()=>{r||t!==l||(r=!0,u(),o.value=!1)};e.addEventListener("loadedmetadata",()=>n(),{once:!0}),e.addEventListener("loadeddata",()=>n(),{once:!0}),e.addEventListener("canplay",()=>n(),{once:!0}),e.addEventListener("playing",()=>n(),{once:!0}),e.addEventListener("progress",()=>{try{e.buffered.length>0&&e.buffered.end(0)>0&&n("progress-buffered")}catch{}},{passive:!0})}async function g(){if(!i.value)return;await I();const e=_.value,t=y.value;if(!e)return;if(!t){o.value=!1,u();return}const r=++l;if(o.value=!0,u(),k(),c.value=!1,L(t)){try{const n=await F(()=>import("./hls.js-Cxumxs-1.js"),[]),x=n.default;if(x.isSupported()){d=new x({enableWorker:!0,lowLatencyMode:!1,maxBufferLength:20,maxMaxBufferLength:120}),d.on(n.Events.MANIFEST_PARSED,()=>{r===l&&(o.value=!1,u())}),d.on(n.Events.ERROR,(le,q)=>{if(q.fatal){if(r!==l)return;o.value=!1,u(),c.value=!0,k()}}),d.loadSource(t),d.attachMedia(e),s=setTimeout(()=>{s=null,r===l&&o.value&&(o.value=!1)},45e3);return}if(e.canPlayType("application/vnd.apple.mpegurl")){R(e,r),e.src=t,s=setTimeout(()=>{s=null,r===l&&o.value&&(o.value=!1)},45e3);return}}catch{if(r!==l)return;o.value=!1,u(),c.value=!0;return}if(r!==l)return;o.value=!1,u(),c.value=!0;return}R(e,r),e.src=t,s=setTimeout(()=>{s=null,r===l&&o.value&&(o.value=!1)},25e3)}function C(){const e=b.value;if(!e||typeof IntersectionObserver>"u"){i.value=!0,g();return}a=new IntersectionObserver(t=>{for(const r of t)if(r.isIntersecting){a==null||a.disconnect(),a=null,i.value=!0,g();break}},{root:null,rootMargin:"240px 0px",threshold:0}),a.observe(e)}function T(){a==null||a.disconnect(),a=null,i.value||(i.value=!0),g()}return Q(()=>{I(()=>{C()})}),X(y,()=>{i.value&&g()}),Y(()=>{a==null||a.disconnect(),a=null,u(),l++,k()}),(e,t)=>{const r=H,n=K;return p(),m("div",{ref_key:"wrapRef",ref:b,class:"recording-playback"},[f("div",re,[Z(f("video",{ref_key:"videoRef",ref:_,class:"recording-video",controls:"",playsinline:"","webkit-playsinline":"",preload:V.value,onError:U},null,40,oe),[[z,!c.value]]),!c.value&&D.value?(p(),m("div",{key:0,class:"recording-playback__overlay",role:"button",tabindex:"0",onClick:T,onKeydown:O(G(T,["prevent"]),["enter"])},[i.value?(p(),m(w,{key:1},[h(r,{class:"recording-playback__spin"},{default:S(()=>[h(te(J))]),_:1}),t[2]||(t[2]=f("span",null,"正在加载…",-1))],64)):(p(),m(w,{key:0},[t[0]||(t[0]=f("span",{class:"recording-playback__overlay-title"},"预览待加载",-1)),t[1]||(t[1]=f("span",{class:"recording-playback__overlay-desc"},"滚动至此处将自动加载(减轻并发卡顿),也可点击立即加载",-1))],64))],40,ae)):M("",!0)]),c.value?(p(),m(w,{key:0},[h(n,{href:y.value||"#",target:"_blank",type:"primary"},{default:S(()=>[...t[3]||(t[3]=[ee("在新窗口打开",-1)])]),_:1},8,["href"]),t[4]||(t[4]=f("div",{class:"recording-playback__hint"}," 内嵌播放失败(编码不支持、跨域或私有存储等)时可尝试在新窗口打开。 ",-1))],64)):M("",!0)],512)}}}),Oe=$(ne,[["__scopeId","data-v-749b0199"]]);export{Oe as default}; +import{_ as F}from"./jspdf-BsthCvR5.js";import{d as H,_ as K}from"./element-plus-DFTWCWyi.js";import{q as z,w as O,s as G}from"./@vue/runtime-dom-DDAG46FW.js";import{l as J}from"./@element-plus/icons-vue-HOEUG8sr.js";import{e as W,_ as $}from"./index--WnM67ZH.js";import{f as j,b as Q,n as I,w as X,d as Y,ak as p,I as m,J as f,aP as Z,F as w,a as h,aN as S,H as M,O as ee,A as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as te,n as v}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"recording-playback__shell"},oe=["preload"],ae=["onKeydown"],ne=j({__name:"RecordingVideoPlayer",props:{src:{}},setup(P){const A=P,B=W(),b=v(null),_=v(null),c=v(!1),i=v(!1),o=v(!1);let d=null,a=null,l=0,s=null;function u(){s!==null&&(clearTimeout(s),s=null)}const y=E(()=>{const e=String(A.src||"").trim();return e?N(B.getImageUrl(e)):""}),V=E(()=>{if(!i.value)return"none";const e=y.value;return e&&!L(e)?"metadata":"none"}),D=E(()=>!i.value||o.value);function N(e){if(!e||!/^https?:\/\//i.test(e))return e;try{const t=new URL(e),r=t.hostname.toLowerCase();if(r.includes("myqcloud.com")||r.includes("vod-qcloud.com")||r.includes("vod-qcloud"))return t.pathname.includes("+")&&(t.pathname=t.pathname.replace(/\+/g,"%2B")),t.href}catch{}return e}function L(e){return/\.m3u8(\?|#|$)/i.test(e)}function U(){var r;o.value=!1,u();const e=_.value,t=(r=e==null?void 0:e.error)==null?void 0:r.code;t===MediaError.MEDIA_ERR_ABORTED||t===1||(c.value=!0)}function k(){d&&(d.destroy(),d=null);const e=_.value;e&&(e.pause(),e.removeAttribute("src"),e.load())}function R(e,t){let r=!1;const n=()=>{r||t!==l||(r=!0,u(),o.value=!1)};e.addEventListener("loadedmetadata",()=>n(),{once:!0}),e.addEventListener("loadeddata",()=>n(),{once:!0}),e.addEventListener("canplay",()=>n(),{once:!0}),e.addEventListener("playing",()=>n(),{once:!0}),e.addEventListener("progress",()=>{try{e.buffered.length>0&&e.buffered.end(0)>0&&n("progress-buffered")}catch{}},{passive:!0})}async function g(){if(!i.value)return;await I();const e=_.value,t=y.value;if(!e)return;if(!t){o.value=!1,u();return}const r=++l;if(o.value=!0,u(),k(),c.value=!1,L(t)){try{const n=await F(()=>import("./hls.js-Cxumxs-1.js"),[]),x=n.default;if(x.isSupported()){d=new x({enableWorker:!0,lowLatencyMode:!1,maxBufferLength:20,maxMaxBufferLength:120}),d.on(n.Events.MANIFEST_PARSED,()=>{r===l&&(o.value=!1,u())}),d.on(n.Events.ERROR,(le,q)=>{if(q.fatal){if(r!==l)return;o.value=!1,u(),c.value=!0,k()}}),d.loadSource(t),d.attachMedia(e),s=setTimeout(()=>{s=null,r===l&&o.value&&(o.value=!1)},45e3);return}if(e.canPlayType("application/vnd.apple.mpegurl")){R(e,r),e.src=t,s=setTimeout(()=>{s=null,r===l&&o.value&&(o.value=!1)},45e3);return}}catch{if(r!==l)return;o.value=!1,u(),c.value=!0;return}if(r!==l)return;o.value=!1,u(),c.value=!0;return}R(e,r),e.src=t,s=setTimeout(()=>{s=null,r===l&&o.value&&(o.value=!1)},25e3)}function C(){const e=b.value;if(!e||typeof IntersectionObserver>"u"){i.value=!0,g();return}a=new IntersectionObserver(t=>{for(const r of t)if(r.isIntersecting){a==null||a.disconnect(),a=null,i.value=!0,g();break}},{root:null,rootMargin:"240px 0px",threshold:0}),a.observe(e)}function T(){a==null||a.disconnect(),a=null,i.value||(i.value=!0),g()}return Q(()=>{I(()=>{C()})}),X(y,()=>{i.value&&g()}),Y(()=>{a==null||a.disconnect(),a=null,u(),l++,k()}),(e,t)=>{const r=H,n=K;return p(),m("div",{ref_key:"wrapRef",ref:b,class:"recording-playback"},[f("div",re,[Z(f("video",{ref_key:"videoRef",ref:_,class:"recording-video",controls:"",playsinline:"","webkit-playsinline":"",preload:V.value,onError:U},null,40,oe),[[z,!c.value]]),!c.value&&D.value?(p(),m("div",{key:0,class:"recording-playback__overlay",role:"button",tabindex:"0",onClick:T,onKeydown:O(G(T,["prevent"]),["enter"])},[i.value?(p(),m(w,{key:1},[h(r,{class:"recording-playback__spin"},{default:S(()=>[h(te(J))]),_:1}),t[2]||(t[2]=f("span",null,"正在加载…",-1))],64)):(p(),m(w,{key:0},[t[0]||(t[0]=f("span",{class:"recording-playback__overlay-title"},"预览待加载",-1)),t[1]||(t[1]=f("span",{class:"recording-playback__overlay-desc"},"滚动至此处将自动加载(减轻并发卡顿),也可点击立即加载",-1))],64))],40,ae)):M("",!0)]),c.value?(p(),m(w,{key:0},[h(n,{href:y.value||"#",target:"_blank",type:"primary"},{default:S(()=>[...t[3]||(t[3]=[ee("在新窗口打开",-1)])]),_:1},8,["href"]),t[4]||(t[4]=f("div",{class:"recording-playback__hint"}," 内嵌播放失败(编码不支持、跨域或私有存储等)时可尝试在新窗口打开。 ",-1))],64)):M("",!0)],512)}}}),Oe=$(ne,[["__scopeId","data-v-749b0199"]]);export{Oe as default}; diff --git a/server/public/admin/assets/SendPanel-BlCCqkH6.js b/server/public/admin/assets/SendPanel-Dz5Tcn_r.js similarity index 98% rename from server/public/admin/assets/SendPanel-BlCCqkH6.js rename to server/public/admin/assets/SendPanel-Dz5Tcn_r.js index d8c1af5d..890f2b86 100644 --- a/server/public/admin/assets/SendPanel-BlCCqkH6.js +++ b/server/public/admin/assets/SendPanel-Dz5Tcn_r.js @@ -1 +1 @@ -import{v as te,d as ae,i as ie,C as ne,r as se,V as oe,D as ue,B as re}from"./element-plus-DFTWCWyi.js";import{w as de,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{G as j,R as N,S as K,c as pe,O as fe,P as ce}from"./@element-plus/icons-vue-HOEUG8sr.js";import{r as y,i as _,_ as ve}from"./index-Nt5zMHcc.js";import{u as G}from"./file-dC1LMm1W.js";import{f as ge,ak as v,I as w,F as I,ap as _e,G as $,a as l,aN as t,J as x,H as B,O as q,A as ye}from"./@vue/runtime-core-C6bnekPw.js";import{o as ke,Q as R}from"./@vue/shared-mAAVTE9n.js";import{y as V,n as b}from"./@vue/reactivity-DiY1c2vO.js";function We(r){return y.get({url:"/qywx.message/session_list",params:r})}function Pe(r){return y.get({url:"/qywx.message/archive_list",params:r})}function je(r){return y.post({url:"/qywx.message/mark_read",params:{session_id:r}})}function Ne(r){return y.post({url:"/qywx.message/send",params:r})}function Ke(r){return y.get({url:"/qywx.message/send_task_list",params:r})}function Ge(r,h=""){return y.get({url:"/qywx.message/send_task_detail",params:{task_id:r,cursor:h}})}function He(r=""){return y.get({url:"/qywx.message/staff_list",params:{keyword:r}})}function Je(){return y.get({url:"/qywx.message/archive_status"})}function Qe(r=5,h=!1){return y.post({url:"/qywx.message/pull_archive",params:{max_batches:r,download:h}})}async function H(r,h){const S=new FormData;return S.append("file",r),S.append("type",h),y.post({url:"/qywx.message/upload_to_qywx",data:S,headers:{"Content-Type":"multipart/form-data"}})}const we={class:"send-panel"},xe={key:0,class:"attachment-list"},Ve=["src"],be={class:"attachment-filename"},he={class:"attachment-filename"},Ce={class:"attachment-filename"},qe={class:"send-toolbar"},Se={class:"toolbar-left"},Me={class:"toolbar-right"},Ue={class:"link-picurl-row"},Ee={key:0,class:"mini-preview"},Le=ge({__name:"SendPanel",props:{canSendMessage:{type:Boolean}},emits:["send"],setup(r,{emit:h}){const S=r,J=h,M=b(""),d=b([]),L=b(!1),f=b(null),z=b("image"),U=b(!1),c=b({title:"",url:"",picurl:"",desc:""}),E=b(!1),m=b({title:"",appid:"",page:"",pic_media_id:"",preview:""}),T=ye(()=>{if(!S.canSendMessage||L.value)return!1;const o=M.value.trim().length>0,e=d.value.some(s=>!s.uploading);return o||e});function F(o){if(d.value.length>=9){_.msgWarning("最多添加 9 个附件");return}z.value=o;const e=o==="image"?"image/*":o==="video"?"video/*":"*/*";f.value&&(f.value.accept=e,f.value.value="",f.value.click())}function Q(){z.value="link-cover",f.value&&(f.value.accept="image/*",f.value.value="",f.value.click())}function X(){z.value="mini-cover",f.value&&(f.value.accept="image/*",f.value.value="",f.value.click())}async function Y(o){var g;const s=(g=o.target.files)==null?void 0:g[0];if(!s)return;const i=z.value;if(i==="link-cover"){try{const u=await G(s,s.name);c.value.picurl=u.uri||u.url,_.msgSuccess("封面上传成功")}catch(u){_.msgError((u==null?void 0:u.message)||"封面上传失败")}return}if(i==="mini-cover"){try{const u=await H(s,"image");m.value.pic_media_id=u.media_id;const k=await G(s,s.name);m.value.preview=k.uri||k.url,_.msgSuccess("小程序封面上传成功")}catch(u){_.msgError((u==null?void 0:u.message)||"封面上传失败")}return}const n=i==="file"?"":URL.createObjectURL(s),p={msgtype:i,uploading:!0,preview:n,file_name:s.name};d.value.push(p);const C=d.value.length-1;try{const k=(await H(s,i)).media_id;i==="image"?p.image={media_id:k}:i==="video"?p.video={media_id:k}:p.file={media_id:k},p.uploading=!1}catch(u){_.msgError((u==null?void 0:u.message)||"上传失败"),d.value.splice(C,1)}}function Z(o){const e=d.value[o];e!=null&&e.preview&&e.preview.startsWith("blob:")&&URL.revokeObjectURL(e.preview),d.value.splice(o,1)}function ee(){const{title:o,url:e,picurl:s,desc:i}=c.value;if(!o.trim()||!e.trim()||!s.trim()){_.msgWarning("请完整填写标题、链接地址与封面图");return}if(d.value.length>=9){_.msgWarning("最多添加 9 个附件");return}d.value.push({msgtype:"link",link:{title:o,url:e,picurl:s,desc:i}}),U.value=!1,c.value={title:"",url:"",picurl:"",desc:""}}function le(){const{title:o,appid:e,page:s,pic_media_id:i}=m.value;if(!o.trim()||!e.trim()||!s.trim()||!i){_.msgWarning("请完整填写小程序信息");return}if(d.value.length>=9){_.msgWarning("最多添加 9 个附件");return}d.value.push({msgtype:"miniprogram",miniprogram:{title:o,appid:e,page:s,pic_media_id:i}}),E.value=!1,m.value={title:"",appid:"",page:"",pic_media_id:"",preview:""}}async function A(){if(!T.value)return;const o=d.value.filter(i=>!i.uploading).map(i=>{const n={msgtype:i.msgtype};return i.image&&(n.image=i.image),i.video&&(n.video=i.video),i.file&&(n.file=i.file),i.link&&(n.link=i.link),i.miniprogram&&(n.miniprogram=i.miniprogram),n}),e={},s=M.value.trim();s&&(e.text={content:s}),o.length&&(e.attachments=o),L.value=!0;try{await J("send",e),M.value="",d.value.forEach(i=>{var n;(n=i.preview)!=null&&n.startsWith("blob:")&&URL.revokeObjectURL(i.preview)}),d.value=[]}finally{L.value=!1}}return(o,e)=>{const s=te,i=ae,n=ie,p=ne,C=se,g=re,u=ue,k=oe;return v(),w("div",we,[d.value.length?(v(),w("div",xe,[(v(!0),w(I,null,_e(d.value,(a,D)=>{var O,W,P;return v(),w("div",{key:D,class:ke(["attachment-item","attachment-"+a.msgtype])},[a.msgtype==="image"?(v(),$(s,{key:0,src:a.preview||"",fit:"cover",class:"attachment-preview"},null,8,["src"])):a.msgtype==="video"?(v(),w("video",{key:1,src:a.preview||"",class:"attachment-preview",muted:""},null,8,Ve)):a.msgtype==="file"?(v(),w(I,{key:2},[l(i,{size:20},{default:t(()=>[l(V(j))]),_:1}),x("span",be,R(a.file_name),1)],64)):a.msgtype==="link"?(v(),w(I,{key:3},[l(i,{size:20},{default:t(()=>[l(V(N))]),_:1}),x("span",he,R(((O=a.link)==null?void 0:O.title)||((W=a.link)==null?void 0:W.url)),1)],64)):a.msgtype==="miniprogram"?(v(),w(I,{key:4},[l(i,{size:20},{default:t(()=>[l(V(K))]),_:1}),x("span",Ce,R((P=a.miniprogram)==null?void 0:P.title),1)],64)):B("",!0),a.uploading?(v(),$(n,{key:5,type:"primary",link:"",loading:"",size:"small"})):(v(),$(n,{key:6,class:"attachment-remove",type:"danger",link:"",onClick:Ie=>Z(D)},{default:t(()=>[l(i,null,{default:t(()=>[l(V(pe))]),_:1})]),_:1},8,["onClick"]))],2)}),128))])):B("",!0),l(p,{modelValue:M.value,"onUpdate:modelValue":e[0]||(e[0]=a=>M.value=a),type:"textarea",rows:3,placeholder:"在此输入消息,Ctrl+Enter 发送。该消息以代发员工身份发给客户,员工手机端确认后送达。",resize:"none",onKeydown:de(me(A,["ctrl"]),["enter"])},null,8,["modelValue","onKeydown"]),x("div",qe,[x("div",Se,[l(C,{content:"图片",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[1]||(e[1]=a=>F("image"))},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(fe))]),_:1})]),_:1})]),_:1}),l(C,{content:"视频",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[2]||(e[2]=a=>F("video"))},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(ce))]),_:1})]),_:1})]),_:1}),l(C,{content:"文件",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[3]||(e[3]=a=>F("file"))},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(j))]),_:1})]),_:1})]),_:1}),l(C,{content:"链接",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[4]||(e[4]=a=>U.value=!0)},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(N))]),_:1})]),_:1})]),_:1}),l(C,{content:"小程序",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[5]||(e[5]=a=>E.value=!0)},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(K))]),_:1})]),_:1})]),_:1})]),x("div",Me,[e[18]||(e[18]=x("span",{class:"send-hint"}," 员工手机端确认后送达客户 · Ctrl+Enter 快速发送 ",-1)),l(n,{type:"primary",disabled:!T.value,loading:L.value,onClick:A},{default:t(()=>[...e[17]||(e[17]=[q(" 发送 ",-1)])]),_:1},8,["disabled","loading"])])]),x("input",{ref_key:"fileInputRef",ref:f,type:"file",hidden:"",onChange:Y},null,544),l(k,{modelValue:U.value,"onUpdate:modelValue":e[11]||(e[11]=a=>U.value=a),title:"添加链接",width:"480px"},{footer:t(()=>[l(n,{onClick:e[10]||(e[10]=a=>U.value=!1)},{default:t(()=>[...e[20]||(e[20]=[q("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:ee},{default:t(()=>[...e[21]||(e[21]=[q("确定",-1)])]),_:1})]),default:t(()=>[l(u,{"label-width":"80px",model:c.value},{default:t(()=>[l(g,{label:"标题"},{default:t(()=>[l(p,{modelValue:c.value.title,"onUpdate:modelValue":e[6]||(e[6]=a=>c.value.title=a),maxlength:"128"},null,8,["modelValue"])]),_:1}),l(g,{label:"链接地址"},{default:t(()=>[l(p,{modelValue:c.value.url,"onUpdate:modelValue":e[7]||(e[7]=a=>c.value.url=a),placeholder:"https://..."},null,8,["modelValue"])]),_:1}),l(g,{label:"封面图"},{default:t(()=>[x("div",Ue,[l(p,{modelValue:c.value.picurl,"onUpdate:modelValue":e[8]||(e[8]=a=>c.value.picurl=a),placeholder:"https://..."},null,8,["modelValue"]),l(n,{onClick:Q},{default:t(()=>[...e[19]||(e[19]=[q("本地上传",-1)])]),_:1})])]),_:1}),l(g,{label:"描述"},{default:t(()=>[l(p,{modelValue:c.value.desc,"onUpdate:modelValue":e[9]||(e[9]=a=>c.value.desc=a),type:"textarea",rows:2,maxlength:"512"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(k,{modelValue:E.value,"onUpdate:modelValue":e[16]||(e[16]=a=>E.value=a),title:"添加小程序",width:"480px"},{footer:t(()=>[l(n,{onClick:e[15]||(e[15]=a=>E.value=!1)},{default:t(()=>[...e[22]||(e[22]=[q("取消",-1)])]),_:1}),l(n,{type:"primary",disabled:!m.value.pic_media_id||!m.value.appid,onClick:le},{default:t(()=>[...e[23]||(e[23]=[q(" 确定 ",-1)])]),_:1},8,["disabled"])]),default:t(()=>[l(u,{"label-width":"100px",model:m.value},{default:t(()=>[l(g,{label:"标题"},{default:t(()=>[l(p,{modelValue:m.value.title,"onUpdate:modelValue":e[12]||(e[12]=a=>m.value.title=a)},null,8,["modelValue"])]),_:1}),l(g,{label:"appid"},{default:t(()=>[l(p,{modelValue:m.value.appid,"onUpdate:modelValue":e[13]||(e[13]=a=>m.value.appid=a),placeholder:"wx..."},null,8,["modelValue"])]),_:1}),l(g,{label:"页面路径"},{default:t(()=>[l(p,{modelValue:m.value.page,"onUpdate:modelValue":e[14]||(e[14]=a=>m.value.page=a),placeholder:"/pages/index/index"},null,8,["modelValue"])]),_:1}),l(g,{label:"封面图"},{default:t(()=>[l(n,{onClick:X},{default:t(()=>[q(R(m.value.pic_media_id?"已选择 · 重新选择":"上传封面(必填)"),1)]),_:1}),m.value.preview?(v(),w("div",Ee,[l(s,{src:m.value.preview,fit:"cover"},null,8,["src"])])):B("",!0)]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),ze=ve(Le,[["__scopeId","data-v-afee3bd0"]]),Xe=Object.freeze(Object.defineProperty({__proto__:null,default:ze},Symbol.toStringTag,{value:"Module"}));export{ze as S,Je as a,Qe as b,He as c,je as d,Pe as e,Ne as f,Ke as g,Ge as h,Xe as i,We as q}; +import{v as te,d as ae,i as ie,C as ne,r as se,V as oe,D as ue,B as re}from"./element-plus-DFTWCWyi.js";import{w as de,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{G as j,R as N,S as K,c as pe,O as fe,P as ce}from"./@element-plus/icons-vue-HOEUG8sr.js";import{r as y,i as _,_ as ve}from"./index--WnM67ZH.js";import{u as G}from"./file-B0kKUfF_.js";import{f as ge,ak as v,I as w,F as I,ap as _e,G as $,a as l,aN as t,J as x,H as B,O as q,A as ye}from"./@vue/runtime-core-C6bnekPw.js";import{o as ke,Q as R}from"./@vue/shared-mAAVTE9n.js";import{y as V,n as b}from"./@vue/reactivity-DiY1c2vO.js";function We(r){return y.get({url:"/qywx.message/session_list",params:r})}function Pe(r){return y.get({url:"/qywx.message/archive_list",params:r})}function je(r){return y.post({url:"/qywx.message/mark_read",params:{session_id:r}})}function Ne(r){return y.post({url:"/qywx.message/send",params:r})}function Ke(r){return y.get({url:"/qywx.message/send_task_list",params:r})}function Ge(r,h=""){return y.get({url:"/qywx.message/send_task_detail",params:{task_id:r,cursor:h}})}function He(r=""){return y.get({url:"/qywx.message/staff_list",params:{keyword:r}})}function Je(){return y.get({url:"/qywx.message/archive_status"})}function Qe(r=5,h=!1){return y.post({url:"/qywx.message/pull_archive",params:{max_batches:r,download:h}})}async function H(r,h){const S=new FormData;return S.append("file",r),S.append("type",h),y.post({url:"/qywx.message/upload_to_qywx",data:S,headers:{"Content-Type":"multipart/form-data"}})}const we={class:"send-panel"},xe={key:0,class:"attachment-list"},Ve=["src"],be={class:"attachment-filename"},he={class:"attachment-filename"},Ce={class:"attachment-filename"},qe={class:"send-toolbar"},Se={class:"toolbar-left"},Me={class:"toolbar-right"},Ue={class:"link-picurl-row"},Ee={key:0,class:"mini-preview"},Le=ge({__name:"SendPanel",props:{canSendMessage:{type:Boolean}},emits:["send"],setup(r,{emit:h}){const S=r,J=h,M=b(""),d=b([]),L=b(!1),f=b(null),z=b("image"),U=b(!1),c=b({title:"",url:"",picurl:"",desc:""}),E=b(!1),m=b({title:"",appid:"",page:"",pic_media_id:"",preview:""}),T=ye(()=>{if(!S.canSendMessage||L.value)return!1;const o=M.value.trim().length>0,e=d.value.some(s=>!s.uploading);return o||e});function F(o){if(d.value.length>=9){_.msgWarning("最多添加 9 个附件");return}z.value=o;const e=o==="image"?"image/*":o==="video"?"video/*":"*/*";f.value&&(f.value.accept=e,f.value.value="",f.value.click())}function Q(){z.value="link-cover",f.value&&(f.value.accept="image/*",f.value.value="",f.value.click())}function X(){z.value="mini-cover",f.value&&(f.value.accept="image/*",f.value.value="",f.value.click())}async function Y(o){var g;const s=(g=o.target.files)==null?void 0:g[0];if(!s)return;const i=z.value;if(i==="link-cover"){try{const u=await G(s,s.name);c.value.picurl=u.uri||u.url,_.msgSuccess("封面上传成功")}catch(u){_.msgError((u==null?void 0:u.message)||"封面上传失败")}return}if(i==="mini-cover"){try{const u=await H(s,"image");m.value.pic_media_id=u.media_id;const k=await G(s,s.name);m.value.preview=k.uri||k.url,_.msgSuccess("小程序封面上传成功")}catch(u){_.msgError((u==null?void 0:u.message)||"封面上传失败")}return}const n=i==="file"?"":URL.createObjectURL(s),p={msgtype:i,uploading:!0,preview:n,file_name:s.name};d.value.push(p);const C=d.value.length-1;try{const k=(await H(s,i)).media_id;i==="image"?p.image={media_id:k}:i==="video"?p.video={media_id:k}:p.file={media_id:k},p.uploading=!1}catch(u){_.msgError((u==null?void 0:u.message)||"上传失败"),d.value.splice(C,1)}}function Z(o){const e=d.value[o];e!=null&&e.preview&&e.preview.startsWith("blob:")&&URL.revokeObjectURL(e.preview),d.value.splice(o,1)}function ee(){const{title:o,url:e,picurl:s,desc:i}=c.value;if(!o.trim()||!e.trim()||!s.trim()){_.msgWarning("请完整填写标题、链接地址与封面图");return}if(d.value.length>=9){_.msgWarning("最多添加 9 个附件");return}d.value.push({msgtype:"link",link:{title:o,url:e,picurl:s,desc:i}}),U.value=!1,c.value={title:"",url:"",picurl:"",desc:""}}function le(){const{title:o,appid:e,page:s,pic_media_id:i}=m.value;if(!o.trim()||!e.trim()||!s.trim()||!i){_.msgWarning("请完整填写小程序信息");return}if(d.value.length>=9){_.msgWarning("最多添加 9 个附件");return}d.value.push({msgtype:"miniprogram",miniprogram:{title:o,appid:e,page:s,pic_media_id:i}}),E.value=!1,m.value={title:"",appid:"",page:"",pic_media_id:"",preview:""}}async function A(){if(!T.value)return;const o=d.value.filter(i=>!i.uploading).map(i=>{const n={msgtype:i.msgtype};return i.image&&(n.image=i.image),i.video&&(n.video=i.video),i.file&&(n.file=i.file),i.link&&(n.link=i.link),i.miniprogram&&(n.miniprogram=i.miniprogram),n}),e={},s=M.value.trim();s&&(e.text={content:s}),o.length&&(e.attachments=o),L.value=!0;try{await J("send",e),M.value="",d.value.forEach(i=>{var n;(n=i.preview)!=null&&n.startsWith("blob:")&&URL.revokeObjectURL(i.preview)}),d.value=[]}finally{L.value=!1}}return(o,e)=>{const s=te,i=ae,n=ie,p=ne,C=se,g=re,u=ue,k=oe;return v(),w("div",we,[d.value.length?(v(),w("div",xe,[(v(!0),w(I,null,_e(d.value,(a,D)=>{var O,W,P;return v(),w("div",{key:D,class:ke(["attachment-item","attachment-"+a.msgtype])},[a.msgtype==="image"?(v(),$(s,{key:0,src:a.preview||"",fit:"cover",class:"attachment-preview"},null,8,["src"])):a.msgtype==="video"?(v(),w("video",{key:1,src:a.preview||"",class:"attachment-preview",muted:""},null,8,Ve)):a.msgtype==="file"?(v(),w(I,{key:2},[l(i,{size:20},{default:t(()=>[l(V(j))]),_:1}),x("span",be,R(a.file_name),1)],64)):a.msgtype==="link"?(v(),w(I,{key:3},[l(i,{size:20},{default:t(()=>[l(V(N))]),_:1}),x("span",he,R(((O=a.link)==null?void 0:O.title)||((W=a.link)==null?void 0:W.url)),1)],64)):a.msgtype==="miniprogram"?(v(),w(I,{key:4},[l(i,{size:20},{default:t(()=>[l(V(K))]),_:1}),x("span",Ce,R((P=a.miniprogram)==null?void 0:P.title),1)],64)):B("",!0),a.uploading?(v(),$(n,{key:5,type:"primary",link:"",loading:"",size:"small"})):(v(),$(n,{key:6,class:"attachment-remove",type:"danger",link:"",onClick:Ie=>Z(D)},{default:t(()=>[l(i,null,{default:t(()=>[l(V(pe))]),_:1})]),_:1},8,["onClick"]))],2)}),128))])):B("",!0),l(p,{modelValue:M.value,"onUpdate:modelValue":e[0]||(e[0]=a=>M.value=a),type:"textarea",rows:3,placeholder:"在此输入消息,Ctrl+Enter 发送。该消息以代发员工身份发给客户,员工手机端确认后送达。",resize:"none",onKeydown:de(me(A,["ctrl"]),["enter"])},null,8,["modelValue","onKeydown"]),x("div",qe,[x("div",Se,[l(C,{content:"图片",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[1]||(e[1]=a=>F("image"))},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(fe))]),_:1})]),_:1})]),_:1}),l(C,{content:"视频",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[2]||(e[2]=a=>F("video"))},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(ce))]),_:1})]),_:1})]),_:1}),l(C,{content:"文件",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[3]||(e[3]=a=>F("file"))},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(j))]),_:1})]),_:1})]),_:1}),l(C,{content:"链接",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[4]||(e[4]=a=>U.value=!0)},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(N))]),_:1})]),_:1})]),_:1}),l(C,{content:"小程序",placement:"top"},{default:t(()=>[l(n,{link:"",onClick:e[5]||(e[5]=a=>E.value=!0)},{default:t(()=>[l(i,{size:18},{default:t(()=>[l(V(K))]),_:1})]),_:1})]),_:1})]),x("div",Me,[e[18]||(e[18]=x("span",{class:"send-hint"}," 员工手机端确认后送达客户 · Ctrl+Enter 快速发送 ",-1)),l(n,{type:"primary",disabled:!T.value,loading:L.value,onClick:A},{default:t(()=>[...e[17]||(e[17]=[q(" 发送 ",-1)])]),_:1},8,["disabled","loading"])])]),x("input",{ref_key:"fileInputRef",ref:f,type:"file",hidden:"",onChange:Y},null,544),l(k,{modelValue:U.value,"onUpdate:modelValue":e[11]||(e[11]=a=>U.value=a),title:"添加链接",width:"480px"},{footer:t(()=>[l(n,{onClick:e[10]||(e[10]=a=>U.value=!1)},{default:t(()=>[...e[20]||(e[20]=[q("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:ee},{default:t(()=>[...e[21]||(e[21]=[q("确定",-1)])]),_:1})]),default:t(()=>[l(u,{"label-width":"80px",model:c.value},{default:t(()=>[l(g,{label:"标题"},{default:t(()=>[l(p,{modelValue:c.value.title,"onUpdate:modelValue":e[6]||(e[6]=a=>c.value.title=a),maxlength:"128"},null,8,["modelValue"])]),_:1}),l(g,{label:"链接地址"},{default:t(()=>[l(p,{modelValue:c.value.url,"onUpdate:modelValue":e[7]||(e[7]=a=>c.value.url=a),placeholder:"https://..."},null,8,["modelValue"])]),_:1}),l(g,{label:"封面图"},{default:t(()=>[x("div",Ue,[l(p,{modelValue:c.value.picurl,"onUpdate:modelValue":e[8]||(e[8]=a=>c.value.picurl=a),placeholder:"https://..."},null,8,["modelValue"]),l(n,{onClick:Q},{default:t(()=>[...e[19]||(e[19]=[q("本地上传",-1)])]),_:1})])]),_:1}),l(g,{label:"描述"},{default:t(()=>[l(p,{modelValue:c.value.desc,"onUpdate:modelValue":e[9]||(e[9]=a=>c.value.desc=a),type:"textarea",rows:2,maxlength:"512"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(k,{modelValue:E.value,"onUpdate:modelValue":e[16]||(e[16]=a=>E.value=a),title:"添加小程序",width:"480px"},{footer:t(()=>[l(n,{onClick:e[15]||(e[15]=a=>E.value=!1)},{default:t(()=>[...e[22]||(e[22]=[q("取消",-1)])]),_:1}),l(n,{type:"primary",disabled:!m.value.pic_media_id||!m.value.appid,onClick:le},{default:t(()=>[...e[23]||(e[23]=[q(" 确定 ",-1)])]),_:1},8,["disabled"])]),default:t(()=>[l(u,{"label-width":"100px",model:m.value},{default:t(()=>[l(g,{label:"标题"},{default:t(()=>[l(p,{modelValue:m.value.title,"onUpdate:modelValue":e[12]||(e[12]=a=>m.value.title=a)},null,8,["modelValue"])]),_:1}),l(g,{label:"appid"},{default:t(()=>[l(p,{modelValue:m.value.appid,"onUpdate:modelValue":e[13]||(e[13]=a=>m.value.appid=a),placeholder:"wx..."},null,8,["modelValue"])]),_:1}),l(g,{label:"页面路径"},{default:t(()=>[l(p,{modelValue:m.value.page,"onUpdate:modelValue":e[14]||(e[14]=a=>m.value.page=a),placeholder:"/pages/index/index"},null,8,["modelValue"])]),_:1}),l(g,{label:"封面图"},{default:t(()=>[l(n,{onClick:X},{default:t(()=>[q(R(m.value.pic_media_id?"已选择 · 重新选择":"上传封面(必填)"),1)]),_:1}),m.value.preview?(v(),w("div",Ee,[l(s,{src:m.value.preview,fit:"cover"},null,8,["src"])])):B("",!0)]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),ze=ve(Le,[["__scopeId","data-v-afee3bd0"]]),Xe=Object.freeze(Object.defineProperty({__proto__:null,default:ze},Symbol.toStringTag,{value:"Module"}));export{ze as S,Je as a,Qe as b,He as c,je as d,Pe as e,Ne as f,Ke as g,Ge as h,Xe as i,We as q}; diff --git a/server/public/admin/assets/TrackingMatrix-CwF2zsXr.js b/server/public/admin/assets/TrackingMatrix-CMAfdIxG.js similarity index 98% rename from server/public/admin/assets/TrackingMatrix-CwF2zsXr.js rename to server/public/admin/assets/TrackingMatrix-CMAfdIxG.js index 97022e0f..14d754e5 100644 --- a/server/public/admin/assets/TrackingMatrix-CwF2zsXr.js +++ b/server/public/admin/assets/TrackingMatrix-CMAfdIxG.js @@ -1 +1 @@ -import{L as G,F as O,G as U,a2 as J,R as Q,N as W,r as j,M as K}from"./element-plus-DFTWCWyi.js";import{f as X,c as Z,d as ee,e as te,b as se}from"./blood-thresholds-CJ1fqMjh.js";import{M as ae}from"./tcm-DCW3HTOw.js";import{f as ne,w as oe,b as ie,aP as le,ak as n,I as i,J as r,a as p,aN as d,O as g,G as S,H as f,A as B}from"./@vue/runtime-core-C6bnekPw.js";import{o as R,Q as c}from"./@vue/shared-mAAVTE9n.js";import{n as y}from"./@vue/reactivity-DiY1c2vO.js";import{_ as re}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const de={class:"tracking-matrix"},ce={class:"toolbar"},ue={key:0,class:"cell-blood"},pe={class:"value"},me={key:0,class:"cell-up"},_e={class:"value"},ge={key:0,class:"cell-up"},fe={class:"value"},he={key:0,class:"cell-up"},ve={key:1,class:"cell-empty"},ye={key:0,class:"cell-up"},ke={key:1,class:"cell-empty"},xe={key:0},be={key:1,class:"cell-empty"},He={key:0},De={key:1,class:"cell-empty"},Me={class:"diet-tip"},Se={key:1,class:"cell-empty"},Be={class:"exercise-tip"},Te={key:0},Ce={class:"cell-checked"},Re={key:0,class:"meta"},Ve={key:1,class:"meta"},Ee={key:1,class:"cell-empty"},Ie=ne({__name:"TrackingMatrix",props:{diagnosisId:{},age:{default:null}},setup(L,{expose:Y}){const _=L,h=y("30"),k=y(null),T=y(!1),x=y([]),b=y([]),H=y([]);let C=0;const E=s=>`${s.getFullYear()}-${String(s.getMonth()+1).padStart(2,"0")}-${String(s.getDate()).padStart(2,"0")}`,I=s=>{if(s==="custom"){const[m,l]=k.value||["",""];return{start:m||"",end:l||""}}const e=s==="7"?7:30,t=new Date;t.setHours(0,0,0,0);const o=new Date(t);return o.setDate(o.getDate()-(e-1)),{start:E(o),end:E(t)}},w=s=>s.getTime()>Date.now(),D=async()=>{if(!_.diagnosisId||_.diagnosisId<=0){x.value=[],b.value=[],H.value=[];return}const s=I(h.value);if(h.value==="custom"&&(!s.start||!s.end))return;const e=++C;T.value=!0;try{const t=await ae({id:_.diagnosisId,start_date:s.start,end_date:s.end});if(e!==C)return;x.value=(t==null?void 0:t.blood_records)||[],b.value=(t==null?void 0:t.diet_records)||[],H.value=(t==null?void 0:t.exercise_records)||[]}catch{e===C&&(x.value=[],b.value=[],H.value=[])}finally{e===C&&(T.value=!1)}},A=()=>{if(h.value==="custom"&&!k.value){const s=I("30");k.value=[s.start,s.end]}D()},F=()=>{h.value==="custom"&&D()};oe(()=>_.diagnosisId,s=>{s&&s>0&&D()}),ie(()=>{_.diagnosisId&&_.diagnosisId>0&&D()});const P=B(()=>{const s=new Map;for(const e of x.value){const t=String(e.record_date||"");if(!t)continue;s.has(t)||s.set(t,{record_date:t,record_date_ts:e.record_date_ts});const o=s.get(t),m=["fasting_blood_sugar","postprandial_blood_sugar","other_blood_sugar","systolic_pressure","diastolic_pressure","western_medicine","insulin"];for(const l of m)(o[l]===void 0||o[l]===null||o[l]==="")&&e[l]!==void 0&&e[l]!==null&&e[l]!==""&&(o[l]=e[l])}return s}),$=B(()=>{const s=new Map;for(const e of b.value){const t=String(e.record_date||"");t&&(s.has(t)||s.set(t,e))}return s}),q=B(()=>{const s=new Map;for(const e of H.value){const t=String(e.record_date||"");t&&(s.has(t)||s.set(t,e))}return s}),N=B(()=>{const s=new Set;for(const t of x.value)t.record_date&&s.add(String(t.record_date));for(const t of b.value)t.record_date&&s.add(String(t.record_date));for(const t of H.value)t.record_date&&s.add(String(t.record_date));const e=Array.from(s).filter(t=>t.length===10);return e.sort((t,o)=>to?-1:0),e}),z=B(()=>N.value.map(s=>{const e=P.value.get(s),t=$.value.get(s),o=q.value.get(s),m=(e==null?void 0:e.fasting_blood_sugar)??null,l=(e==null?void 0:e.postprandial_blood_sugar)??null,u=(e==null?void 0:e.other_blood_sugar)??null,v=(e==null?void 0:e.systolic_pressure)??null,M=(e==null?void 0:e.diastolic_pressure)??null,V=m!==null&&m!==""||l!==null&&l!==""||u!==null&&u!=="",a=v||M?X({systolic_pressure:v,diastolic_pressure:M}):"";return{date:s,dateLabel:`${s}`,bloodAny:V,fasting:m??"—",postprandial:l??"—",other:u??"—",fastingHigh:se(m,_.age),postprandialHigh:te(l,_.age),otherHigh:ee(u,_.age),bp:a,bpHigh:Z({systolic_pressure:v,diastolic_pressure:M}),westernMedicine:(e==null?void 0:e.western_medicine)||"",insulin:(e==null?void 0:e.insulin)||"",diet:t?{breakfast:t.breakfast||"",lunch:t.lunch||"",dinner:t.dinner||""}:null,exercise:o?{duration:o.duration||0,intensityText:o.intensity_text||"",remark:o.remark||""}:null}}));return Y({refresh:D}),(s,e)=>{const t=O,o=U,m=J,l=Q,u=W,v=j,M=K,V=G;return le((n(),i("div",de,[r("div",ce,[p(o,{modelValue:h.value,"onUpdate:modelValue":e[0]||(e[0]=a=>h.value=a),onChange:A},{default:d(()=>[p(t,{value:"7"},{default:d(()=>[...e[2]||(e[2]=[g("最近 7 天",-1)])]),_:1}),p(t,{value:"30"},{default:d(()=>[...e[3]||(e[3]=[g("最近 30 天",-1)])]),_:1}),p(t,{value:"custom"},{default:d(()=>[...e[4]||(e[4]=[g("自定义",-1)])]),_:1})]),_:1},8,["modelValue"]),h.value==="custom"?(n(),S(m,{key:0,modelValue:k.value,"onUpdate:modelValue":e[1]||(e[1]=a=>k.value=a),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",clearable:!1,size:"default","disabled-date":w,onChange:F},null,8,["modelValue"])):f("",!0),e[5]||(e[5]=r("span",{class:"hint"}," 超阈值红字↑(年龄分段:<50:空7/餐9,≥50:空8/餐10) ",-1))]),!T.value&&N.value.length===0?(n(),S(l,{key:0,description:"所选区间内无任何打卡记录","image-size":80})):(n(),S(M,{key:1,data:z.value,border:"",stripe:"",class:"matrix-table","empty-text":"暂无数据","row-key":"date","max-height":"640"},{default:d(()=>[p(u,{prop:"dateLabel",label:"日期",width:"120",fixed:"left"}),p(u,{label:"血糖 (mmol/L)","min-width":"180"},{default:d(({row:a})=>[a.bloodAny?(n(),i("div",ue,[r("span",{class:R({"cell-high":a.fastingHigh})},[e[6]||(e[6]=g(" 空 ",-1)),r("span",pe,c(a.fasting??"—"),1),a.fastingHigh?(n(),i("span",me,"↑")):f("",!0)],2),r("span",{class:R({"cell-high":a.postprandialHigh})},[e[7]||(e[7]=g(" 餐 ",-1)),r("span",_e,c(a.postprandial??"—"),1),a.postprandialHigh?(n(),i("span",ge,"↑")):f("",!0)],2),r("span",{class:R({"cell-high":a.otherHigh})},[e[8]||(e[8]=g(" 其他 ",-1)),r("span",fe,c(a.other??"—"),1),a.otherHigh?(n(),i("span",he,"↑")):f("",!0)],2)])):(n(),i("span",ve,"—"))]),_:1}),p(u,{label:"血压 (mmHg)",width:"120",align:"center"},{default:d(({row:a})=>[a.bp?(n(),i("span",{key:0,class:R({"cell-high":a.bpHigh})},[g(c(a.bp)+" ",1),a.bpHigh?(n(),i("span",ye,"↑")):f("",!0)],2)):(n(),i("span",ke,"—"))]),_:1}),p(u,{label:"西药","min-width":"120","show-overflow-tooltip":""},{default:d(({row:a})=>[a.westernMedicine?(n(),i("span",xe,c(a.westernMedicine),1)):(n(),i("span",be,"—"))]),_:1}),p(u,{label:"胰岛素","min-width":"120","show-overflow-tooltip":""},{default:d(({row:a})=>[a.insulin?(n(),i("span",He,c(a.insulin),1)):(n(),i("span",De,"—"))]),_:1}),p(u,{label:"饮食打卡",width:"110",align:"center"},{default:d(({row:a})=>[a.diet?(n(),S(v,{key:0,placement:"top",disabled:!a.diet,effect:"light"},{content:d(()=>[r("div",Me,[r("div",null,"早:"+c(a.diet.breakfast||"—"),1),r("div",null,"午:"+c(a.diet.lunch||"—"),1),r("div",null,"晚:"+c(a.diet.dinner||"—"),1)])]),default:d(()=>[e[9]||(e[9]=r("span",{class:"cell-checked"},"已打卡",-1))]),_:2},1032,["disabled"])):(n(),i("span",Se,"—"))]),_:1}),p(u,{label:"运动打卡","min-width":"160",align:"center"},{default:d(({row:a})=>[a.exercise?(n(),S(v,{key:0,placement:"top",effect:"light"},{content:d(()=>[r("div",Be,[r("div",null,"强度:"+c(a.exercise.intensityText||"—"),1),r("div",null,"时长:"+c(a.exercise.duration?a.exercise.duration+" min":"—"),1),a.exercise.remark?(n(),i("div",Te,"备注:"+c(a.exercise.remark),1)):f("",!0)])]),default:d(()=>[r("span",Ce,[e[10]||(e[10]=g(" 已打卡 ",-1)),a.exercise.duration?(n(),i("span",Re,"· "+c(a.exercise.duration)+"min",1)):f("",!0),a.exercise.intensityText?(n(),i("span",Ve,"· "+c(a.exercise.intensityText),1)):f("",!0)])]),_:2},1024)):(n(),i("span",Ee,"—"))]),_:1})]),_:1},8,["data"]))])),[[V,T.value]])}}}),yt=re(Ie,[["__scopeId","data-v-87978983"]]);export{yt as default}; +import{L as G,F as O,G as U,a2 as J,R as Q,N as W,r as j,M as K}from"./element-plus-DFTWCWyi.js";import{f as X,c as Z,d as ee,e as te,b as se}from"./blood-thresholds-CJ1fqMjh.js";import{M as ae}from"./tcm-DzAQc_oE.js";import{f as ne,w as oe,b as ie,aP as le,ak as n,I as i,J as r,a as p,aN as d,O as g,G as S,H as f,A as B}from"./@vue/runtime-core-C6bnekPw.js";import{o as R,Q as c}from"./@vue/shared-mAAVTE9n.js";import{n as y}from"./@vue/reactivity-DiY1c2vO.js";import{_ as re}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const de={class:"tracking-matrix"},ce={class:"toolbar"},ue={key:0,class:"cell-blood"},pe={class:"value"},me={key:0,class:"cell-up"},_e={class:"value"},ge={key:0,class:"cell-up"},fe={class:"value"},he={key:0,class:"cell-up"},ve={key:1,class:"cell-empty"},ye={key:0,class:"cell-up"},ke={key:1,class:"cell-empty"},xe={key:0},be={key:1,class:"cell-empty"},He={key:0},De={key:1,class:"cell-empty"},Me={class:"diet-tip"},Se={key:1,class:"cell-empty"},Be={class:"exercise-tip"},Te={key:0},Ce={class:"cell-checked"},Re={key:0,class:"meta"},Ve={key:1,class:"meta"},Ee={key:1,class:"cell-empty"},Ie=ne({__name:"TrackingMatrix",props:{diagnosisId:{},age:{default:null}},setup(L,{expose:Y}){const _=L,h=y("30"),k=y(null),T=y(!1),x=y([]),b=y([]),H=y([]);let C=0;const E=s=>`${s.getFullYear()}-${String(s.getMonth()+1).padStart(2,"0")}-${String(s.getDate()).padStart(2,"0")}`,I=s=>{if(s==="custom"){const[m,l]=k.value||["",""];return{start:m||"",end:l||""}}const e=s==="7"?7:30,t=new Date;t.setHours(0,0,0,0);const o=new Date(t);return o.setDate(o.getDate()-(e-1)),{start:E(o),end:E(t)}},w=s=>s.getTime()>Date.now(),D=async()=>{if(!_.diagnosisId||_.diagnosisId<=0){x.value=[],b.value=[],H.value=[];return}const s=I(h.value);if(h.value==="custom"&&(!s.start||!s.end))return;const e=++C;T.value=!0;try{const t=await ae({id:_.diagnosisId,start_date:s.start,end_date:s.end});if(e!==C)return;x.value=(t==null?void 0:t.blood_records)||[],b.value=(t==null?void 0:t.diet_records)||[],H.value=(t==null?void 0:t.exercise_records)||[]}catch{e===C&&(x.value=[],b.value=[],H.value=[])}finally{e===C&&(T.value=!1)}},A=()=>{if(h.value==="custom"&&!k.value){const s=I("30");k.value=[s.start,s.end]}D()},F=()=>{h.value==="custom"&&D()};oe(()=>_.diagnosisId,s=>{s&&s>0&&D()}),ie(()=>{_.diagnosisId&&_.diagnosisId>0&&D()});const P=B(()=>{const s=new Map;for(const e of x.value){const t=String(e.record_date||"");if(!t)continue;s.has(t)||s.set(t,{record_date:t,record_date_ts:e.record_date_ts});const o=s.get(t),m=["fasting_blood_sugar","postprandial_blood_sugar","other_blood_sugar","systolic_pressure","diastolic_pressure","western_medicine","insulin"];for(const l of m)(o[l]===void 0||o[l]===null||o[l]==="")&&e[l]!==void 0&&e[l]!==null&&e[l]!==""&&(o[l]=e[l])}return s}),$=B(()=>{const s=new Map;for(const e of b.value){const t=String(e.record_date||"");t&&(s.has(t)||s.set(t,e))}return s}),q=B(()=>{const s=new Map;for(const e of H.value){const t=String(e.record_date||"");t&&(s.has(t)||s.set(t,e))}return s}),N=B(()=>{const s=new Set;for(const t of x.value)t.record_date&&s.add(String(t.record_date));for(const t of b.value)t.record_date&&s.add(String(t.record_date));for(const t of H.value)t.record_date&&s.add(String(t.record_date));const e=Array.from(s).filter(t=>t.length===10);return e.sort((t,o)=>to?-1:0),e}),z=B(()=>N.value.map(s=>{const e=P.value.get(s),t=$.value.get(s),o=q.value.get(s),m=(e==null?void 0:e.fasting_blood_sugar)??null,l=(e==null?void 0:e.postprandial_blood_sugar)??null,u=(e==null?void 0:e.other_blood_sugar)??null,v=(e==null?void 0:e.systolic_pressure)??null,M=(e==null?void 0:e.diastolic_pressure)??null,V=m!==null&&m!==""||l!==null&&l!==""||u!==null&&u!=="",a=v||M?X({systolic_pressure:v,diastolic_pressure:M}):"";return{date:s,dateLabel:`${s}`,bloodAny:V,fasting:m??"—",postprandial:l??"—",other:u??"—",fastingHigh:se(m,_.age),postprandialHigh:te(l,_.age),otherHigh:ee(u,_.age),bp:a,bpHigh:Z({systolic_pressure:v,diastolic_pressure:M}),westernMedicine:(e==null?void 0:e.western_medicine)||"",insulin:(e==null?void 0:e.insulin)||"",diet:t?{breakfast:t.breakfast||"",lunch:t.lunch||"",dinner:t.dinner||""}:null,exercise:o?{duration:o.duration||0,intensityText:o.intensity_text||"",remark:o.remark||""}:null}}));return Y({refresh:D}),(s,e)=>{const t=O,o=U,m=J,l=Q,u=W,v=j,M=K,V=G;return le((n(),i("div",de,[r("div",ce,[p(o,{modelValue:h.value,"onUpdate:modelValue":e[0]||(e[0]=a=>h.value=a),onChange:A},{default:d(()=>[p(t,{value:"7"},{default:d(()=>[...e[2]||(e[2]=[g("最近 7 天",-1)])]),_:1}),p(t,{value:"30"},{default:d(()=>[...e[3]||(e[3]=[g("最近 30 天",-1)])]),_:1}),p(t,{value:"custom"},{default:d(()=>[...e[4]||(e[4]=[g("自定义",-1)])]),_:1})]),_:1},8,["modelValue"]),h.value==="custom"?(n(),S(m,{key:0,modelValue:k.value,"onUpdate:modelValue":e[1]||(e[1]=a=>k.value=a),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",clearable:!1,size:"default","disabled-date":w,onChange:F},null,8,["modelValue"])):f("",!0),e[5]||(e[5]=r("span",{class:"hint"}," 超阈值红字↑(年龄分段:<50:空7/餐9,≥50:空8/餐10) ",-1))]),!T.value&&N.value.length===0?(n(),S(l,{key:0,description:"所选区间内无任何打卡记录","image-size":80})):(n(),S(M,{key:1,data:z.value,border:"",stripe:"",class:"matrix-table","empty-text":"暂无数据","row-key":"date","max-height":"640"},{default:d(()=>[p(u,{prop:"dateLabel",label:"日期",width:"120",fixed:"left"}),p(u,{label:"血糖 (mmol/L)","min-width":"180"},{default:d(({row:a})=>[a.bloodAny?(n(),i("div",ue,[r("span",{class:R({"cell-high":a.fastingHigh})},[e[6]||(e[6]=g(" 空 ",-1)),r("span",pe,c(a.fasting??"—"),1),a.fastingHigh?(n(),i("span",me,"↑")):f("",!0)],2),r("span",{class:R({"cell-high":a.postprandialHigh})},[e[7]||(e[7]=g(" 餐 ",-1)),r("span",_e,c(a.postprandial??"—"),1),a.postprandialHigh?(n(),i("span",ge,"↑")):f("",!0)],2),r("span",{class:R({"cell-high":a.otherHigh})},[e[8]||(e[8]=g(" 其他 ",-1)),r("span",fe,c(a.other??"—"),1),a.otherHigh?(n(),i("span",he,"↑")):f("",!0)],2)])):(n(),i("span",ve,"—"))]),_:1}),p(u,{label:"血压 (mmHg)",width:"120",align:"center"},{default:d(({row:a})=>[a.bp?(n(),i("span",{key:0,class:R({"cell-high":a.bpHigh})},[g(c(a.bp)+" ",1),a.bpHigh?(n(),i("span",ye,"↑")):f("",!0)],2)):(n(),i("span",ke,"—"))]),_:1}),p(u,{label:"西药","min-width":"120","show-overflow-tooltip":""},{default:d(({row:a})=>[a.westernMedicine?(n(),i("span",xe,c(a.westernMedicine),1)):(n(),i("span",be,"—"))]),_:1}),p(u,{label:"胰岛素","min-width":"120","show-overflow-tooltip":""},{default:d(({row:a})=>[a.insulin?(n(),i("span",He,c(a.insulin),1)):(n(),i("span",De,"—"))]),_:1}),p(u,{label:"饮食打卡",width:"110",align:"center"},{default:d(({row:a})=>[a.diet?(n(),S(v,{key:0,placement:"top",disabled:!a.diet,effect:"light"},{content:d(()=>[r("div",Me,[r("div",null,"早:"+c(a.diet.breakfast||"—"),1),r("div",null,"午:"+c(a.diet.lunch||"—"),1),r("div",null,"晚:"+c(a.diet.dinner||"—"),1)])]),default:d(()=>[e[9]||(e[9]=r("span",{class:"cell-checked"},"已打卡",-1))]),_:2},1032,["disabled"])):(n(),i("span",Se,"—"))]),_:1}),p(u,{label:"运动打卡","min-width":"160",align:"center"},{default:d(({row:a})=>[a.exercise?(n(),S(v,{key:0,placement:"top",effect:"light"},{content:d(()=>[r("div",Be,[r("div",null,"强度:"+c(a.exercise.intensityText||"—"),1),r("div",null,"时长:"+c(a.exercise.duration?a.exercise.duration+" min":"—"),1),a.exercise.remark?(n(),i("div",Te,"备注:"+c(a.exercise.remark),1)):f("",!0)])]),default:d(()=>[r("span",Ce,[e[10]||(e[10]=g(" 已打卡 ",-1)),a.exercise.duration?(n(),i("span",Re,"· "+c(a.exercise.duration)+"min",1)):f("",!0),a.exercise.intensityText?(n(),i("span",Ve,"· "+c(a.exercise.intensityText),1)):f("",!0)])]),_:2},1024)):(n(),i("span",Ee,"—"))]),_:1})]),_:1},8,["data"]))])),[[V,T.value]])}}}),yt=re(Ie,[["__scopeId","data-v-87978983"]]);export{yt as default}; diff --git a/server/public/admin/assets/TrackingNoteTimeline-CnwjkDH5.js b/server/public/admin/assets/TrackingNoteTimeline-B1cc6OKF.js similarity index 96% rename from server/public/admin/assets/TrackingNoteTimeline-CnwjkDH5.js rename to server/public/admin/assets/TrackingNoteTimeline-B1cc6OKF.js index 11168323..dbb4939a 100644 --- a/server/public/admin/assets/TrackingNoteTimeline-CnwjkDH5.js +++ b/server/public/admin/assets/TrackingNoteTimeline-B1cc6OKF.js @@ -1,2 +1,2 @@ -import{C as I,i as V,R as w}from"./element-plus-DFTWCWyi.js";import{U as T}from"./tcm-DCW3HTOw.js";import{i as C,_ as E}from"./index-Nt5zMHcc.js";import{f as z,ak as t,I as e,a as p,J as l,aN as H,O as S,H as m,F as c,ap as u,G as F}from"./@vue/runtime-core-C6bnekPw.js";import{Q as f}from"./@vue/shared-mAAVTE9n.js";import{n as g}from"./@vue/reactivity-DiY1c2vO.js";/* empty css */import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const L={class:"tracking-timeline-wrap"},M={key:0,class:"timeline-input"},U={class:"input-actions"},A={key:1,class:"tracking-timeline"},D={class:"timeline-date"},G={class:"timeline-body"},J={key:0,class:"timeline-content"},O=z({__name:"TrackingNoteTimeline",props:{notes:{},diagnosisId:{},readonly:{type:Boolean}},emits:["refresh"],setup(i,{emit:v}){const d=i,y=v,r=g(""),a=g(!1),_=o=>o?o.split(` +import{C as I,i as V,R as w}from"./element-plus-DFTWCWyi.js";import{U as T}from"./tcm-DzAQc_oE.js";import{i as C,_ as E}from"./index--WnM67ZH.js";import{f as z,ak as t,I as e,a as p,J as l,aN as H,O as S,H as m,F as c,ap as u,G as F}from"./@vue/runtime-core-C6bnekPw.js";import{Q as f}from"./@vue/shared-mAAVTE9n.js";import{n as g}from"./@vue/reactivity-DiY1c2vO.js";/* empty css */import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const L={class:"tracking-timeline-wrap"},M={key:0,class:"timeline-input"},U={class:"input-actions"},A={key:1,class:"tracking-timeline"},D={class:"timeline-date"},G={class:"timeline-body"},J={key:0,class:"timeline-content"},O=z({__name:"TrackingNoteTimeline",props:{notes:{},diagnosisId:{},readonly:{type:Boolean}},emits:["refresh"],setup(i,{emit:v}){const d=i,y=v,r=g(""),a=g(!1),_=o=>o?o.split(` `).filter(Boolean):[],k=async()=>{if(!d.diagnosisId)return;const o=r.value.trim();if(o){a.value=!0;try{await T({diagnosis_id:d.diagnosisId,tracking_content:o}),C.msgSuccess("已添加"),r.value="",y("refresh")}finally{a.value=!1}}};return(o,n)=>{const h=I,b=V,N=w;return t(),e("div",L,[!i.readonly&&i.diagnosisId?(t(),e("div",M,[p(h,{modelValue:r.value,"onUpdate:modelValue":n[0]||(n[0]=s=>r.value=s),type:"textarea",rows:2,placeholder:"输入跟踪备注,回车换行;保存后将以「[HH:MM] 内容」追加到当天记录",maxlength:"1000","show-word-limit":"",resize:"none",disabled:a.value},null,8,["modelValue","disabled"]),l("div",U,[p(b,{type:"primary",size:"small",loading:a.value,disabled:!r.value.trim(),onClick:k},{default:H(()=>[...n[1]||(n[1]=[S(" 添加 ",-1)])]),_:1},8,["loading","disabled"])])])):m("",!0),i.notes.length?(t(),e("div",A,[(t(!0),e(c,null,u(i.notes,s=>(t(),e("div",{key:s.id,class:"timeline-node"},[n[2]||(n[2]=l("div",{class:"timeline-dot"},null,-1)),l("div",D,f(s.note_date),1),l("div",G,[s.content?(t(),e("div",J,[(t(!0),e(c,null,u(_(s.content),(x,B)=>(t(),e("div",{key:B,class:"content-line"},f(x),1))),128))])):m("",!0)])]))),128))])):m("",!0),!i.notes.length&&i.readonly?(t(),F(N,{key:2,description:"暂无跟踪备注","image-size":48})):m("",!0)])}}}),Tt=E(O,[["__scopeId","data-v-82b635bd"]]);export{Tt as default}; diff --git a/server/public/admin/assets/account-adjust-DuN8Obq4.js b/server/public/admin/assets/account-adjust-CCxpv-Lh.js similarity index 86% rename from server/public/admin/assets/account-adjust-DuN8Obq4.js rename to server/public/admin/assets/account-adjust-CCxpv-Lh.js index fa99559a..a5c16773 100644 --- a/server/public/admin/assets/account-adjust-DuN8Obq4.js +++ b/server/public/admin/assets/account-adjust-CCxpv-Lh.js @@ -1 +1 @@ -import{_ as o}from"./account-adjust.vue_vue_type_script_setup_true_lang-Be9YVff0.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./account-adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/account-adjust.vue_vue_type_script_setup_true_lang-Be9YVff0.js b/server/public/admin/assets/account-adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js similarity index 94% rename from server/public/admin/assets/account-adjust.vue_vue_type_script_setup_true_lang-Be9YVff0.js rename to server/public/admin/assets/account-adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js index ebe26be8..95f9a866 100644 --- a/server/public/admin/assets/account-adjust.vue_vue_type_script_setup_true_lang-Be9YVff0.js +++ b/server/public/admin/assets/account-adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js @@ -1 +1 @@ -import{D as h,B as q,G as B,I,C as D}from"./element-plus-DFTWCWyi.js";import{_ as F}from"./index-BQY2-_X1.js";import{i as b}from"./index-Nt5zMHcc.js";import{f as G,w,ak as j,G as S,aN as r,J as U,a,O as u,A}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,q as y,r as J}from"./@vue/reactivity-DiY1c2vO.js";import{Q as k}from"./@vue/shared-mAAVTE9n.js";const M={class:"pr-8"},L=G({__name:"account-adjust",props:{show:{type:Boolean,required:!0},value:{type:[Number,String],required:!0}},emits:["update:show","confirm"],setup(d,{emit:V}){const s=y(),i=d,f=V,o=J({action:1,num:"",remark:""}),m=y(),c=A(()=>Number(i.value)+Number(o.num)*(o.action==1?1:-1)),R={num:[{required:!0,message:"请输入调整的金额"}]},g=e=>{if(e.includes("-"))return b.msgError("请输入正整数");o.num=e},x=async()=>{var e;await((e=s.value)==null?void 0:e.validate()),f("confirm",o)},C=()=>{var e;f("update:show",!1),(e=s.value)==null||e.resetFields()};return w(()=>i.show,e=>{var t,l;e?(t=m.value)==null||t.open():(l=m.value)==null||l.close()}),w(c,e=>{e<0&&(b.msgError("调整后余额需大于0"),o.num="")}),(e,t)=>{const l=q,_=I,E=B,v=D,N=h;return j(),S(F,{ref_key:"popupRef",ref:m,title:"余额调整",width:"500px",onConfirm:x,async:!0,onClose:C},{default:r(()=>[U("div",M,[a(N,{ref_key:"formRef",ref:s,model:n(o),"label-width":"120px",rules:R},{default:r(()=>[a(l,{label:"当前余额"},{default:r(()=>[u("¥ "+k(d.value),1)]),_:1}),a(l,{label:"余额增减",required:"",prop:"action"},{default:r(()=>[a(E,{modelValue:n(o).action,"onUpdate:modelValue":t[0]||(t[0]=p=>n(o).action=p)},{default:r(()=>[a(_,{value:1},{default:r(()=>[...t[2]||(t[2]=[u("增加余额",-1)])]),_:1}),a(_,{value:2},{default:r(()=>[...t[3]||(t[3]=[u("扣减余额",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(l,{label:"调整余额",prop:"num"},{default:r(()=>[a(v,{"model-value":n(o).num,placeholder:"请输入调整的金额",type:"number",onInput:g},null,8,["model-value"])]),_:1}),a(l,{label:"调整后余额"},{default:r(()=>[u(" ¥ "+k(n(c)),1)]),_:1}),a(l,{label:"备注",prop:"remark"},{default:r(()=>[a(v,{modelValue:n(o).remark,"onUpdate:modelValue":t[1]||(t[1]=p=>n(o).remark=p),type:"textarea",rows:4},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])])]),_:1},512)}}});export{L as _}; +import{D as h,B as q,G as B,I,C as D}from"./element-plus-DFTWCWyi.js";import{_ as F}from"./index-SocYjCJ1.js";import{i as b}from"./index--WnM67ZH.js";import{f as G,w,ak as j,G as S,aN as r,J as U,a,O as u,A}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,q as y,r as J}from"./@vue/reactivity-DiY1c2vO.js";import{Q as k}from"./@vue/shared-mAAVTE9n.js";const M={class:"pr-8"},L=G({__name:"account-adjust",props:{show:{type:Boolean,required:!0},value:{type:[Number,String],required:!0}},emits:["update:show","confirm"],setup(d,{emit:V}){const s=y(),i=d,f=V,o=J({action:1,num:"",remark:""}),m=y(),c=A(()=>Number(i.value)+Number(o.num)*(o.action==1?1:-1)),R={num:[{required:!0,message:"请输入调整的金额"}]},g=e=>{if(e.includes("-"))return b.msgError("请输入正整数");o.num=e},x=async()=>{var e;await((e=s.value)==null?void 0:e.validate()),f("confirm",o)},C=()=>{var e;f("update:show",!1),(e=s.value)==null||e.resetFields()};return w(()=>i.show,e=>{var t,l;e?(t=m.value)==null||t.open():(l=m.value)==null||l.close()}),w(c,e=>{e<0&&(b.msgError("调整后余额需大于0"),o.num="")}),(e,t)=>{const l=q,_=I,E=B,v=D,N=h;return j(),S(F,{ref_key:"popupRef",ref:m,title:"余额调整",width:"500px",onConfirm:x,async:!0,onClose:C},{default:r(()=>[U("div",M,[a(N,{ref_key:"formRef",ref:s,model:n(o),"label-width":"120px",rules:R},{default:r(()=>[a(l,{label:"当前余额"},{default:r(()=>[u("¥ "+k(d.value),1)]),_:1}),a(l,{label:"余额增减",required:"",prop:"action"},{default:r(()=>[a(E,{modelValue:n(o).action,"onUpdate:modelValue":t[0]||(t[0]=p=>n(o).action=p)},{default:r(()=>[a(_,{value:1},{default:r(()=>[...t[2]||(t[2]=[u("增加余额",-1)])]),_:1}),a(_,{value:2},{default:r(()=>[...t[3]||(t[3]=[u("扣减余额",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(l,{label:"调整余额",prop:"num"},{default:r(()=>[a(v,{"model-value":n(o).num,placeholder:"请输入调整的金额",type:"number",onInput:g},null,8,["model-value"])]),_:1}),a(l,{label:"调整后余额"},{default:r(()=>[u(" ¥ "+k(n(c)),1)]),_:1}),a(l,{label:"备注",prop:"remark"},{default:r(()=>[a(v,{modelValue:n(o).remark,"onUpdate:modelValue":t[1]||(t[1]=p=>n(o).remark=p),type:"textarea",rows:4},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])])]),_:1},512)}}});export{L as _}; diff --git a/server/public/admin/assets/account_cost-81Vk4hme.js b/server/public/admin/assets/account_cost-CeAkSL4u.js similarity index 94% rename from server/public/admin/assets/account_cost-81Vk4hme.js rename to server/public/admin/assets/account_cost-CeAkSL4u.js index b4cdf336..cb59ffa5 100644 --- a/server/public/admin/assets/account_cost-81Vk4hme.js +++ b/server/public/admin/assets/account_cost-CeAkSL4u.js @@ -1 +1 @@ -import{J as ee,D as te,B as oe,W as ae,C as se,i as ne,M as le,N as ie,r as re,L as de}from"./element-plus-DFTWCWyi.js";import{_ as pe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as me,k as ce,i as ue,_ as _e}from"./index-Nt5zMHcc.js";import{_ as fe}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as ve}from"./@vue/runtime-dom-DDAG46FW.js";import{p as we,a as ke}from"./self_input_stats-DMYot1WP.js";import{d as ye}from"./department-CSUh_x-a.js";import{u as be}from"./usePaging-VsbTxSU0.js";import{_ as ge}from"./cost-edit.vue_vue_type_script_setup_true_lang-Dqx_6dkh.js";import{_ as he}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{u as Ce}from"./useMediaSourceOptions-6f8jf4SK.js";import{a as xe}from"./vue-router-QlpZ4wdW.js";import{f as $,b as Ve,as as Te,ak as i,I as T,a as o,aN as s,J as r,O as m,G as c,H as D,aP as b,A as Ee,n as A}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w}from"./@vue/shared-mAAVTE9n.js";import{y as t,a as Se,q as De,n as P,r as Ae}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const Pe={class:"personal-account-cost-page"},$e={class:"flex flex-wrap"},Oe={class:"w-1/2 md:w-1/3"},Re={class:"text-4xl"},Be={class:"w-1/2 md:w-1/3"},Ie={class:"text-4xl"},Me={class:"dept-cell"},Ne={key:1},Ue={key:2,class:"text-gray-400"},Le={class:"flex justify-end mt-4"},Fe=$({name:"personalAccountCost"}),Ke=$({...Fe,setup(qe){const O=xe(),k=De(),y=P(!1),g=P([]),{mediaSourceOptions:E,mediaSourceLoading:S,loadMediaSourceOptions:R,refreshMediaSourceOptions:h}=Ce(),B={value:"id",label:"name",children:"children"},C=Ee(()=>ce("stats.self_input/overview")||""),I=()=>{C.value&&O.push(C.value)},n=Ae({start_date:"",end_date:"",media_source:"",dept_id:void 0,remark:""}),{pager:p,getLists:x,resetPage:f}=be({fetchFun:we,params:n}),M=()=>{n.start_date="",n.end_date="",n.media_source="",n.dept_id=void 0,n.remark="",f()},N=l=>{l&&h()},U=async()=>{await h(),x()},L=async()=>{var l;await h(),y.value=!0,await A(),(l=k.value)==null||l.open("add")},F=async l=>{var e,u;y.value=!0,await A(),(e=k.value)==null||e.open("edit"),(u=k.value)==null||u.setFormData(l)},K=async l=>{await ue.confirm("确定删除该账户消耗记录?"),await ke({id:l}),x()},q=async()=>{try{const l=await ye({apply_data_scope:1});Array.isArray(l)&&(g.value=l)}catch{g.value=[]}};return Ve(()=>{q(),R()}),(l,e)=>{const u=ee,J=fe,v=oe,j=ae,z=se,_=ne,G=te,H=me,d=ie,Q=re,W=le,X=pe,V=Te("perms"),Y=de;return i(),T("div",Pe,[o(u,{class:"!border-none mb-4",shadow:"never"},{default:s(()=>[r("div",$e,[r("div",Oe,[e[7]||(e[7]=r("div",{class:"leading-10"},"当前筛选天数",-1)),r("div",Re,w(t(p).extend.days_count??0),1)]),r("div",Be,[e[8]||(e[8]=r("div",{class:"leading-10"},"累计账户消耗 (元)",-1)),r("div",Ie,"¥"+w(t(p).extend.total_amount??"0.00"),1)])])]),_:1}),o(u,{class:"!border-none",shadow:"never"},{default:s(()=>[o(G,{class:"mb-[-16px]",model:t(n),inline:""},{default:s(()=>[o(v,{label:"日期范围"},{default:s(()=>[o(J,{startTime:t(n).start_date,"onUpdate:startTime":e[0]||(e[0]=a=>t(n).start_date=a),endTime:t(n).end_date,"onUpdate:endTime":e[1]||(e[1]=a=>t(n).end_date=a)},null,8,["startTime","endTime"])]),_:1}),o(v,{label:"部门"},{default:s(()=>[o(j,{modelValue:t(n).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>t(n).dept_id=a),data:t(g),"node-key":"id",props:B,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",class:"w-[220px]",onChange:t(f)},null,8,["modelValue","data","onChange"])]),_:1}),o(v,{label:"自媒体来源"},{default:s(()=>[o(he,{modelValue:t(n).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>t(n).media_source=a),options:t(E),loading:t(S),placeholder:"全部来源","allow-create":!1,"select-class":"w-[220px]",onChange:t(f),onVisibleChange:N},null,8,["modelValue","options","loading","onChange"])]),_:1}),o(v,{class:"w-[280px]",label:"备注/录入人"},{default:s(()=>[o(z,{modelValue:t(n).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>t(n).remark=a),placeholder:"备注 / 创建人",clearable:"",onKeyup:ve(t(f),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),o(v,null,{default:s(()=>[o(_,{type:"primary",onClick:t(f)},{default:s(()=>[...e[9]||(e[9]=[m("查询",-1)])]),_:1},8,["onClick"]),o(_,{onClick:M},{default:s(()=>[...e[10]||(e[10]=[m("重置",-1)])]),_:1}),t(C)?(i(),c(_,{key:0,class:"ml-2",onClick:I},{default:s(()=>[...e[11]||(e[11]=[m("返回统计",-1)])]),_:1})):D("",!0)]),_:1})]),_:1},8,["model"])]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:s(()=>[r("div",null,[b((i(),c(_,{type:"primary",onClick:L},{icon:s(()=>[o(H,{name:"el-icon-Plus"})]),default:s(()=>[e[12]||(e[12]=m(" 新增 ",-1))]),_:1})),[[V,["stats.personal_account_cost/add"]]])]),b((i(),c(W,{class:"mt-4",size:"large",data:t(p).lists},{default:s(()=>[o(d,{label:"日期",prop:"cost_date","min-width":"120"}),o(d,{label:"自媒体来源",prop:"media_source","min-width":"160","show-overflow-tooltip":""}),o(d,{label:"账户消耗","min-width":"120"},{default:s(({row:a})=>[m("¥"+w(a.amount),1)]),_:1}),o(d,{label:"备注",prop:"remark","min-width":"200","show-overflow-tooltip":""}),o(d,{label:"录入人",prop:"creator_name","min-width":"100"}),o(d,{label:"部门",prop:"dept_name","min-width":"140"},{default:s(({row:a})=>[a.dept_path?(i(),c(Q,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:s(()=>[r("span",Me,w(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(i(),T("span",Ne,w(a.dept_name),1)):(i(),T("span",Ue,"未分配"))]),_:1}),o(d,{label:"最后修改人",prop:"updater_name","min-width":"100"}),o(d,{label:"更新时间",prop:"update_time","min-width":"180"}),o(d,{label:"操作",width:"160",fixed:"right"},{default:s(({row:a})=>[b((i(),c(_,{type:"primary",link:"",onClick:Z=>F(a)},{default:s(()=>[...e[13]||(e[13]=[m(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[V,["stats.personal_account_cost/edit"]]]),b((i(),c(_,{type:"danger",link:"",onClick:Z=>K(a.id)},{default:s(()=>[...e[14]||(e[14]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])),[[V,["stats.personal_account_cost/delete"]]])]),_:1})]),_:1},8,["data"])),[[Y,t(p).loading]]),r("div",Le,[o(X,{modelValue:t(p),"onUpdate:modelValue":e[5]||(e[5]=a=>Se(p)?p.value=a:null),onChange:t(x)},null,8,["modelValue","onChange"])])]),_:1}),t(y)?(i(),c(ge,{key:0,ref_key:"editRef",ref:k,"media-source-options":t(E),"media-source-loading":t(S),onSuccess:U,onClose:e[6]||(e[6]=a=>y.value=!1)},null,8,["media-source-options","media-source-loading"])):D("",!0)])}}}),It=_e(Ke,[["__scopeId","data-v-b8e68581"]]);export{It as default}; +import{J as ee,D as te,B as oe,W as ae,C as se,i as ne,M as le,N as ie,r as re,L as de}from"./element-plus-DFTWCWyi.js";import{_ as pe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as me,k as ce,i as ue,_ as _e}from"./index--WnM67ZH.js";import{_ as fe}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as ve}from"./@vue/runtime-dom-DDAG46FW.js";import{p as we,a as ke}from"./self_input_stats-C4Lr_Fd7.js";import{d as ye}from"./department-D5OVad_r.js";import{u as be}from"./usePaging-VsbTxSU0.js";import{_ as ge}from"./cost-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js";import{_ as he}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{u as Ce}from"./useMediaSourceOptions-D92lCyJY.js";import{a as xe}from"./vue-router-QlpZ4wdW.js";import{f as $,b as Ve,as as Te,ak as i,I as T,a as o,aN as s,J as r,O as m,G as c,H as D,aP as b,A as Ee,n as A}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w}from"./@vue/shared-mAAVTE9n.js";import{y as t,a as Se,q as De,n as P,r as Ae}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const Pe={class:"personal-account-cost-page"},$e={class:"flex flex-wrap"},Oe={class:"w-1/2 md:w-1/3"},Re={class:"text-4xl"},Be={class:"w-1/2 md:w-1/3"},Ie={class:"text-4xl"},Me={class:"dept-cell"},Ne={key:1},Ue={key:2,class:"text-gray-400"},Le={class:"flex justify-end mt-4"},Fe=$({name:"personalAccountCost"}),Ke=$({...Fe,setup(qe){const O=xe(),k=De(),y=P(!1),g=P([]),{mediaSourceOptions:E,mediaSourceLoading:S,loadMediaSourceOptions:R,refreshMediaSourceOptions:h}=Ce(),B={value:"id",label:"name",children:"children"},C=Ee(()=>ce("stats.self_input/overview")||""),I=()=>{C.value&&O.push(C.value)},n=Ae({start_date:"",end_date:"",media_source:"",dept_id:void 0,remark:""}),{pager:p,getLists:x,resetPage:f}=be({fetchFun:we,params:n}),M=()=>{n.start_date="",n.end_date="",n.media_source="",n.dept_id=void 0,n.remark="",f()},N=l=>{l&&h()},U=async()=>{await h(),x()},L=async()=>{var l;await h(),y.value=!0,await A(),(l=k.value)==null||l.open("add")},F=async l=>{var e,u;y.value=!0,await A(),(e=k.value)==null||e.open("edit"),(u=k.value)==null||u.setFormData(l)},K=async l=>{await ue.confirm("确定删除该账户消耗记录?"),await ke({id:l}),x()},q=async()=>{try{const l=await ye({apply_data_scope:1});Array.isArray(l)&&(g.value=l)}catch{g.value=[]}};return Ve(()=>{q(),R()}),(l,e)=>{const u=ee,J=fe,v=oe,j=ae,z=se,_=ne,G=te,H=me,d=ie,Q=re,W=le,X=pe,V=Te("perms"),Y=de;return i(),T("div",Pe,[o(u,{class:"!border-none mb-4",shadow:"never"},{default:s(()=>[r("div",$e,[r("div",Oe,[e[7]||(e[7]=r("div",{class:"leading-10"},"当前筛选天数",-1)),r("div",Re,w(t(p).extend.days_count??0),1)]),r("div",Be,[e[8]||(e[8]=r("div",{class:"leading-10"},"累计账户消耗 (元)",-1)),r("div",Ie,"¥"+w(t(p).extend.total_amount??"0.00"),1)])])]),_:1}),o(u,{class:"!border-none",shadow:"never"},{default:s(()=>[o(G,{class:"mb-[-16px]",model:t(n),inline:""},{default:s(()=>[o(v,{label:"日期范围"},{default:s(()=>[o(J,{startTime:t(n).start_date,"onUpdate:startTime":e[0]||(e[0]=a=>t(n).start_date=a),endTime:t(n).end_date,"onUpdate:endTime":e[1]||(e[1]=a=>t(n).end_date=a)},null,8,["startTime","endTime"])]),_:1}),o(v,{label:"部门"},{default:s(()=>[o(j,{modelValue:t(n).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>t(n).dept_id=a),data:t(g),"node-key":"id",props:B,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",class:"w-[220px]",onChange:t(f)},null,8,["modelValue","data","onChange"])]),_:1}),o(v,{label:"自媒体来源"},{default:s(()=>[o(he,{modelValue:t(n).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>t(n).media_source=a),options:t(E),loading:t(S),placeholder:"全部来源","allow-create":!1,"select-class":"w-[220px]",onChange:t(f),onVisibleChange:N},null,8,["modelValue","options","loading","onChange"])]),_:1}),o(v,{class:"w-[280px]",label:"备注/录入人"},{default:s(()=>[o(z,{modelValue:t(n).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>t(n).remark=a),placeholder:"备注 / 创建人",clearable:"",onKeyup:ve(t(f),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),o(v,null,{default:s(()=>[o(_,{type:"primary",onClick:t(f)},{default:s(()=>[...e[9]||(e[9]=[m("查询",-1)])]),_:1},8,["onClick"]),o(_,{onClick:M},{default:s(()=>[...e[10]||(e[10]=[m("重置",-1)])]),_:1}),t(C)?(i(),c(_,{key:0,class:"ml-2",onClick:I},{default:s(()=>[...e[11]||(e[11]=[m("返回统计",-1)])]),_:1})):D("",!0)]),_:1})]),_:1},8,["model"])]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:s(()=>[r("div",null,[b((i(),c(_,{type:"primary",onClick:L},{icon:s(()=>[o(H,{name:"el-icon-Plus"})]),default:s(()=>[e[12]||(e[12]=m(" 新增 ",-1))]),_:1})),[[V,["stats.personal_account_cost/add"]]])]),b((i(),c(W,{class:"mt-4",size:"large",data:t(p).lists},{default:s(()=>[o(d,{label:"日期",prop:"cost_date","min-width":"120"}),o(d,{label:"自媒体来源",prop:"media_source","min-width":"160","show-overflow-tooltip":""}),o(d,{label:"账户消耗","min-width":"120"},{default:s(({row:a})=>[m("¥"+w(a.amount),1)]),_:1}),o(d,{label:"备注",prop:"remark","min-width":"200","show-overflow-tooltip":""}),o(d,{label:"录入人",prop:"creator_name","min-width":"100"}),o(d,{label:"部门",prop:"dept_name","min-width":"140"},{default:s(({row:a})=>[a.dept_path?(i(),c(Q,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:s(()=>[r("span",Me,w(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(i(),T("span",Ne,w(a.dept_name),1)):(i(),T("span",Ue,"未分配"))]),_:1}),o(d,{label:"最后修改人",prop:"updater_name","min-width":"100"}),o(d,{label:"更新时间",prop:"update_time","min-width":"180"}),o(d,{label:"操作",width:"160",fixed:"right"},{default:s(({row:a})=>[b((i(),c(_,{type:"primary",link:"",onClick:Z=>F(a)},{default:s(()=>[...e[13]||(e[13]=[m(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[V,["stats.personal_account_cost/edit"]]]),b((i(),c(_,{type:"danger",link:"",onClick:Z=>K(a.id)},{default:s(()=>[...e[14]||(e[14]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])),[[V,["stats.personal_account_cost/delete"]]])]),_:1})]),_:1},8,["data"])),[[Y,t(p).loading]]),r("div",Le,[o(X,{modelValue:t(p),"onUpdate:modelValue":e[5]||(e[5]=a=>Se(p)?p.value=a:null),onChange:t(x)},null,8,["modelValue","onChange"])])]),_:1}),t(y)?(i(),c(ge,{key:0,ref_key:"editRef",ref:k,"media-source-options":t(E),"media-source-loading":t(S),onSuccess:U,onClose:e[6]||(e[6]=a=>y.value=!1)},null,8,["media-source-options","media-source-loading"])):D("",!0)])}}}),It=_e(Ke,[["__scopeId","data-v-b8e68581"]]);export{It as default}; diff --git a/server/public/admin/assets/add-DWErONbW.js b/server/public/admin/assets/add-DdKFZhja.js similarity index 99% rename from server/public/admin/assets/add-DWErONbW.js rename to server/public/admin/assets/add-DdKFZhja.js index c76dfade..b21de61f 100644 --- a/server/public/admin/assets/add-DWErONbW.js +++ b/server/public/admin/assets/add-DdKFZhja.js @@ -1 +1 @@ -import{d as pe,i as me,B as _e,C as fe,G as ye,I as ge,h as be,a2 as Ve,P as ve,Q as ce,af as ke,al as we,F as Ue,D as xe,E as le}from"./element-plus-DFTWCWyi.js";import{_ as ae,$ as Ee,a0 as Oe,a1 as qe,a2 as Be}from"./tcm-DCW3HTOw.js";import{m as b,i as oe,_ as De}from"./index-Nt5zMHcc.js";import{a as Ce,u as Ie}from"./vue-router-QlpZ4wdW.js";import{o as Se}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as Re,b as Pe,ae as Ne,ak as u,I as f,J as _,a,aN as t,O as s,F as V,ap as v,G as c,A as Fe}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,n as p}from"./@vue/reactivity-DiY1c2vO.js";import{Q as w}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const $e={class:"diagnosis-page"},Ge={class:"page-header"},Le={class:"page-title"},Me={class:"page-content"},Ye={class:"form-section"},Te={class:"form-section"},Ae={class:"form-section"},He={class:"form-section"},Qe={class:"form-section"},Xe={class:"form-section"},Je={class:"form-section"},he={class:"form-section"},je={class:"page-footer"},ze=Re({__name:"add",setup(Ke){const P=Ce(),te=Ie(),N=p(),I=p("add"),S=p(!1),de=Fe(()=>I.value==="add"?"新增诊单":"编辑诊单"),d=p({id:"",patient_id:"",patient_name:"",id_card:"",phone:"",gender:1,age:void 0,diagnosis_date:"",diagnosis_type:"",syndrome_type:"",diabetes_type:"",diabetes_discovery_year:"",local_hospital_diagnosis:[],local_hospital_name:"",marital_status:void 0,height:void 0,weight:void 0,region:"",systolic_pressure:void 0,diastolic_pressure:void 0,fasting_blood_sugar:"",appetite:"",water_intake:"",diet_condition:[],weight_change:"",body_feeling:[],sleep_condition:[],eye_condition:[],head_feeling:[],sweat_condition:[],skin_condition:[],urine_condition:[],stool_condition:[],kidney_condition:[],fatty_liver_degree:"",past_history:[],trauma_history:0,surgery_history:0,allergy_history:0,family_history:0,pregnancy_history:0,symptoms:"",tongue_coating:"",pulse:"",treatment_principle:"",prescription:"",doctor_advice:"",remark:"",current_medications:"",status:1}),ne={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],id_card:[{validator:(r,e,i)=>{if(e&&!/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e)){i(new Error("身份证号格式不正确"));return}i()},trigger:"blur"}],phone:[{required:!0,validator:(r,e,i)=>{if(!e){i(new Error("请输入手机号"));return}if(!/^1[3-9]\d{9}$/.test(e)){i(new Error("手机号格式不正确"));return}i()},trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],age:[{required:!0,message:"请输入年龄",trigger:"blur"}],diagnosis_type:[{required:!0,message:"请选择诊断类型",trigger:"change"}],syndrome_type:[{required:!0,message:"请选择证型",trigger:"change"}],diabetes_type:[{required:!0,message:"请选择糖尿病期数",trigger:"change"}],diabetes_discovery_year:[{max:50,message:"最多50个字符",trigger:"blur"}]},F=p([]),$=p([]),G=p([]),L=p([]),M=p([]),Y=p([]),T=p([]),A=p([]),H=p([]),Q=p([]),X=p([]),J=p([]),h=p([]),j=p([]),z=p([]),K=p([]),W=p([]),Z=p([]),ue=async()=>{try{const[r,e,i,x,m,n,y,U,O,D,E,q,g,k,B,C,l,R]=await Promise.all([b({type:"diagnosis_type"}),b({type:"syndrome_type"}),b({type:"diabetes_type"}),b({type:"past_history"}),b({type:"appetite"}),b({type:"water_intake"}),b({type:"diet_condition"}),b({type:"weight_change"}),b({type:"body_feeling"}),b({type:"sleep_condition"}),b({type:"eye_condition"}),b({type:"head_feeling"}),b({type:"sweat_condition"}),b({type:"skin_condition"}),b({type:"urine_condition"}),b({type:"stool_condition"}),b({type:"kidney_condition"}),b({type:"fatty_liver_degree"})]);F.value=(r==null?void 0:r.diagnosis_type)||[],$.value=(e==null?void 0:e.syndrome_type)||[],G.value=(i==null?void 0:i.diabetes_type)||[],L.value=(x==null?void 0:x.past_history)||[],M.value=(m==null?void 0:m.appetite)||[],Y.value=(n==null?void 0:n.water_intake)||[],T.value=(y==null?void 0:y.diet_condition)||[],A.value=(U==null?void 0:U.weight_change)||[],H.value=(O==null?void 0:O.body_feeling)||[],Q.value=(D==null?void 0:D.sleep_condition)||[],X.value=(E==null?void 0:E.eye_condition)||[],J.value=(q==null?void 0:q.head_feeling)||[],h.value=(g==null?void 0:g.sweat_condition)||[],j.value=(k==null?void 0:k.skin_condition)||[],z.value=(B==null?void 0:B.urine_condition)||[],K.value=(C==null?void 0:C.stool_condition)||[],W.value=(l==null?void 0:l.kidney_condition)||[],Z.value=(R==null?void 0:R.fatty_liver_degree)||[]}catch(r){console.error("获取字典数据失败:",r)}},se=async()=>{if(!(!d.value.phone||!/^1[3-9]\d{9}$/.test(d.value.phone)))try{const r=await Ee({phone:d.value.phone,id:d.value.id||""});r.exists&&le.warning(r.message)}catch(r){console.error("检查手机号失败:",r)}},re=async()=>{if(!(!d.value.id_card||!/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(d.value.id_card)))try{const r=await Oe({id_card:d.value.id_card,id:d.value.id||""});r.exists&&le.warning(r.message)}catch(r){console.error("检查身份证号失败:",r)}},ie=async()=>{var r;await((r=N.value)==null?void 0:r.validate()),S.value=!0;try{if(I.value==="add"){const e=await qe(d.value);if(oe.msgSuccess("新增成功"),e&&e.id){I.value="edit",d.value.id=e.id;try{const i=await ae({id:e.id});d.value.patient_id=i.patient_id}catch(i){console.error("获取详情失败:",i)}P.replace({query:{id:e.id}})}}else await Be(d.value),oe.msgSuccess("编辑成功")}catch(e){console.error("提交失败:",e)}finally{S.value=!1}},ee=()=>{P.back()};return Pe(async()=>{await ue(),setTimeout(()=>{const e=document.querySelector(".el-aside");e&&(e.style.display="none");const i=document.querySelector(".el-main");i&&(i.style.width="100%"(i).style.marginLeft="0");const x=document.querySelector(".el-container");x&&(x.style.width="100%")},100);const r=te.query.id;if(r){I.value="edit";const e=await ae({id:Number(r)});d.value=e}}),Ne(()=>{const r=document.querySelector(".el-aside");r&&(r.style.display="");const e=document.querySelector(".el-main");e&&(e.style.width=""(e).style.marginLeft="");const i=document.querySelector(".el-container");i&&(i.style.width="")}),(r,e)=>{const i=pe,x=me,m=fe,n=_e,y=ge,U=ye,O=be,D=Ve,E=ce,q=ve,g=we,k=ke,B=Ue,C=xe;return u(),f("div",$e,[_("div",Ge,[a(x,{link:"",onClick:ee,class:"back-btn"},{default:t(()=>[a(i,null,{default:t(()=>[a(o(Se))]),_:1}),e[49]||(e[49]=s(" 返回 ",-1))]),_:1}),_("h1",Le,w(o(de)),1)]),_("div",Me,[a(C,{ref_key:"formRef",ref:N,model:o(d),rules:ne,"label-width":"auto",class:"diagnosis-form"},{default:t(()=>[_("div",Ye,[e[52]||(e[52]=_("div",{class:"section-title"},"基本信息",-1)),a(n,{label:"患者ID"},{default:t(()=>[a(m,{modelValue:o(d).patient_id,"onUpdate:modelValue":e[0]||(e[0]=l=>o(d).patient_id=l),disabled:"",placeholder:"系统自动生成"},null,8,["modelValue"])]),_:1}),a(n,{label:"患者姓名",prop:"patient_name"},{default:t(()=>[a(m,{modelValue:o(d).patient_name,"onUpdate:modelValue":e[1]||(e[1]=l=>o(d).patient_name=l),placeholder:"请输入患者姓名"},null,8,["modelValue"])]),_:1}),a(n,{label:"身份证号",prop:"id_card"},{default:t(()=>[a(m,{modelValue:o(d).id_card,"onUpdate:modelValue":e[2]||(e[2]=l=>o(d).id_card=l),placeholder:"请输入身份证号",maxlength:"18",onBlur:re},null,8,["modelValue"])]),_:1}),a(n,{label:"手机号",prop:"phone"},{default:t(()=>[a(m,{modelValue:o(d).phone,"onUpdate:modelValue":e[3]||(e[3]=l=>o(d).phone=l),placeholder:"请输入手机号",maxlength:"11",onBlur:se},null,8,["modelValue"])]),_:1}),a(n,{label:"性别",prop:"gender"},{default:t(()=>[a(U,{modelValue:o(d).gender,"onUpdate:modelValue":e[4]||(e[4]=l=>o(d).gender=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[50]||(e[50]=[s("男",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[51]||(e[51]=[s("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"年龄",prop:"age"},{default:t(()=>[a(O,{modelValue:o(d).age,"onUpdate:modelValue":e[5]||(e[5]=l=>o(d).age=l),min:0,max:150,placeholder:"请输入年龄",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"诊断日期",prop:"diagnosis_date"},{default:t(()=>[a(D,{modelValue:o(d).diagnosis_date,"onUpdate:modelValue":e[6]||(e[6]=l=>o(d).diagnosis_date=l),type:"date",placeholder:"请选择诊断日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1})]),_("div",Te,[e[53]||(e[53]=_("div",{class:"section-title"},"生命体征",-1)),a(n,{label:"婚姻状态",prop:"marital_status"},{default:t(()=>[a(q,{modelValue:o(d).marital_status,"onUpdate:modelValue":e[7]||(e[7]=l=>o(d).marital_status=l),placeholder:"请选择婚姻状态",class:"w-full"},{default:t(()=>[a(E,{label:"未婚",value:0}),a(E,{label:"已婚",value:1}),a(E,{label:"离异",value:2})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"身高(cm)",prop:"height"},{default:t(()=>[a(O,{modelValue:o(d).height,"onUpdate:modelValue":e[8]||(e[8]=l=>o(d).height=l),min:0,max:300,placeholder:"请输入身高",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"体重(kg)",prop:"weight"},{default:t(()=>[a(O,{modelValue:o(d).weight,"onUpdate:modelValue":e[9]||(e[9]=l=>o(d).weight=l),min:0,max:500,step:.1,placeholder:"请输入体重",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"地区",prop:"region"},{default:t(()=>[a(m,{modelValue:o(d).region,"onUpdate:modelValue":e[10]||(e[10]=l=>o(d).region=l),placeholder:"请输入地区"},null,8,["modelValue"])]),_:1}),a(n,{label:"收缩压(mmHg)",prop:"systolic_pressure"},{default:t(()=>[a(O,{modelValue:o(d).systolic_pressure,"onUpdate:modelValue":e[11]||(e[11]=l=>o(d).systolic_pressure=l),min:0,max:250,placeholder:"请输入收缩压",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"舒张压(mmHg)",prop:"diastolic_pressure"},{default:t(()=>[a(O,{modelValue:o(d).diastolic_pressure,"onUpdate:modelValue":e[12]||(e[12]=l=>o(d).diastolic_pressure=l),min:0,max:150,placeholder:"请输入舒张压",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"空腹血糖(mmol/L)",prop:"fasting_blood_sugar"},{default:t(()=>[a(m,{modelValue:o(d).fasting_blood_sugar,"onUpdate:modelValue":e[13]||(e[13]=l=>o(d).fasting_blood_sugar=l),placeholder:"请输入空腹血糖,如:8.5 或 8-9",maxlength:"20",class:"w-full"},null,8,["modelValue"])]),_:1})]),_("div",Ae,[e[56]||(e[56]=_("div",{class:"section-title"},"诊断信息",-1)),a(n,{label:"诊断类型",prop:"diagnosis_type"},{default:t(()=>[a(q,{modelValue:o(d).diagnosis_type,"onUpdate:modelValue":e[14]||(e[14]=l=>o(d).diagnosis_type=l),placeholder:"请选择诊断类型",class:"w-full"},{default:t(()=>[(u(!0),f(V,null,v(o(F),l=>(u(),c(E,{key:l.value,label:l.name,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"证型",prop:"syndrome_type"},{default:t(()=>[a(q,{modelValue:o(d).syndrome_type,"onUpdate:modelValue":e[15]||(e[15]=l=>o(d).syndrome_type=l),placeholder:"请选择证型",class:"w-full"},{default:t(()=>[(u(!0),f(V,null,v(o($),l=>(u(),c(E,{key:l.value,label:l.name,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"糖尿病期数",prop:"diabetes_type"},{default:t(()=>[a(q,{modelValue:o(d).diabetes_type,"onUpdate:modelValue":e[16]||(e[16]=l=>o(d).diabetes_type=l),placeholder:"请选择糖尿病期数",class:"w-full"},{default:t(()=>[(u(!0),f(V,null,v(o(G),l=>(u(),c(E,{key:l.value,label:l.name+(l.remark?" ("+l.remark+")":""),value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"状态",prop:"status"},{default:t(()=>[a(U,{modelValue:o(d).status,"onUpdate:modelValue":e[17]||(e[17]=l=>o(d).status=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[54]||(e[54]=[s("启用",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[55]||(e[55]=[s("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"在用药物",prop:"current_medications"},{default:t(()=>[a(m,{modelValue:o(d).current_medications,"onUpdate:modelValue":e[18]||(e[18]=l=>o(d).current_medications=l),type:"textarea",rows:3,placeholder:"请填写患者当前正在使用的药物(如降压药、降糖药等),多种请换行或顿号分隔",maxlength:"2000","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_("div",He,[e[60]||(e[60]=_("div",{class:"section-title"},"主诉",-1)),a(n,{label:"发现糖尿病就患病史",prop:"diabetes_discovery_year"},{default:t(()=>[a(m,{modelValue:o(d).diabetes_discovery_year,"onUpdate:modelValue":e[19]||(e[19]=l=>o(d).diabetes_discovery_year=l),clearable:"",maxlength:"50","show-word-limit":"",placeholder:"可填数字或文字,如:5、1年、半年",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"当地医院诊断结果"},{default:t(()=>[a(k,{modelValue:o(d).local_hospital_diagnosis,"onUpdate:modelValue":e[20]||(e[20]=l=>o(d).local_hospital_diagnosis=l),class:"checkbox-group"},{default:t(()=>[a(g,{label:"糖尿病"},{default:t(()=>[...e[57]||(e[57]=[s("糖尿病",-1)])]),_:1}),a(g,{label:"高血压"},{default:t(()=>[...e[58]||(e[58]=[s("高血压",-1)])]),_:1}),a(g,{label:"糖尿病高血压"},{default:t(()=>[...e[59]||(e[59]=[s("糖尿病高血压",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"当地就诊医院名称",prop:"local_hospital_name"},{default:t(()=>[a(m,{modelValue:o(d).local_hospital_name,"onUpdate:modelValue":e[21]||(e[21]=l=>o(d).local_hospital_name=l),placeholder:"请输入当地就诊医院名称(不能填写当地、本地、互联网等关键词)"},null,8,["modelValue"])]),_:1})]),_("div",Qe,[e[61]||(e[61]=_("div",{class:"section-title"},"现病史",-1)),a(n,{label:"口腔感觉"},{default:t(()=>[a(U,{modelValue:o(d).appetite,"onUpdate:modelValue":e[22]||(e[22]=l=>o(d).appetite=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(M),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"每日饮水量"},{default:t(()=>[a(U,{modelValue:o(d).water_intake,"onUpdate:modelValue":e[23]||(e[23]=l=>o(d).water_intake=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(Y),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"近一个月体重变化"},{default:t(()=>[a(U,{modelValue:o(d).weight_change,"onUpdate:modelValue":e[24]||(e[24]=l=>o(d).weight_change=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(A),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"脂肪肝程度"},{default:t(()=>[a(U,{modelValue:o(d).fatty_liver_degree,"onUpdate:modelValue":e[25]||(e[25]=l=>o(d).fatty_liver_degree=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(Z),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"饮食情况"},{default:t(()=>[a(k,{modelValue:o(d).diet_condition,"onUpdate:modelValue":e[26]||(e[26]=l=>o(d).diet_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(T),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"肢体感觉"},{default:t(()=>[a(k,{modelValue:o(d).body_feeling,"onUpdate:modelValue":e[27]||(e[27]=l=>o(d).body_feeling=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(H),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"睡眠情况"},{default:t(()=>[a(k,{modelValue:o(d).sleep_condition,"onUpdate:modelValue":e[28]||(e[28]=l=>o(d).sleep_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(Q),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"眼睛情况"},{default:t(()=>[a(k,{modelValue:o(d).eye_condition,"onUpdate:modelValue":e[29]||(e[29]=l=>o(d).eye_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(X),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"头部感觉"},{default:t(()=>[a(k,{modelValue:o(d).head_feeling,"onUpdate:modelValue":e[30]||(e[30]=l=>o(d).head_feeling=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(J),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"出汗情况"},{default:t(()=>[a(k,{modelValue:o(d).sweat_condition,"onUpdate:modelValue":e[31]||(e[31]=l=>o(d).sweat_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(h),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"皮肤情况"},{default:t(()=>[a(k,{modelValue:o(d).skin_condition,"onUpdate:modelValue":e[32]||(e[32]=l=>o(d).skin_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(j),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"小便情况"},{default:t(()=>[a(k,{modelValue:o(d).urine_condition,"onUpdate:modelValue":e[33]||(e[33]=l=>o(d).urine_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(z),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"大便情况"},{default:t(()=>[a(k,{modelValue:o(d).stool_condition,"onUpdate:modelValue":e[34]||(e[34]=l=>o(d).stool_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(K),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"腰肾情况"},{default:t(()=>[a(k,{modelValue:o(d).kidney_condition,"onUpdate:modelValue":e[35]||(e[35]=l=>o(d).kidney_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(W),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"病情补充",prop:"symptoms"},{default:t(()=>[a(m,{modelValue:o(d).symptoms,"onUpdate:modelValue":e[36]||(e[36]=l=>o(d).symptoms=l),type:"textarea",rows:3,placeholder:"请输入症状"},null,8,["modelValue"])]),_:1})]),_("div",Xe,[e[62]||(e[62]=_("div",{class:"section-title"},"既往史",-1)),a(n,{label:""},{default:t(()=>[a(k,{modelValue:o(d).past_history,"onUpdate:modelValue":e[37]||(e[37]=l=>o(d).past_history=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(L),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_("div",Je,[e[73]||(e[73]=_("div",{class:"section-title"},"其他病史",-1)),a(n,{label:"外伤史"},{default:t(()=>[a(U,{modelValue:o(d).trauma_history,"onUpdate:modelValue":e[38]||(e[38]=l=>o(d).trauma_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[63]||(e[63]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[64]||(e[64]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"手术史"},{default:t(()=>[a(U,{modelValue:o(d).surgery_history,"onUpdate:modelValue":e[39]||(e[39]=l=>o(d).surgery_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[65]||(e[65]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[66]||(e[66]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"过敏史"},{default:t(()=>[a(U,{modelValue:o(d).allergy_history,"onUpdate:modelValue":e[40]||(e[40]=l=>o(d).allergy_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[67]||(e[67]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[68]||(e[68]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"家族病史"},{default:t(()=>[a(U,{modelValue:o(d).family_history,"onUpdate:modelValue":e[41]||(e[41]=l=>o(d).family_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[69]||(e[69]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[70]||(e[70]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"妊娠哺乳史"},{default:t(()=>[a(U,{modelValue:o(d).pregnancy_history,"onUpdate:modelValue":e[42]||(e[42]=l=>o(d).pregnancy_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[71]||(e[71]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[72]||(e[72]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_("div",he,[e[74]||(e[74]=_("div",{class:"section-title"},"诊断详情",-1)),a(n,{label:"舌苔",prop:"tongue_coating"},{default:t(()=>[a(m,{modelValue:o(d).tongue_coating,"onUpdate:modelValue":e[43]||(e[43]=l=>o(d).tongue_coating=l),placeholder:"请输入舌苔情况"},null,8,["modelValue"])]),_:1}),a(n,{label:"脉象",prop:"pulse"},{default:t(()=>[a(m,{modelValue:o(d).pulse,"onUpdate:modelValue":e[44]||(e[44]=l=>o(d).pulse=l),placeholder:"请输入脉象"},null,8,["modelValue"])]),_:1}),a(n,{label:"治则",prop:"treatment_principle"},{default:t(()=>[a(m,{modelValue:o(d).treatment_principle,"onUpdate:modelValue":e[45]||(e[45]=l=>o(d).treatment_principle=l),type:"textarea",rows:3,placeholder:"请输入治则"},null,8,["modelValue"])]),_:1}),a(n,{label:"处方",prop:"prescription"},{default:t(()=>[a(m,{modelValue:o(d).prescription,"onUpdate:modelValue":e[46]||(e[46]=l=>o(d).prescription=l),type:"textarea",rows:3,placeholder:"请输入处方"},null,8,["modelValue"])]),_:1}),a(n,{label:"医嘱",prop:"doctor_advice"},{default:t(()=>[a(m,{modelValue:o(d).doctor_advice,"onUpdate:modelValue":e[47]||(e[47]=l=>o(d).doctor_advice=l),type:"textarea",rows:3,placeholder:"请输入医嘱"},null,8,["modelValue"])]),_:1}),a(n,{label:"备注",prop:"remark"},{default:t(()=>[a(m,{modelValue:o(d).remark,"onUpdate:modelValue":e[48]||(e[48]=l=>o(d).remark=l),type:"textarea",rows:2,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})])]),_:1},8,["model"])]),_("div",je,[a(x,{onClick:ee,class:"btn-cancel"},{default:t(()=>[...e[75]||(e[75]=[s("取消",-1)])]),_:1}),a(x,{type:"primary",onClick:ie,loading:o(S),class:"btn-submit"},{default:t(()=>[...e[76]||(e[76]=[s(" 保存 ",-1)])]),_:1},8,["loading"])])])}}}),Gl=De(ze,[["__scopeId","data-v-6538749f"]]);export{Gl as default}; +import{d as pe,i as me,B as _e,C as fe,G as ye,I as ge,h as be,a2 as Ve,P as ve,Q as ce,af as ke,al as we,F as Ue,D as xe,E as le}from"./element-plus-DFTWCWyi.js";import{_ as ae,$ as Ee,a0 as Oe,a1 as qe,a2 as Be}from"./tcm-DzAQc_oE.js";import{m as b,i as oe,_ as De}from"./index--WnM67ZH.js";import{a as Ce,u as Ie}from"./vue-router-QlpZ4wdW.js";import{o as Se}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as Re,b as Pe,ae as Ne,ak as u,I as f,J as _,a,aN as t,O as s,F as V,ap as v,G as c,A as Fe}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,n as p}from"./@vue/reactivity-DiY1c2vO.js";import{Q as w}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const $e={class:"diagnosis-page"},Ge={class:"page-header"},Le={class:"page-title"},Me={class:"page-content"},Ye={class:"form-section"},Te={class:"form-section"},Ae={class:"form-section"},He={class:"form-section"},Qe={class:"form-section"},Xe={class:"form-section"},Je={class:"form-section"},he={class:"form-section"},je={class:"page-footer"},ze=Re({__name:"add",setup(Ke){const P=Ce(),te=Ie(),N=p(),I=p("add"),S=p(!1),de=Fe(()=>I.value==="add"?"新增诊单":"编辑诊单"),d=p({id:"",patient_id:"",patient_name:"",id_card:"",phone:"",gender:1,age:void 0,diagnosis_date:"",diagnosis_type:"",syndrome_type:"",diabetes_type:"",diabetes_discovery_year:"",local_hospital_diagnosis:[],local_hospital_name:"",marital_status:void 0,height:void 0,weight:void 0,region:"",systolic_pressure:void 0,diastolic_pressure:void 0,fasting_blood_sugar:"",appetite:"",water_intake:"",diet_condition:[],weight_change:"",body_feeling:[],sleep_condition:[],eye_condition:[],head_feeling:[],sweat_condition:[],skin_condition:[],urine_condition:[],stool_condition:[],kidney_condition:[],fatty_liver_degree:"",past_history:[],trauma_history:0,surgery_history:0,allergy_history:0,family_history:0,pregnancy_history:0,symptoms:"",tongue_coating:"",pulse:"",treatment_principle:"",prescription:"",doctor_advice:"",remark:"",current_medications:"",status:1}),ne={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],id_card:[{validator:(r,e,i)=>{if(e&&!/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e)){i(new Error("身份证号格式不正确"));return}i()},trigger:"blur"}],phone:[{required:!0,validator:(r,e,i)=>{if(!e){i(new Error("请输入手机号"));return}if(!/^1[3-9]\d{9}$/.test(e)){i(new Error("手机号格式不正确"));return}i()},trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],age:[{required:!0,message:"请输入年龄",trigger:"blur"}],diagnosis_type:[{required:!0,message:"请选择诊断类型",trigger:"change"}],syndrome_type:[{required:!0,message:"请选择证型",trigger:"change"}],diabetes_type:[{required:!0,message:"请选择糖尿病期数",trigger:"change"}],diabetes_discovery_year:[{max:50,message:"最多50个字符",trigger:"blur"}]},F=p([]),$=p([]),G=p([]),L=p([]),M=p([]),Y=p([]),T=p([]),A=p([]),H=p([]),Q=p([]),X=p([]),J=p([]),h=p([]),j=p([]),z=p([]),K=p([]),W=p([]),Z=p([]),ue=async()=>{try{const[r,e,i,x,m,n,y,U,O,D,E,q,g,k,B,C,l,R]=await Promise.all([b({type:"diagnosis_type"}),b({type:"syndrome_type"}),b({type:"diabetes_type"}),b({type:"past_history"}),b({type:"appetite"}),b({type:"water_intake"}),b({type:"diet_condition"}),b({type:"weight_change"}),b({type:"body_feeling"}),b({type:"sleep_condition"}),b({type:"eye_condition"}),b({type:"head_feeling"}),b({type:"sweat_condition"}),b({type:"skin_condition"}),b({type:"urine_condition"}),b({type:"stool_condition"}),b({type:"kidney_condition"}),b({type:"fatty_liver_degree"})]);F.value=(r==null?void 0:r.diagnosis_type)||[],$.value=(e==null?void 0:e.syndrome_type)||[],G.value=(i==null?void 0:i.diabetes_type)||[],L.value=(x==null?void 0:x.past_history)||[],M.value=(m==null?void 0:m.appetite)||[],Y.value=(n==null?void 0:n.water_intake)||[],T.value=(y==null?void 0:y.diet_condition)||[],A.value=(U==null?void 0:U.weight_change)||[],H.value=(O==null?void 0:O.body_feeling)||[],Q.value=(D==null?void 0:D.sleep_condition)||[],X.value=(E==null?void 0:E.eye_condition)||[],J.value=(q==null?void 0:q.head_feeling)||[],h.value=(g==null?void 0:g.sweat_condition)||[],j.value=(k==null?void 0:k.skin_condition)||[],z.value=(B==null?void 0:B.urine_condition)||[],K.value=(C==null?void 0:C.stool_condition)||[],W.value=(l==null?void 0:l.kidney_condition)||[],Z.value=(R==null?void 0:R.fatty_liver_degree)||[]}catch(r){console.error("获取字典数据失败:",r)}},se=async()=>{if(!(!d.value.phone||!/^1[3-9]\d{9}$/.test(d.value.phone)))try{const r=await Ee({phone:d.value.phone,id:d.value.id||""});r.exists&&le.warning(r.message)}catch(r){console.error("检查手机号失败:",r)}},re=async()=>{if(!(!d.value.id_card||!/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(d.value.id_card)))try{const r=await Oe({id_card:d.value.id_card,id:d.value.id||""});r.exists&&le.warning(r.message)}catch(r){console.error("检查身份证号失败:",r)}},ie=async()=>{var r;await((r=N.value)==null?void 0:r.validate()),S.value=!0;try{if(I.value==="add"){const e=await qe(d.value);if(oe.msgSuccess("新增成功"),e&&e.id){I.value="edit",d.value.id=e.id;try{const i=await ae({id:e.id});d.value.patient_id=i.patient_id}catch(i){console.error("获取详情失败:",i)}P.replace({query:{id:e.id}})}}else await Be(d.value),oe.msgSuccess("编辑成功")}catch(e){console.error("提交失败:",e)}finally{S.value=!1}},ee=()=>{P.back()};return Pe(async()=>{await ue(),setTimeout(()=>{const e=document.querySelector(".el-aside");e&&(e.style.display="none");const i=document.querySelector(".el-main");i&&(i.style.width="100%"(i).style.marginLeft="0");const x=document.querySelector(".el-container");x&&(x.style.width="100%")},100);const r=te.query.id;if(r){I.value="edit";const e=await ae({id:Number(r)});d.value=e}}),Ne(()=>{const r=document.querySelector(".el-aside");r&&(r.style.display="");const e=document.querySelector(".el-main");e&&(e.style.width=""(e).style.marginLeft="");const i=document.querySelector(".el-container");i&&(i.style.width="")}),(r,e)=>{const i=pe,x=me,m=fe,n=_e,y=ge,U=ye,O=be,D=Ve,E=ce,q=ve,g=we,k=ke,B=Ue,C=xe;return u(),f("div",$e,[_("div",Ge,[a(x,{link:"",onClick:ee,class:"back-btn"},{default:t(()=>[a(i,null,{default:t(()=>[a(o(Se))]),_:1}),e[49]||(e[49]=s(" 返回 ",-1))]),_:1}),_("h1",Le,w(o(de)),1)]),_("div",Me,[a(C,{ref_key:"formRef",ref:N,model:o(d),rules:ne,"label-width":"auto",class:"diagnosis-form"},{default:t(()=>[_("div",Ye,[e[52]||(e[52]=_("div",{class:"section-title"},"基本信息",-1)),a(n,{label:"患者ID"},{default:t(()=>[a(m,{modelValue:o(d).patient_id,"onUpdate:modelValue":e[0]||(e[0]=l=>o(d).patient_id=l),disabled:"",placeholder:"系统自动生成"},null,8,["modelValue"])]),_:1}),a(n,{label:"患者姓名",prop:"patient_name"},{default:t(()=>[a(m,{modelValue:o(d).patient_name,"onUpdate:modelValue":e[1]||(e[1]=l=>o(d).patient_name=l),placeholder:"请输入患者姓名"},null,8,["modelValue"])]),_:1}),a(n,{label:"身份证号",prop:"id_card"},{default:t(()=>[a(m,{modelValue:o(d).id_card,"onUpdate:modelValue":e[2]||(e[2]=l=>o(d).id_card=l),placeholder:"请输入身份证号",maxlength:"18",onBlur:re},null,8,["modelValue"])]),_:1}),a(n,{label:"手机号",prop:"phone"},{default:t(()=>[a(m,{modelValue:o(d).phone,"onUpdate:modelValue":e[3]||(e[3]=l=>o(d).phone=l),placeholder:"请输入手机号",maxlength:"11",onBlur:se},null,8,["modelValue"])]),_:1}),a(n,{label:"性别",prop:"gender"},{default:t(()=>[a(U,{modelValue:o(d).gender,"onUpdate:modelValue":e[4]||(e[4]=l=>o(d).gender=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[50]||(e[50]=[s("男",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[51]||(e[51]=[s("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"年龄",prop:"age"},{default:t(()=>[a(O,{modelValue:o(d).age,"onUpdate:modelValue":e[5]||(e[5]=l=>o(d).age=l),min:0,max:150,placeholder:"请输入年龄",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"诊断日期",prop:"diagnosis_date"},{default:t(()=>[a(D,{modelValue:o(d).diagnosis_date,"onUpdate:modelValue":e[6]||(e[6]=l=>o(d).diagnosis_date=l),type:"date",placeholder:"请选择诊断日期","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1})]),_("div",Te,[e[53]||(e[53]=_("div",{class:"section-title"},"生命体征",-1)),a(n,{label:"婚姻状态",prop:"marital_status"},{default:t(()=>[a(q,{modelValue:o(d).marital_status,"onUpdate:modelValue":e[7]||(e[7]=l=>o(d).marital_status=l),placeholder:"请选择婚姻状态",class:"w-full"},{default:t(()=>[a(E,{label:"未婚",value:0}),a(E,{label:"已婚",value:1}),a(E,{label:"离异",value:2})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"身高(cm)",prop:"height"},{default:t(()=>[a(O,{modelValue:o(d).height,"onUpdate:modelValue":e[8]||(e[8]=l=>o(d).height=l),min:0,max:300,placeholder:"请输入身高",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"体重(kg)",prop:"weight"},{default:t(()=>[a(O,{modelValue:o(d).weight,"onUpdate:modelValue":e[9]||(e[9]=l=>o(d).weight=l),min:0,max:500,step:.1,placeholder:"请输入体重",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"地区",prop:"region"},{default:t(()=>[a(m,{modelValue:o(d).region,"onUpdate:modelValue":e[10]||(e[10]=l=>o(d).region=l),placeholder:"请输入地区"},null,8,["modelValue"])]),_:1}),a(n,{label:"收缩压(mmHg)",prop:"systolic_pressure"},{default:t(()=>[a(O,{modelValue:o(d).systolic_pressure,"onUpdate:modelValue":e[11]||(e[11]=l=>o(d).systolic_pressure=l),min:0,max:250,placeholder:"请输入收缩压",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"舒张压(mmHg)",prop:"diastolic_pressure"},{default:t(()=>[a(O,{modelValue:o(d).diastolic_pressure,"onUpdate:modelValue":e[12]||(e[12]=l=>o(d).diastolic_pressure=l),min:0,max:150,placeholder:"请输入舒张压",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"空腹血糖(mmol/L)",prop:"fasting_blood_sugar"},{default:t(()=>[a(m,{modelValue:o(d).fasting_blood_sugar,"onUpdate:modelValue":e[13]||(e[13]=l=>o(d).fasting_blood_sugar=l),placeholder:"请输入空腹血糖,如:8.5 或 8-9",maxlength:"20",class:"w-full"},null,8,["modelValue"])]),_:1})]),_("div",Ae,[e[56]||(e[56]=_("div",{class:"section-title"},"诊断信息",-1)),a(n,{label:"诊断类型",prop:"diagnosis_type"},{default:t(()=>[a(q,{modelValue:o(d).diagnosis_type,"onUpdate:modelValue":e[14]||(e[14]=l=>o(d).diagnosis_type=l),placeholder:"请选择诊断类型",class:"w-full"},{default:t(()=>[(u(!0),f(V,null,v(o(F),l=>(u(),c(E,{key:l.value,label:l.name,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"证型",prop:"syndrome_type"},{default:t(()=>[a(q,{modelValue:o(d).syndrome_type,"onUpdate:modelValue":e[15]||(e[15]=l=>o(d).syndrome_type=l),placeholder:"请选择证型",class:"w-full"},{default:t(()=>[(u(!0),f(V,null,v(o($),l=>(u(),c(E,{key:l.value,label:l.name,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"糖尿病期数",prop:"diabetes_type"},{default:t(()=>[a(q,{modelValue:o(d).diabetes_type,"onUpdate:modelValue":e[16]||(e[16]=l=>o(d).diabetes_type=l),placeholder:"请选择糖尿病期数",class:"w-full"},{default:t(()=>[(u(!0),f(V,null,v(o(G),l=>(u(),c(E,{key:l.value,label:l.name+(l.remark?" ("+l.remark+")":""),value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"状态",prop:"status"},{default:t(()=>[a(U,{modelValue:o(d).status,"onUpdate:modelValue":e[17]||(e[17]=l=>o(d).status=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[54]||(e[54]=[s("启用",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[55]||(e[55]=[s("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"在用药物",prop:"current_medications"},{default:t(()=>[a(m,{modelValue:o(d).current_medications,"onUpdate:modelValue":e[18]||(e[18]=l=>o(d).current_medications=l),type:"textarea",rows:3,placeholder:"请填写患者当前正在使用的药物(如降压药、降糖药等),多种请换行或顿号分隔",maxlength:"2000","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_("div",He,[e[60]||(e[60]=_("div",{class:"section-title"},"主诉",-1)),a(n,{label:"发现糖尿病就患病史",prop:"diabetes_discovery_year"},{default:t(()=>[a(m,{modelValue:o(d).diabetes_discovery_year,"onUpdate:modelValue":e[19]||(e[19]=l=>o(d).diabetes_discovery_year=l),clearable:"",maxlength:"50","show-word-limit":"",placeholder:"可填数字或文字,如:5、1年、半年",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"当地医院诊断结果"},{default:t(()=>[a(k,{modelValue:o(d).local_hospital_diagnosis,"onUpdate:modelValue":e[20]||(e[20]=l=>o(d).local_hospital_diagnosis=l),class:"checkbox-group"},{default:t(()=>[a(g,{label:"糖尿病"},{default:t(()=>[...e[57]||(e[57]=[s("糖尿病",-1)])]),_:1}),a(g,{label:"高血压"},{default:t(()=>[...e[58]||(e[58]=[s("高血压",-1)])]),_:1}),a(g,{label:"糖尿病高血压"},{default:t(()=>[...e[59]||(e[59]=[s("糖尿病高血压",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"当地就诊医院名称",prop:"local_hospital_name"},{default:t(()=>[a(m,{modelValue:o(d).local_hospital_name,"onUpdate:modelValue":e[21]||(e[21]=l=>o(d).local_hospital_name=l),placeholder:"请输入当地就诊医院名称(不能填写当地、本地、互联网等关键词)"},null,8,["modelValue"])]),_:1})]),_("div",Qe,[e[61]||(e[61]=_("div",{class:"section-title"},"现病史",-1)),a(n,{label:"口腔感觉"},{default:t(()=>[a(U,{modelValue:o(d).appetite,"onUpdate:modelValue":e[22]||(e[22]=l=>o(d).appetite=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(M),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"每日饮水量"},{default:t(()=>[a(U,{modelValue:o(d).water_intake,"onUpdate:modelValue":e[23]||(e[23]=l=>o(d).water_intake=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(Y),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"近一个月体重变化"},{default:t(()=>[a(U,{modelValue:o(d).weight_change,"onUpdate:modelValue":e[24]||(e[24]=l=>o(d).weight_change=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(A),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"脂肪肝程度"},{default:t(()=>[a(U,{modelValue:o(d).fatty_liver_degree,"onUpdate:modelValue":e[25]||(e[25]=l=>o(d).fatty_liver_degree=l),class:"radio-group"},{default:t(()=>[(u(!0),f(V,null,v(o(Z),l=>(u(),c(B,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"饮食情况"},{default:t(()=>[a(k,{modelValue:o(d).diet_condition,"onUpdate:modelValue":e[26]||(e[26]=l=>o(d).diet_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(T),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"肢体感觉"},{default:t(()=>[a(k,{modelValue:o(d).body_feeling,"onUpdate:modelValue":e[27]||(e[27]=l=>o(d).body_feeling=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(H),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"睡眠情况"},{default:t(()=>[a(k,{modelValue:o(d).sleep_condition,"onUpdate:modelValue":e[28]||(e[28]=l=>o(d).sleep_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(Q),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"眼睛情况"},{default:t(()=>[a(k,{modelValue:o(d).eye_condition,"onUpdate:modelValue":e[29]||(e[29]=l=>o(d).eye_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(X),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"头部感觉"},{default:t(()=>[a(k,{modelValue:o(d).head_feeling,"onUpdate:modelValue":e[30]||(e[30]=l=>o(d).head_feeling=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(J),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"出汗情况"},{default:t(()=>[a(k,{modelValue:o(d).sweat_condition,"onUpdate:modelValue":e[31]||(e[31]=l=>o(d).sweat_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(h),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"皮肤情况"},{default:t(()=>[a(k,{modelValue:o(d).skin_condition,"onUpdate:modelValue":e[32]||(e[32]=l=>o(d).skin_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(j),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"小便情况"},{default:t(()=>[a(k,{modelValue:o(d).urine_condition,"onUpdate:modelValue":e[33]||(e[33]=l=>o(d).urine_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(z),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"大便情况"},{default:t(()=>[a(k,{modelValue:o(d).stool_condition,"onUpdate:modelValue":e[34]||(e[34]=l=>o(d).stool_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(K),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"腰肾情况"},{default:t(()=>[a(k,{modelValue:o(d).kidney_condition,"onUpdate:modelValue":e[35]||(e[35]=l=>o(d).kidney_condition=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(W),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"病情补充",prop:"symptoms"},{default:t(()=>[a(m,{modelValue:o(d).symptoms,"onUpdate:modelValue":e[36]||(e[36]=l=>o(d).symptoms=l),type:"textarea",rows:3,placeholder:"请输入症状"},null,8,["modelValue"])]),_:1})]),_("div",Xe,[e[62]||(e[62]=_("div",{class:"section-title"},"既往史",-1)),a(n,{label:""},{default:t(()=>[a(k,{modelValue:o(d).past_history,"onUpdate:modelValue":e[37]||(e[37]=l=>o(d).past_history=l),class:"checkbox-group"},{default:t(()=>[(u(!0),f(V,null,v(o(L),l=>(u(),c(g,{key:l.value,label:l.value},{default:t(()=>[s(w(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_("div",Je,[e[73]||(e[73]=_("div",{class:"section-title"},"其他病史",-1)),a(n,{label:"外伤史"},{default:t(()=>[a(U,{modelValue:o(d).trauma_history,"onUpdate:modelValue":e[38]||(e[38]=l=>o(d).trauma_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[63]||(e[63]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[64]||(e[64]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"手术史"},{default:t(()=>[a(U,{modelValue:o(d).surgery_history,"onUpdate:modelValue":e[39]||(e[39]=l=>o(d).surgery_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[65]||(e[65]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[66]||(e[66]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"过敏史"},{default:t(()=>[a(U,{modelValue:o(d).allergy_history,"onUpdate:modelValue":e[40]||(e[40]=l=>o(d).allergy_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[67]||(e[67]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[68]||(e[68]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"家族病史"},{default:t(()=>[a(U,{modelValue:o(d).family_history,"onUpdate:modelValue":e[41]||(e[41]=l=>o(d).family_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[69]||(e[69]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[70]||(e[70]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"妊娠哺乳史"},{default:t(()=>[a(U,{modelValue:o(d).pregnancy_history,"onUpdate:modelValue":e[42]||(e[42]=l=>o(d).pregnancy_history=l)},{default:t(()=>[a(y,{label:1},{default:t(()=>[...e[71]||(e[71]=[s("有",-1)])]),_:1}),a(y,{label:0},{default:t(()=>[...e[72]||(e[72]=[s("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_("div",he,[e[74]||(e[74]=_("div",{class:"section-title"},"诊断详情",-1)),a(n,{label:"舌苔",prop:"tongue_coating"},{default:t(()=>[a(m,{modelValue:o(d).tongue_coating,"onUpdate:modelValue":e[43]||(e[43]=l=>o(d).tongue_coating=l),placeholder:"请输入舌苔情况"},null,8,["modelValue"])]),_:1}),a(n,{label:"脉象",prop:"pulse"},{default:t(()=>[a(m,{modelValue:o(d).pulse,"onUpdate:modelValue":e[44]||(e[44]=l=>o(d).pulse=l),placeholder:"请输入脉象"},null,8,["modelValue"])]),_:1}),a(n,{label:"治则",prop:"treatment_principle"},{default:t(()=>[a(m,{modelValue:o(d).treatment_principle,"onUpdate:modelValue":e[45]||(e[45]=l=>o(d).treatment_principle=l),type:"textarea",rows:3,placeholder:"请输入治则"},null,8,["modelValue"])]),_:1}),a(n,{label:"处方",prop:"prescription"},{default:t(()=>[a(m,{modelValue:o(d).prescription,"onUpdate:modelValue":e[46]||(e[46]=l=>o(d).prescription=l),type:"textarea",rows:3,placeholder:"请输入处方"},null,8,["modelValue"])]),_:1}),a(n,{label:"医嘱",prop:"doctor_advice"},{default:t(()=>[a(m,{modelValue:o(d).doctor_advice,"onUpdate:modelValue":e[47]||(e[47]=l=>o(d).doctor_advice=l),type:"textarea",rows:3,placeholder:"请输入医嘱"},null,8,["modelValue"])]),_:1}),a(n,{label:"备注",prop:"remark"},{default:t(()=>[a(m,{modelValue:o(d).remark,"onUpdate:modelValue":e[48]||(e[48]=l=>o(d).remark=l),type:"textarea",rows:2,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})])]),_:1},8,["model"])]),_("div",je,[a(x,{onClick:ee,class:"btn-cancel"},{default:t(()=>[...e[75]||(e[75]=[s("取消",-1)])]),_:1}),a(x,{type:"primary",onClick:ie,loading:o(S),class:"btn-submit"},{default:t(()=>[...e[76]||(e[76]=[s(" 保存 ",-1)])]),_:1},8,["loading"])])])}}}),Gl=De(ze,[["__scopeId","data-v-6538749f"]]);export{Gl as default}; diff --git a/server/public/admin/assets/add-nav-iIsXnC4M.js b/server/public/admin/assets/add-nav-gQxFxSGY.js similarity index 70% rename from server/public/admin/assets/add-nav-iIsXnC4M.js rename to server/public/admin/assets/add-nav-gQxFxSGY.js index a7351009..3819f905 100644 --- a/server/public/admin/assets/add-nav-iIsXnC4M.js +++ b/server/public/admin/assets/add-nav-gQxFxSGY.js @@ -1 +1 @@ -import{_ as o}from"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js b/server/public/admin/assets/add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js similarity index 93% rename from server/public/admin/assets/add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js rename to server/public/admin/assets/add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js index df05f679..ebe7f727 100644 --- a/server/public/admin/assets/add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js +++ b/server/public/admin/assets/add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js @@ -1 +1 @@ -import{C as E,B,g as C,i as N}from"./element-plus-DFTWCWyi.js";import{_ as $}from"./index-D18gAY1e.js";import{_ as z}from"./picker-W7EVmvPL.js";import{_ as A}from"./picker-cSgp8cEl.js";import{c as D,i as r}from"./index-Nt5zMHcc.js";import{D as I}from"./vuedraggable-5bKFmC7X.js";import{f as R,ak as p,I as F,J as l,a,aN as d,G,O as J,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{y as c,a as O}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"bg-fill-light flex items-center w-full p-4 mb-4"},S={class:"upload-btn w-[60px] h-[60px]"},T={class:"ml-3 flex-1"},j={class:"flex items-center"},q={class:"flex items-center mt-[18px]"},H={class:"flex-1 flex items-center"},K={class:"drag-move cursor-move ml-auto"},oe=R({__name:"add-nav",props:{modelValue:{type:Array,default:()=>[]},max:{type:Number,default:100},min:{type:Number,default:1}},emits:["update:modelValue"],setup(_,{emit:f}){const t=_,V=f,m=L({get(){return t.modelValue},set(s){V("update:modelValue",s)}}),x=()=>{var s;((s=t.modelValue)==null?void 0:s.length){var e;if(((e=t.modelValue)==null?void 0:e.length)<=t.min)return r.msgError(`最少保留${t.min}个`);m.value.splice(s,1)};return(s,e)=>{const i=D,v=A,h=E,k=z,b=C,w=B,y=$,U=N;return p(),F("div",null,[l("div",null,[a(c(I),{class:"draggable",modelValue:c(m),"onUpdate:modelValue":e[0]||(e[0]=o=>O(m)?m.value=o:null),animation:"300",handle:".drag-move","item-key":"index"},{item:d(({element:o,index:u})=>[(p(),G(y,{class:"w-[467px]",key:u,onClose:n=>g(u)},{default:d(()=>[l("div",P,[a(v,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body",size:"60px","exclude-domain":""},{upload:d(()=>[l("div",S,[a(i,{name:"el-icon-Plus",size:20})])]),_:1},8,["modelValue","onUpdate:modelValue"]),l("div",T,[l("div",j,[e[1]||(e[1]=l("span",{class:"text-tx-regular flex-none mr-3"},"名称",-1)),a(h,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),l("div",q,[e[2]||(e[2]=l("span",{class:"text-tx-regular flex-none mr-3"},"链接",-1)),a(k,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),a(w,{label:"是否显示",class:"mt-[18px]"},{default:d(()=>[l("div",H,[a(b,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),l("div",K,[a(i,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])]),l("div",null,[a(U,{type:"primary",onClick:x},{default:d(()=>[...e[3]||(e[3]=[J("添加",-1)])]),_:1})])])}}});export{oe as _}; +import{C as E,B,g as C,i as N}from"./element-plus-DFTWCWyi.js";import{_ as $}from"./index-BtiRSS_3.js";import{_ as z}from"./picker-Btcf59sz.js";import{_ as A}from"./picker-DzCeqD7m.js";import{c as D,i as r}from"./index--WnM67ZH.js";import{D as I}from"./vuedraggable-5bKFmC7X.js";import{f as R,ak as p,I as F,J as l,a,aN as d,G,O as J,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{y as c,a as O}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"bg-fill-light flex items-center w-full p-4 mb-4"},S={class:"upload-btn w-[60px] h-[60px]"},T={class:"ml-3 flex-1"},j={class:"flex items-center"},q={class:"flex items-center mt-[18px]"},H={class:"flex-1 flex items-center"},K={class:"drag-move cursor-move ml-auto"},oe=R({__name:"add-nav",props:{modelValue:{type:Array,default:()=>[]},max:{type:Number,default:100},min:{type:Number,default:1}},emits:["update:modelValue"],setup(_,{emit:f}){const t=_,V=f,m=L({get(){return t.modelValue},set(s){V("update:modelValue",s)}}),x=()=>{var s;((s=t.modelValue)==null?void 0:s.length){var e;if(((e=t.modelValue)==null?void 0:e.length)<=t.min)return r.msgError(`最少保留${t.min}个`);m.value.splice(s,1)};return(s,e)=>{const i=D,v=A,h=E,k=z,b=C,w=B,y=$,U=N;return p(),F("div",null,[l("div",null,[a(c(I),{class:"draggable",modelValue:c(m),"onUpdate:modelValue":e[0]||(e[0]=o=>O(m)?m.value=o:null),animation:"300",handle:".drag-move","item-key":"index"},{item:d(({element:o,index:u})=>[(p(),G(y,{class:"w-[467px]",key:u,onClose:n=>g(u)},{default:d(()=>[l("div",P,[a(v,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body",size:"60px","exclude-domain":""},{upload:d(()=>[l("div",S,[a(i,{name:"el-icon-Plus",size:20})])]),_:1},8,["modelValue","onUpdate:modelValue"]),l("div",T,[l("div",j,[e[1]||(e[1]=l("span",{class:"text-tx-regular flex-none mr-3"},"名称",-1)),a(h,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),l("div",q,[e[2]||(e[2]=l("span",{class:"text-tx-regular flex-none mr-3"},"链接",-1)),a(k,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),a(w,{label:"是否显示",class:"mt-[18px]"},{default:d(()=>[l("div",H,[a(b,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),l("div",K,[a(i,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])]),l("div",null,[a(U,{type:"primary",onClick:x},{default:d(()=>[...e[3]||(e[3]=[J("添加",-1)])]),_:1})])])}}});export{oe as _}; diff --git a/server/public/admin/assets/admin-BAFPFiwc.js b/server/public/admin/assets/admin-CGNFdyXh.js similarity index 84% rename from server/public/admin/assets/admin-BAFPFiwc.js rename to server/public/admin/assets/admin-CGNFdyXh.js index 585fe4c3..c7658227 100644 --- a/server/public/admin/assets/admin-BAFPFiwc.js +++ b/server/public/admin/assets/admin-CGNFdyXh.js @@ -1 +1 @@ -import{r as n}from"./index-Nt5zMHcc.js";function e(t){return n.get({url:"/auth.admin/lists",params:t},{ignoreCancelToken:!0})}function i(t){return n.post({url:"/auth.admin/add",params:t})}function r(t){return n.post({url:"/auth.admin/edit",params:t})}function u(t){return n.post({url:"/auth.admin/delete",params:t})}function d(t){return n.get({url:"/auth.admin/detail",params:t})}export{e as a,r as b,u as c,i as d,d as e}; +import{r as n}from"./index--WnM67ZH.js";function e(t){return n.get({url:"/auth.admin/lists",params:t},{ignoreCancelToken:!0})}function i(t){return n.post({url:"/auth.admin/add",params:t})}function r(t){return n.post({url:"/auth.admin/edit",params:t})}function u(t){return n.post({url:"/auth.admin/delete",params:t})}function d(t){return n.get({url:"/auth.admin/detail",params:t})}export{e as a,r as b,u as c,i as d,d as e}; diff --git a/server/public/admin/assets/appointment-BiJAofxT.js b/server/public/admin/assets/appointment-CmXNV-jm.js similarity index 98% rename from server/public/admin/assets/appointment-BiJAofxT.js rename to server/public/admin/assets/appointment-CmXNV-jm.js index 749fad2c..8c715b86 100644 --- a/server/public/admin/assets/appointment-BiJAofxT.js +++ b/server/public/admin/assets/appointment-CmXNV-jm.js @@ -1 +1 @@ -import{K as ke,D as De,B as Se,G as Te,I as Ve,P as we,Q as Ye,C as Ce,R as Ee,i as Me,L as Ne,e as xe}from"./element-plus-DFTWCWyi.js";import{L as Ie}from"./@element-plus/icons-vue-HOEUG8sr.js";import{d as p,g as Be}from"./dayjs-DG77mNTn.js";import{g as Ae}from"./tcm-DCW3HTOw.js";import{m as Le,i as m,_ as Re}from"./index-Nt5zMHcc.js";import{a as q,r as Ue,g as We,n as $e}from"./doctor-B7qEhSpt.js";import{f as ze,ak as d,G as b,aN as s,aP as He,I as k,H as R,a as i,J as y,O as D,F as N,ap as x,A as S,n as Fe}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w,o as G}from"./@vue/shared-mAAVTE9n.js";import{y as Qe,n as v,r as O}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const qe={class:"text-gray-500"},Ge={class:"doctor-list"},Oe={key:2,class:"appointment-time-container"},Pe={class:"date-selector"},je={key:0,class:"time-slots-container"},Je={class:"time-slots-header"},Ke={class:"time-slots-grid"},Xe=["onClick"],Ze={class:"slot-time"},et={class:"drawer-footer"},tt=ze({__name:"appointment",emits:["success"],setup(at,{expose:P,emit:j}){p.extend(Be);const Y=v(!1),T=v(!1),I=v(!1),B=v(!1),U=v([]),f=v([]),E=v(""),u=v(0),c=v([]),C=v([]),V=v(!1),_=O({id:0,name:"",gender:"",age:0}),a=O({appointmentMethod:"time",appointmentType:"video",patientId:0,date:"",appointmentTime:"",remark:"",channel_source:"",channel_source_detail:""}),J=new Set(["自媒体4H","自媒体3Q","自媒体3H","自媒体2H","自媒体2Q"]);function W(e){return J.has(String(e??"").trim())}const K=S(()=>{const e=a.channel_source;if(e===""||e==null)return"";const t=C.value.find(l=>String(l.value)===String(e));return t?String(t.name??"").trim():""}),A=S(()=>W(K.value)),X=e=>{const t=C.value.find(o=>String(o.value)===String(e)),l=t?String(t.name??"").trim():"";W(l)||(a.channel_source_detail="")},Z=S(()=>{if(!u.value||c.value.length===0)return[];const e=[],t=["日","一","二","三","四","五","六"],l=p().startOf("day");for(const o of c.value){const r=p(o);if(r.isBefore(l))continue;const g=`${r.format("MM月DD日")} (${t[r.day()]})`;e.push({date:o,label:g})}return e}),ee=S(()=>{if(!a.date||f.value.length===0)return[];const e=p().format("YYYY-MM-DD");if(!(a.date===e))return f.value;const l=p();return f.value.map(o=>{const r=p(`${a.date} ${o.time}`);return r.isBefore(l)||r.isSame(l,"minute")?{...o,available:!1}:o})}),te=()=>p().format("YYYY-MM-DD"),L=S(()=>a.date===te()),ae=S(()=>V.value?L.value?"该患者今日已有挂号(已预约或已过号),不能重复预约今天,请改选其他日期。":"该患者今日已有挂号记录;可为患者预约其他日期的时段。":""),$=S(()=>V.value&&L.value),le=S(()=>!$.value&&u.value&&a.date&&a.appointmentTime&&!!a.channel_source&&(!A.value||a.channel_source_detail.trim()!=="")),ne=j,oe=async e=>{Y.value=!0,_.id=e.patient_id||e.id,_.name=e.patient_name||e.name,_.gender=e.gender_desc||e.gender,_.age=e.age||0,a.appointmentMethod="time",a.appointmentType="video",a.patientId=_.id,u.value=0,a.date="",a.appointmentTime="",a.remark="",a.channel_source="",a.channel_source_detail="",f.value=[],c.value=[],E.value="",V.value=!1,await re(),await ue(),await ie(),await se()},se=async()=>{V.value=!1;const e=_.id;if(!e)return;const t=p().format("YYYY-MM-DD");try{const l=await q({patient_id:e,start_date:t,end_date:t,page_no:1,page_size:50}),r=((l==null?void 0:l.lists)||[]).find(g=>{const h=Number(g.status);return h===1||h===4});V.value=!!r}catch(l){console.error("检查今日挂号状态失败:",l)}},ie=async()=>{try{const e=await q({patient_id:_.id,status:3,page_no:1,page_size:1});if(e!=null&&e.lists&&e.lists.length>0){const t=e.lists[0];t.appointment_date&&t.appointment_time?E.value=`${t.appointment_date} ${t.appointment_time}`:t.appointment_date&&(E.value=t.appointment_date)}}catch(e){console.error("加载就诊记录失败:",e)}},re=async()=>{try{const e=await Le({type:"channels"}),t=((e==null?void 0:e.channels)||[]).filter(l=>l.status!==0);t.sort((l,o)=>{const r=Number((o==null?void 0:o.sort)??0)-Number((l==null?void 0:l.sort)??0);return r!==0?r:Number((o==null?void 0:o.id)??0)-Number((l==null?void 0:l.id)??0)}),C.value=t.map(l=>({...l,value:(l==null?void 0:l.value)!=null&&l.value!==""?String(l.value):""}))}catch(e){console.error("加载渠道来源失败:",e),C.value=[]}},ue=async()=>{try{T.value=!0;const e=await Ae();U.value=e||[]}catch(e){console.error("加载医生列表失败:",e),m.msgError("加载医生列表失败")}finally{T.value=!1}},de=()=>{u.value=0,a.date="",a.appointmentTime="",f.value=[]},me=async()=>{a.appointmentTime="",a.date="",f.value=[],c.value=[],u.value&&await ce()},ce=async()=>{if(u.value)try{T.value=!0;const e=p().format("YYYY-MM-DD"),t=p().add(6,"day").format("YYYY-MM-DD"),l=await Ue({doctor_id:u.value,start_date:e,end_date:t,status:1});if(l!=null&&l.lists&&l.lists.length>0){if(c.value=[...new Set(l.lists.map(o=>o.date))],c.value.sort(),await Fe(),c.value.length>0){const o=p().format("YYYY-MM-DD");let r=c.value.includes(o)?o:c.value[0];V.value&&r===o&&(r=c.value.find(h=>h>o)??c.value.find(h=>h!==o)??r),z(r)}}else c.value=[],m.msgWarning("该医生暂无排班")}catch(e){console.error("加载医生排班失败:",e),m.msgError("加载医生排班失败"),c.value=[]}finally{T.value=!1}},z=e=>{a.date=e,a.appointmentTime="",u.value&&H()},H=async()=>{if(!(!u.value||!a.date))try{T.value=!0;const e=await We({doctor_id:u.value,appointment_date:a.date,period:"all"});console.log("时间段数据:",e),f.value=((e==null?void 0:e.slots)||[]).map(t=>({time:t.time,available:t.available,quota:t.available?1:0})),console.log("处理后的时间段:",f.value)}catch(e){console.error("加载时间段失败:",e),m.msgError("加载时间段失败"),f.value=[]}finally{T.value=!1}},pe=e=>{if(!e.available){m.msgWarning("该时间段不可预约");return}a.appointmentTime=e.time},ve=async()=>{if(!(!u.value||!a.date))try{B.value=!0;const e=a.appointmentTime;if(a.appointmentTime="",await H(),e){const t=f.value.find(l=>l.time===e);t&&t.available&&(a.appointmentTime=e)}m.msgSuccess("刷新成功")}catch(e){console.error("刷新失败:",e),m.msgError("刷新失败,请重试")}finally{B.value=!1}},fe=async()=>{if(!u.value){m.msgWarning("请选择医生");return}if(!a.date){m.msgWarning("请选择日期");return}if(!a.appointmentTime){m.msgWarning("请选择预约时间");return}if(!a.channel_source){m.msgWarning("请选择渠道来源");return}if(A.value&&!a.channel_source_detail.trim()){m.msgWarning("请填写自媒体渠道补充信息");return}if($.value){m.msgWarning("该患者今日已有挂号(已预约或已过号),不能重复预约今天,请改选其他日期。");return}try{I.value=!0;const e={patient_id:_.id,doctor_id:u.value,appointment_date:a.date,period:"all",appointment_time:a.appointmentTime,appointment_type:a.appointmentType,remark:a.remark,channel_source:String(a.channel_source??""),channel_source_detail:a.channel_source_detail.trim()};console.log("提交预约参数:",e),await $e(e),m.msgSuccess("预约成功"),Y.value=!1,ne("success")}catch(e){console.error("预约失败:",e),m.msgError("预约失败")}finally{I.value=!1}};return P({open:oe}),(e,t)=>{const l=ke,o=Se,r=Ve,g=Te,h=Ye,_e=we,F=Ce,Q=Ee,M=Me,ge=De,ye=xe,he=Ne;return d(),b(ye,{modelValue:Y.value,"onUpdate:modelValue":t[8]||(t[8]=n=>Y.value=n),title:"预约问诊",direction:"rtl",size:"60%","close-on-click-modal":!1,"z-index":2e3},{footer:s(()=>[y("div",et,[i(M,{onClick:t[7]||(t[7]=n=>Y.value=!1)},{default:s(()=>[...t[13]||(t[13]=[D("取消",-1)])]),_:1}),i(M,{type:"primary",onClick:fe,loading:I.value,disabled:!le.value},{default:s(()=>[...t[14]||(t[14]=[D(" 确定 ",-1)])]),_:1},8,["loading","disabled"])])]),default:s(()=>[He((d(),k("div",null,[V.value?(d(),b(l,{key:0,type:L.value?"warning":"info",closable:!1,"show-icon":"",class:"today-block-alert",title:ae.value},null,8,["type","title"])):R("",!0),i(ge,{model:a,"label-width":"100px",class:"appointment-form"},{default:s(()=>[i(o,{label:"上次就诊:"},{default:s(()=>[y("span",qe,w(E.value||"无就诊记录"),1)]),_:1}),i(o,{label:"预约方式:"},{default:s(()=>[i(g,{modelValue:a.appointmentMethod,"onUpdate:modelValue":t[0]||(t[0]=n=>a.appointmentMethod=n),onChange:de},{default:s(()=>[i(r,{value:"time"},{default:s(()=>[...t[9]||(t[9]=[D("选择时段预约有专医生",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),i(o,{label:"预约类型:"},{default:s(()=>[i(g,{modelValue:a.appointmentType,"onUpdate:modelValue":t[1]||(t[1]=n=>a.appointmentType=n)},{default:s(()=>[i(r,{value:"video"},{default:s(()=>[...t[10]||(t[10]=[D("视频问诊",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),i(o,{label:"选择患者:"},{default:s(()=>[i(g,{modelValue:a.patientId,"onUpdate:modelValue":t[2]||(t[2]=n=>a.patientId=n)},{default:s(()=>[i(r,{value:_.id},{default:s(()=>[D(w(_.name),1)]),_:1},8,["value"])]),_:1},8,["modelValue"])]),_:1}),i(o,{label:"渠道来源:",required:""},{default:s(()=>[i(_e,{modelValue:a.channel_source,"onUpdate:modelValue":t[3]||(t[3]=n=>a.channel_source=n),placeholder:"请选择渠道来源",class:"channel-source-select",onChange:X},{default:s(()=>[(d(!0),k(N,null,x(C.value,n=>(d(),b(h,{key:String(n.value),label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),A.value?(d(),b(o,{key:0,label:"自媒体补充:",required:""},{default:s(()=>[i(F,{modelValue:a.channel_source_detail,"onUpdate:modelValue":t[4]||(t[4]=n=>a.channel_source_detail=n),clearable:"",maxlength:"128","show-word-limit":"",placeholder:"请输入自媒体相关补充内容",class:"channel-source-select"},null,8,["modelValue"])]),_:1})):R("",!0),i(o,{label:"预约医生:"},{default:s(()=>[y("div",Ge,[i(g,{modelValue:u.value,"onUpdate:modelValue":t[5]||(t[5]=n=>u.value=n),onChange:me},{default:s(()=>[(d(!0),k(N,null,x(U.value,n=>(d(),b(r,{key:n.id,value:n.id,class:"doctor-radio"},{default:s(()=>[D(w(n.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])]),_:1}),i(o,{label:"预约时间:"},{default:s(()=>[u.value?u.value&&c.value.length===0?(d(),b(Q,{key:1,description:"该医生暂无排班","image-size":80})):(d(),k("div",Oe,[y("div",Pe,[(d(!0),k(N,null,x(Z.value,n=>(d(),b(M,{key:n.date,type:a.date===n.date?"primary":"",onClick:be=>z(n.date),class:"date-button"},{default:s(()=>[D(w(n.label),1)]),_:2},1032,["type","onClick"]))),128))]),a.date?(d(),k("div",je,[y("div",Je,[t[12]||(t[12]=y("span",{class:"header-title"},"可预约时段",-1)),i(M,{text:"",type:"primary",size:"small",loading:B.value,onClick:ve},{icon:s(()=>[i(Qe(Ie))]),default:s(()=>[t[11]||(t[11]=D(" 刷新 ",-1))]),_:1},8,["loading"])]),y("div",Ke,[(d(!0),k(N,null,x(ee.value,n=>(d(),k("div",{key:n.time,class:G(["time-slot-item",{available:n.available,unavailable:!n.available,selected:a.appointmentTime===n.time}]),onClick:be=>pe(n)},[y("div",Ze,w(n.time),1),y("div",{class:G(["slot-status",{"status-available":n.available}])},w(n.available?"可约":"已约"),3)],10,Xe))),128))])])):R("",!0)])):(d(),b(Q,{key:0,description:"请先选择医生","image-size":80}))]),_:1}),i(o,{label:"备注:"},{default:s(()=>[i(F,{modelValue:a.remark,"onUpdate:modelValue":t[6]||(t[6]=n=>a.remark=n),type:"textarea",rows:2,placeholder:"请输入备注信息"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])])),[[he,T.value]])]),_:1},8,["modelValue"])}}}),Ht=Re(tt,[["__scopeId","data-v-dbfff1e8"]]);export{Ht as default}; +import{K as ke,D as De,B as Se,G as Te,I as Ve,P as we,Q as Ye,C as Ce,R as Ee,i as Me,L as Ne,e as xe}from"./element-plus-DFTWCWyi.js";import{L as Ie}from"./@element-plus/icons-vue-HOEUG8sr.js";import{d as p,g as Be}from"./dayjs-DG77mNTn.js";import{g as Ae}from"./tcm-DzAQc_oE.js";import{m as Le,i as m,_ as Re}from"./index--WnM67ZH.js";import{a as q,r as Ue,g as We,n as $e}from"./doctor-BlvK2TEo.js";import{f as ze,ak as d,G as b,aN as s,aP as He,I as k,H as R,a as i,J as y,O as D,F as N,ap as x,A as S,n as Fe}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w,o as G}from"./@vue/shared-mAAVTE9n.js";import{y as Qe,n as v,r as O}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const qe={class:"text-gray-500"},Ge={class:"doctor-list"},Oe={key:2,class:"appointment-time-container"},Pe={class:"date-selector"},je={key:0,class:"time-slots-container"},Je={class:"time-slots-header"},Ke={class:"time-slots-grid"},Xe=["onClick"],Ze={class:"slot-time"},et={class:"drawer-footer"},tt=ze({__name:"appointment",emits:["success"],setup(at,{expose:P,emit:j}){p.extend(Be);const Y=v(!1),T=v(!1),I=v(!1),B=v(!1),U=v([]),f=v([]),E=v(""),u=v(0),c=v([]),C=v([]),V=v(!1),_=O({id:0,name:"",gender:"",age:0}),a=O({appointmentMethod:"time",appointmentType:"video",patientId:0,date:"",appointmentTime:"",remark:"",channel_source:"",channel_source_detail:""}),J=new Set(["自媒体4H","自媒体3Q","自媒体3H","自媒体2H","自媒体2Q"]);function W(e){return J.has(String(e??"").trim())}const K=S(()=>{const e=a.channel_source;if(e===""||e==null)return"";const t=C.value.find(l=>String(l.value)===String(e));return t?String(t.name??"").trim():""}),A=S(()=>W(K.value)),X=e=>{const t=C.value.find(o=>String(o.value)===String(e)),l=t?String(t.name??"").trim():"";W(l)||(a.channel_source_detail="")},Z=S(()=>{if(!u.value||c.value.length===0)return[];const e=[],t=["日","一","二","三","四","五","六"],l=p().startOf("day");for(const o of c.value){const r=p(o);if(r.isBefore(l))continue;const g=`${r.format("MM月DD日")} (${t[r.day()]})`;e.push({date:o,label:g})}return e}),ee=S(()=>{if(!a.date||f.value.length===0)return[];const e=p().format("YYYY-MM-DD");if(!(a.date===e))return f.value;const l=p();return f.value.map(o=>{const r=p(`${a.date} ${o.time}`);return r.isBefore(l)||r.isSame(l,"minute")?{...o,available:!1}:o})}),te=()=>p().format("YYYY-MM-DD"),L=S(()=>a.date===te()),ae=S(()=>V.value?L.value?"该患者今日已有挂号(已预约或已过号),不能重复预约今天,请改选其他日期。":"该患者今日已有挂号记录;可为患者预约其他日期的时段。":""),$=S(()=>V.value&&L.value),le=S(()=>!$.value&&u.value&&a.date&&a.appointmentTime&&!!a.channel_source&&(!A.value||a.channel_source_detail.trim()!=="")),ne=j,oe=async e=>{Y.value=!0,_.id=e.patient_id||e.id,_.name=e.patient_name||e.name,_.gender=e.gender_desc||e.gender,_.age=e.age||0,a.appointmentMethod="time",a.appointmentType="video",a.patientId=_.id,u.value=0,a.date="",a.appointmentTime="",a.remark="",a.channel_source="",a.channel_source_detail="",f.value=[],c.value=[],E.value="",V.value=!1,await re(),await ue(),await ie(),await se()},se=async()=>{V.value=!1;const e=_.id;if(!e)return;const t=p().format("YYYY-MM-DD");try{const l=await q({patient_id:e,start_date:t,end_date:t,page_no:1,page_size:50}),r=((l==null?void 0:l.lists)||[]).find(g=>{const h=Number(g.status);return h===1||h===4});V.value=!!r}catch(l){console.error("检查今日挂号状态失败:",l)}},ie=async()=>{try{const e=await q({patient_id:_.id,status:3,page_no:1,page_size:1});if(e!=null&&e.lists&&e.lists.length>0){const t=e.lists[0];t.appointment_date&&t.appointment_time?E.value=`${t.appointment_date} ${t.appointment_time}`:t.appointment_date&&(E.value=t.appointment_date)}}catch(e){console.error("加载就诊记录失败:",e)}},re=async()=>{try{const e=await Le({type:"channels"}),t=((e==null?void 0:e.channels)||[]).filter(l=>l.status!==0);t.sort((l,o)=>{const r=Number((o==null?void 0:o.sort)??0)-Number((l==null?void 0:l.sort)??0);return r!==0?r:Number((o==null?void 0:o.id)??0)-Number((l==null?void 0:l.id)??0)}),C.value=t.map(l=>({...l,value:(l==null?void 0:l.value)!=null&&l.value!==""?String(l.value):""}))}catch(e){console.error("加载渠道来源失败:",e),C.value=[]}},ue=async()=>{try{T.value=!0;const e=await Ae();U.value=e||[]}catch(e){console.error("加载医生列表失败:",e),m.msgError("加载医生列表失败")}finally{T.value=!1}},de=()=>{u.value=0,a.date="",a.appointmentTime="",f.value=[]},me=async()=>{a.appointmentTime="",a.date="",f.value=[],c.value=[],u.value&&await ce()},ce=async()=>{if(u.value)try{T.value=!0;const e=p().format("YYYY-MM-DD"),t=p().add(6,"day").format("YYYY-MM-DD"),l=await Ue({doctor_id:u.value,start_date:e,end_date:t,status:1});if(l!=null&&l.lists&&l.lists.length>0){if(c.value=[...new Set(l.lists.map(o=>o.date))],c.value.sort(),await Fe(),c.value.length>0){const o=p().format("YYYY-MM-DD");let r=c.value.includes(o)?o:c.value[0];V.value&&r===o&&(r=c.value.find(h=>h>o)??c.value.find(h=>h!==o)??r),z(r)}}else c.value=[],m.msgWarning("该医生暂无排班")}catch(e){console.error("加载医生排班失败:",e),m.msgError("加载医生排班失败"),c.value=[]}finally{T.value=!1}},z=e=>{a.date=e,a.appointmentTime="",u.value&&H()},H=async()=>{if(!(!u.value||!a.date))try{T.value=!0;const e=await We({doctor_id:u.value,appointment_date:a.date,period:"all"});console.log("时间段数据:",e),f.value=((e==null?void 0:e.slots)||[]).map(t=>({time:t.time,available:t.available,quota:t.available?1:0})),console.log("处理后的时间段:",f.value)}catch(e){console.error("加载时间段失败:",e),m.msgError("加载时间段失败"),f.value=[]}finally{T.value=!1}},pe=e=>{if(!e.available){m.msgWarning("该时间段不可预约");return}a.appointmentTime=e.time},ve=async()=>{if(!(!u.value||!a.date))try{B.value=!0;const e=a.appointmentTime;if(a.appointmentTime="",await H(),e){const t=f.value.find(l=>l.time===e);t&&t.available&&(a.appointmentTime=e)}m.msgSuccess("刷新成功")}catch(e){console.error("刷新失败:",e),m.msgError("刷新失败,请重试")}finally{B.value=!1}},fe=async()=>{if(!u.value){m.msgWarning("请选择医生");return}if(!a.date){m.msgWarning("请选择日期");return}if(!a.appointmentTime){m.msgWarning("请选择预约时间");return}if(!a.channel_source){m.msgWarning("请选择渠道来源");return}if(A.value&&!a.channel_source_detail.trim()){m.msgWarning("请填写自媒体渠道补充信息");return}if($.value){m.msgWarning("该患者今日已有挂号(已预约或已过号),不能重复预约今天,请改选其他日期。");return}try{I.value=!0;const e={patient_id:_.id,doctor_id:u.value,appointment_date:a.date,period:"all",appointment_time:a.appointmentTime,appointment_type:a.appointmentType,remark:a.remark,channel_source:String(a.channel_source??""),channel_source_detail:a.channel_source_detail.trim()};console.log("提交预约参数:",e),await $e(e),m.msgSuccess("预约成功"),Y.value=!1,ne("success")}catch(e){console.error("预约失败:",e),m.msgError("预约失败")}finally{I.value=!1}};return P({open:oe}),(e,t)=>{const l=ke,o=Se,r=Ve,g=Te,h=Ye,_e=we,F=Ce,Q=Ee,M=Me,ge=De,ye=xe,he=Ne;return d(),b(ye,{modelValue:Y.value,"onUpdate:modelValue":t[8]||(t[8]=n=>Y.value=n),title:"预约问诊",direction:"rtl",size:"60%","close-on-click-modal":!1,"z-index":2e3},{footer:s(()=>[y("div",et,[i(M,{onClick:t[7]||(t[7]=n=>Y.value=!1)},{default:s(()=>[...t[13]||(t[13]=[D("取消",-1)])]),_:1}),i(M,{type:"primary",onClick:fe,loading:I.value,disabled:!le.value},{default:s(()=>[...t[14]||(t[14]=[D(" 确定 ",-1)])]),_:1},8,["loading","disabled"])])]),default:s(()=>[He((d(),k("div",null,[V.value?(d(),b(l,{key:0,type:L.value?"warning":"info",closable:!1,"show-icon":"",class:"today-block-alert",title:ae.value},null,8,["type","title"])):R("",!0),i(ge,{model:a,"label-width":"100px",class:"appointment-form"},{default:s(()=>[i(o,{label:"上次就诊:"},{default:s(()=>[y("span",qe,w(E.value||"无就诊记录"),1)]),_:1}),i(o,{label:"预约方式:"},{default:s(()=>[i(g,{modelValue:a.appointmentMethod,"onUpdate:modelValue":t[0]||(t[0]=n=>a.appointmentMethod=n),onChange:de},{default:s(()=>[i(r,{value:"time"},{default:s(()=>[...t[9]||(t[9]=[D("选择时段预约有专医生",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),i(o,{label:"预约类型:"},{default:s(()=>[i(g,{modelValue:a.appointmentType,"onUpdate:modelValue":t[1]||(t[1]=n=>a.appointmentType=n)},{default:s(()=>[i(r,{value:"video"},{default:s(()=>[...t[10]||(t[10]=[D("视频问诊",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),i(o,{label:"选择患者:"},{default:s(()=>[i(g,{modelValue:a.patientId,"onUpdate:modelValue":t[2]||(t[2]=n=>a.patientId=n)},{default:s(()=>[i(r,{value:_.id},{default:s(()=>[D(w(_.name),1)]),_:1},8,["value"])]),_:1},8,["modelValue"])]),_:1}),i(o,{label:"渠道来源:",required:""},{default:s(()=>[i(_e,{modelValue:a.channel_source,"onUpdate:modelValue":t[3]||(t[3]=n=>a.channel_source=n),placeholder:"请选择渠道来源",class:"channel-source-select",onChange:X},{default:s(()=>[(d(!0),k(N,null,x(C.value,n=>(d(),b(h,{key:String(n.value),label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),A.value?(d(),b(o,{key:0,label:"自媒体补充:",required:""},{default:s(()=>[i(F,{modelValue:a.channel_source_detail,"onUpdate:modelValue":t[4]||(t[4]=n=>a.channel_source_detail=n),clearable:"",maxlength:"128","show-word-limit":"",placeholder:"请输入自媒体相关补充内容",class:"channel-source-select"},null,8,["modelValue"])]),_:1})):R("",!0),i(o,{label:"预约医生:"},{default:s(()=>[y("div",Ge,[i(g,{modelValue:u.value,"onUpdate:modelValue":t[5]||(t[5]=n=>u.value=n),onChange:me},{default:s(()=>[(d(!0),k(N,null,x(U.value,n=>(d(),b(r,{key:n.id,value:n.id,class:"doctor-radio"},{default:s(()=>[D(w(n.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])]),_:1}),i(o,{label:"预约时间:"},{default:s(()=>[u.value?u.value&&c.value.length===0?(d(),b(Q,{key:1,description:"该医生暂无排班","image-size":80})):(d(),k("div",Oe,[y("div",Pe,[(d(!0),k(N,null,x(Z.value,n=>(d(),b(M,{key:n.date,type:a.date===n.date?"primary":"",onClick:be=>z(n.date),class:"date-button"},{default:s(()=>[D(w(n.label),1)]),_:2},1032,["type","onClick"]))),128))]),a.date?(d(),k("div",je,[y("div",Je,[t[12]||(t[12]=y("span",{class:"header-title"},"可预约时段",-1)),i(M,{text:"",type:"primary",size:"small",loading:B.value,onClick:ve},{icon:s(()=>[i(Qe(Ie))]),default:s(()=>[t[11]||(t[11]=D(" 刷新 ",-1))]),_:1},8,["loading"])]),y("div",Ke,[(d(!0),k(N,null,x(ee.value,n=>(d(),k("div",{key:n.time,class:G(["time-slot-item",{available:n.available,unavailable:!n.available,selected:a.appointmentTime===n.time}]),onClick:be=>pe(n)},[y("div",Ze,w(n.time),1),y("div",{class:G(["slot-status",{"status-available":n.available}])},w(n.available?"可约":"已约"),3)],10,Xe))),128))])])):R("",!0)])):(d(),b(Q,{key:0,description:"请先选择医生","image-size":80}))]),_:1}),i(o,{label:"备注:"},{default:s(()=>[i(F,{modelValue:a.remark,"onUpdate:modelValue":t[6]||(t[6]=n=>a.remark=n),type:"textarea",rows:2,placeholder:"请输入备注信息"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])])),[[he,T.value]])]),_:1},8,["modelValue"])}}}),Ht=Re(tt,[["__scopeId","data-v-dbfff1e8"]]);export{Ht as default}; diff --git a/server/public/admin/assets/article-nZc1fauP.js b/server/public/admin/assets/article-CrrySQF9.js similarity index 93% rename from server/public/admin/assets/article-nZc1fauP.js rename to server/public/admin/assets/article-CrrySQF9.js index c41119a3..8e3c750e 100644 --- a/server/public/admin/assets/article-nZc1fauP.js +++ b/server/public/admin/assets/article-CrrySQF9.js @@ -1 +1 @@ -import{r as e}from"./index-Nt5zMHcc.js";function a(t){return e.get({url:"/article.articleCate/lists",params:t})}function l(t){return e.get({url:"/article.articleCate/all",params:t})}function i(t){return e.post({url:"/article.articleCate/add",params:t})}function c(t){return e.post({url:"/article.articleCate/edit",params:t})}function u(t){return e.post({url:"/article.articleCate/delete",params:t})}function n(t){return e.get({url:"/article.articleCate/detail",params:t})}function s(t){return e.post({url:"/article.articleCate/updateStatus",params:t})}function o(t){return e.get({url:"/article.article/lists",params:t})}function d(t){return e.post({url:"/article.article/add",params:t})}function f(t){return e.post({url:"/article.article/edit",params:t})}function C(t){return e.post({url:"/article.article/delete",params:t})}function p(t){return e.get({url:"/article.article/detail",params:t})}function g(t){return e.post({url:"/article.article/updateStatus",params:t})}export{a,u as b,s as c,c as d,i as e,n as f,p as g,f as h,d as i,l as j,o as k,g as l,C as m}; +import{r as e}from"./index--WnM67ZH.js";function a(t){return e.get({url:"/article.articleCate/lists",params:t})}function l(t){return e.get({url:"/article.articleCate/all",params:t})}function i(t){return e.post({url:"/article.articleCate/add",params:t})}function c(t){return e.post({url:"/article.articleCate/edit",params:t})}function u(t){return e.post({url:"/article.articleCate/delete",params:t})}function n(t){return e.get({url:"/article.articleCate/detail",params:t})}function s(t){return e.post({url:"/article.articleCate/updateStatus",params:t})}function o(t){return e.get({url:"/article.article/lists",params:t})}function d(t){return e.post({url:"/article.article/add",params:t})}function f(t){return e.post({url:"/article.article/edit",params:t})}function C(t){return e.post({url:"/article.article/delete",params:t})}function p(t){return e.get({url:"/article.article/detail",params:t})}function g(t){return e.post({url:"/article.article/updateStatus",params:t})}export{a,u as b,s as c,c as d,i as e,n as f,p as g,f as h,d as i,l as j,o as k,g as l,C as m}; diff --git a/server/public/admin/assets/attr-BUt3xtc0.js b/server/public/admin/assets/attr-B4x0BxoO.js similarity index 67% rename from server/public/admin/assets/attr-BUt3xtc0.js rename to server/public/admin/assets/attr-B4x0BxoO.js index afbd46e8..d591c09f 100644 --- a/server/public/admin/assets/attr-BUt3xtc0.js +++ b/server/public/admin/assets/attr-B4x0BxoO.js @@ -1 +1 @@ -import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/attr-BMp9OJ_7.js b/server/public/admin/assets/attr-Byjux4Bs.js similarity index 73% rename from server/public/admin/assets/attr-BMp9OJ_7.js rename to server/public/admin/assets/attr-Byjux4Bs.js index 362d1f8d..98424571 100644 --- a/server/public/admin/assets/attr-BMp9OJ_7.js +++ b/server/public/admin/assets/attr-Byjux4Bs.js @@ -1 +1 @@ -import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/attr-CWjhF9MF.js b/server/public/admin/assets/attr-CE0o2vlh.js similarity index 72% rename from server/public/admin/assets/attr-CWjhF9MF.js rename to server/public/admin/assets/attr-CE0o2vlh.js index 907ecd19..df5795e1 100644 --- a/server/public/admin/assets/attr-CWjhF9MF.js +++ b/server/public/admin/assets/attr-CE0o2vlh.js @@ -1 +1 @@ -import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/attr-Di5MGlZL.js b/server/public/admin/assets/attr-CO38y5Gg.js similarity index 67% rename from server/public/admin/assets/attr-Di5MGlZL.js rename to server/public/admin/assets/attr-CO38y5Gg.js index f6f725b5..491d3102 100644 --- a/server/public/admin/assets/attr-Di5MGlZL.js +++ b/server/public/admin/assets/attr-CO38y5Gg.js @@ -1 +1 @@ -import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/attr-sqjT04Ci.js b/server/public/admin/assets/attr-CX-O-xtp.js similarity index 68% rename from server/public/admin/assets/attr-sqjT04Ci.js rename to server/public/admin/assets/attr-CX-O-xtp.js index 8e50ad90..600b4284 100644 --- a/server/public/admin/assets/attr-sqjT04Ci.js +++ b/server/public/admin/assets/attr-CX-O-xtp.js @@ -1 +1 @@ -import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-Bh0NQXfx.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";export{o as default}; +import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-CtlICasq.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";export{o as default}; diff --git a/server/public/admin/assets/attr-Ddn-kMdm.js b/server/public/admin/assets/attr-DDEaRP1C.js similarity index 68% rename from server/public/admin/assets/attr-Ddn-kMdm.js rename to server/public/admin/assets/attr-DDEaRP1C.js index d717ce54..51d536a6 100644 --- a/server/public/admin/assets/attr-Ddn-kMdm.js +++ b/server/public/admin/assets/attr-DDEaRP1C.js @@ -1 +1 @@ -import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/attr-B5zKWZg2.js b/server/public/admin/assets/attr-DTDA9wc-.js similarity index 80% rename from server/public/admin/assets/attr-B5zKWZg2.js rename to server/public/admin/assets/attr-DTDA9wc-.js index 047898cf..be0ee934 100644 --- a/server/public/admin/assets/attr-B5zKWZg2.js +++ b/server/public/admin/assets/attr-DTDA9wc-.js @@ -1 +1 @@ -import{m as b,l as c,D as V}from"./element-plus-DFTWCWyi.js";import{_ as l}from"./menu-set.vue_vue_type_script_setup_true_lang-QbiHfNG8.js";import{f as v,ak as x,I as k,J as E,a as o,aN as e,F as g,A as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as r}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const Bt=v({__name:"attr",props:{modelValue:{type:Object,default:()=>({nav:[],menu:{}})}},emits:["update:modelValue"],setup(n,{emit:s}){const u=n,d=s,m=w({get(){return u.modelValue},set(i){d("update:modelValue",i)}});return(i,t)=>{const a=c,f=b,_=V;return x(),k(g,null,[t[2]||(t[2]=E("div",{class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2"}," pc导航设置 ",-1)),o(_,{class:"mt-4","label-width":"70px"},{default:e(()=>[o(f,{"model-value":"nav"},{default:e(()=>[o(a,{label:"主导航设置",name:"nav"},{default:e(()=>[o(l,{modelValue:r(m).nav,"onUpdate:modelValue":t[0]||(t[0]=p=>r(m).nav=p)},null,8,["modelValue"])]),_:1}),o(a,{label:"菜单设置",name:"menu"},{default:e(()=>[o(l,{modelValue:r(m).menu,"onUpdate:modelValue":t[1]||(t[1]=p=>r(m).menu=p)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],64)}}});export{Bt as default}; +import{m as b,l as c,D as V}from"./element-plus-DFTWCWyi.js";import{_ as l}from"./menu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js";import{f as v,ak as x,I as k,J as E,a as o,aN as e,F as g,A as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as r}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const Bt=v({__name:"attr",props:{modelValue:{type:Object,default:()=>({nav:[],menu:{}})}},emits:["update:modelValue"],setup(n,{emit:s}){const u=n,d=s,m=w({get(){return u.modelValue},set(i){d("update:modelValue",i)}});return(i,t)=>{const a=c,f=b,_=V;return x(),k(g,null,[t[2]||(t[2]=E("div",{class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2"}," pc导航设置 ",-1)),o(_,{class:"mt-4","label-width":"70px"},{default:e(()=>[o(f,{"model-value":"nav"},{default:e(()=>[o(a,{label:"主导航设置",name:"nav"},{default:e(()=>[o(l,{modelValue:r(m).nav,"onUpdate:modelValue":t[0]||(t[0]=p=>r(m).nav=p)},null,8,["modelValue"])]),_:1}),o(a,{label:"菜单设置",name:"menu"},{default:e(()=>[o(l,{modelValue:r(m).menu,"onUpdate:modelValue":t[1]||(t[1]=p=>r(m).menu=p)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],64)}}});export{Bt as default}; diff --git a/server/public/admin/assets/attr-C9CZlLYE.js b/server/public/admin/assets/attr-LeDws8D5.js similarity index 92% rename from server/public/admin/assets/attr-C9CZlLYE.js rename to server/public/admin/assets/attr-LeDws8D5.js index 5a36e801..7ed29696 100644 --- a/server/public/admin/assets/attr-C9CZlLYE.js +++ b/server/public/admin/assets/attr-LeDws8D5.js @@ -1 +1 @@ -import{J as O,G as R,I as A,B as J,C as S,g as H,i as T,D as q}from"./element-plus-DFTWCWyi.js";import{_ as K}from"./index-D18gAY1e.js";import{c as L,i as E,_ as M}from"./index-Nt5zMHcc.js";import{_ as P}from"./picker-W7EVmvPL.js";import{_ as Q}from"./picker-cSgp8cEl.js";import{D as W}from"./vuedraggable-5bKFmC7X.js";import{k as h}from"./lodash-es-C2A-Pj28.js";import{f as X,ak as s,G as p,aN as t,a as o,J as l,O as _,H as x,I as b,F as Y,A as Z}from"./@vue/runtime-core-C6bnekPw.js";import{y as r}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const ee={class:"flex items-end"},te={key:0,class:"text-xs text-tx-secondary ml-2"},oe={key:1,class:"text-xs text-tx-secondary ml-2"},le={class:"flex-1"},ae={class:"bg-fill-light w-full p-4 mt-4"},ne={class:"flex justify-center w-[467px]"},se={class:"flex-1"},de={class:"flex-1 flex items-center"},me={class:"drag-move cursor-move ml-auto"},ie={key:0,class:"mt-4"},v=5,pe=X({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},type:{type:String,default:"mobile"}},emits:["update:content"],setup(d,{emit:C}){const g=C,f=d,u=Z({get:()=>f.content,set:m=>{g("update:content",m)}}),B=()=>{var m;if(((m=f.content.data)==null?void 0:m.length){var i;if(((i=f.content.data)==null?void 0:i.length)<=1)return E.msgError("最少保留一张图片");const e=h(f.content);e.data.splice(m,1),g("update:content",e)};return(m,e)=>{const i=A,k=R,V=O,y=Q,I=P,N=S,w=J,F=H,$=L,j=K,z=T,G=q;return s(),p(G,{"label-width":"70px"},{default:t(()=>[o(V,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[e[5]||(e[5]=l("div",{class:"flex items-end mb-4"},[l("div",{class:"text-base dark:text-[#ffffff] text-[#101010] font-medium"},"展示样式")],-1)),o(k,{modelValue:r(u).style,"onUpdate:modelValue":e[0]||(e[0]=c=>r(u).style=c)},{default:t(()=>[o(i,{value:1},{default:t(()=>[...e[3]||(e[3]=[_("常规",-1)])]),_:1}),o(i,{value:2},{default:t(()=>[...e[4]||(e[4]=[_("大屏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.style==1?(s(),p(V,{key:0,shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[e[8]||(e[8]=l("div",{class:"flex items-end mb-4"},[l("div",{class:"text-base text-[#101010] dark:text-[#ffffff] font-medium"},"背景联动")],-1)),o(k,{modelValue:r(u).bg_style,"onUpdate:modelValue":e[1]||(e[1]=c=>r(u).bg_style=c)},{default:t(()=>[o(i,{value:1},{default:t(()=>[...e[6]||(e[6]=[_("开启",-1)])]),_:1}),o(i,{value:0},{default:t(()=>[...e[7]||(e[7]=[_("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),e[9]||(e[9]=l("div",{class:"p-[15px] rounded-[8px] bg-[#f3f8ff] text-[#136bdf] mt-2"}," 开启背景联动后,需为轮播图设置背景图,轮播图切换时,背景图也跟随切换,此时该页面自身的“页面背景“设置将失效。 ",-1))]),_:1})):x("",!0),o(V,{shadow:"never",class:"!border-none flex-1 mt-2"},{default:t(()=>{var c;return[l("div",ee,[e[10]||(e[10]=l("div",{class:"text-base text-[#101010] dark:text-[#ffffff] font-medium"},"轮播图片",-1)),d.content.style==1?(s(),b("div",te," 最多添加5张,建议图片尺寸:750px*340px ")):(s(),b("div",oe," 最多添加5张,建议图片尺寸:750px*1100px "))]),l("div",le,[o(r(W),{class:"draggable",modelValue:r(u).data,"onUpdate:modelValue":e[2]||(e[2]=a=>r(u).data=a),animation:"300",handle:".drag-move","item-key":"index"},{item:t(({element:a,index:U})=>[(s(),p(j,{key:U,onClose:n=>D(U),class:"w-full"},{default:t(()=>[l("div",ae,[l("div",ne,[d.content.style==1?(s(),b(Y,{key:0},[o(y,{size:"122px",modelValue:a.image,"onUpdate:modelValue":n=>a.image=n,"upload-class":"bg-body","exclude-domain":""},{upload:t(()=>[...e[11]||(e[11]=[l("div",{class:"w-[122px] h-[122px] banner-upload-btn"}," 轮播图 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"]),d.content.style==1||d.content.bg_style==1?(s(),p(y,{key:0,class:"ml-[40px]",size:"122px",modelValue:a.bg,"onUpdate:modelValue":n=>a.bg=n,"upload-class":"bg-body","exclude-domain":""},{upload:t(()=>[...e[12]||(e[12]=[l("div",{class:"w-[122px] h-[122px] banner-upload-btn"}," 背景图 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"])):x("",!0)],64)):(s(),p(y,{key:1,width:"396px",height:"196px",modelValue:a.image,"onUpdate:modelValue":n=>a.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]))]),l("div",se,[o(w,{class:"mt-[18px]",label:"图片链接"},{default:t(()=>[d.type=="mobile"?(s(),p(I,{key:0,modelValue:a.link,"onUpdate:modelValue":n=>a.link=n},null,8,["modelValue","onUpdate:modelValue"])):x("",!0),d.type=="pc"?(s(),p(N,{key:1,placeholder:"请输入链接",modelValue:a.link.path,"onUpdate:modelValue":n=>a.link.path=n},null,8,["modelValue","onUpdate:modelValue"])):x("",!0)]),_:2},1024),o(w,{label:"是否显示",class:"mt-[18px] !mb-0"},{default:t(()=>[l("div",de,[o(F,{modelValue:a.is_show,"onUpdate:modelValue":n=>a.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),l("div",me,[o($,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])]),((c=d.content.data)==null?void 0:c.length)[...e[13]||(e[13]=[_("添加图片",-1)])]),_:1})])):x("",!0)]}),_:1})]),_:1})}}}),rt=M(pe,[["__scopeId","data-v-f10c74d9"]]);export{rt as default}; +import{J as O,G as R,I as A,B as J,C as S,g as H,i as T,D as q}from"./element-plus-DFTWCWyi.js";import{_ as K}from"./index-BtiRSS_3.js";import{c as L,i as E,_ as M}from"./index--WnM67ZH.js";import{_ as P}from"./picker-Btcf59sz.js";import{_ as Q}from"./picker-DzCeqD7m.js";import{D as W}from"./vuedraggable-5bKFmC7X.js";import{k as h}from"./lodash-es-C2A-Pj28.js";import{f as X,ak as s,G as p,aN as t,a as o,J as l,O as _,H as x,I as b,F as Y,A as Z}from"./@vue/runtime-core-C6bnekPw.js";import{y as r}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const ee={class:"flex items-end"},te={key:0,class:"text-xs text-tx-secondary ml-2"},oe={key:1,class:"text-xs text-tx-secondary ml-2"},le={class:"flex-1"},ae={class:"bg-fill-light w-full p-4 mt-4"},ne={class:"flex justify-center w-[467px]"},se={class:"flex-1"},de={class:"flex-1 flex items-center"},me={class:"drag-move cursor-move ml-auto"},ie={key:0,class:"mt-4"},v=5,pe=X({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},type:{type:String,default:"mobile"}},emits:["update:content"],setup(d,{emit:C}){const g=C,f=d,u=Z({get:()=>f.content,set:m=>{g("update:content",m)}}),B=()=>{var m;if(((m=f.content.data)==null?void 0:m.length){var i;if(((i=f.content.data)==null?void 0:i.length)<=1)return E.msgError("最少保留一张图片");const e=h(f.content);e.data.splice(m,1),g("update:content",e)};return(m,e)=>{const i=A,k=R,V=O,y=Q,I=P,N=S,w=J,F=H,$=L,j=K,z=T,G=q;return s(),p(G,{"label-width":"70px"},{default:t(()=>[o(V,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[e[5]||(e[5]=l("div",{class:"flex items-end mb-4"},[l("div",{class:"text-base dark:text-[#ffffff] text-[#101010] font-medium"},"展示样式")],-1)),o(k,{modelValue:r(u).style,"onUpdate:modelValue":e[0]||(e[0]=c=>r(u).style=c)},{default:t(()=>[o(i,{value:1},{default:t(()=>[...e[3]||(e[3]=[_("常规",-1)])]),_:1}),o(i,{value:2},{default:t(()=>[...e[4]||(e[4]=[_("大屏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.style==1?(s(),p(V,{key:0,shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[e[8]||(e[8]=l("div",{class:"flex items-end mb-4"},[l("div",{class:"text-base text-[#101010] dark:text-[#ffffff] font-medium"},"背景联动")],-1)),o(k,{modelValue:r(u).bg_style,"onUpdate:modelValue":e[1]||(e[1]=c=>r(u).bg_style=c)},{default:t(()=>[o(i,{value:1},{default:t(()=>[...e[6]||(e[6]=[_("开启",-1)])]),_:1}),o(i,{value:0},{default:t(()=>[...e[7]||(e[7]=[_("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),e[9]||(e[9]=l("div",{class:"p-[15px] rounded-[8px] bg-[#f3f8ff] text-[#136bdf] mt-2"}," 开启背景联动后,需为轮播图设置背景图,轮播图切换时,背景图也跟随切换,此时该页面自身的“页面背景“设置将失效。 ",-1))]),_:1})):x("",!0),o(V,{shadow:"never",class:"!border-none flex-1 mt-2"},{default:t(()=>{var c;return[l("div",ee,[e[10]||(e[10]=l("div",{class:"text-base text-[#101010] dark:text-[#ffffff] font-medium"},"轮播图片",-1)),d.content.style==1?(s(),b("div",te," 最多添加5张,建议图片尺寸:750px*340px ")):(s(),b("div",oe," 最多添加5张,建议图片尺寸:750px*1100px "))]),l("div",le,[o(r(W),{class:"draggable",modelValue:r(u).data,"onUpdate:modelValue":e[2]||(e[2]=a=>r(u).data=a),animation:"300",handle:".drag-move","item-key":"index"},{item:t(({element:a,index:U})=>[(s(),p(j,{key:U,onClose:n=>D(U),class:"w-full"},{default:t(()=>[l("div",ae,[l("div",ne,[d.content.style==1?(s(),b(Y,{key:0},[o(y,{size:"122px",modelValue:a.image,"onUpdate:modelValue":n=>a.image=n,"upload-class":"bg-body","exclude-domain":""},{upload:t(()=>[...e[11]||(e[11]=[l("div",{class:"w-[122px] h-[122px] banner-upload-btn"}," 轮播图 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"]),d.content.style==1||d.content.bg_style==1?(s(),p(y,{key:0,class:"ml-[40px]",size:"122px",modelValue:a.bg,"onUpdate:modelValue":n=>a.bg=n,"upload-class":"bg-body","exclude-domain":""},{upload:t(()=>[...e[12]||(e[12]=[l("div",{class:"w-[122px] h-[122px] banner-upload-btn"}," 背景图 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"])):x("",!0)],64)):(s(),p(y,{key:1,width:"396px",height:"196px",modelValue:a.image,"onUpdate:modelValue":n=>a.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]))]),l("div",se,[o(w,{class:"mt-[18px]",label:"图片链接"},{default:t(()=>[d.type=="mobile"?(s(),p(I,{key:0,modelValue:a.link,"onUpdate:modelValue":n=>a.link=n},null,8,["modelValue","onUpdate:modelValue"])):x("",!0),d.type=="pc"?(s(),p(N,{key:1,placeholder:"请输入链接",modelValue:a.link.path,"onUpdate:modelValue":n=>a.link.path=n},null,8,["modelValue","onUpdate:modelValue"])):x("",!0)]),_:2},1024),o(w,{label:"是否显示",class:"mt-[18px] !mb-0"},{default:t(()=>[l("div",de,[o(F,{modelValue:a.is_show,"onUpdate:modelValue":n=>a.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),l("div",me,[o($,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])]),((c=d.content.data)==null?void 0:c.length)[...e[13]||(e[13]=[_("添加图片",-1)])]),_:1})])):x("",!0)]}),_:1})]),_:1})}}}),rt=M(pe,[["__scopeId","data-v-f10c74d9"]]);export{rt as default}; diff --git a/server/public/admin/assets/attr-setting-BOx1YrNf.js b/server/public/admin/assets/attr-setting-BOx1YrNf.js new file mode 100644 index 00000000..1ab7d25f --- /dev/null +++ b/server/public/admin/assets/attr-setting-BOx1YrNf.js @@ -0,0 +1 @@ +import{_ as o}from"./attr-setting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-2TepIesZ.js";import"./attr-LeDws8D5.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-D3j4saYE.js";import"./decoration-img-Bn25X5JS.js";import"./attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js";import"./content-DeSOYKs_.js";import"./attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js";import"./content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js";import"./attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./content-BRFykSo7.js";import"./attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js";import"./content.vue_vue_type_script_setup_true_lang-jnpmExki.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-TNbubsqc.js";import"./decoration-BA17WVMJ.js";import"./attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-DDJw1TZH.js";import"./content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-By25GabM.js";import"./attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js";import"./content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-BLxl9Qo-.js";export{o as default}; diff --git a/server/public/admin/assets/attr-setting-lWLo6dqZ.js b/server/public/admin/assets/attr-setting-lWLo6dqZ.js deleted file mode 100644 index e35d99fe..00000000 --- a/server/public/admin/assets/attr-setting-lWLo6dqZ.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./attr-setting.vue_vue_type_script_setup_true_lang-De0qg73C.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-CHZQEiCU.js";import"./attr-C9CZlLYE.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js";import"./decoration-img-A6h02C6l.js";import"./attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js";import"./content-DSbMIogU.js";import"./attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js";import"./content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js";import"./attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./content-Bq2N97AM.js";import"./attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js";import"./content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-RKc8NsXf.js";import"./decoration-XX4ow94I.js";import"./attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-BvpTtLa-.js";import"./content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-_IxwYLuN.js";import"./attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js";import"./content.vue_vue_type_script_setup_true_lang-BPonashY.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-DPq40ncB.js";export{o as default}; diff --git a/server/public/admin/assets/attr-setting.vue_vue_type_script_setup_true_lang-De0qg73C.js b/server/public/admin/assets/attr-setting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js similarity index 94% rename from server/public/admin/assets/attr-setting.vue_vue_type_script_setup_true_lang-De0qg73C.js rename to server/public/admin/assets/attr-setting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js index df876861..e6ff290b 100644 --- a/server/public/admin/assets/attr-setting.vue_vue_type_script_setup_true_lang-De0qg73C.js +++ b/server/public/admin/assets/attr-setting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js @@ -1 +1 @@ -import{J as y,s as g}from"./element-plus-DFTWCWyi.js";import{e as b}from"./index-CHZQEiCU.js";import{f as x,ak as o,I as _,a as r,aN as c,J as h,G as i,K as w,at as k}from"./@vue/runtime-core-C6bnekPw.js";import{Q as v}from"./@vue/shared-mAAVTE9n.js";import{y as C}from"./@vue/reactivity-DiY1c2vO.js";const B={class:"pages-setting"},E={class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2 text-xl font-medium"},V=x({__name:"attr-setting",props:{widget:{type:Object,default:()=>({})},type:{type:String,default:"mobile"}},emits:["update:content"],setup(e,{emit:m}){const d=m,p=a=>{d("update:content",a)};return(a,N)=>{const f=y,u=g;return o(),_("div",B,[r(f,{shadow:"never",class:"!border-none flex"},{default:c(()=>{var t;return[h("div",E,v((t=e.widget)==null?void 0:t.title),1)]}),_:1}),r(u,{class:"w-full",style:{height:"calc(100% - 60px)"}},{default:c(()=>{var t,n,s,l;return[(o(),i(w,null,[(o(),i(k((n=C(b)[(t=e.widget)==null?void 0:t.name])==null?void 0:n.attr),{content:(s=e.widget)==null?void 0:s.content,styles:(l=e.widget)==null?void 0:l.styles,type:e.type,"onUpdate:content":p},null,40,["content","styles","type"]))],1024))]}),_:1})])}}});export{V as _}; +import{J as y,s as g}from"./element-plus-DFTWCWyi.js";import{e as b}from"./index-2TepIesZ.js";import{f as x,ak as o,I as _,a as r,aN as c,J as h,G as i,K as w,at as k}from"./@vue/runtime-core-C6bnekPw.js";import{Q as v}from"./@vue/shared-mAAVTE9n.js";import{y as C}from"./@vue/reactivity-DiY1c2vO.js";const B={class:"pages-setting"},E={class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2 text-xl font-medium"},V=x({__name:"attr-setting",props:{widget:{type:Object,default:()=>({})},type:{type:String,default:"mobile"}},emits:["update:content"],setup(e,{emit:m}){const d=m,p=a=>{d("update:content",a)};return(a,N)=>{const f=y,u=g;return o(),_("div",B,[r(f,{shadow:"never",class:"!border-none flex"},{default:c(()=>{var t;return[h("div",E,v((t=e.widget)==null?void 0:t.title),1)]}),_:1}),r(u,{class:"w-full",style:{height:"calc(100% - 60px)"}},{default:c(()=>{var t,n,s,l;return[(o(),i(w,null,[(o(),i(k((n=C(b)[(t=e.widget)==null?void 0:t.name])==null?void 0:n.attr),{content:(s=e.widget)==null?void 0:s.content,styles:(l=e.widget)==null?void 0:l.styles,type:e.type,"onUpdate:content":p},null,40,["content","styles","type"]))],1024))]}),_:1})])}}});export{V as _}; diff --git a/server/public/admin/assets/attr-DOvELnbs.js b/server/public/admin/assets/attr-so5YA3Dq.js similarity index 68% rename from server/public/admin/assets/attr-DOvELnbs.js rename to server/public/admin/assets/attr-so5YA3Dq.js index ea2bb77f..c0f261eb 100644 --- a/server/public/admin/assets/attr-DOvELnbs.js +++ b/server/public/admin/assets/attr-so5YA3Dq.js @@ -1 +1 @@ -import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js similarity index 93% rename from server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js rename to server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js index 72b2a66b..30011bdc 100644 --- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js +++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js @@ -1 +1 @@ -import{J as I,B as O,C as j,g as A,i as F,D as J}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./index-D18gAY1e.js";import{c as G,i as g}from"./index-Nt5zMHcc.js";import{_ as H}from"./picker-W7EVmvPL.js";import{_ as R}from"./picker-cSgp8cEl.js";import{D as S}from"./vuedraggable-5bKFmC7X.js";import{k as v}from"./lodash-es-C2A-Pj28.js";import{f as T,ak as _,I as h,a as t,aN as a,J as s,G as q,O as K,H as L,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as p}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"bg-fill-light flex items-center w-full p-4 mt-4"},Q={class:"ml-3 flex-1"},W={class:"flex-1 flex items-center"},X={class:"drag-move cursor-move ml-auto"},Y={key:0,class:"mt-4"},r=5,ce=T({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(u,{emit:k}){const d=k,m=u,f=M({get:()=>m.content,set:l=>{d("update:content",l)}}),b=()=>{var l;if(((l=m.content.data)==null?void 0:l.length){var c;if(((c=m.content.data)==null?void 0:c.length)<=1)return g.msgError("最少保留一张图片");const e=v(m.content);e.data.splice(l,1),d("update:content",e)};return(l,e)=>{const c=R,y=j,i=O,E=H,U=A,C=G,B=z,D=F,N=I,$=J;return _(),h("div",null,[t($,{"label-width":"70px"},{default:a(()=>[t(N,{shadow:"never",class:"!border-none flex mt-2"},{default:a(()=>{var x;return[e[2]||(e[2]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单"),s("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),t(p(S),{class:"draggable",modelValue:p(f).data,"onUpdate:modelValue":e[0]||(e[0]=o=>p(f).data=o),animation:"300",handle:".drag-move","item-key":"index"},{item:a(({element:o,index:V})=>[(_(),q(B,{key:V,onClose:n=>w(V),class:"w-[467px]"},{default:a(()=>[s("div",P,[t(c,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),s("div",Q,[t(i,{label:"图片名称"},{default:a(()=>[t(y,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(i,{class:"mt-[18px]",label:"图片链接"},{default:a(()=>[t(E,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(i,{label:"是否显示",class:"mt-[18px]"},{default:a(()=>[s("div",W,[t(U,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),s("div",X,[t(C,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"]),((x=u.content.data)==null?void 0:x.length)[...e[1]||(e[1]=[K("添加图片",-1)])]),_:1})])):L("",!0)]}),_:1})]),_:1})])}}});export{ce as _}; +import{J as I,B as O,C as j,g as A,i as F,D as J}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./index-BtiRSS_3.js";import{c as G,i as g}from"./index--WnM67ZH.js";import{_ as H}from"./picker-Btcf59sz.js";import{_ as R}from"./picker-DzCeqD7m.js";import{D as S}from"./vuedraggable-5bKFmC7X.js";import{k as v}from"./lodash-es-C2A-Pj28.js";import{f as T,ak as _,I as h,a as t,aN as a,J as s,G as q,O as K,H as L,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as p}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"bg-fill-light flex items-center w-full p-4 mt-4"},Q={class:"ml-3 flex-1"},W={class:"flex-1 flex items-center"},X={class:"drag-move cursor-move ml-auto"},Y={key:0,class:"mt-4"},r=5,ce=T({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(u,{emit:k}){const d=k,m=u,f=M({get:()=>m.content,set:l=>{d("update:content",l)}}),b=()=>{var l;if(((l=m.content.data)==null?void 0:l.length){var c;if(((c=m.content.data)==null?void 0:c.length)<=1)return g.msgError("最少保留一张图片");const e=v(m.content);e.data.splice(l,1),d("update:content",e)};return(l,e)=>{const c=R,y=j,i=O,E=H,U=A,C=G,B=z,D=F,N=I,$=J;return _(),h("div",null,[t($,{"label-width":"70px"},{default:a(()=>[t(N,{shadow:"never",class:"!border-none flex mt-2"},{default:a(()=>{var x;return[e[2]||(e[2]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单"),s("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),t(p(S),{class:"draggable",modelValue:p(f).data,"onUpdate:modelValue":e[0]||(e[0]=o=>p(f).data=o),animation:"300",handle:".drag-move","item-key":"index"},{item:a(({element:o,index:V})=>[(_(),q(B,{key:V,onClose:n=>w(V),class:"w-[467px]"},{default:a(()=>[s("div",P,[t(c,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),s("div",Q,[t(i,{label:"图片名称"},{default:a(()=>[t(y,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(i,{class:"mt-[18px]",label:"图片链接"},{default:a(()=>[t(E,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(i,{label:"是否显示",class:"mt-[18px]"},{default:a(()=>[s("div",W,[t(U,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),s("div",X,[t(C,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"]),((x=u.content.data)==null?void 0:x.length)[...e[1]||(e[1]=[K("添加图片",-1)])]),_:1})])):L("",!0)]}),_:1})]),_:1})])}}});export{ce as _}; diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js similarity index 96% rename from server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js rename to server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js index 34c9495d..838b1f56 100644 --- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js +++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js @@ -1 +1 @@ -import{J as V,B as w,C as x,D as b}from"./element-plus-DFTWCWyi.js";import{_ as g}from"./picker-cSgp8cEl.js";import{f as k,ak as E,I as U,a as e,aN as n,J as y,A as B}from"./@vue/runtime-core-C6bnekPw.js";import{y as o}from"./@vue/reactivity-DiY1c2vO.js";const j=k({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(u,{emit:r}){const p=r,i=u,l=B({get:()=>i.content,set:d=>{p("update:content",d)}});return(d,t)=>{const s=x,m=w,_=g,c=V,f=b;return E(),U("div",null,[e(f,{"label-width":"90px",size:"large","label-position":"top"},{default:n(()=>[e(c,{shadow:"never",class:"!border-none flex mt-2"},{default:n(()=>[e(m,{label:"平台名称"},{default:n(()=>[e(s,{class:"w-[400px]","show-word-limit":"",maxlength:"20",modelValue:o(l).title,"onUpdate:modelValue":t[0]||(t[0]=a=>o(l).title=a)},null,8,["modelValue"])]),_:1}),e(m,{label:"客服二维码"},{default:n(()=>[y("div",null,[e(_,{modelValue:o(l).qrcode,"onUpdate:modelValue":t[1]||(t[1]=a=>o(l).qrcode=a),"exclude-domain":""},null,8,["modelValue"])])]),_:1}),e(m,{label:"备注"},{default:n(()=>[e(s,{class:"w-[400px]","show-word-limit":"",maxlength:"20",modelValue:o(l).remark,"onUpdate:modelValue":t[2]||(t[2]=a=>o(l).remark=a)},null,8,["modelValue"])]),_:1}),e(m,{label:"联系电话"},{default:n(()=>[e(s,{class:"w-[400px]",modelValue:o(l).mobile,"onUpdate:modelValue":t[3]||(t[3]=a=>o(l).mobile=a)},null,8,["modelValue"])]),_:1}),e(m,{label:"服务时间"},{default:n(()=>[e(s,{class:"w-[400px]","show-word-limit":"",maxlength:"20",modelValue:o(l).time,"onUpdate:modelValue":t[4]||(t[4]=a=>o(l).time=a)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})])}}});export{j as _}; +import{J as V,B as w,C as x,D as b}from"./element-plus-DFTWCWyi.js";import{_ as g}from"./picker-DzCeqD7m.js";import{f as k,ak as E,I as U,a as e,aN as n,J as y,A as B}from"./@vue/runtime-core-C6bnekPw.js";import{y as o}from"./@vue/reactivity-DiY1c2vO.js";const j=k({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(u,{emit:r}){const p=r,i=u,l=B({get:()=>i.content,set:d=>{p("update:content",d)}});return(d,t)=>{const s=x,m=w,_=g,c=V,f=b;return E(),U("div",null,[e(f,{"label-width":"90px",size:"large","label-position":"top"},{default:n(()=>[e(c,{shadow:"never",class:"!border-none flex mt-2"},{default:n(()=>[e(m,{label:"平台名称"},{default:n(()=>[e(s,{class:"w-[400px]","show-word-limit":"",maxlength:"20",modelValue:o(l).title,"onUpdate:modelValue":t[0]||(t[0]=a=>o(l).title=a)},null,8,["modelValue"])]),_:1}),e(m,{label:"客服二维码"},{default:n(()=>[y("div",null,[e(_,{modelValue:o(l).qrcode,"onUpdate:modelValue":t[1]||(t[1]=a=>o(l).qrcode=a),"exclude-domain":""},null,8,["modelValue"])])]),_:1}),e(m,{label:"备注"},{default:n(()=>[e(s,{class:"w-[400px]","show-word-limit":"",maxlength:"20",modelValue:o(l).remark,"onUpdate:modelValue":t[2]||(t[2]=a=>o(l).remark=a)},null,8,["modelValue"])]),_:1}),e(m,{label:"联系电话"},{default:n(()=>[e(s,{class:"w-[400px]",modelValue:o(l).mobile,"onUpdate:modelValue":t[3]||(t[3]=a=>o(l).mobile=a)},null,8,["modelValue"])]),_:1}),e(m,{label:"服务时间"},{default:n(()=>[e(s,{class:"w-[400px]","show-word-limit":"",maxlength:"20",modelValue:o(l).time,"onUpdate:modelValue":t[4]||(t[4]=a=>o(l).time=a)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})])}}});export{j as _}; diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js similarity index 95% rename from server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js rename to server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js index 6fdaaa62..9b2e8f8a 100644 --- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js +++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js @@ -1 +1 @@ -import{J as E,B as C,G as F,I as N,C as B,D as z}from"./element-plus-DFTWCWyi.js";import{_ as G}from"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import{_ as I}from"./picker-cSgp8cEl.js";import{f as O,ak as r,G as s,aN as t,a as l,O as p,H as i,J as y,A as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as a}from"./@vue/reactivity-DiY1c2vO.js";const T=O({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(m,{emit:g}){const b=g,x=m,o=j({get:()=>x.content,set:_=>{b("update:content",_)}});return(_,e)=>{const u=N,f=F,d=C,k=B,V=I,v=G,U=E,w=z;return r(),s(w,{ref:"form","label-width":"80px",size:"large"},{default:t(()=>[l(U,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l(d,{label:"页面标题"},{default:t(()=>[l(f,{modelValue:a(o).title_type,"onUpdate:modelValue":e[0]||(e[0]=n=>a(o).title_type=n)},{default:t(()=>[l(u,{value:"1"},{default:t(()=>[...e[7]||(e[7]=[p("文字",-1)])]),_:1}),l(u,{value:"2"},{default:t(()=>[...e[8]||(e[8]=[p("图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),m.content.title_type==1?(r(),s(d,{key:0},{default:t(()=>[l(k,{modelValue:a(o).title,"onUpdate:modelValue":e[1]||(e[1]=n=>a(o).title=n),maxlength:"8","show-word-limit":"",class:"w-[300px]",placeholder:"请输入页面标题"},null,8,["modelValue"])]),_:1})):i("",!0),m.content.title_type==2?(r(),s(d,{key:1},{default:t(()=>[l(V,{modelValue:a(o).title_img,"onUpdate:modelValue":e[2]||(e[2]=n=>a(o).title_img=n),limit:1,size:"100px"},null,8,["modelValue"]),e[9]||(e[9]=y("div",{class:"form-tips"},"建议图片尺寸:300px*40px",-1))]),_:1})):i("",!0),m.content.title_type==1?(r(),s(d,{key:2,label:"文字颜色"},{default:t(()=>[l(f,{modelValue:a(o).text_color,"onUpdate:modelValue":e[3]||(e[3]=n=>a(o).text_color=n)},{default:t(()=>[l(u,{value:"1"},{default:t(()=>[...e[10]||(e[10]=[p("白色",-1)])]),_:1}),l(u,{value:"2"},{default:t(()=>[...e[11]||(e[11]=[p("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(d,{label:"页面背景"},{default:t(()=>[l(f,{modelValue:a(o).bg_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(o).bg_type=n)},{default:t(()=>[l(u,{value:"1"},{default:t(()=>[...e[12]||(e[12]=[p("背景颜色",-1)])]),_:1}),l(u,{value:"2"},{default:t(()=>[...e[13]||(e[13]=[p("背景图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),m.content.bg_type==1?(r(),s(d,{key:3},{default:t(()=>[l(v,{modelValue:a(o).bg_color,"onUpdate:modelValue":e[5]||(e[5]=n=>a(o).bg_color=n),"reset-color":"#F5F5F5"},null,8,["modelValue"])]),_:1})):i("",!0),m.content.bg_type==2?(r(),s(d,{key:4},{default:t(()=>[l(V,{modelValue:a(o).bg_image,"onUpdate:modelValue":e[6]||(e[6]=n=>a(o).bg_image=n),limit:1,size:"100px"},null,8,["modelValue"]),e[14]||(e[14]=y("div",{class:"form-tips"},"建议图片尺寸:750px*高度不限",-1))]),_:1})):i("",!0)]),_:1})]),_:1},512)}}});export{T as _}; +import{J as E,B as C,G as F,I as N,C as B,D as z}from"./element-plus-DFTWCWyi.js";import{_ as G}from"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import{_ as I}from"./picker-DzCeqD7m.js";import{f as O,ak as r,G as s,aN as t,a as l,O as p,H as i,J as y,A as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as a}from"./@vue/reactivity-DiY1c2vO.js";const T=O({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(m,{emit:g}){const b=g,x=m,o=j({get:()=>x.content,set:_=>{b("update:content",_)}});return(_,e)=>{const u=N,f=F,d=C,k=B,V=I,v=G,U=E,w=z;return r(),s(w,{ref:"form","label-width":"80px",size:"large"},{default:t(()=>[l(U,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l(d,{label:"页面标题"},{default:t(()=>[l(f,{modelValue:a(o).title_type,"onUpdate:modelValue":e[0]||(e[0]=n=>a(o).title_type=n)},{default:t(()=>[l(u,{value:"1"},{default:t(()=>[...e[7]||(e[7]=[p("文字",-1)])]),_:1}),l(u,{value:"2"},{default:t(()=>[...e[8]||(e[8]=[p("图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),m.content.title_type==1?(r(),s(d,{key:0},{default:t(()=>[l(k,{modelValue:a(o).title,"onUpdate:modelValue":e[1]||(e[1]=n=>a(o).title=n),maxlength:"8","show-word-limit":"",class:"w-[300px]",placeholder:"请输入页面标题"},null,8,["modelValue"])]),_:1})):i("",!0),m.content.title_type==2?(r(),s(d,{key:1},{default:t(()=>[l(V,{modelValue:a(o).title_img,"onUpdate:modelValue":e[2]||(e[2]=n=>a(o).title_img=n),limit:1,size:"100px"},null,8,["modelValue"]),e[9]||(e[9]=y("div",{class:"form-tips"},"建议图片尺寸:300px*40px",-1))]),_:1})):i("",!0),m.content.title_type==1?(r(),s(d,{key:2,label:"文字颜色"},{default:t(()=>[l(f,{modelValue:a(o).text_color,"onUpdate:modelValue":e[3]||(e[3]=n=>a(o).text_color=n)},{default:t(()=>[l(u,{value:"1"},{default:t(()=>[...e[10]||(e[10]=[p("白色",-1)])]),_:1}),l(u,{value:"2"},{default:t(()=>[...e[11]||(e[11]=[p("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(d,{label:"页面背景"},{default:t(()=>[l(f,{modelValue:a(o).bg_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(o).bg_type=n)},{default:t(()=>[l(u,{value:"1"},{default:t(()=>[...e[12]||(e[12]=[p("背景颜色",-1)])]),_:1}),l(u,{value:"2"},{default:t(()=>[...e[13]||(e[13]=[p("背景图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),m.content.bg_type==1?(r(),s(d,{key:3},{default:t(()=>[l(v,{modelValue:a(o).bg_color,"onUpdate:modelValue":e[5]||(e[5]=n=>a(o).bg_color=n),"reset-color":"#F5F5F5"},null,8,["modelValue"])]),_:1})):i("",!0),m.content.bg_type==2?(r(),s(d,{key:4},{default:t(()=>[l(V,{modelValue:a(o).bg_image,"onUpdate:modelValue":e[6]||(e[6]=n=>a(o).bg_image=n),limit:1,size:"100px"},null,8,["modelValue"]),e[14]||(e[14]=y("div",{class:"form-tips"},"建议图片尺寸:750px*高度不限",-1))]),_:1})):i("",!0)]),_:1})]),_:1},512)}}});export{T as _}; diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-Bh0NQXfx.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CtlICasq.js similarity index 96% rename from server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-Bh0NQXfx.js rename to server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CtlICasq.js index a01312d0..c42e8ae3 100644 --- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-Bh0NQXfx.js +++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-CtlICasq.js @@ -1 +1 @@ -import{J as P,B as T,C as j,g as H,i as L,D as M}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index-D18gAY1e.js";import{_ as R}from"./picker-W7EVmvPL.js";import{_ as q}from"./picker-cSgp8cEl.js";import{c as G,i as x}from"./index-Nt5zMHcc.js";import{_ as K}from"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import{D as W}from"./vuedraggable-5bKFmC7X.js";import{f as X,ak as V,I as v,a as e,aN as t,J as a,O as h,H as Y,F as Z,A as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as m}from"./@vue/reactivity-DiY1c2vO.js";import{o as ee,Q as y}from"./@vue/shared-mAAVTE9n.js";const le={class:"mb-[18px] max-w-[400px]"},oe={class:"bg-fill-light w-full p-4 mt-4"},te={class:"upload-btn w-[60px] h-[60px]"},ae={class:"upload-btn w-[60px] h-[60px]"},se={class:"flex-1 flex items-center"},ne={class:"drag-move cursor-move ml-auto"},de={key:0,class:"mt-4"},c=5,p=2,ge=X({__name:"attr",props:{modelValue:{type:Object,default:()=>({list:[],style:{}})}},emits:["update:modelValue"],setup(k,{emit:C}){const U=k,E=C,n=w({get(){return U.modelValue},set(s){E("update:modelValue",s)}}),$=w(()=>{var s;return((s=n.value.list)==null?void 0:s.filter(l=>l.is_show=="1"))||[]}),z=()=>{var s;((s=n.value.list)==null?void 0:s.length){var l;if(((l=n.value.list)==null?void 0:l.length)<=p)return x.msgError(`最少保留${p}个`);n.value.list.splice(s,1)},D=s=>s.relatedContext.index!=0,N=s=>{if($.value.length{const _=P,b=K,i=T,f=G,g=q,F=j,I=R,S=H,A=Q,J=L,O=M;return V(),v(Z,null,[e(_,{shadow:"never",class:"!border-none flex"},{default:t(()=>[...l[3]||(l[3]=[a("div",{class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2 text-xl font-medium"},[h(" 底部导航设置 "),a("span",{class:"form-tips ml-[10px] !mt-0"}," 至少添加2个导航,最多添加5个导航 ")],-1)])]),_:1}),e(O,{"label-width":"70px"},{default:t(()=>[e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l[4]||(l[4]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),e(i,{label:"默认颜色"},{default:t(()=>[e(b,{class:"max-w-[400px]",modelValue:m(n).style.default_color,"onUpdate:modelValue":l[0]||(l[0]=r=>m(n).style.default_color=r),"default-color":"#999999"},null,8,["modelValue"])]),_:1}),e(i,{label:"选中颜色",style:{"margin-bottom":"0"}},{default:t(()=>[e(b,{class:"max-w-[400px]",modelValue:m(n).style.selected_color,"onUpdate:modelValue":l[1]||(l[1]=r=>m(n).style.selected_color=r),"default-color":"#4173ff"},null,8,["modelValue"])]),_:1})]),_:1}),e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>{var r;return[l[7]||(l[7]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),a("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),a("div",le,[e(m(W),{class:"draggable",modelValue:m(n).list,"onUpdate:modelValue":l[2]||(l[2]=o=>m(n).list=o),animation:"300",draggable:".draggable",handle:".drag-move",move:D,"item-key":"index"},{item:t(({element:o,index:u})=>[e(A,{onClose:d=>B(u),class:ee(["max-w-[400px]",{draggable:u!=0}]),"show-close":u!==0},{default:t(()=>[a("div",oe,[e(i,{label:"导航图标"},{default:t(()=>[e(g,{modelValue:o.unselected,"onUpdate:modelValue":d=>o.unselected=d,"upload-class":"bg-body","exclude-domain":"",size:"60px"},{upload:t(()=>[a("div",te,[e(f,{name:"el-icon-Plus",size:16}),l[5]||(l[5]=a("span",{class:"text-xs leading-5"}," 未选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"]),e(g,{modelValue:o.selected,"onUpdate:modelValue":d=>o.selected=d,"exclude-domain":"","upload-class":"bg-body",size:"60px"},{upload:t(()=>[a("div",ae,[e(f,{name:"el-icon-Plus",size:16}),l[6]||(l[6]=a("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"导航名称"},{default:t(()=>[e(F,{modelValue:o.name,"onUpdate:modelValue":d=>o.name=d,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"链接地址"},{default:t(()=>[e(I,{"is-tab":!0,disabled:u===0,modelValue:o.link,"onUpdate:modelValue":d=>o.link=d},null,8,["disabled","modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"是否显示"},{default:t(()=>[a("div",se,[e(S,{disabled:u==0,modelValue:o.is_show,"onUpdate:modelValue":d=>o.is_show=d,"active-value":1,"inactive-value":0,onChange:d=>N(o)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"]),a("div",ne,[e(f,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])]),_:2},1032,["onClose","show-close","class"])]),_:1},8,["modelValue"])]),((r=m(n).list)==null?void 0:r.length){var o;return[h(" 添加导航 "+y((o=m(n).list)==null?void 0:o.length)+" / "+y(c),1)]}),_:1})])):Y("",!0)]}),_:1})]),_:1})],64)}}});export{ge as _}; +import{J as P,B as T,C as j,g as H,i as L,D as M}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index-BtiRSS_3.js";import{_ as R}from"./picker-Btcf59sz.js";import{_ as q}from"./picker-DzCeqD7m.js";import{c as G,i as x}from"./index--WnM67ZH.js";import{_ as K}from"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import{D as W}from"./vuedraggable-5bKFmC7X.js";import{f as X,ak as V,I as v,a as e,aN as t,J as a,O as h,H as Y,F as Z,A as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as m}from"./@vue/reactivity-DiY1c2vO.js";import{o as ee,Q as y}from"./@vue/shared-mAAVTE9n.js";const le={class:"mb-[18px] max-w-[400px]"},oe={class:"bg-fill-light w-full p-4 mt-4"},te={class:"upload-btn w-[60px] h-[60px]"},ae={class:"upload-btn w-[60px] h-[60px]"},se={class:"flex-1 flex items-center"},ne={class:"drag-move cursor-move ml-auto"},de={key:0,class:"mt-4"},c=5,p=2,ge=X({__name:"attr",props:{modelValue:{type:Object,default:()=>({list:[],style:{}})}},emits:["update:modelValue"],setup(k,{emit:C}){const U=k,E=C,n=w({get(){return U.modelValue},set(s){E("update:modelValue",s)}}),$=w(()=>{var s;return((s=n.value.list)==null?void 0:s.filter(l=>l.is_show=="1"))||[]}),z=()=>{var s;((s=n.value.list)==null?void 0:s.length){var l;if(((l=n.value.list)==null?void 0:l.length)<=p)return x.msgError(`最少保留${p}个`);n.value.list.splice(s,1)},D=s=>s.relatedContext.index!=0,N=s=>{if($.value.length{const _=P,b=K,i=T,f=G,g=q,F=j,I=R,S=H,A=Q,J=L,O=M;return V(),v(Z,null,[e(_,{shadow:"never",class:"!border-none flex"},{default:t(()=>[...l[3]||(l[3]=[a("div",{class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2 text-xl font-medium"},[h(" 底部导航设置 "),a("span",{class:"form-tips ml-[10px] !mt-0"}," 至少添加2个导航,最多添加5个导航 ")],-1)])]),_:1}),e(O,{"label-width":"70px"},{default:t(()=>[e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l[4]||(l[4]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),e(i,{label:"默认颜色"},{default:t(()=>[e(b,{class:"max-w-[400px]",modelValue:m(n).style.default_color,"onUpdate:modelValue":l[0]||(l[0]=r=>m(n).style.default_color=r),"default-color":"#999999"},null,8,["modelValue"])]),_:1}),e(i,{label:"选中颜色",style:{"margin-bottom":"0"}},{default:t(()=>[e(b,{class:"max-w-[400px]",modelValue:m(n).style.selected_color,"onUpdate:modelValue":l[1]||(l[1]=r=>m(n).style.selected_color=r),"default-color":"#4173ff"},null,8,["modelValue"])]),_:1})]),_:1}),e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>{var r;return[l[7]||(l[7]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),a("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),a("div",le,[e(m(W),{class:"draggable",modelValue:m(n).list,"onUpdate:modelValue":l[2]||(l[2]=o=>m(n).list=o),animation:"300",draggable:".draggable",handle:".drag-move",move:D,"item-key":"index"},{item:t(({element:o,index:u})=>[e(A,{onClose:d=>B(u),class:ee(["max-w-[400px]",{draggable:u!=0}]),"show-close":u!==0},{default:t(()=>[a("div",oe,[e(i,{label:"导航图标"},{default:t(()=>[e(g,{modelValue:o.unselected,"onUpdate:modelValue":d=>o.unselected=d,"upload-class":"bg-body","exclude-domain":"",size:"60px"},{upload:t(()=>[a("div",te,[e(f,{name:"el-icon-Plus",size:16}),l[5]||(l[5]=a("span",{class:"text-xs leading-5"}," 未选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"]),e(g,{modelValue:o.selected,"onUpdate:modelValue":d=>o.selected=d,"exclude-domain":"","upload-class":"bg-body",size:"60px"},{upload:t(()=>[a("div",ae,[e(f,{name:"el-icon-Plus",size:16}),l[6]||(l[6]=a("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"导航名称"},{default:t(()=>[e(F,{modelValue:o.name,"onUpdate:modelValue":d=>o.name=d,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"链接地址"},{default:t(()=>[e(I,{"is-tab":!0,disabled:u===0,modelValue:o.link,"onUpdate:modelValue":d=>o.link=d},null,8,["disabled","modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"是否显示"},{default:t(()=>[a("div",se,[e(S,{disabled:u==0,modelValue:o.is_show,"onUpdate:modelValue":d=>o.is_show=d,"active-value":1,"inactive-value":0,onChange:d=>N(o)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"]),a("div",ne,[e(f,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])]),_:2},1032,["onClose","show-close","class"])]),_:1},8,["modelValue"])]),((r=m(n).list)==null?void 0:r.length){var o;return[h(" 添加导航 "+y((o=m(n).list)==null?void 0:o.length)+" / "+y(c),1)]}),_:1})])):Y("",!0)]}),_:1})]),_:1})],64)}}});export{ge as _}; diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js similarity index 96% rename from server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js rename to server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js index 1336fbe0..29728fc5 100644 --- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js +++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js @@ -1 +1 @@ -import{J as b,B as y,C as E,G as w,I as B,D as C}from"./element-plus-DFTWCWyi.js";import{_ as I}from"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import{f as N,ak as k,I as O,a as t,aN as o,J as a,O as u,A as U}from"./@vue/runtime-core-C6bnekPw.js";import{y as s}from"./@vue/reactivity-DiY1c2vO.js";const g={class:"flex-1"},J=N({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(p,{emit:i}){const f=i,_=p,l=U({get:()=>_.content,set:m=>{f("update:content",m)}});return(m,e)=>{const x=E,c=y,d=b,r=B,v=w,V=C;return k(),O("div",null,[t(V,{"label-width":"70px"},{default:o(()=>[t(d,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[t(c,{label:"标题"},{default:o(()=>[t(x,{class:"w-[396px]",modelValue:s(l).title,"onUpdate:modelValue":e[0]||(e[0]=n=>s(l).title=n)},null,8,["modelValue"])]),_:1})]),_:1}),t(d,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[5]||(e[5]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),t(v,{modelValue:s(l).style,"onUpdate:modelValue":e[1]||(e[1]=n=>s(l).style=n)},{default:o(()=>[t(r,{value:1},{default:o(()=>[...e[3]||(e[3]=[u("横排",-1)])]),_:1}),t(r,{value:2},{default:o(()=>[...e[4]||(e[4]=[u("竖排",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(d,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[6]||(e[6]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"菜单"),a("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),a("div",g,[t(I,{modelValue:s(l).data,"onUpdate:modelValue":e[2]||(e[2]=n=>s(l).data=n)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{J as _}; +import{J as b,B as y,C as E,G as w,I as B,D as C}from"./element-plus-DFTWCWyi.js";import{_ as I}from"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import{f as N,ak as k,I as O,a as t,aN as o,J as a,O as u,A as U}from"./@vue/runtime-core-C6bnekPw.js";import{y as s}from"./@vue/reactivity-DiY1c2vO.js";const g={class:"flex-1"},J=N({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(p,{emit:i}){const f=i,_=p,l=U({get:()=>_.content,set:m=>{f("update:content",m)}});return(m,e)=>{const x=E,c=y,d=b,r=B,v=w,V=C;return k(),O("div",null,[t(V,{"label-width":"70px"},{default:o(()=>[t(d,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[t(c,{label:"标题"},{default:o(()=>[t(x,{class:"w-[396px]",modelValue:s(l).title,"onUpdate:modelValue":e[0]||(e[0]=n=>s(l).title=n)},null,8,["modelValue"])]),_:1})]),_:1}),t(d,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[5]||(e[5]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),t(v,{modelValue:s(l).style,"onUpdate:modelValue":e[1]||(e[1]=n=>s(l).style=n)},{default:o(()=>[t(r,{value:1},{default:o(()=>[...e[3]||(e[3]=[u("横排",-1)])]),_:1}),t(r,{value:2},{default:o(()=>[...e[4]||(e[4]=[u("竖排",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(d,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[6]||(e[6]=a("div",{class:"flex items-end mb-4"},[a("div",{class:"text-base text-[#101010] font-medium"},"菜单"),a("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),a("div",g,[t(I,{modelValue:s(l).data,"onUpdate:modelValue":e[2]||(e[2]=n=>s(l).data=n)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{J as _}; diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js similarity index 93% rename from server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js rename to server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js index 9fed6a23..a77372a1 100644 --- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js +++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js @@ -1 +1 @@ -import{J as j,B as A,C as F,g as J,i as S,D as z}from"./element-plus-DFTWCWyi.js";import{_ as G}from"./index-D18gAY1e.js";import{c as H,i as k}from"./index-Nt5zMHcc.js";import{_ as R}from"./picker-W7EVmvPL.js";import{_ as T}from"./picker-cSgp8cEl.js";import{D as q}from"./vuedraggable-5bKFmC7X.js";import{k as v}from"./lodash-es-C2A-Pj28.js";import{f as K,ak as d,I as b,a as o,aN as s,J as n,G as u,H as r,O as L,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as _}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"flex-1"},Q={class:"bg-fill-light w-full p-4 mt-4"},W={class:"flex-1"},X={class:"flex-1 flex items-center"},Y={class:"drag-move cursor-move ml-auto"},Z={key:0,class:"mt-4"},f=5,me=K({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},type:{type:String,default:"mobile"}},emits:["update:content"],setup(m,{emit:y}){const p=y,c=m,g=M({get:()=>c.content,set:a=>{p("update:content",a)}}),w=()=>{var a;if(((a=c.content.data)==null?void 0:a.length){var i;if(((i=c.content.data)==null?void 0:i.length)<=1)return k.msgError("最少保留一张图片");const e=v(c.content);e.data.splice(a,1),p("update:content",e)};return(a,e)=>{const i=T,U=R,C=F,h=A,B=J,D=H,N=G,$=S,I=j,O=z;return d(),b("div",null,[o(O,{"label-width":"70px"},{default:s(()=>[o(I,{shadow:"never",class:"!border-none flex mt-2"},{default:s(()=>{var x;return[e[2]||(e[2]=n("div",{class:"flex items-end"},[n("div",{class:"text-base text-[#101010] font-medium"},"图片设置"),n("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),n("div",P,[o(_(q),{class:"draggable",modelValue:_(g).data,"onUpdate:modelValue":e[0]||(e[0]=t=>_(g).data=t),animation:"300",handle:".drag-move"},{item:s(({element:t,index:V})=>[(d(),u(N,{key:V,onClose:l=>E(V),class:"w-full"},{default:s(()=>[n("div",Q,[o(i,{width:"396px",height:"196px",modelValue:t.image,"onUpdate:modelValue":l=>t.image=l,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),n("div",W,[o(h,{class:"mt-[18px]",label:"图片链接"},{default:s(()=>[m.type=="mobile"?(d(),u(U,{key:0,modelValue:t.link,"onUpdate:modelValue":l=>t.link=l},null,8,["modelValue","onUpdate:modelValue"])):r("",!0),m.type=="pc"?(d(),u(C,{key:1,placeholder:"请输入链接",modelValue:t.link.path,"onUpdate:modelValue":l=>t.link.path=l},null,8,["modelValue","onUpdate:modelValue"])):r("",!0)]),_:2},1024),o(h,{label:"是否显示",class:"mt-[18px] !mb-0"},{default:s(()=>[n("div",X,[o(B,{modelValue:t.is_show,"onUpdate:modelValue":l=>t.is_show=l,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),n("div",Y,[o(D,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])]),((x=m.content.data)==null?void 0:x.length)[...e[1]||(e[1]=[L("添加图片",-1)])]),_:1})])):r("",!0)]}),_:1})]),_:1})])}}});export{me as _}; +import{J as j,B as A,C as F,g as J,i as S,D as z}from"./element-plus-DFTWCWyi.js";import{_ as G}from"./index-BtiRSS_3.js";import{c as H,i as k}from"./index--WnM67ZH.js";import{_ as R}from"./picker-Btcf59sz.js";import{_ as T}from"./picker-DzCeqD7m.js";import{D as q}from"./vuedraggable-5bKFmC7X.js";import{k as v}from"./lodash-es-C2A-Pj28.js";import{f as K,ak as d,I as b,a as o,aN as s,J as n,G as u,H as r,O as L,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as _}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"flex-1"},Q={class:"bg-fill-light w-full p-4 mt-4"},W={class:"flex-1"},X={class:"flex-1 flex items-center"},Y={class:"drag-move cursor-move ml-auto"},Z={key:0,class:"mt-4"},f=5,me=K({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},type:{type:String,default:"mobile"}},emits:["update:content"],setup(m,{emit:y}){const p=y,c=m,g=M({get:()=>c.content,set:a=>{p("update:content",a)}}),w=()=>{var a;if(((a=c.content.data)==null?void 0:a.length){var i;if(((i=c.content.data)==null?void 0:i.length)<=1)return k.msgError("最少保留一张图片");const e=v(c.content);e.data.splice(a,1),p("update:content",e)};return(a,e)=>{const i=T,U=R,C=F,h=A,B=J,D=H,N=G,$=S,I=j,O=z;return d(),b("div",null,[o(O,{"label-width":"70px"},{default:s(()=>[o(I,{shadow:"never",class:"!border-none flex mt-2"},{default:s(()=>{var x;return[e[2]||(e[2]=n("div",{class:"flex items-end"},[n("div",{class:"text-base text-[#101010] font-medium"},"图片设置"),n("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),n("div",P,[o(_(q),{class:"draggable",modelValue:_(g).data,"onUpdate:modelValue":e[0]||(e[0]=t=>_(g).data=t),animation:"300",handle:".drag-move"},{item:s(({element:t,index:V})=>[(d(),u(N,{key:V,onClose:l=>E(V),class:"w-full"},{default:s(()=>[n("div",Q,[o(i,{width:"396px",height:"196px",modelValue:t.image,"onUpdate:modelValue":l=>t.image=l,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),n("div",W,[o(h,{class:"mt-[18px]",label:"图片链接"},{default:s(()=>[m.type=="mobile"?(d(),u(U,{key:0,modelValue:t.link,"onUpdate:modelValue":l=>t.link=l},null,8,["modelValue","onUpdate:modelValue"])):r("",!0),m.type=="pc"?(d(),u(C,{key:1,placeholder:"请输入链接",modelValue:t.link.path,"onUpdate:modelValue":l=>t.link.path=l},null,8,["modelValue","onUpdate:modelValue"])):r("",!0)]),_:2},1024),o(h,{label:"是否显示",class:"mt-[18px] !mb-0"},{default:s(()=>[n("div",X,[o(B,{modelValue:t.is_show,"onUpdate:modelValue":l=>t.is_show=l,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),n("div",Y,[o(D,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])]),((x=m.content.data)==null?void 0:x.length)[...e[1]||(e[1]=[L("添加图片",-1)])]),_:1})])):r("",!0)]}),_:1})]),_:1})])}}});export{me as _}; diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js similarity index 97% rename from server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js rename to server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js index 66fdc228..c099c6c2 100644 --- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js +++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js @@ -1 +1 @@ -import{J as B,G as F,I as N,B as O,P as U,Q as g,D as C}from"./element-plus-DFTWCWyi.js";import{_ as I}from"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import{f as j,ak as d,I as m,a as l,aN as o,J as s,O as x,F as c,ap as v,A as D}from"./@vue/runtime-core-C6bnekPw.js";import{y as n}from"./@vue/reactivity-DiY1c2vO.js";const G={class:"flex-1 mt-4"},P=j({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(V,{emit:b}){const y=b,w=V,a=D({get:()=>w.content,set:u=>{y("update:content",u)}});return(u,e)=>{const r=N,E=F,p=g,i=U,_=O,f=B,k=C;return d(),m("div",null,[l(k,{"label-width":"70px"},{default:o(()=>[l(f,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[6]||(e[6]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),l(E,{modelValue:n(a).style,"onUpdate:modelValue":e[0]||(e[0]=t=>n(a).style=t)},{default:o(()=>[l(r,{value:1},{default:o(()=>[...e[4]||(e[4]=[x("固定显示",-1)])]),_:1}),l(r,{value:2},{default:o(()=>[...e[5]||(e[5]=[x("分页滑动",-1)])]),_:1})]),_:1},8,["modelValue"]),l(_,{label:"每行数量",class:"mt-4"},{default:o(()=>[l(i,{modelValue:n(a).per_line,"onUpdate:modelValue":e[1]||(e[1]=t=>n(a).per_line=t),style:{width:"300px"}},{default:o(()=>[(d(),m(c,null,v(5,t=>l(p,{key:t,label:t+"个",value:t},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1}),l(_,{label:"显示行数"},{default:o(()=>[l(i,{modelValue:n(a).show_line,"onUpdate:modelValue":e[2]||(e[2]=t=>n(a).show_line=t),style:{width:"300px"}},{default:o(()=>[(d(),m(c,null,v(2,t=>l(p,{key:t,label:t+"行",value:t},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(f,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[7]||(e[7]=s("div",{class:"flex items-end"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),s("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),s("div",G,[l(I,{modelValue:n(a).data,"onUpdate:modelValue":e[3]||(e[3]=t=>n(a).data=t)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{P as _}; +import{J as B,G as F,I as N,B as O,P as U,Q as g,D as C}from"./element-plus-DFTWCWyi.js";import{_ as I}from"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import{f as j,ak as d,I as m,a as l,aN as o,J as s,O as x,F as c,ap as v,A as D}from"./@vue/runtime-core-C6bnekPw.js";import{y as n}from"./@vue/reactivity-DiY1c2vO.js";const G={class:"flex-1 mt-4"},P=j({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(V,{emit:b}){const y=b,w=V,a=D({get:()=>w.content,set:u=>{y("update:content",u)}});return(u,e)=>{const r=N,E=F,p=g,i=U,_=O,f=B,k=C;return d(),m("div",null,[l(k,{"label-width":"70px"},{default:o(()=>[l(f,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[6]||(e[6]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),l(E,{modelValue:n(a).style,"onUpdate:modelValue":e[0]||(e[0]=t=>n(a).style=t)},{default:o(()=>[l(r,{value:1},{default:o(()=>[...e[4]||(e[4]=[x("固定显示",-1)])]),_:1}),l(r,{value:2},{default:o(()=>[...e[5]||(e[5]=[x("分页滑动",-1)])]),_:1})]),_:1},8,["modelValue"]),l(_,{label:"每行数量",class:"mt-4"},{default:o(()=>[l(i,{modelValue:n(a).per_line,"onUpdate:modelValue":e[1]||(e[1]=t=>n(a).per_line=t),style:{width:"300px"}},{default:o(()=>[(d(),m(c,null,v(5,t=>l(p,{key:t,label:t+"个",value:t},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1}),l(_,{label:"显示行数"},{default:o(()=>[l(i,{modelValue:n(a).show_line,"onUpdate:modelValue":e[2]||(e[2]=t=>n(a).show_line=t),style:{width:"300px"}},{default:o(()=>[(d(),m(c,null,v(2,t=>l(p,{key:t,label:t+"行",value:t},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(f,{shadow:"never",class:"!border-none flex mt-2"},{default:o(()=>[e[7]||(e[7]=s("div",{class:"flex items-end"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),s("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),s("div",G,[l(I,{modelValue:n(a).data,"onUpdate:modelValue":e[3]||(e[3]=t=>n(a).data=t)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{P as _}; diff --git a/server/public/admin/assets/auth-DoW7pu27.js b/server/public/admin/assets/auth-T9dg0X60.js similarity index 75% rename from server/public/admin/assets/auth-DoW7pu27.js rename to server/public/admin/assets/auth-T9dg0X60.js index 733272aa..f306f42e 100644 --- a/server/public/admin/assets/auth-DoW7pu27.js +++ b/server/public/admin/assets/auth-T9dg0X60.js @@ -1 +1 @@ -import{_ as o}from"./auth.vue_vue_type_script_setup_true_lang-DiRwQHdy.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./menu-Dcx2e7zx.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./role-Dce31LXP.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./menu-Da1RBBpC.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./role-BvkAFvOK.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-DiRwQHdy.js b/server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js similarity index 92% rename from server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-DiRwQHdy.js rename to server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js index bc890601..c00738ad 100644 --- a/server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-DiRwQHdy.js +++ b/server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js @@ -1 +1 @@ -import{D as I,s as G,B as J,H as M,Z as O,L as P}from"./element-plus-DFTWCWyi.js";import{m as U}from"./menu-Dcx2e7zx.js";import{a as Z}from"./role-Dce31LXP.js";import{_ as j}from"./index-BQY2-_X1.js";import{x as z}from"./index-Nt5zMHcc.js";import{f as Q,ak as k,I as W,a as l,aN as d,aP as X,G as Y,J as y,n as x}from"./@vue/runtime-core-C6bnekPw.js";import{y as c,a as $,q as f,n as r,r as ee}from"./@vue/reactivity-DiY1c2vO.js";const te={class:"edit-popup"},de=Q({__name:"auth",emits:["success","close"],setup(ae,{expose:C,emit:g}){const _=g,o=f(),h=f(),u=f(),b=r(!1),i=r(!0),m=r(!1),v=r([]),p=r([]),s=ee({id:"",name:"",desc:"",sort:0,data_scope:1,menu_id:[]}),E={name:[{required:!0,message:"请输入名称",trigger:["blur"]}]},w=()=>{m.value=!0,U().then(e=>{p.value=e,v.value=z(e),x(()=>{A()}),m.value=!1})},R=()=>{var a,n;const e=(a=o.value)==null?void 0:a.getCheckedKeys(),t=(n=o.value)==null?void 0:n.getHalfCheckedKeys();return e==null||e.unshift.apply(e,t),e},A=()=>{s.menu_id.forEach(e=>{x(()=>{var t;(t=o.value)==null||t.setChecked(e,!0,!1)})})},D=e=>{const t=p.value;for(let a=0;a{var t,a;e?(t=o.value)==null||t.setCheckedKeys(v.value.map(n=>n.id)):(a=o.value)==null||a.setCheckedKeys([])},B=async()=>{var e,t;await((e=h.value)==null?void 0:e.validate()),s.menu_id=R(),await Z(s),(t=u.value)==null||t.close(),_("success")},V=()=>{_("close")},S=()=>{var e;(e=u.value)==null||e.open()},T=async e=>{for(const t in s)e[t]!=null&&e[t]!=null&&(s[t]=e[t])};return w(),C({open:S,setFormData:T}),(e,t)=>{const a=M,n=O,F=J,L=G,N=I,q=P;return k(),W("div",te,[l(j,{ref_key:"popupRef",ref:u,title:"分配权限",async:!0,width:"550px",onConfirm:B,onClose:V},{default:d(()=>[X((k(),Y(N,{class:"ls-form",ref_key:"formRef",ref:h,rules:E,model:c(s),"label-width":"60px"},{default:d(()=>[l(L,{class:"h-[400px] sm:h-[600px]"},{default:d(()=>[l(F,{label:"权限",prop:"menu_id"},{default:d(()=>[y("div",null,[l(a,{label:"展开/折叠",onChange:D}),l(a,{label:"全选/不全选",onChange:K}),l(a,{modelValue:c(i),"onUpdate:modelValue":t[0]||(t[0]=H=>$(i)?i.value=H:null),label:"父子联动"},null,8,["modelValue"]),y("div",null,[l(n,{ref_key:"treeRef",ref:o,data:c(p),props:{label:"name",children:"children"},"check-strictly":!c(i),"node-key":"id","default-expand-all":c(b),"show-checkbox":""},null,8,["data","check-strictly","default-expand-all"])])])]),_:1})]),_:1})]),_:1},8,["model"])),[[q,c(m)]])]),_:1},512)])}}});export{de as _}; +import{D as I,s as G,B as J,H as M,Z as O,L as P}from"./element-plus-DFTWCWyi.js";import{m as U}from"./menu-Da1RBBpC.js";import{a as Z}from"./role-BvkAFvOK.js";import{_ as j}from"./index-SocYjCJ1.js";import{x as z}from"./index--WnM67ZH.js";import{f as Q,ak as k,I as W,a as l,aN as d,aP as X,G as Y,J as y,n as x}from"./@vue/runtime-core-C6bnekPw.js";import{y as c,a as $,q as f,n as r,r as ee}from"./@vue/reactivity-DiY1c2vO.js";const te={class:"edit-popup"},de=Q({__name:"auth",emits:["success","close"],setup(ae,{expose:C,emit:g}){const _=g,o=f(),h=f(),u=f(),b=r(!1),i=r(!0),m=r(!1),v=r([]),p=r([]),s=ee({id:"",name:"",desc:"",sort:0,data_scope:1,menu_id:[]}),E={name:[{required:!0,message:"请输入名称",trigger:["blur"]}]},w=()=>{m.value=!0,U().then(e=>{p.value=e,v.value=z(e),x(()=>{A()}),m.value=!1})},R=()=>{var a,n;const e=(a=o.value)==null?void 0:a.getCheckedKeys(),t=(n=o.value)==null?void 0:n.getHalfCheckedKeys();return e==null||e.unshift.apply(e,t),e},A=()=>{s.menu_id.forEach(e=>{x(()=>{var t;(t=o.value)==null||t.setChecked(e,!0,!1)})})},D=e=>{const t=p.value;for(let a=0;a{var t,a;e?(t=o.value)==null||t.setCheckedKeys(v.value.map(n=>n.id)):(a=o.value)==null||a.setCheckedKeys([])},B=async()=>{var e,t;await((e=h.value)==null?void 0:e.validate()),s.menu_id=R(),await Z(s),(t=u.value)==null||t.close(),_("success")},V=()=>{_("close")},S=()=>{var e;(e=u.value)==null||e.open()},T=async e=>{for(const t in s)e[t]!=null&&e[t]!=null&&(s[t]=e[t])};return w(),C({open:S,setFormData:T}),(e,t)=>{const a=M,n=O,F=J,L=G,N=I,q=P;return k(),W("div",te,[l(j,{ref_key:"popupRef",ref:u,title:"分配权限",async:!0,width:"550px",onConfirm:B,onClose:V},{default:d(()=>[X((k(),Y(N,{class:"ls-form",ref_key:"formRef",ref:h,rules:E,model:c(s),"label-width":"60px"},{default:d(()=>[l(L,{class:"h-[400px] sm:h-[600px]"},{default:d(()=>[l(F,{label:"权限",prop:"menu_id"},{default:d(()=>[y("div",null,[l(a,{label:"展开/折叠",onChange:D}),l(a,{label:"全选/不全选",onChange:K}),l(a,{modelValue:c(i),"onUpdate:modelValue":t[0]||(t[0]=H=>$(i)?i.value=H:null),label:"父子联动"},null,8,["modelValue"]),y("div",null,[l(n,{ref_key:"treeRef",ref:o,data:c(p),props:{label:"name",children:"children"},"check-strictly":!c(i),"node-key":"id","default-expand-all":c(b),"show-checkbox":""},null,8,["data","check-strictly","default-expand-all"])])])]),_:1})]),_:1})]),_:1},8,["model"])),[[q,c(m)]])]),_:1},512)])}}});export{de as _}; diff --git a/server/public/admin/assets/balance_details-yWq_SgOS.js b/server/public/admin/assets/balance_details-BV6ycfYV.js similarity index 95% rename from server/public/admin/assets/balance_details-yWq_SgOS.js rename to server/public/admin/assets/balance_details-BV6ycfYV.js index bf4e2a26..1e287527 100644 --- a/server/public/admin/assets/balance_details-yWq_SgOS.js +++ b/server/public/admin/assets/balance_details-BV6ycfYV.js @@ -1 +1 @@ -import{K as L,D as N,B as K,C as I,P as O,Q as z,i as J,J as Q,M as R,N as S,L as $}from"./element-plus-DFTWCWyi.js";import{_ as j}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{h as q}from"./index-Nt5zMHcc.js";import{_ as A}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as G}from"./@vue/runtime-dom-DDAG46FW.js";import{g as M,h as H}from"./finance-L1-WPbJt.js";import{u as W}from"./useDictOptions-CT8hbU1b.js";import{u as X}from"./usePaging-VsbTxSU0.js";import{f as v,ak as s,I as h,a as e,aN as n,F as Y,ap as Z,G as w,O as p,aP as ee,J as _}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as te,r as oe}from"./@vue/reactivity-DiY1c2vO.js";import{Q as y,o as ae}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"flex items-center"},le={class:"flex justify-end mt-4"},ie=v({name:"balanceDetail"}),Xe=v({...ie,setup(re){const l=oe({user_info:"",change_type:"",start_time:"",end_time:""}),{pager:r,getLists:d,resetPage:c,resetParams:C}=X({fetchFun:M,params:l}),{optionsData:x}=W({change_type:{api:H}});return d(),(me,a)=>{const V=L,E=I,m=K,u=z,T=O,k=A,f=J,B=N,g=Q,i=S,D=q,P=R,U=j,F=$;return s(),h("div",null,[e(g,{class:"!border-none",shadow:"never"},{default:n(()=>[e(V,{type:"warning",title:"温馨提示:用户账户变动记录",closable:!1,"show-icon":""}),e(B,{ref:"formRef",class:"mb-[-16px] mt-[16px]",model:o(l),inline:!0},{default:n(()=>[e(m,{class:"w-[280px]",label:"用户信息"},{default:n(()=>[e(E,{modelValue:o(l).user_info,"onUpdate:modelValue":a[0]||(a[0]=t=>o(l).user_info=t),placeholder:"请输入用户账号/昵称/手机号",clearable:"",onKeyup:G(o(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(m,{class:"w-[280px]",label:"变动类型"},{default:n(()=>[e(T,{modelValue:o(l).change_type,"onUpdate:modelValue":a[1]||(a[1]=t=>o(l).change_type=t)},{default:n(()=>[e(u,{label:"全部",value:""}),(s(!0),h(Y,null,Z(o(x).change_type,(t,b)=>(s(),w(u,{key:b,label:t,value:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(m,{label:"记录时间"},{default:n(()=>[e(k,{startTime:o(l).start_time,"onUpdate:startTime":a[2]||(a[2]=t=>o(l).start_time=t),endTime:o(l).end_time,"onUpdate:endTime":a[3]||(a[3]=t=>o(l).end_time=t)},null,8,["startTime","endTime"])]),_:1}),e(m,null,{default:n(()=>[e(f,{type:"primary",onClick:o(c)},{default:n(()=>[...a[5]||(a[5]=[p("查询",-1)])]),_:1},8,["onClick"]),e(f,{onClick:o(C)},{default:n(()=>[...a[6]||(a[6]=[p("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),e(g,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[ee((s(),w(P,{size:"large",data:o(r).lists},{default:n(()=>[e(i,{label:"用户账号",prop:"account","min-width":"100"}),e(i,{label:"用户昵称","min-width":"160"},{default:n(({row:t})=>[_("div",ne,[e(D,{class:"flex-none mr-2",src:t.avatar,width:40,height:40,"preview-teleported":"",fit:"contain"},null,8,["src"]),p(" "+y(t.nickname),1)])]),_:1}),e(i,{label:"手机号码",prop:"mobile","min-width":"100"}),e(i,{label:"变动金额",prop:"change_amount","min-width":"100"},{default:n(({row:t})=>[_("span",{class:ae({"text-error":t.action==2})},y(t.change_amount),3)]),_:1}),e(i,{label:"剩余金额",prop:"left_amount","min-width":"100"}),e(i,{label:"变动类型",prop:"change_type_desc","min-width":"120"}),e(i,{label:"来源单号",prop:"source_sn","min-width":"100"}),e(i,{label:"记录时间",prop:"create_time","min-width":"120"})]),_:1},8,["data"])),[[F,o(r).loading]]),_("div",le,[e(U,{modelValue:o(r),"onUpdate:modelValue":a[4]||(a[4]=t=>te(r)?r.value=t:null),onChange:o(d)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{Xe as default}; +import{K as L,D as N,B as K,C as I,P as O,Q as z,i as J,J as Q,M as R,N as S,L as $}from"./element-plus-DFTWCWyi.js";import{_ as j}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{h as q}from"./index--WnM67ZH.js";import{_ as A}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as G}from"./@vue/runtime-dom-DDAG46FW.js";import{g as M,h as H}from"./finance-CuL8jhJS.js";import{u as W}from"./useDictOptions-lSbSoycG.js";import{u as X}from"./usePaging-VsbTxSU0.js";import{f as v,ak as s,I as h,a as e,aN as n,F as Y,ap as Z,G as w,O as p,aP as ee,J as _}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as te,r as oe}from"./@vue/reactivity-DiY1c2vO.js";import{Q as y,o as ae}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"flex items-center"},le={class:"flex justify-end mt-4"},ie=v({name:"balanceDetail"}),Xe=v({...ie,setup(re){const l=oe({user_info:"",change_type:"",start_time:"",end_time:""}),{pager:r,getLists:d,resetPage:c,resetParams:C}=X({fetchFun:M,params:l}),{optionsData:x}=W({change_type:{api:H}});return d(),(me,a)=>{const V=L,E=I,m=K,u=z,T=O,k=A,f=J,B=N,g=Q,i=S,D=q,P=R,U=j,F=$;return s(),h("div",null,[e(g,{class:"!border-none",shadow:"never"},{default:n(()=>[e(V,{type:"warning",title:"温馨提示:用户账户变动记录",closable:!1,"show-icon":""}),e(B,{ref:"formRef",class:"mb-[-16px] mt-[16px]",model:o(l),inline:!0},{default:n(()=>[e(m,{class:"w-[280px]",label:"用户信息"},{default:n(()=>[e(E,{modelValue:o(l).user_info,"onUpdate:modelValue":a[0]||(a[0]=t=>o(l).user_info=t),placeholder:"请输入用户账号/昵称/手机号",clearable:"",onKeyup:G(o(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(m,{class:"w-[280px]",label:"变动类型"},{default:n(()=>[e(T,{modelValue:o(l).change_type,"onUpdate:modelValue":a[1]||(a[1]=t=>o(l).change_type=t)},{default:n(()=>[e(u,{label:"全部",value:""}),(s(!0),h(Y,null,Z(o(x).change_type,(t,b)=>(s(),w(u,{key:b,label:t,value:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(m,{label:"记录时间"},{default:n(()=>[e(k,{startTime:o(l).start_time,"onUpdate:startTime":a[2]||(a[2]=t=>o(l).start_time=t),endTime:o(l).end_time,"onUpdate:endTime":a[3]||(a[3]=t=>o(l).end_time=t)},null,8,["startTime","endTime"])]),_:1}),e(m,null,{default:n(()=>[e(f,{type:"primary",onClick:o(c)},{default:n(()=>[...a[5]||(a[5]=[p("查询",-1)])]),_:1},8,["onClick"]),e(f,{onClick:o(C)},{default:n(()=>[...a[6]||(a[6]=[p("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),e(g,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[ee((s(),w(P,{size:"large",data:o(r).lists},{default:n(()=>[e(i,{label:"用户账号",prop:"account","min-width":"100"}),e(i,{label:"用户昵称","min-width":"160"},{default:n(({row:t})=>[_("div",ne,[e(D,{class:"flex-none mr-2",src:t.avatar,width:40,height:40,"preview-teleported":"",fit:"contain"},null,8,["src"]),p(" "+y(t.nickname),1)])]),_:1}),e(i,{label:"手机号码",prop:"mobile","min-width":"100"}),e(i,{label:"变动金额",prop:"change_amount","min-width":"100"},{default:n(({row:t})=>[_("span",{class:ae({"text-error":t.action==2})},y(t.change_amount),3)]),_:1}),e(i,{label:"剩余金额",prop:"left_amount","min-width":"100"}),e(i,{label:"变动类型",prop:"change_type_desc","min-width":"120"}),e(i,{label:"来源单号",prop:"source_sn","min-width":"100"}),e(i,{label:"记录时间",prop:"create_time","min-width":"120"})]),_:1},8,["data"])),[[F,o(r).loading]]),_("div",le,[e(U,{modelValue:o(r),"onUpdate:modelValue":a[4]||(a[4]=t=>te(r)?r.value=t:null),onChange:o(d)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{Xe as default}; diff --git a/server/public/admin/assets/bind-work-wechat-D0G125SZ.js b/server/public/admin/assets/bind-work-wechat-BJictqnk.js similarity index 97% rename from server/public/admin/assets/bind-work-wechat-D0G125SZ.js rename to server/public/admin/assets/bind-work-wechat-BJictqnk.js index 0af476ac..6a463e90 100644 --- a/server/public/admin/assets/bind-work-wechat-D0G125SZ.js +++ b/server/public/admin/assets/bind-work-wechat-BJictqnk.js @@ -1 +1 @@ -import{E as _,d as T,i as $}from"./element-plus-DFTWCWyi.js";import{l as S}from"./@element-plus/icons-vue-HOEUG8sr.js";import{_ as j}from"./footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js";import{u as z,g as A,P as I,a as D,b as F,_ as M}from"./index-Nt5zMHcc.js";import{a as Q}from"./wecomOauthPostMessage-C_e6VGrO.js";import{a as V}from"./vue-router-QlpZ4wdW.js";import{f as X,b as J,d as K,ak as d,I as l,J as a,a as c,aN as y,F as G,O as H,n as C}from"./@vue/runtime-core-C6bnekPw.js";import{y as U,n as k}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Y={class:"bind-wx flex flex-col"},Z={class:"flex-1 flex items-center justify-center"},tt={class:"bind-wx-card bg-body rounded-md px-10 py-10 w-[480px]"},et={key:0,class:"text-center py-10"},ot={key:0,class:"text-center py-10"},rt={key:1,id:"wxwork_bind_qrcode_container",class:"wxwork-qrcode mx-auto"},it={class:"mt-8 flex justify-center gap-4"},m="bind_wxwork",g="like_admin_wx_bind_oauth",nt=X({__name:"bind-work-wechat",setup(at){const p=V(),f=z(),x=k(!1),w=k(!1),u=k({corp_id:"",agent_id:""}),L=()=>/wxwork/i.test(navigator.userAgent),v=()=>window.location.origin+window.location.pathname+"?bind_wxwork=1";function W(){const o=new URLSearchParams(window.location.search),t=window.location.hash||"",e=t.includes("?")?t.split("?").slice(1).join("?"):"";return e&&new URLSearchParams(e).forEach((r,s)=>{o.has(s)||o.set(s,r)}),o}const E=()=>{f.logout()},B=async()=>{try{await f.getUserInfo()}catch{}if(f.isPaw===0){p.replace("/change-password");return}p.replace(I.INDEX)},b=async o=>{w.value=!0;try{await F({code:o}),window.history.replaceState({},"",window.location.pathname),await B()}catch(t){console.error(t),_.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"绑定失败"),w.value=!1}};let n=null;const P=async()=>{if(!u.value.corp_id)return;x.value=!0,window.WwLogin||await new Promise((t,e)=>{const r=document.createElement("script");r.src="https://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js",r.onload=()=>t(),r.onerror=()=>e(new Error("加载企业微信 JS 失败")),document.head.appendChild(r)}),await C(),x.value=!1,await C();const o=encodeURIComponent(v());new window.WwLogin({id:"wxwork_bind_qrcode_container",appid:u.value.corp_id,agentid:u.value.agent_id,redirect_uri:o,lang:"zh",state:m,href:"",self_redirect:!1})};return J(async()=>{let o="";try{o=(new URLSearchParams(window.location.search).get("code")||"").trim()}catch{o=""}if(!A()){_.error("请先登录"),p.push(I.LOGIN);return}const t=W(),e=o||(t.get("code")||"").trim(),r=t.get("state"),s=r!=null?String(r).trim():"",R=s===m||s==="admin_bind_wx"||s.toLowerCase()===m.toLowerCase(),N=t.get("bind_wxwork")==="1",O=!!e&&s===""&&p.currentRoute.value.path==="/bind-work-wechat";if(e&&(R||N||O)){if(sessionStorage.getItem(g)===e)return;sessionStorage.setItem(g,e);try{await b(e)}finally{sessionStorage.removeItem(g)}return}try{const i=await D();if(!(i!=null&&i.enabled)||!i.corp_id){_.error("企业微信未配置,请联系管理员");return}if(u.value={corp_id:i.corp_id,agent_id:i.agent_id},L()){w.value=!0;const h=encodeURIComponent(v()),q=`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${i.corp_id}&redirect_uri=${h}&response_type=code&scope=snsapi_privateinfo&agentid=${i.agent_id}&state=${m}#wechat_redirect`;window.location.href=q;return}n==null||n(),n=Q({pathIncludes:"bind-work-wechat",lockKey:g,wxBindState:m,onCode:h=>b(h)}),await P()}catch(i){console.error(i),_.error("获取企业微信配置失败")}}),K(()=>{n==null||n(),n=null}),(o,t)=>{const e=T,r=$;return d(),l("div",Y,[a("div",Z,[a("div",tt,[t[4]||(t[4]=a("div",{class:"text-center text-2xl font-medium mb-2"},"绑定企业微信",-1)),t[5]||(t[5]=a("div",{class:"text-center text-gray-500 text-sm mb-8"}," 根据安全策略,需绑定企业微信账号后方可使用管理后台 ",-1)),w.value?(d(),l("div",et,[c(e,{class:"is-loading mb-4",size:40,color:"var(--el-color-primary)"},{default:y(()=>[c(U(S))]),_:1}),t[0]||(t[0]=a("div",{class:"text-gray-500"},"企业微信授权中...",-1))])):(d(),l(G,{key:1},[x.value?(d(),l("div",ot,[c(e,{class:"is-loading",size:32,color:"var(--el-color-primary)"},{default:y(()=>[c(U(S))]),_:1}),t[1]||(t[1]=a("div",{class:"mt-2 text-gray-400 text-sm"},"加载扫码...",-1))])):(d(),l("div",rt)),t[2]||(t[2]=a("div",{class:"text-center text-sm text-gray-400 mt-4"}," 请使用企业微信扫描二维码完成绑定 ",-1))],64)),a("div",it,[c(r,{onClick:E},{default:y(()=>[...t[3]||(t[3]=[H("退出登录",-1)])]),_:1})])])]),c(j)])}}}),Xt=M(nt,[["__scopeId","data-v-d4a61522"]]);export{Xt as default}; +import{E as _,d as T,i as $}from"./element-plus-DFTWCWyi.js";import{l as S}from"./@element-plus/icons-vue-HOEUG8sr.js";import{_ as j}from"./footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js";import{u as z,g as A,P as I,a as D,b as F,_ as M}from"./index--WnM67ZH.js";import{a as Q}from"./wecomOauthPostMessage-C_e6VGrO.js";import{a as V}from"./vue-router-QlpZ4wdW.js";import{f as X,b as J,d as K,ak as d,I as l,J as a,a as c,aN as y,F as G,O as H,n as C}from"./@vue/runtime-core-C6bnekPw.js";import{y as U,n as k}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Y={class:"bind-wx flex flex-col"},Z={class:"flex-1 flex items-center justify-center"},tt={class:"bind-wx-card bg-body rounded-md px-10 py-10 w-[480px]"},et={key:0,class:"text-center py-10"},ot={key:0,class:"text-center py-10"},rt={key:1,id:"wxwork_bind_qrcode_container",class:"wxwork-qrcode mx-auto"},it={class:"mt-8 flex justify-center gap-4"},m="bind_wxwork",g="like_admin_wx_bind_oauth",nt=X({__name:"bind-work-wechat",setup(at){const p=V(),f=z(),x=k(!1),w=k(!1),u=k({corp_id:"",agent_id:""}),L=()=>/wxwork/i.test(navigator.userAgent),v=()=>window.location.origin+window.location.pathname+"?bind_wxwork=1";function W(){const o=new URLSearchParams(window.location.search),t=window.location.hash||"",e=t.includes("?")?t.split("?").slice(1).join("?"):"";return e&&new URLSearchParams(e).forEach((r,s)=>{o.has(s)||o.set(s,r)}),o}const E=()=>{f.logout()},B=async()=>{try{await f.getUserInfo()}catch{}if(f.isPaw===0){p.replace("/change-password");return}p.replace(I.INDEX)},b=async o=>{w.value=!0;try{await F({code:o}),window.history.replaceState({},"",window.location.pathname),await B()}catch(t){console.error(t),_.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"绑定失败"),w.value=!1}};let n=null;const P=async()=>{if(!u.value.corp_id)return;x.value=!0,window.WwLogin||await new Promise((t,e)=>{const r=document.createElement("script");r.src="https://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js",r.onload=()=>t(),r.onerror=()=>e(new Error("加载企业微信 JS 失败")),document.head.appendChild(r)}),await C(),x.value=!1,await C();const o=encodeURIComponent(v());new window.WwLogin({id:"wxwork_bind_qrcode_container",appid:u.value.corp_id,agentid:u.value.agent_id,redirect_uri:o,lang:"zh",state:m,href:"",self_redirect:!1})};return J(async()=>{let o="";try{o=(new URLSearchParams(window.location.search).get("code")||"").trim()}catch{o=""}if(!A()){_.error("请先登录"),p.push(I.LOGIN);return}const t=W(),e=o||(t.get("code")||"").trim(),r=t.get("state"),s=r!=null?String(r).trim():"",R=s===m||s==="admin_bind_wx"||s.toLowerCase()===m.toLowerCase(),N=t.get("bind_wxwork")==="1",O=!!e&&s===""&&p.currentRoute.value.path==="/bind-work-wechat";if(e&&(R||N||O)){if(sessionStorage.getItem(g)===e)return;sessionStorage.setItem(g,e);try{await b(e)}finally{sessionStorage.removeItem(g)}return}try{const i=await D();if(!(i!=null&&i.enabled)||!i.corp_id){_.error("企业微信未配置,请联系管理员");return}if(u.value={corp_id:i.corp_id,agent_id:i.agent_id},L()){w.value=!0;const h=encodeURIComponent(v()),q=`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${i.corp_id}&redirect_uri=${h}&response_type=code&scope=snsapi_privateinfo&agentid=${i.agent_id}&state=${m}#wechat_redirect`;window.location.href=q;return}n==null||n(),n=Q({pathIncludes:"bind-work-wechat",lockKey:g,wxBindState:m,onCode:h=>b(h)}),await P()}catch(i){console.error(i),_.error("获取企业微信配置失败")}}),K(()=>{n==null||n(),n=null}),(o,t)=>{const e=T,r=$;return d(),l("div",Y,[a("div",Z,[a("div",tt,[t[4]||(t[4]=a("div",{class:"text-center text-2xl font-medium mb-2"},"绑定企业微信",-1)),t[5]||(t[5]=a("div",{class:"text-center text-gray-500 text-sm mb-8"}," 根据安全策略,需绑定企业微信账号后方可使用管理后台 ",-1)),w.value?(d(),l("div",et,[c(e,{class:"is-loading mb-4",size:40,color:"var(--el-color-primary)"},{default:y(()=>[c(U(S))]),_:1}),t[0]||(t[0]=a("div",{class:"text-gray-500"},"企业微信授权中...",-1))])):(d(),l(G,{key:1},[x.value?(d(),l("div",ot,[c(e,{class:"is-loading",size:32,color:"var(--el-color-primary)"},{default:y(()=>[c(U(S))]),_:1}),t[1]||(t[1]=a("div",{class:"mt-2 text-gray-400 text-sm"},"加载扫码...",-1))])):(d(),l("div",rt)),t[2]||(t[2]=a("div",{class:"text-center text-sm text-gray-400 mt-4"}," 请使用企业微信扫描二维码完成绑定 ",-1))],64)),a("div",it,[c(r,{onClick:E},{default:y(()=>[...t[3]||(t[3]=[H("退出登录",-1)])]),_:1})])])]),c(j)])}}}),Xt=M(nt,[["__scopeId","data-v-d4a61522"]]);export{Xt as default}; diff --git a/server/public/admin/assets/cache-DE9um1gH.js b/server/public/admin/assets/cache-Dcdk6Ai4.js similarity index 97% rename from server/public/admin/assets/cache-DE9um1gH.js rename to server/public/admin/assets/cache-Dcdk6Ai4.js index 9c02f866..580cb7e1 100644 --- a/server/public/admin/assets/cache-DE9um1gH.js +++ b/server/public/admin/assets/cache-Dcdk6Ai4.js @@ -1 +1 @@ -import{K as c,J as _,M as d,N as f,i as u}from"./element-plus-DFTWCWyi.js";import{i as h,B as b}from"./index-Nt5zMHcc.js";import{f as i,ak as w,I as C,a as t,aN as o,O as k}from"./@vue/runtime-core-C6bnekPw.js";import{y,n as E}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const x={class:"cache"},B=i({name:"cache"}),st=i({...B,setup(N){const m=E([{content:"系统缓存",desc:"系统运行过程中产生的各类缓存数据"}]),n=async()=>{await h.confirm("确认清除系统缓存?"),await b(),window.location.reload()};return(g,r)=>{const p=c,a=_,e=f,l=u,s=d;return w(),C("div",x,[t(a,{class:"!border-none",shadow:"never"},{default:o(()=>[t(p,{type:"warning",title:"温馨提示:管理系统运行过程中产生的缓存",closable:!1,"show-icon":""})]),_:1}),t(a,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[t(s,{data:y(m),size:"large"},{default:o(()=>[t(e,{label:"管理内容",prop:"content","min-width":"130"}),t(e,{label:"内容说明",prop:"desc","min-width":"180"}),t(e,{label:"操作",width:"130",fixed:"right"},{default:o(()=>[t(l,{type:"primary",link:"",onClick:n},{default:o(()=>[...r[0]||(r[0]=[k("清除系统缓存",-1)])]),_:1})]),_:1})]),_:1},8,["data"])]),_:1})])}}});export{st as default}; +import{K as c,J as _,M as d,N as f,i as u}from"./element-plus-DFTWCWyi.js";import{i as h,B as b}from"./index--WnM67ZH.js";import{f as i,ak as w,I as C,a as t,aN as o,O as k}from"./@vue/runtime-core-C6bnekPw.js";import{y,n as E}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const x={class:"cache"},B=i({name:"cache"}),st=i({...B,setup(N){const m=E([{content:"系统缓存",desc:"系统运行过程中产生的各类缓存数据"}]),n=async()=>{await h.confirm("确认清除系统缓存?"),await b(),window.location.reload()};return(g,r)=>{const p=c,a=_,e=f,l=u,s=d;return w(),C("div",x,[t(a,{class:"!border-none",shadow:"never"},{default:o(()=>[t(p,{type:"warning",title:"温馨提示:管理系统运行过程中产生的缓存",closable:!1,"show-icon":""})]),_:1}),t(a,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[t(s,{data:y(m),size:"large"},{default:o(()=>[t(e,{label:"管理内容",prop:"content","min-width":"130"}),t(e,{label:"内容说明",prop:"desc","min-width":"180"}),t(e,{label:"操作",width:"130",fixed:"right"},{default:o(()=>[t(l,{type:"primary",link:"",onClick:n},{default:o(()=>[...r[0]||(r[0]=[k("清除系统缓存",-1)])]),_:1})]),_:1})]),_:1},8,["data"])]),_:1})])}}});export{st as default}; diff --git a/server/public/admin/assets/change-password-BqhHJD7K.js b/server/public/admin/assets/change-password-CmlJDDIV.js similarity index 96% rename from server/public/admin/assets/change-password-BqhHJD7K.js rename to server/public/admin/assets/change-password-CmlJDDIV.js index 23e50138..84658378 100644 --- a/server/public/admin/assets/change-password-BqhHJD7K.js +++ b/server/public/admin/assets/change-password-CmlJDDIV.js @@ -1 +1 @@ -import{E as p,B as b,C as v,D as E,i as h}from"./element-plus-DFTWCWyi.js";import{u as V,g as C,P,c as B,d as F,_ as I}from"./index-Nt5zMHcc.js";import{w as L}from"./@vue/runtime-dom-DDAG46FW.js";import{u as N}from"./useLockFn-X4Qce5KO.js";import{_ as z}from"./footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js";import{a as R}from"./vue-router-QlpZ4wdW.js";import{f as S,b as q,ak as U,I as D,J as i,a as s,aN as t,O as K}from"./@vue/runtime-core-C6bnekPw.js";import{y as u,q as M,r as O}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const T={class:"change-password flex flex-col"},$={class:"flex-1 flex items-center justify-center"},j={class:"change-password-card bg-body rounded-md px-10 py-10 w-[480px]"},G=S({__name:"change-password",setup(J){const n=M(),_=R(),d=V();q(()=>{C()||(p.error("请先登录"),_.push(P.LOGIN))});const e=O({password:"",password_confirm:""}),w={password:[{required:!0,message:"请输入新密码",trigger:"blur"},{min:6,message:"密码长度不能少于6位",trigger:"blur"}],password_confirm:[{required:!0,validator:(a,o,r)=>{o===""?r(new Error("请再次输入密码")):o!==e.password?r(new Error("两次输入的密码不一致")):r()},trigger:"blur"}]},l=async()=>{var a;await((a=n.value)==null?void 0:a.validate());try{await F({password:e.password,password_confirm:e.password_confirm}),p.success("密码修改成功,请重新登录"),d.isPaw=1,await d.logout()}catch(o){p.error((o==null?void 0:o.msg)||(o==null?void 0:o.message)||"密码修改失败")}},{isLock:g,lockFn:x}=N(l);return(a,o)=>{const r=B,c=v,f=b,y=E,k=h;return U(),D("div",T,[i("div",$,[i("div",j,[o[3]||(o[3]=i("div",{class:"text-center text-2xl font-medium mb-2"},"首次登录",-1)),o[4]||(o[4]=i("div",{class:"text-center text-gray-500 text-sm mb-8"},"为了您的账号安全,请修改初始密码",-1)),s(y,{ref_key:"formRef",ref:n,model:e,size:"large",rules:w},{default:t(()=>[s(f,{prop:"password"},{default:t(()=>[s(c,{modelValue:e.password,"onUpdate:modelValue":o[0]||(o[0]=m=>e.password=m),type:"password","show-password":"",placeholder:"请输入新密码"},{prepend:t(()=>[s(r,{name:"el-icon-Lock",size:"16"})]),_:1},8,["modelValue"])]),_:1}),s(f,{prop:"password_confirm"},{default:t(()=>[s(c,{modelValue:e.password_confirm,"onUpdate:modelValue":o[1]||(o[1]=m=>e.password_confirm=m),type:"password","show-password":"",placeholder:"请再次输入新密码",onKeyup:L(l,["enter"])},{prepend:t(()=>[s(r,{name:"el-icon-Lock",size:"16"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"]),s(k,{type:"primary",size:"large",loading:u(g),onClick:u(x),class:"w-full"},{default:t(()=>[...o[2]||(o[2]=[K(" 确认修改 ",-1)])]),_:1},8,["loading","onClick"])])]),s(z)])}}}),Ro=I(G,[["__scopeId","data-v-bbd4ab41"]]);export{Ro as default}; +import{E as p,B as b,C as v,D as E,i as h}from"./element-plus-DFTWCWyi.js";import{u as V,g as C,P,c as B,d as F,_ as I}from"./index--WnM67ZH.js";import{w as L}from"./@vue/runtime-dom-DDAG46FW.js";import{u as N}from"./useLockFn-X4Qce5KO.js";import{_ as z}from"./footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js";import{a as R}from"./vue-router-QlpZ4wdW.js";import{f as S,b as q,ak as U,I as D,J as i,a as s,aN as t,O as K}from"./@vue/runtime-core-C6bnekPw.js";import{y as u,q as M,r as O}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const T={class:"change-password flex flex-col"},$={class:"flex-1 flex items-center justify-center"},j={class:"change-password-card bg-body rounded-md px-10 py-10 w-[480px]"},G=S({__name:"change-password",setup(J){const n=M(),_=R(),d=V();q(()=>{C()||(p.error("请先登录"),_.push(P.LOGIN))});const e=O({password:"",password_confirm:""}),w={password:[{required:!0,message:"请输入新密码",trigger:"blur"},{min:6,message:"密码长度不能少于6位",trigger:"blur"}],password_confirm:[{required:!0,validator:(a,o,r)=>{o===""?r(new Error("请再次输入密码")):o!==e.password?r(new Error("两次输入的密码不一致")):r()},trigger:"blur"}]},l=async()=>{var a;await((a=n.value)==null?void 0:a.validate());try{await F({password:e.password,password_confirm:e.password_confirm}),p.success("密码修改成功,请重新登录"),d.isPaw=1,await d.logout()}catch(o){p.error((o==null?void 0:o.msg)||(o==null?void 0:o.message)||"密码修改失败")}},{isLock:g,lockFn:x}=N(l);return(a,o)=>{const r=B,c=v,f=b,y=E,k=h;return U(),D("div",T,[i("div",$,[i("div",j,[o[3]||(o[3]=i("div",{class:"text-center text-2xl font-medium mb-2"},"首次登录",-1)),o[4]||(o[4]=i("div",{class:"text-center text-gray-500 text-sm mb-8"},"为了您的账号安全,请修改初始密码",-1)),s(y,{ref_key:"formRef",ref:n,model:e,size:"large",rules:w},{default:t(()=>[s(f,{prop:"password"},{default:t(()=>[s(c,{modelValue:e.password,"onUpdate:modelValue":o[0]||(o[0]=m=>e.password=m),type:"password","show-password":"",placeholder:"请输入新密码"},{prepend:t(()=>[s(r,{name:"el-icon-Lock",size:"16"})]),_:1},8,["modelValue"])]),_:1}),s(f,{prop:"password_confirm"},{default:t(()=>[s(c,{modelValue:e.password_confirm,"onUpdate:modelValue":o[1]||(o[1]=m=>e.password_confirm=m),type:"password","show-password":"",placeholder:"请再次输入新密码",onKeyup:L(l,["enter"])},{prepend:t(()=>[s(r,{name:"el-icon-Lock",size:"16"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"]),s(k,{type:"primary",size:"large",loading:u(g),onClick:u(x),class:"w-full"},{default:t(()=>[...o[2]||(o[2]=[K(" 确认修改 ",-1)])]),_:1},8,["loading","onClick"])])]),s(z)])}}}),Ro=I(G,[["__scopeId","data-v-bbd4ab41"]]);export{Ro as default}; diff --git a/server/public/admin/assets/code-C9qHBHs_.js b/server/public/admin/assets/code-CrOutkes.js similarity index 92% rename from server/public/admin/assets/code-C9qHBHs_.js rename to server/public/admin/assets/code-CrOutkes.js index a6ca52e5..a456f7c6 100644 --- a/server/public/admin/assets/code-C9qHBHs_.js +++ b/server/public/admin/assets/code-CrOutkes.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function o(e){return t.get({url:"/tools.generator/generateTable",params:e})}function n(e){return t.get({url:"/tools.generator/dataTable",params:e})}function a(e){return t.post({url:"/tools.generator/selectTable",params:e})}function l(e){return t.get({url:"/tools.generator/detail",params:e})}function s(e){return t.post({url:"/tools.generator/syncColumn",params:e})}function u(e){return t.post({url:"/tools.generator/delete",params:e})}function g(e){return t.post({url:"/tools.generator/edit",params:e})}function i(e){return t.post({url:"/tools.generator/preview",params:e})}function c(e){return t.post({url:"/tools.generator/generate",params:e})}function f(){return t.get({url:"/tools.generator/getModels"})}export{f as a,o as b,u as c,i as d,c as e,n as f,g,a as h,s,l as t}; +import{r as t}from"./index--WnM67ZH.js";function o(e){return t.get({url:"/tools.generator/generateTable",params:e})}function n(e){return t.get({url:"/tools.generator/dataTable",params:e})}function a(e){return t.post({url:"/tools.generator/selectTable",params:e})}function l(e){return t.get({url:"/tools.generator/detail",params:e})}function s(e){return t.post({url:"/tools.generator/syncColumn",params:e})}function u(e){return t.post({url:"/tools.generator/delete",params:e})}function g(e){return t.post({url:"/tools.generator/edit",params:e})}function i(e){return t.post({url:"/tools.generator/preview",params:e})}function c(e){return t.post({url:"/tools.generator/generate",params:e})}function f(){return t.get({url:"/tools.generator/getModels"})}export{f as a,o as b,u as c,i as d,c as e,n as f,g,a as h,s,l as t}; diff --git a/server/public/admin/assets/code-preview-C7eIy808.js b/server/public/admin/assets/code-preview-DrK3tprG.js similarity index 85% rename from server/public/admin/assets/code-preview-C7eIy808.js rename to server/public/admin/assets/code-preview-DrK3tprG.js index 452a3f3f..8b9c6d43 100644 --- a/server/public/admin/assets/code-preview-C7eIy808.js +++ b/server/public/admin/assets/code-preview-DrK3tprG.js @@ -1 +1 @@ -import{_ as o}from"./code-preview.vue_vue_type_script_setup_true_lang-Dpbw1DAf.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./code-preview.vue_vue_type_script_setup_true_lang-BqShuPMm.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/code-preview.vue_vue_type_script_setup_true_lang-Dpbw1DAf.js b/server/public/admin/assets/code-preview.vue_vue_type_script_setup_true_lang-BqShuPMm.js similarity index 95% rename from server/public/admin/assets/code-preview.vue_vue_type_script_setup_true_lang-Dpbw1DAf.js rename to server/public/admin/assets/code-preview.vue_vue_type_script_setup_true_lang-BqShuPMm.js index 13acc8a1..6673b828 100644 --- a/server/public/admin/assets/code-preview.vue_vue_type_script_setup_true_lang-Dpbw1DAf.js +++ b/server/public/admin/assets/code-preview.vue_vue_type_script_setup_true_lang-BqShuPMm.js @@ -1 +1 @@ -import{m as B,l as N,s as T,i as $,V as j}from"./element-plus-DFTWCWyi.js";import{c as D,i as d}from"./index-Nt5zMHcc.js";import{u as F}from"./vue-clipboard3-DByT_rEQ.js";import{f as S,ar as U,ak as c,I as i,a as t,aN as a,F as A,ap as G,G as I,J as u,O as J,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{a as p,y as _,n as O}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"code-preview"},R={class:"flex",style:{height:"50vh"}},W=S({__name:"code-preview",props:{modelValue:{type:Boolean},code:{}},emits:["update:modelValue"],setup(r,{emit:f}){const V=r,b=f,{toClipboard:g}=F(),n=O("index0"),h=async l=>{try{await g(l),d.msgSuccess("复制成功")}catch{d.msgError("复制失败")}},s=L({get(){return V.modelValue},set(l){b("update:modelValue",l)}});return(l,e)=>{const v=U("highlightjs"),y=T,k=D,C=$,x=N,E=B,w=j;return c(),i("div",P,[t(w,{modelValue:_(s),"onUpdate:modelValue":e[1]||(e[1]=o=>p(s)?s.value=o:null),width:"900px",title:"代码预览"},{default:a(()=>[t(E,{modelValue:_(n),"onUpdate:modelValue":e[0]||(e[0]=o=>p(n)?n.value=o:null)},{default:a(()=>[(c(!0),i(A,null,G(r.code,(o,m)=>(c(),I(x,{label:o.name,name:`index${m}`,key:m},{default:a(()=>[u("div",R,[t(y,{class:"flex-1"},{default:a(()=>[t(v,{autodetect:"",code:o.content},null,8,["code"])]),_:2},1024),u("div",null,[t(C,{onClick:q=>h(o.content),type:"primary",link:""},{icon:a(()=>[t(k,{name:"el-icon-CopyDocument"})]),default:a(()=>[e[2]||(e[2]=J(" 复制 ",-1))]),_:1},8,["onClick"])])])]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])])}}});export{W as _}; +import{m as B,l as N,s as T,i as $,V as j}from"./element-plus-DFTWCWyi.js";import{c as D,i as d}from"./index--WnM67ZH.js";import{u as F}from"./vue-clipboard3-DByT_rEQ.js";import{f as S,ar as U,ak as c,I as i,a as t,aN as a,F as A,ap as G,G as I,J as u,O as J,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{a as p,y as _,n as O}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"code-preview"},R={class:"flex",style:{height:"50vh"}},W=S({__name:"code-preview",props:{modelValue:{type:Boolean},code:{}},emits:["update:modelValue"],setup(r,{emit:f}){const V=r,b=f,{toClipboard:g}=F(),n=O("index0"),h=async l=>{try{await g(l),d.msgSuccess("复制成功")}catch{d.msgError("复制失败")}},s=L({get(){return V.modelValue},set(l){b("update:modelValue",l)}});return(l,e)=>{const v=U("highlightjs"),y=T,k=D,C=$,x=N,E=B,w=j;return c(),i("div",P,[t(w,{modelValue:_(s),"onUpdate:modelValue":e[1]||(e[1]=o=>p(s)?s.value=o:null),width:"900px",title:"代码预览"},{default:a(()=>[t(E,{modelValue:_(n),"onUpdate:modelValue":e[0]||(e[0]=o=>p(n)?n.value=o:null)},{default:a(()=>[(c(!0),i(A,null,G(r.code,(o,m)=>(c(),I(x,{label:o.name,name:`index${m}`,key:m},{default:a(()=>[u("div",R,[t(y,{class:"flex-1"},{default:a(()=>[t(v,{autodetect:"",code:o.content},null,8,["code"])]),_:2},1024),u("div",null,[t(C,{onClick:q=>h(o.content),type:"primary",link:""},{icon:a(()=>[t(k,{name:"el-icon-CopyDocument"})]),default:a(()=>[e[2]||(e[2]=J(" 复制 ",-1))]),_:1},8,["onClick"])])])]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])])}}});export{W as _}; diff --git a/server/public/admin/assets/commission-settlement-DLiQO_Wt.js b/server/public/admin/assets/commission-settlement-Dtr52e_y.js similarity index 99% rename from server/public/admin/assets/commission-settlement-DLiQO_Wt.js rename to server/public/admin/assets/commission-settlement-Dtr52e_y.js index e41a1524..635b64e0 100644 --- a/server/public/admin/assets/commission-settlement-DLiQO_Wt.js +++ b/server/public/admin/assets/commission-settlement-Dtr52e_y.js @@ -1 +1 @@ -import{a2 as gt,H as ht,P as bt,Q as wt,ag as yt,W as kt,L as xt,i as Ct,d as St,J as Vt,K as Ot,T as Nt,C as Et,m as Dt,l as zt,M as Mt,N as $t,_ as Tt,G as Rt,F as Ft,X as Lt,V as Bt,E as b,a as Ie}from"./element-plus-DFTWCWyi.js";import{s as Ue}from"./@vue/runtime-dom-DDAG46FW.js";import{N as It,x as Ut,m as Pt,g as Yt,a0 as qt}from"./@element-plus/icons-vue-HOEUG8sr.js";import{c as Pe,a as Gt,b as Ht,d as At,e as Wt,f as Qt,g as jt}from"./stats-BCrGkFwR.js";import{f as Jt,w as Xt,b as Zt,ak as u,I as f,J as r,N as Kt,H as x,a as n,aN as o,O as s,F as L,ap as Ye,G as h,aP as Q,A as $}from"./@vue/runtime-core-C6bnekPw.js";import{n as p,y as B,r as el}from"./@vue/reactivity-DiY1c2vO.js";import{Q as _,o as qe}from"./@vue/shared-mAAVTE9n.js";import{_ as tl}from"./index-Nt5zMHcc.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ll={class:"cs-page"},al={class:"cs-masthead"},nl={class:"cs-masthead__inner"},ol={key:0,class:"cs-masthead__stats"},sl={class:"cs-stat"},rl={class:"cs-stat__value"},il={key:0,class:"cs-stat"},dl={class:"cs-stat__value cs-stat__value--xs"},ul={key:1,class:"cs-stat"},_l={class:"cs-stat__value cs-stat__value--xs"},cl={class:"filter-surface"},pl={class:"filter-row filter-row--top"},ml={class:"filter-field"},fl={class:"filter-field filter-field--rangewrap"},vl={class:"filter-field"},gl={class:"filter-field filter-field--wide"},hl={class:"filter-select filter-select--dept filter-dept-tree-wrap"},bl={class:"filter-actions"},wl={class:"cs-alert__body"},yl={key:0},kl={key:1},xl={key:2,class:"cs-alert__meta"},Cl={class:"cs-reconcile"},Sl={class:"cs-reconcile__head"},Vl={class:"cs-reconcile__tags"},Ol={key:3,class:"cs-reconcile__meta"},Nl={key:4,class:"cs-reconcile__meta"},El={class:"cs-reconcile__toolbar"},Dl={key:0,class:"cs-reconcile__carry"},zl={class:"cs-table-head"},Ml={class:"cs-table-head__row"},$l={key:0,class:"cs-drill-state"},Tl={class:"cs-dept-link__text"},Rl={key:1,class:"cs-muted"},Fl={class:"cs-dialog__bar"},Ll={key:0},Bl={key:1,class:"cs-muted"},Il={key:0,class:"cs-muted"},Ul={key:1,class:"cs-muted"},Pl={class:"cs-dialog__pager"},Yl={class:"cs-dialog__bar cs-dialog__bar--split"},ql={class:"cs-dialog__hint"},Gl={key:0},Hl={key:1,class:"cs-muted"},Al={key:0,class:"cs-muted"},Wl={key:1,class:"cs-muted"},Ql={class:"cs-dialog__pager"},jl=Jt({__name:"commission-settlement",setup(Jl){const Ge={value:"id",label:"name",children:"children"};function He(t){if(!t.length)return[];const e=new Map;for(const m of t)e.set(m.id,{...m,children:[]});const i=[];for(const m of t){const v=e.get(m.id),w=Number(m.pid);w>0&&e.has(w)?e.get(w).children.push(v):i.push(v)}const l=m=>{var v;(v=m.children)!=null&&v.length?m.children.forEach(l):delete m.children};i.forEach(l);const k=m=>{var v;m.sort((w,E)=>{const C=w.name.includes("中心")?-1:1,D=E.name.includes("中心")?-1:1;return C!==D?C-D:w.id-E.id});for(const w of m)(v=w.children)!=null&&v.length&&k(w.children)};return k(i),i}function ke(){const t=new Date,e=t.getFullYear(),i=String(t.getMonth()+1).padStart(2,"0");return`${e}-${i}`}function j(t){return String(t).padStart(2,"0")}function xe(t){return`${t.getFullYear()}-${j(t.getMonth()+1)}-${j(t.getDate())} ${j(t.getHours())}:${j(t.getMinutes())}:${j(t.getSeconds())}`}function re(t){const e=/^(\d{4})-(\d{2})$/.exec(t),i=e?parseInt(e[1],10):new Date().getFullYear(),l=e?parseInt(e[2],10):new Date().getMonth()+1,k=new Date(i,l-2,1,0,0,0),m=new Date(i,l-1,0,23,59,59);return[xe(k),xe(m)]}const g=p(ke()),I=p(re(g.value)),ae=p(!1),T=p(!1),ne=p([]),ie=p(!1),Ae=$(()=>He(ne.value)),V=p([]),Ce=p([]),de=p(!1),R=p(""),ue=p([]),Se=p([]),Ve=p([]),oe=p([]),se=p([]),Oe=p("dept"),U=p({}),c=el({settlement_month:"",order_month:"",order_start_time:"",order_end_time:"",fulfillment_status:3,explicit_order_time_window:!1,cutoff_end:"",rule_note:"",channel_name:"",require_system_auto_prescription:!1}),O=p(null),J=p(""),_e=p(!1),ce=p(!1),pe=p(!1),F=$(()=>{var t;return Number((t=O.value)==null?void 0:t.status)===1}),me=p(!1),fe=p(!1),P=p("all"),ve=p([]),ge=p(0),Ne=p(1),Ee=p(20),X=p(!1),Y=p(null),M=p("all"),q=p([]),G=p(0),Z=p(1),De=p(20),he=p(!1),We=$(()=>{const t=Y.value;return t?t.mode==="dept"?`已完成业绩订单 · ${t.dept_name}`:t.title:"已完成业绩订单"}),K=$(()=>c.order_start_time&&c.order_end_time?`${c.order_start_time}~${c.order_end_time}`:c.order_month||"—"),Qe=$(()=>{const t=new Map;for(const e of ne.value){const i=Number(e.pid),l=t.get(i)??[];l.push(e.id),t.set(i,l)}return t}),be=$(()=>{const t=new Map;for(const e of ne.value)t.set(e.id,e);return t}),ee=$(()=>{if(V.value.length!==1)return null;const t=V.value[0];return be.value.get(t)??null}),je=$(()=>{const t=ee.value;if(!t)return"返回顶层";const e=Number(t.pid),i=e>0?be.value.get(e):null;return!i||Number(i.pid)<=0?"返回顶层":`返回上级 · ${i.name}`});function ze(t){if(!t||t<=0)return!1;const e=Qe.value.get(t);return!!(e&&e.length>0)}function Je(t){if(!(!t||!t.dept_id||t.dept_id<=0)){if(ze(t.dept_id)){V.value=[t.dept_id],N();return}Ze(t.dept_id,t.dept_name)}}function Xe(){const t=ee.value;if(!t){V.value=[],N();return}const e=Number(t.pid),i=e>0?be.value.get(e):null;!i||Number(i.pid)<=0?V.value=[]:V.value=[e],N()}function Ze(t,e){if(!g.value){b.warning("请选择结算月");return}Y.value={mode:"dept",dept_id:t,dept_name:e},M.value="all",Z.value=1,q.value=[],G.value=0,X.value=!0,te(1)}function Ke(t){if(!g.value){b.warning("请选择结算月");return}Y.value={mode:"channel",title:`业务订单 · ${t.appt_channel_name} · 医助 ${t.assistant_name}`,assistant_id:t.assistant_id,appt_channel_value:Number(t.appt_channel_value??0)},M.value="all",Z.value=1,q.value=[],G.value=0,X.value=!0,te(1)}function et(t){if(!g.value){b.warning("请选择结算月");return}Y.value={mode:"channel",title:`业务订单 · ${t.appt_channel_name} · 医生 ${t.doctor_name}`,doctor_id:t.doctor_id,appt_channel_value:Number(t.appt_channel_value??0)},M.value="all",Z.value=1,q.value=[],G.value=0,X.value=!0,te(1)}async function te(t){if(!(!g.value||!Y.value)){he.value=!0,Z.value=t;try{const e=Y.value,i={settlement_month:g.value,page:t,page_size:De.value};e.mode==="dept"?(i.dept_ids=String(e.dept_id),R.value&&(i.channel_code=R.value)):(Object.assign(i,H()),i.appt_channel_value=e.appt_channel_value,e.assistant_id!=null&&(i.assistant_id=e.assistant_id),e.doctor_id!=null&&(i.doctor_id=e.doctor_id)),M.value&&M.value!=="all"&&(i.bucket=M.value);const l=await Pe(i);q.value=(l==null?void 0:l.list)||[],G.value=Number((l==null?void 0:l.count)??0)}catch(e){b.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载明细失败"),q.value=[],G.value=0}finally{he.value=!1}}}function y(t){return t==null||!Number.isFinite(Number(t))?"—":`¥ ${Number(t).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}`}async function tt(){ie.value=!0;try{const t=await Gt();ne.value=(t||[]).sort((e,i)=>{const l=e.name.includes("中心")?-1:1,k=i.name.includes("中心")?-1:1;return l!==k?l-k:e.id-i.id})}catch{}finally{ie.value=!1}}async function lt(){de.value=!0;try{const t=await Ht();Ce.value=(t==null?void 0:t.groups)||[]}catch{}finally{de.value=!1}}async function N(){var i;const t=g.value;if(!t){b.warning("请选择结算月");return}const e=I.value;if(!e||!e[0]||!e[1]){b.warning("请设置订单创建时间范围");return}T.value=!0;try{const l=await At(H());ue.value=(l==null?void 0:l.rows)||[],Se.value=(l==null?void 0:l.assistant_rows)||[],Ve.value=(l==null?void 0:l.doctor_rows)||[],oe.value=(l==null?void 0:l.assistant_channel_rows)||[],se.value=(l==null?void 0:l.doctor_channel_rows)||[],U.value=(l==null?void 0:l.total)||{},c.settlement_month=(l==null?void 0:l.settlement_month)||t,c.order_month=(l==null?void 0:l.order_month)||"",c.order_start_time=l!=null&&l.order_start_time?String(l.order_start_time):"",c.order_end_time=l!=null&&l.order_end_time?String(l.order_end_time):"",c.fulfillment_status=(l==null?void 0:l.fulfillment_status)!=null?Number(l.fulfillment_status):3,c.explicit_order_time_window=typeof(l==null?void 0:l.explicit_order_time_window)=="boolean"?l.explicit_order_time_window:!!(c.order_start_time&&c.order_end_time),c.cutoff_end=(l==null?void 0:l.cutoff_end)||"",c.rule_note=(l==null?void 0:l.rule_note)||"",c.channel_name=(l==null?void 0:l.channel_name)||"",c.require_system_auto_prescription=typeof(l==null?void 0:l.require_system_auto_prescription)=="boolean"?l.require_system_auto_prescription:!1,O.value=(l==null?void 0:l.confirm)??null,J.value=((i=l==null?void 0:l.confirm)==null?void 0:i.reconcile_note)!=null?String(l.confirm.reconcile_note):""}catch(l){b.error((l==null?void 0:l.msg)||(l==null?void 0:l.message)||"加载失败"),ue.value=[],Se.value=[],Ve.value=[],oe.value=[],se.value=[],U.value={},O.value=null}finally{T.value=!1}}function H(){const e={settlement_month:g.value,fulfillment_status:3},i=I.value;return i&&i[0]&&i[1]&&(e.start_time=i[0],e.end_time=i[1]),ae.value&&(e.require_system_auto_prescription=1),V.value.length>0&&(e.dept_ids=V.value.join(",")),R.value&&(e.channel_code=R.value),e}function at(){if(!g.value){b.warning("请选择结算月");return}me.value=!0}function nt(){P.value="all",we(1)}async function we(t){if(g.value){fe.value=!0,Ne.value=t;try{const e={...H(),page:t,page_size:Ee.value};P.value&&P.value!=="all"&&(e.bucket=P.value);const i=await Pe(e);ve.value=(i==null?void 0:i.list)||[],ge.value=Number((i==null?void 0:i.count)??0)}catch(e){b.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载明细失败"),ve.value=[],ge.value=0}finally{fe.value=!1}}}async function ot(){if(!g.value){b.warning("请选择结算月");return}if(F.value){b.warning("已确定业绩不可修改备注;请先撤回确定");return}_e.value=!0;try{await Wt({...H(),reconcile_note:J.value}),b.success("已保存核对备注"),await N()}catch(t){b.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"保存失败")}finally{_e.value=!1}}async function st(){if(!g.value){b.warning("请选择结算月");return}try{await Ie.confirm("确定后将为「顺延下期」订单写入结转记录,下一结算月在相同渠道与部门筛选下自动并入统计。确定后仍可「撤回确定」以清除结转并重新核对(与财务对齐后再操作)。","确定本期业绩",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"})}catch{return}ce.value=!0;try{const t=await Qt({...H(),reconcile_note:J.value});b.success(`已确定本期业绩;结转 ${Number((t==null?void 0:t.deferred_carry_count)??0)} 单至 ${String((t==null?void 0:t.next_settlement_month)??"下期")}`),await N()}catch(t){b.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"提交失败")}finally{ce.value=!1}}async function rt(){if(!g.value){b.warning("请选择结算月");return}try{await Ie.confirm("将撤回本次「确定业绩」状态,并删除已写入的顺延结转记录(下期将不再汇入这些单)。确定后继续?","撤回确定业绩",{confirmButtonText:"撤回",cancelButtonText:"取消",type:"warning"})}catch{return}pe.value=!0;try{await jt(H()),b.success("已撤回确定;可重新保存备注并再次确定本期业绩"),await N()}catch(t){b.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"撤回失败")}finally{pe.value=!1}}function it(){g.value=ke(),I.value=re(g.value),ae.value=!1,V.value=[],R.value="",N()}function Me(t){const{columns:e}=t,i=U.value,l=[];return e.forEach((k,m)=>{if(m===0){l[m]="合计";return}const v=k.property;if(!i||!v){l[m]="";return}if(v==="primary_dept_name"||v==="appt_channel_name"){l[m]="";return}if(v==="carry_in_order_count"){l[m]=String(i.carry_in_order_count??0);return}const w={completed_order_count:String(i.completed_order_count??0),completed_order_amount:y(i.completed_order_amount),current_period_count:String(i.current_period_count??0),current_period_amount:y(i.current_period_amount),deferred_period_count:String(i.deferred_period_count??0),deferred_period_amount:y(i.deferred_period_amount)};l[m]=w[String(v)]??""}),l}function $e(t,e){return i=>{const{rowIndex:l,columnIndex:k}=i;if(k>1)return;const m=t.value;if(!m||m.length===0)return;const v=m[l];if(!v)return;const w=v[e],E=l>0?m[l-1]:null;if(E&&E[e]===w)return{rowspan:0,colspan:0};let C=1;for(let D=l+1;D{if(m===0){l[m]="合计";return}const v=k.property;if(!i||!v){l[m]="";return}const w={completed_order_count:String(i.completed_order_count??0),completed_order_amount:y(i.completed_order_amount),current_period_count:String(i.current_period_count??0),current_period_amount:y(i.current_period_amount),deferred_period_count:String(i.deferred_period_count??0),deferred_period_amount:y(i.deferred_period_amount)};l[m]=w[String(v)]??""}),l}return Xt(g,t=>{t&&(I.value=re(t))}),Zt(async()=>{await Promise.all([tt(),lt()]),await N()}),(t,e)=>{const i=gt,l=ht,k=wt,m=yt,v=bt,w=kt,E=St,C=Ct,D=Vt,ct=Ot,S=Nt,pt=Et,mt=Tt,d=$t,le=Mt,ye=zt,ft=Dt,A=Ft,Re=Rt,Fe=Lt,Le=Bt,W=xt;return u(),f("div",ll,[r("header",al,[r("div",nl,[e[16]||(e[16]=Kt('
财务结算 · 业绩台账

提成结算业绩

订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同

',1)),c.settlement_month||c.cutoff_end?(u(),f("dl",ol,[r("div",sl,[e[13]||(e[13]=r("dt",{class:"cs-stat__label"},"结算月",-1)),r("dd",rl,_(c.settlement_month||g.value),1)]),c.order_month||c.order_start_time?(u(),f("div",il,[e[14]||(e[14]=r("dt",{class:"cs-stat__label"},"订单时间窗",-1)),r("dd",dl,_(K.value),1)])):x("",!0),c.cutoff_end?(u(),f("div",ul,[e[15]||(e[15]=r("dt",{class:"cs-stat__label"},"截止时刻",-1)),r("dd",_l,_(c.cutoff_end),1)])):x("",!0)])):x("",!0)])]),n(D,{class:"cs-panel filter-card",shadow:"never"},{default:o(()=>[r("div",cl,[r("div",pl,[r("div",ml,[e[17]||(e[17]=r("span",{class:"lbl"},"结算月",-1)),n(i,{modelValue:g.value,"onUpdate:modelValue":e[0]||(e[0]=a=>g.value=a),type:"month","value-format":"YYYY-MM",placeholder:"选择结算月",class:"filter-month"},null,8,["modelValue"])]),r("div",fl,[e[19]||(e[19]=r("span",{class:"lbl"},"订单创建",-1)),n(i,{modelValue:I.value,"onUpdate:modelValue":e[1]||(e[1]=a=>I.value=a),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","range-separator":"至","start-placeholder":"列表 start_time","end-placeholder":"列表 end_time",class:"filter-datetimerange"},null,8,["modelValue"]),n(l,{modelValue:ae.value,"onUpdate:modelValue":e[2]||(e[2]=a=>ae.value=a),class:"filter-sa-check"},{default:o(()=>[...e[18]||(e[18]=[s(" 仅系统代开处方 ",-1)])]),_:1},8,["modelValue"])]),r("div",vl,[e[20]||(e[20]=r("span",{class:"lbl"},"渠道来源",-1)),n(v,{modelValue:R.value,"onUpdate:modelValue":e[3]||(e[3]=a=>R.value=a),filterable:"",clearable:"",placeholder:"全部",class:"filter-select filter-select--channel",loading:de.value,onChange:N},{default:o(()=>[n(k,{label:"全部",value:""}),(u(!0),f(L,null,Ye(Ce.value,a=>(u(),h(m,{key:a.group_name,label:a.group_name},{default:o(()=>[(u(!0),f(L,null,Ye(a.channels,z=>(u(),h(k,{key:z.channel_code,label:z.channel_name,value:z.channel_code},null,8,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","loading"])]),r("div",gl,[e[21]||(e[21]=r("span",{class:"lbl"},"展示部门",-1)),Q((u(),f("div",hl,[n(w,{modelValue:V.value,"onUpdate:modelValue":e[4]||(e[4]=a=>V.value=a),data:Ae.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":"",filterable:"","check-strictly":"","render-after-expand":!1,"default-expand-all":!0,placeholder:"默认:所有「中心」部门",class:"filter-dept-tree-select","node-key":"id",props:Ge},null,8,["modelValue","data"])])),[[W,ie.value]])]),r("div",bl,[n(C,{type:"primary",class:"filter-btn filter-btn--query",loading:T.value,onClick:N},{default:o(()=>[n(E,{class:"filter-btn__icon"},{default:o(()=>[n(B(It))]),_:1}),e[22]||(e[22]=s(" 查询 ",-1))]),_:1},8,["loading"]),n(C,{class:"filter-btn filter-btn--reset",disabled:T.value,onClick:it},{default:o(()=>[n(E,{class:"filter-btn__icon"},{default:o(()=>[n(B(Ut))]),_:1}),e[23]||(e[23]=s(" 重置 ",-1))]),_:1},8,["disabled"])])])])]),_:1}),n(ct,{type:"info",closable:!1,"show-icon":"",class:"cs-alert"},{title:o(()=>[...e[24]||(e[24]=[r("span",{class:"cs-alert__title"},"统计口径",-1)])]),default:o(()=>[r("div",wl,[c.rule_note?(u(),f("p",yl,_(c.rule_note),1)):(u(),f("p",kl,[...e[25]||(e[25]=[s(" 请选择结算月并设置",-1),r("strong",null,"订单创建时间范围",-1),s("(与处方订单列表 URL 参数 ",-1),r("code",null,"start_time",-1),s("/",-1),r("code",null,"end_time",-1),s("/",-1),r("code",null,"fulfillment_status",-1),s(" 一致);切换结算月会自动带出",-1),r("strong",null,"上一自然月整段",-1),s("作为默认时段,可按业务修改(例如 2026-04-02~04-30)。 「仅系统代开处方」勾选后与列表在未限制开方类型时的条数会不一致。 ",-1)])])),c.cutoff_end?(u(),f("p",xl,[e[30]||(e[30]=s(" 当前结算月:",-1)),r("strong",null,_(c.settlement_month),1),e[31]||(e[31]=s(" · 订单时间:",-1)),r("strong",null,_(K.value),1),e[32]||(e[32]=s(" · 履约状态:",-1)),r("strong",null,_(c.fulfillment_status??3),1),e[33]||(e[33]=s(" · 截止时刻:",-1)),r("strong",null,_(c.cutoff_end),1),c.channel_name?(u(),f(L,{key:0},[e[26]||(e[26]=s(" · 渠道:",-1)),r("strong",null,_(c.channel_name),1)],64)):x("",!0),c.settlement_month?(u(),f(L,{key:1},[e[29]||(e[29]=s(" · 处方池:",-1)),r("strong",null,_(c.require_system_auto_prescription?"仅系统代开":"含手动与系统"),1),c.explicit_order_time_window?(u(),f(L,{key:0},[e[27]||(e[27]=s(" · 列表对齐:",-1)),e[28]||(e[28]=r("strong",null,"是",-1))],64)):x("",!0)],64)):x("",!0)])):x("",!0)])]),_:1}),n(D,{class:"cs-panel cs-reconcile-card",shadow:"never"},{default:o(()=>{var a,z,Be;return[r("div",Cl,[r("div",Sl,[r("div",Vl,[F.value?(u(),h(S,{key:0,type:"success",effect:"dark"},{default:o(()=>[...e[34]||(e[34]=[s("已确定业绩",-1)])]),_:1})):((a=O.value)==null?void 0:a.status)===2?(u(),h(S,{key:1,type:"warning",effect:"plain"},{default:o(()=>[...e[35]||(e[35]=[s("已撤回确定",-1)])]),_:1})):(u(),h(S,{key:2,type:"info",effect:"plain"},{default:o(()=>[...e[36]||(e[36]=[s("待确定业绩",-1)])]),_:1})),F.value&&((z=O.value)!=null&&z.confirmed_at_text)?(u(),f("span",Ol,_(O.value.confirmed_admin_name||"—")+" · "+_(O.value.confirmed_at_text),1)):((Be=O.value)==null?void 0:Be.status)===2&&O.value.revoked_at_text?(u(),f("span",Nl," 撤回:"+_(O.value.revoked_admin_name||"—")+" · "+_(O.value.revoked_at_text),1)):x("",!0)]),r("div",El,[n(C,{type:"primary",plain:"",onClick:at},{default:o(()=>[...e[37]||(e[37]=[s("业绩明细核对",-1)])]),_:1}),n(C,{disabled:F.value||_e.value,onClick:ot},{default:o(()=>[...e[38]||(e[38]=[s(" 保存核对备注 ",-1)])]),_:1},8,["disabled"]),n(C,{type:"warning",disabled:F.value||ce.value,onClick:st},{default:o(()=>[...e[39]||(e[39]=[s(" 确定本期业绩 ",-1)])]),_:1},8,["disabled"]),F.value?(u(),h(C,{key:0,type:"danger",plain:"",loading:pe.value,onClick:rt},{default:o(()=>[...e[40]||(e[40]=[s(" 撤回确定 ",-1)])]),_:1},8,["loading"])):x("",!0)])]),n(pt,{modelValue:J.value,"onUpdate:modelValue":e[5]||(e[5]=vt=>J.value=vt),type:"textarea",rows:2,maxlength:"500","show-word-limit":"",placeholder:"核对备注(可与财务线下对齐后填写;确定业绩前可反复保存)",disabled:F.value,class:"cs-reconcile__note"},null,8,["modelValue","disabled"]),Number(U.value.carry_in_order_count)>0?(u(),f("p",Dl,[e[41]||(e[41]=s(" 上期顺延汇入本期:",-1)),r("strong",null,_(U.value.carry_in_order_count),1),e[42]||(e[42]=s(" 单(已并入当前汇总) ",-1))])):x("",!0)])]}),_:1}),n(D,{class:"cs-panel cs-summary-card",shadow:"never"},{default:o(()=>[n(ft,{modelValue:Oe.value,"onUpdate:modelValue":e[6]||(e[6]=a=>Oe.value=a),class:"cs-summary-tabs"},{default:o(()=>[n(ye,{label:"部门汇总",name:"dept"},{default:o(()=>[r("div",zl,[r("div",Ml,[e[43]||(e[43]=r("span",{class:"cs-table-head__title"},"部门汇总",-1)),ee.value?(u(),f("div",$l,[n(S,{size:"small",type:"info",effect:"plain",class:"cs-drill-state__tag"},{default:o(()=>[s(" 当前下钻:"+_(ee.value.path||ee.value.name),1)]),_:1}),n(C,{link:"",type:"primary",class:"cs-drill-state__back",onClick:Xe},{default:o(()=>[n(E,null,{default:o(()=>[n(B(Pt))]),_:1}),s(" "+_(je.value),1)]),_:1})])):x("",!0)]),e[44]||(e[44]=r("span",{class:"cs-table-head__hint"},[s(" 金额单位:元;与业绩看板相同的部门摊列规则(业绩归属医助 → 展示「中心」)。 "),r("strong",null,"点击部门"),s(":若有子部门则下钻一层;末级部门弹出「已完成业绩订单」明细。 ")],-1))]),Q((u(),h(le,{data:ue.value,border:"",stripe:"",size:"small",class:"cs-table cs-table--clickable","show-summary":"","summary-method":_t},{default:o(()=>[n(d,{prop:"dept_name",label:"部门","min-width":"220",fixed:""},{default:o(({row:a})=>[a.dept_id>0?(u(),h(mt,{key:0,type:"primary",underline:!1,class:"cs-dept-link",onClick:z=>Je(a)},{default:o(()=>[r("span",Tl,_(a.dept_name),1),n(E,{class:"cs-dept-link__icon"},{default:o(()=>[ze(a.dept_id)?(u(),h(B(Yt),{key:0})):(u(),h(B(qt),{key:1}))]),_:2},1024)]),_:2},1032,["onClick"])):(u(),f("span",Rl,_(a.dept_name),1))]),_:1}),n(d,{prop:"completed_order_count",label:"已完成单数","min-width":"104",align:"right"}),n(d,{prop:"completed_order_amount",label:"已完成金额","min-width":"112",align:"right"},{default:o(({row:a})=>[s(_(y(a.completed_order_amount)),1)]),_:1}),n(d,{prop:"current_period_count",label:"本期提成单数","min-width":"118",align:"right"}),n(d,{prop:"current_period_amount",label:"本期提成金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.current_period_amount)),1)]),_:1}),n(d,{prop:"deferred_period_count",label:"顺延下期单数","min-width":"118",align:"right"}),n(d,{prop:"deferred_period_amount",label:"顺延下期金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.deferred_period_amount)),1)]),_:1})]),_:1},8,["data"])),[[W,T.value]])]),_:1}),n(ye,{label:"按医助下发",name:"assistant"},{default:o(()=>[e[45]||(e[45]=r("div",{class:"cs-table-head"},[r("span",{class:"cs-table-head__title"},"业绩归属医助 × 挂号渠道"),r("span",{class:"cs-table-head__hint"},[s(" 按诊单业绩归属医助 "),r("strong",null,"×"),s(" 挂号渠道(doctor_appointment.channels)拆分到行; "),r("strong",null,"「复诊2」「复诊3」「自媒体1」等保持各自独立"),s(",未关联挂号统一归到「未匹配挂号渠道」。 同一医助多行"),r("strong",null,"自动合并「医助 / 归属中心」单元格"),s(",「顺延汇入」为上期结转进入本期订单池的单数。 "),r("strong",null,"展示部门"),s("有勾选时,本表仅列出"),r("strong",null,"可归入该部门上下文"),s("的业绩医助(与人事部门落在所选部门范围内的账号一致)。 "),r("strong",null,"点击挂号渠道"),s(":查看该行对应的业务订单明细(与上方部门筛选一致)。 ")])],-1)),Q((u(),h(le,{data:oe.value,border:"",stripe:"",size:"small",class:"cs-table cs-table--grouped","show-summary":"","summary-method":Me,"span-method":B(dt)},{default:o(()=>[n(d,{prop:"assistant_name",label:"医助","min-width":"120",fixed:"","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属中心","min-width":"120","show-overflow-tooltip":""}),n(d,{prop:"appt_channel_name",label:"挂号渠道","min-width":"120","show-overflow-tooltip":""},{default:o(({row:a})=>[n(S,{size:"small",class:qe(["cs-channel-tag cs-channel-tag--clickable",Te(a.appt_channel_name)]),effect:"plain",onClick:Ue(z=>Ke(a),["stop"])},{default:o(()=>[s(_(a.appt_channel_name),1)]),_:2},1032,["class","onClick"])]),_:1}),n(d,{prop:"carry_in_order_count",label:"顺延汇入单数","min-width":"112",align:"right"}),n(d,{prop:"completed_order_count",label:"已完成单数","min-width":"104",align:"right"}),n(d,{prop:"completed_order_amount",label:"已完成金额","min-width":"112",align:"right"},{default:o(({row:a})=>[s(_(y(a.completed_order_amount)),1)]),_:1}),n(d,{prop:"current_period_count",label:"本期提成单数","min-width":"118",align:"right"}),n(d,{prop:"current_period_amount",label:"本期提成金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.current_period_amount)),1)]),_:1}),n(d,{prop:"deferred_period_count",label:"顺延下期单数","min-width":"118",align:"right"}),n(d,{prop:"deferred_period_amount",label:"顺延下期金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.deferred_period_amount)),1)]),_:1})]),_:1},8,["data","span-method"])),[[W,T.value]])]),_:1}),n(ye,{label:"按医生下发",name:"doctor"},{default:o(()=>[e[46]||(e[46]=r("div",{class:"cs-table-head"},[r("span",{class:"cs-table-head__title"},"处方开方医生 × 挂号渠道"),r("span",{class:"cs-table-head__hint"},[s(" 按处方创建账号(开方人) "),r("strong",null,"×"),s(" 挂号渠道拆分; 可与医助维度交叉核对;同一医生多行自动合并「医生 / 归属中心」单元格。 "),r("strong",null,"展示部门"),s("有勾选时,与医助表相同,仅统计"),r("strong",null,"该部门上下文内"),s("订单对应的开方医生。 "),r("strong",null,"点击挂号渠道"),s(":查看该行对应的业务订单明细。 ")])],-1)),Q((u(),h(le,{data:se.value,border:"",stripe:"",size:"small",class:"cs-table cs-table--grouped","show-summary":"","summary-method":Me,"span-method":B(ut)},{default:o(()=>[n(d,{prop:"doctor_name",label:"医生","min-width":"120",fixed:"","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属中心","min-width":"120","show-overflow-tooltip":""}),n(d,{prop:"appt_channel_name",label:"挂号渠道","min-width":"120","show-overflow-tooltip":""},{default:o(({row:a})=>[n(S,{size:"small",class:qe(["cs-channel-tag cs-channel-tag--clickable",Te(a.appt_channel_name)]),effect:"plain",onClick:Ue(z=>et(a),["stop"])},{default:o(()=>[s(_(a.appt_channel_name),1)]),_:2},1032,["class","onClick"])]),_:1}),n(d,{prop:"carry_in_order_count",label:"顺延汇入单数","min-width":"112",align:"right"}),n(d,{prop:"completed_order_count",label:"已完成单数","min-width":"104",align:"right"}),n(d,{prop:"completed_order_amount",label:"已完成金额","min-width":"112",align:"right"},{default:o(({row:a})=>[s(_(y(a.completed_order_amount)),1)]),_:1}),n(d,{prop:"current_period_count",label:"本期提成单数","min-width":"118",align:"right"}),n(d,{prop:"current_period_amount",label:"本期提成金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.current_period_amount)),1)]),_:1}),n(d,{prop:"deferred_period_count",label:"顺延下期单数","min-width":"118",align:"right"}),n(d,{prop:"deferred_period_amount",label:"顺延下期金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.deferred_period_amount)),1)]),_:1})]),_:1},8,["data","span-method"])),[[W,T.value]])]),_:1})]),_:1},8,["modelValue"])]),_:1}),n(Le,{modelValue:me.value,"onUpdate:modelValue":e[9]||(e[9]=a=>me.value=a),title:"业绩明细核对",width:"1280px","destroy-on-close":"",class:"cs-dialog",onOpen:nt},{default:o(()=>[r("div",Fl,[n(Re,{modelValue:P.value,"onUpdate:modelValue":e[7]||(e[7]=a=>P.value=a),size:"small",onChange:e[8]||(e[8]=a=>we(1))},{default:o(()=>[n(A,{label:"all"},{default:o(()=>[...e[47]||(e[47]=[s("全部",-1)])]),_:1}),n(A,{label:"current"},{default:o(()=>[...e[48]||(e[48]=[s("本期提成",-1)])]),_:1}),n(A,{label:"deferred"},{default:o(()=>[...e[49]||(e[49]=[s("顺延下期",-1)])]),_:1})]),_:1},8,["modelValue"])]),Q((u(),h(le,{data:ve.value,border:"",stripe:"",size:"small","max-height":"440"},{default:o(()=>[n(d,{prop:"order_no",label:"业务订单号","min-width":"128","show-overflow-tooltip":""}),n(d,{label:"快递单号","min-width":"132","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.tracking_number||"—"),1)]),_:1}),n(d,{label:"挂号日期","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[r("span",null,_(a.appointment_date_text||"—"),1),a.appointment_status&&Number(a.appointment_status)!==3?(u(),h(S,{key:0,class:"cs-tag-appt-muted",type:"info",size:"small",effect:"plain"},{default:o(()=>[...e[50]||(e[50]=[s("未完结挂号",-1)])]),_:1})):x("",!0)]),_:1}),n(d,{label:"挂号渠道","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.appt_channel_name||"—"),1)]),_:1}),n(d,{prop:"assistant_name",label:"业绩医助","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"doctor_name",label:"开方医生","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属部门","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"amount",label:"金额",width:"108",align:"right"},{default:o(({row:a})=>[s(_(y(a.amount)),1)]),_:1}),n(d,{label:"分段",width:"88",align:"center"},{default:o(({row:a})=>[a.bucket==="current"?(u(),h(S,{key:0,type:"success",size:"small"},{default:o(()=>[...e[51]||(e[51]=[s("本期",-1)])]),_:1})):(u(),h(S,{key:1,type:"warning",size:"small"},{default:o(()=>[...e[52]||(e[52]=[s("顺延",-1)])]),_:1}))]),_:1}),n(d,{label:"结转",width:"72",align:"center"},{default:o(({row:a})=>[a.is_carry_in?(u(),f("span",Ll,"是")):(u(),f("span",Bl,"—"))]),_:1}),n(d,{label:"顺延说明","min-width":"200","show-overflow-tooltip":""},{default:o(({row:a})=>[a.bucket==="deferred"&&a.bucket_defer_text?(u(),f("span",Il,_(a.bucket_defer_text),1)):(u(),f("span",Ul,"—"))]),_:1}),n(d,{label:"物流签收","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.sign_time_text||"—"),1)]),_:1}),n(d,{prop:"pay_time_text",label:"尾款支付","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.pay_time_text||"—"),1)]),_:1}),n(d,{prop:"create_time_text",label:"订单创建",width:"152"})]),_:1},8,["data"])),[[W,fe.value]]),r("div",Pl,[n(Fe,{layout:"total, prev, pager, next",total:ge.value,"page-size":Ee.value,"current-page":Ne.value,onCurrentChange:we},null,8,["total","page-size","current-page"])])]),_:1},8,["modelValue"]),n(Le,{modelValue:X.value,"onUpdate:modelValue":e[12]||(e[12]=a=>X.value=a),title:We.value,width:"1280px","destroy-on-close":"",class:"cs-dialog"},{default:o(()=>[r("div",Yl,[n(Re,{modelValue:M.value,"onUpdate:modelValue":e[10]||(e[10]=a=>M.value=a),size:"small",onChange:e[11]||(e[11]=a=>te(1))},{default:o(()=>[n(A,{label:"all"},{default:o(()=>[...e[53]||(e[53]=[s("全部已完成",-1)])]),_:1}),n(A,{label:"current"},{default:o(()=>[...e[54]||(e[54]=[s("本期提成",-1)])]),_:1}),n(A,{label:"deferred"},{default:o(()=>[...e[55]||(e[55]=[s("顺延下期",-1)])]),_:1})]),_:1},8,["modelValue"]),r("span",ql,[e[58]||(e[58]=s(" 结算月:",-1)),r("strong",null,_(c.settlement_month||g.value),1),K.value&&K.value!=="—"?(u(),f(L,{key:0},[e[56]||(e[56]=s(" · 订单创建:",-1)),r("strong",null,_(K.value),1)],64)):x("",!0),c.channel_name?(u(),f(L,{key:1},[e[57]||(e[57]=s(" · 渠道:",-1)),r("strong",null,_(c.channel_name),1)],64)):x("",!0)])]),Q((u(),h(le,{data:q.value,border:"",stripe:"",size:"small","max-height":"440"},{default:o(()=>[n(d,{prop:"order_no",label:"业务订单号","min-width":"128","show-overflow-tooltip":""}),n(d,{label:"快递单号","min-width":"132","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.tracking_number||"—"),1)]),_:1}),n(d,{label:"挂号日期","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[r("span",null,_(a.appointment_date_text||"—"),1),a.appointment_status&&Number(a.appointment_status)!==3?(u(),h(S,{key:0,class:"cs-tag-appt-muted",type:"info",size:"small",effect:"plain"},{default:o(()=>[...e[59]||(e[59]=[s("未完结挂号",-1)])]),_:1})):x("",!0)]),_:1}),n(d,{label:"挂号渠道","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.appt_channel_name||"—"),1)]),_:1}),n(d,{prop:"assistant_name",label:"业绩医助","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"doctor_name",label:"开方医生","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属部门","min-width":"120","show-overflow-tooltip":""}),n(d,{prop:"amount",label:"金额",width:"108",align:"right"},{default:o(({row:a})=>[s(_(y(a.amount)),1)]),_:1}),n(d,{label:"分段",width:"88",align:"center"},{default:o(({row:a})=>[a.bucket==="current"?(u(),h(S,{key:0,type:"success",size:"small"},{default:o(()=>[...e[60]||(e[60]=[s("本期",-1)])]),_:1})):(u(),h(S,{key:1,type:"warning",size:"small"},{default:o(()=>[...e[61]||(e[61]=[s("顺延",-1)])]),_:1}))]),_:1}),n(d,{label:"结转",width:"72",align:"center"},{default:o(({row:a})=>[a.is_carry_in?(u(),f("span",Gl,"是")):(u(),f("span",Hl,"—"))]),_:1}),n(d,{label:"顺延说明","min-width":"200","show-overflow-tooltip":""},{default:o(({row:a})=>[a.bucket==="deferred"&&a.bucket_defer_text?(u(),f("span",Al,_(a.bucket_defer_text),1)):(u(),f("span",Wl,"—"))]),_:1}),n(d,{label:"物流签收","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.sign_time_text||"—"),1)]),_:1}),n(d,{prop:"pay_time_text",label:"尾款支付","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.pay_time_text||"—"),1)]),_:1}),n(d,{prop:"create_time_text",label:"订单创建",width:"152"})]),_:1},8,["data"])),[[W,he.value]]),r("div",Ql,[n(Fe,{layout:"total, prev, pager, next",total:G.value,"page-size":De.value,"current-page":Z.value,onCurrentChange:te},null,8,["total","page-size","current-page"])])]),_:1},8,["modelValue","title"])])}}}),Ra=tl(jl,[["__scopeId","data-v-71fdf5ef"]]);export{Ra as default}; +import{a2 as gt,H as ht,P as bt,Q as wt,ag as yt,W as kt,L as xt,i as Ct,d as St,J as Vt,K as Ot,T as Nt,C as Et,m as Dt,l as zt,M as Mt,N as $t,_ as Tt,G as Rt,F as Ft,X as Lt,V as Bt,E as b,a as Ie}from"./element-plus-DFTWCWyi.js";import{s as Ue}from"./@vue/runtime-dom-DDAG46FW.js";import{N as It,x as Ut,m as Pt,g as Yt,a0 as qt}from"./@element-plus/icons-vue-HOEUG8sr.js";import{c as Pe,a as Gt,b as Ht,d as At,e as Wt,f as Qt,g as jt}from"./stats-CxdEJGSN.js";import{f as Jt,w as Xt,b as Zt,ak as u,I as f,J as r,N as Kt,H as x,a as n,aN as o,O as s,F as L,ap as Ye,G as h,aP as Q,A as $}from"./@vue/runtime-core-C6bnekPw.js";import{n as p,y as B,r as el}from"./@vue/reactivity-DiY1c2vO.js";import{Q as _,o as qe}from"./@vue/shared-mAAVTE9n.js";import{_ as tl}from"./index--WnM67ZH.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ll={class:"cs-page"},al={class:"cs-masthead"},nl={class:"cs-masthead__inner"},ol={key:0,class:"cs-masthead__stats"},sl={class:"cs-stat"},rl={class:"cs-stat__value"},il={key:0,class:"cs-stat"},dl={class:"cs-stat__value cs-stat__value--xs"},ul={key:1,class:"cs-stat"},_l={class:"cs-stat__value cs-stat__value--xs"},cl={class:"filter-surface"},pl={class:"filter-row filter-row--top"},ml={class:"filter-field"},fl={class:"filter-field filter-field--rangewrap"},vl={class:"filter-field"},gl={class:"filter-field filter-field--wide"},hl={class:"filter-select filter-select--dept filter-dept-tree-wrap"},bl={class:"filter-actions"},wl={class:"cs-alert__body"},yl={key:0},kl={key:1},xl={key:2,class:"cs-alert__meta"},Cl={class:"cs-reconcile"},Sl={class:"cs-reconcile__head"},Vl={class:"cs-reconcile__tags"},Ol={key:3,class:"cs-reconcile__meta"},Nl={key:4,class:"cs-reconcile__meta"},El={class:"cs-reconcile__toolbar"},Dl={key:0,class:"cs-reconcile__carry"},zl={class:"cs-table-head"},Ml={class:"cs-table-head__row"},$l={key:0,class:"cs-drill-state"},Tl={class:"cs-dept-link__text"},Rl={key:1,class:"cs-muted"},Fl={class:"cs-dialog__bar"},Ll={key:0},Bl={key:1,class:"cs-muted"},Il={key:0,class:"cs-muted"},Ul={key:1,class:"cs-muted"},Pl={class:"cs-dialog__pager"},Yl={class:"cs-dialog__bar cs-dialog__bar--split"},ql={class:"cs-dialog__hint"},Gl={key:0},Hl={key:1,class:"cs-muted"},Al={key:0,class:"cs-muted"},Wl={key:1,class:"cs-muted"},Ql={class:"cs-dialog__pager"},jl=Jt({__name:"commission-settlement",setup(Jl){const Ge={value:"id",label:"name",children:"children"};function He(t){if(!t.length)return[];const e=new Map;for(const m of t)e.set(m.id,{...m,children:[]});const i=[];for(const m of t){const v=e.get(m.id),w=Number(m.pid);w>0&&e.has(w)?e.get(w).children.push(v):i.push(v)}const l=m=>{var v;(v=m.children)!=null&&v.length?m.children.forEach(l):delete m.children};i.forEach(l);const k=m=>{var v;m.sort((w,E)=>{const C=w.name.includes("中心")?-1:1,D=E.name.includes("中心")?-1:1;return C!==D?C-D:w.id-E.id});for(const w of m)(v=w.children)!=null&&v.length&&k(w.children)};return k(i),i}function ke(){const t=new Date,e=t.getFullYear(),i=String(t.getMonth()+1).padStart(2,"0");return`${e}-${i}`}function j(t){return String(t).padStart(2,"0")}function xe(t){return`${t.getFullYear()}-${j(t.getMonth()+1)}-${j(t.getDate())} ${j(t.getHours())}:${j(t.getMinutes())}:${j(t.getSeconds())}`}function re(t){const e=/^(\d{4})-(\d{2})$/.exec(t),i=e?parseInt(e[1],10):new Date().getFullYear(),l=e?parseInt(e[2],10):new Date().getMonth()+1,k=new Date(i,l-2,1,0,0,0),m=new Date(i,l-1,0,23,59,59);return[xe(k),xe(m)]}const g=p(ke()),I=p(re(g.value)),ae=p(!1),T=p(!1),ne=p([]),ie=p(!1),Ae=$(()=>He(ne.value)),V=p([]),Ce=p([]),de=p(!1),R=p(""),ue=p([]),Se=p([]),Ve=p([]),oe=p([]),se=p([]),Oe=p("dept"),U=p({}),c=el({settlement_month:"",order_month:"",order_start_time:"",order_end_time:"",fulfillment_status:3,explicit_order_time_window:!1,cutoff_end:"",rule_note:"",channel_name:"",require_system_auto_prescription:!1}),O=p(null),J=p(""),_e=p(!1),ce=p(!1),pe=p(!1),F=$(()=>{var t;return Number((t=O.value)==null?void 0:t.status)===1}),me=p(!1),fe=p(!1),P=p("all"),ve=p([]),ge=p(0),Ne=p(1),Ee=p(20),X=p(!1),Y=p(null),M=p("all"),q=p([]),G=p(0),Z=p(1),De=p(20),he=p(!1),We=$(()=>{const t=Y.value;return t?t.mode==="dept"?`已完成业绩订单 · ${t.dept_name}`:t.title:"已完成业绩订单"}),K=$(()=>c.order_start_time&&c.order_end_time?`${c.order_start_time}~${c.order_end_time}`:c.order_month||"—"),Qe=$(()=>{const t=new Map;for(const e of ne.value){const i=Number(e.pid),l=t.get(i)??[];l.push(e.id),t.set(i,l)}return t}),be=$(()=>{const t=new Map;for(const e of ne.value)t.set(e.id,e);return t}),ee=$(()=>{if(V.value.length!==1)return null;const t=V.value[0];return be.value.get(t)??null}),je=$(()=>{const t=ee.value;if(!t)return"返回顶层";const e=Number(t.pid),i=e>0?be.value.get(e):null;return!i||Number(i.pid)<=0?"返回顶层":`返回上级 · ${i.name}`});function ze(t){if(!t||t<=0)return!1;const e=Qe.value.get(t);return!!(e&&e.length>0)}function Je(t){if(!(!t||!t.dept_id||t.dept_id<=0)){if(ze(t.dept_id)){V.value=[t.dept_id],N();return}Ze(t.dept_id,t.dept_name)}}function Xe(){const t=ee.value;if(!t){V.value=[],N();return}const e=Number(t.pid),i=e>0?be.value.get(e):null;!i||Number(i.pid)<=0?V.value=[]:V.value=[e],N()}function Ze(t,e){if(!g.value){b.warning("请选择结算月");return}Y.value={mode:"dept",dept_id:t,dept_name:e},M.value="all",Z.value=1,q.value=[],G.value=0,X.value=!0,te(1)}function Ke(t){if(!g.value){b.warning("请选择结算月");return}Y.value={mode:"channel",title:`业务订单 · ${t.appt_channel_name} · 医助 ${t.assistant_name}`,assistant_id:t.assistant_id,appt_channel_value:Number(t.appt_channel_value??0)},M.value="all",Z.value=1,q.value=[],G.value=0,X.value=!0,te(1)}function et(t){if(!g.value){b.warning("请选择结算月");return}Y.value={mode:"channel",title:`业务订单 · ${t.appt_channel_name} · 医生 ${t.doctor_name}`,doctor_id:t.doctor_id,appt_channel_value:Number(t.appt_channel_value??0)},M.value="all",Z.value=1,q.value=[],G.value=0,X.value=!0,te(1)}async function te(t){if(!(!g.value||!Y.value)){he.value=!0,Z.value=t;try{const e=Y.value,i={settlement_month:g.value,page:t,page_size:De.value};e.mode==="dept"?(i.dept_ids=String(e.dept_id),R.value&&(i.channel_code=R.value)):(Object.assign(i,H()),i.appt_channel_value=e.appt_channel_value,e.assistant_id!=null&&(i.assistant_id=e.assistant_id),e.doctor_id!=null&&(i.doctor_id=e.doctor_id)),M.value&&M.value!=="all"&&(i.bucket=M.value);const l=await Pe(i);q.value=(l==null?void 0:l.list)||[],G.value=Number((l==null?void 0:l.count)??0)}catch(e){b.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载明细失败"),q.value=[],G.value=0}finally{he.value=!1}}}function y(t){return t==null||!Number.isFinite(Number(t))?"—":`¥ ${Number(t).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}`}async function tt(){ie.value=!0;try{const t=await Gt();ne.value=(t||[]).sort((e,i)=>{const l=e.name.includes("中心")?-1:1,k=i.name.includes("中心")?-1:1;return l!==k?l-k:e.id-i.id})}catch{}finally{ie.value=!1}}async function lt(){de.value=!0;try{const t=await Ht();Ce.value=(t==null?void 0:t.groups)||[]}catch{}finally{de.value=!1}}async function N(){var i;const t=g.value;if(!t){b.warning("请选择结算月");return}const e=I.value;if(!e||!e[0]||!e[1]){b.warning("请设置订单创建时间范围");return}T.value=!0;try{const l=await At(H());ue.value=(l==null?void 0:l.rows)||[],Se.value=(l==null?void 0:l.assistant_rows)||[],Ve.value=(l==null?void 0:l.doctor_rows)||[],oe.value=(l==null?void 0:l.assistant_channel_rows)||[],se.value=(l==null?void 0:l.doctor_channel_rows)||[],U.value=(l==null?void 0:l.total)||{},c.settlement_month=(l==null?void 0:l.settlement_month)||t,c.order_month=(l==null?void 0:l.order_month)||"",c.order_start_time=l!=null&&l.order_start_time?String(l.order_start_time):"",c.order_end_time=l!=null&&l.order_end_time?String(l.order_end_time):"",c.fulfillment_status=(l==null?void 0:l.fulfillment_status)!=null?Number(l.fulfillment_status):3,c.explicit_order_time_window=typeof(l==null?void 0:l.explicit_order_time_window)=="boolean"?l.explicit_order_time_window:!!(c.order_start_time&&c.order_end_time),c.cutoff_end=(l==null?void 0:l.cutoff_end)||"",c.rule_note=(l==null?void 0:l.rule_note)||"",c.channel_name=(l==null?void 0:l.channel_name)||"",c.require_system_auto_prescription=typeof(l==null?void 0:l.require_system_auto_prescription)=="boolean"?l.require_system_auto_prescription:!1,O.value=(l==null?void 0:l.confirm)??null,J.value=((i=l==null?void 0:l.confirm)==null?void 0:i.reconcile_note)!=null?String(l.confirm.reconcile_note):""}catch(l){b.error((l==null?void 0:l.msg)||(l==null?void 0:l.message)||"加载失败"),ue.value=[],Se.value=[],Ve.value=[],oe.value=[],se.value=[],U.value={},O.value=null}finally{T.value=!1}}function H(){const e={settlement_month:g.value,fulfillment_status:3},i=I.value;return i&&i[0]&&i[1]&&(e.start_time=i[0],e.end_time=i[1]),ae.value&&(e.require_system_auto_prescription=1),V.value.length>0&&(e.dept_ids=V.value.join(",")),R.value&&(e.channel_code=R.value),e}function at(){if(!g.value){b.warning("请选择结算月");return}me.value=!0}function nt(){P.value="all",we(1)}async function we(t){if(g.value){fe.value=!0,Ne.value=t;try{const e={...H(),page:t,page_size:Ee.value};P.value&&P.value!=="all"&&(e.bucket=P.value);const i=await Pe(e);ve.value=(i==null?void 0:i.list)||[],ge.value=Number((i==null?void 0:i.count)??0)}catch(e){b.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载明细失败"),ve.value=[],ge.value=0}finally{fe.value=!1}}}async function ot(){if(!g.value){b.warning("请选择结算月");return}if(F.value){b.warning("已确定业绩不可修改备注;请先撤回确定");return}_e.value=!0;try{await Wt({...H(),reconcile_note:J.value}),b.success("已保存核对备注"),await N()}catch(t){b.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"保存失败")}finally{_e.value=!1}}async function st(){if(!g.value){b.warning("请选择结算月");return}try{await Ie.confirm("确定后将为「顺延下期」订单写入结转记录,下一结算月在相同渠道与部门筛选下自动并入统计。确定后仍可「撤回确定」以清除结转并重新核对(与财务对齐后再操作)。","确定本期业绩",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"})}catch{return}ce.value=!0;try{const t=await Qt({...H(),reconcile_note:J.value});b.success(`已确定本期业绩;结转 ${Number((t==null?void 0:t.deferred_carry_count)??0)} 单至 ${String((t==null?void 0:t.next_settlement_month)??"下期")}`),await N()}catch(t){b.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"提交失败")}finally{ce.value=!1}}async function rt(){if(!g.value){b.warning("请选择结算月");return}try{await Ie.confirm("将撤回本次「确定业绩」状态,并删除已写入的顺延结转记录(下期将不再汇入这些单)。确定后继续?","撤回确定业绩",{confirmButtonText:"撤回",cancelButtonText:"取消",type:"warning"})}catch{return}pe.value=!0;try{await jt(H()),b.success("已撤回确定;可重新保存备注并再次确定本期业绩"),await N()}catch(t){b.error((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"撤回失败")}finally{pe.value=!1}}function it(){g.value=ke(),I.value=re(g.value),ae.value=!1,V.value=[],R.value="",N()}function Me(t){const{columns:e}=t,i=U.value,l=[];return e.forEach((k,m)=>{if(m===0){l[m]="合计";return}const v=k.property;if(!i||!v){l[m]="";return}if(v==="primary_dept_name"||v==="appt_channel_name"){l[m]="";return}if(v==="carry_in_order_count"){l[m]=String(i.carry_in_order_count??0);return}const w={completed_order_count:String(i.completed_order_count??0),completed_order_amount:y(i.completed_order_amount),current_period_count:String(i.current_period_count??0),current_period_amount:y(i.current_period_amount),deferred_period_count:String(i.deferred_period_count??0),deferred_period_amount:y(i.deferred_period_amount)};l[m]=w[String(v)]??""}),l}function $e(t,e){return i=>{const{rowIndex:l,columnIndex:k}=i;if(k>1)return;const m=t.value;if(!m||m.length===0)return;const v=m[l];if(!v)return;const w=v[e],E=l>0?m[l-1]:null;if(E&&E[e]===w)return{rowspan:0,colspan:0};let C=1;for(let D=l+1;D{if(m===0){l[m]="合计";return}const v=k.property;if(!i||!v){l[m]="";return}const w={completed_order_count:String(i.completed_order_count??0),completed_order_amount:y(i.completed_order_amount),current_period_count:String(i.current_period_count??0),current_period_amount:y(i.current_period_amount),deferred_period_count:String(i.deferred_period_count??0),deferred_period_amount:y(i.deferred_period_amount)};l[m]=w[String(v)]??""}),l}return Xt(g,t=>{t&&(I.value=re(t))}),Zt(async()=>{await Promise.all([tt(),lt()]),await N()}),(t,e)=>{const i=gt,l=ht,k=wt,m=yt,v=bt,w=kt,E=St,C=Ct,D=Vt,ct=Ot,S=Nt,pt=Et,mt=Tt,d=$t,le=Mt,ye=zt,ft=Dt,A=Ft,Re=Rt,Fe=Lt,Le=Bt,W=xt;return u(),f("div",ll,[r("header",al,[r("div",nl,[e[16]||(e[16]=Kt('
财务结算 · 业绩台账

提成结算业绩

订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同

',1)),c.settlement_month||c.cutoff_end?(u(),f("dl",ol,[r("div",sl,[e[13]||(e[13]=r("dt",{class:"cs-stat__label"},"结算月",-1)),r("dd",rl,_(c.settlement_month||g.value),1)]),c.order_month||c.order_start_time?(u(),f("div",il,[e[14]||(e[14]=r("dt",{class:"cs-stat__label"},"订单时间窗",-1)),r("dd",dl,_(K.value),1)])):x("",!0),c.cutoff_end?(u(),f("div",ul,[e[15]||(e[15]=r("dt",{class:"cs-stat__label"},"截止时刻",-1)),r("dd",_l,_(c.cutoff_end),1)])):x("",!0)])):x("",!0)])]),n(D,{class:"cs-panel filter-card",shadow:"never"},{default:o(()=>[r("div",cl,[r("div",pl,[r("div",ml,[e[17]||(e[17]=r("span",{class:"lbl"},"结算月",-1)),n(i,{modelValue:g.value,"onUpdate:modelValue":e[0]||(e[0]=a=>g.value=a),type:"month","value-format":"YYYY-MM",placeholder:"选择结算月",class:"filter-month"},null,8,["modelValue"])]),r("div",fl,[e[19]||(e[19]=r("span",{class:"lbl"},"订单创建",-1)),n(i,{modelValue:I.value,"onUpdate:modelValue":e[1]||(e[1]=a=>I.value=a),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","range-separator":"至","start-placeholder":"列表 start_time","end-placeholder":"列表 end_time",class:"filter-datetimerange"},null,8,["modelValue"]),n(l,{modelValue:ae.value,"onUpdate:modelValue":e[2]||(e[2]=a=>ae.value=a),class:"filter-sa-check"},{default:o(()=>[...e[18]||(e[18]=[s(" 仅系统代开处方 ",-1)])]),_:1},8,["modelValue"])]),r("div",vl,[e[20]||(e[20]=r("span",{class:"lbl"},"渠道来源",-1)),n(v,{modelValue:R.value,"onUpdate:modelValue":e[3]||(e[3]=a=>R.value=a),filterable:"",clearable:"",placeholder:"全部",class:"filter-select filter-select--channel",loading:de.value,onChange:N},{default:o(()=>[n(k,{label:"全部",value:""}),(u(!0),f(L,null,Ye(Ce.value,a=>(u(),h(m,{key:a.group_name,label:a.group_name},{default:o(()=>[(u(!0),f(L,null,Ye(a.channels,z=>(u(),h(k,{key:z.channel_code,label:z.channel_name,value:z.channel_code},null,8,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","loading"])]),r("div",gl,[e[21]||(e[21]=r("span",{class:"lbl"},"展示部门",-1)),Q((u(),f("div",hl,[n(w,{modelValue:V.value,"onUpdate:modelValue":e[4]||(e[4]=a=>V.value=a),data:Ae.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":"",filterable:"","check-strictly":"","render-after-expand":!1,"default-expand-all":!0,placeholder:"默认:所有「中心」部门",class:"filter-dept-tree-select","node-key":"id",props:Ge},null,8,["modelValue","data"])])),[[W,ie.value]])]),r("div",bl,[n(C,{type:"primary",class:"filter-btn filter-btn--query",loading:T.value,onClick:N},{default:o(()=>[n(E,{class:"filter-btn__icon"},{default:o(()=>[n(B(It))]),_:1}),e[22]||(e[22]=s(" 查询 ",-1))]),_:1},8,["loading"]),n(C,{class:"filter-btn filter-btn--reset",disabled:T.value,onClick:it},{default:o(()=>[n(E,{class:"filter-btn__icon"},{default:o(()=>[n(B(Ut))]),_:1}),e[23]||(e[23]=s(" 重置 ",-1))]),_:1},8,["disabled"])])])])]),_:1}),n(ct,{type:"info",closable:!1,"show-icon":"",class:"cs-alert"},{title:o(()=>[...e[24]||(e[24]=[r("span",{class:"cs-alert__title"},"统计口径",-1)])]),default:o(()=>[r("div",wl,[c.rule_note?(u(),f("p",yl,_(c.rule_note),1)):(u(),f("p",kl,[...e[25]||(e[25]=[s(" 请选择结算月并设置",-1),r("strong",null,"订单创建时间范围",-1),s("(与处方订单列表 URL 参数 ",-1),r("code",null,"start_time",-1),s("/",-1),r("code",null,"end_time",-1),s("/",-1),r("code",null,"fulfillment_status",-1),s(" 一致);切换结算月会自动带出",-1),r("strong",null,"上一自然月整段",-1),s("作为默认时段,可按业务修改(例如 2026-04-02~04-30)。 「仅系统代开处方」勾选后与列表在未限制开方类型时的条数会不一致。 ",-1)])])),c.cutoff_end?(u(),f("p",xl,[e[30]||(e[30]=s(" 当前结算月:",-1)),r("strong",null,_(c.settlement_month),1),e[31]||(e[31]=s(" · 订单时间:",-1)),r("strong",null,_(K.value),1),e[32]||(e[32]=s(" · 履约状态:",-1)),r("strong",null,_(c.fulfillment_status??3),1),e[33]||(e[33]=s(" · 截止时刻:",-1)),r("strong",null,_(c.cutoff_end),1),c.channel_name?(u(),f(L,{key:0},[e[26]||(e[26]=s(" · 渠道:",-1)),r("strong",null,_(c.channel_name),1)],64)):x("",!0),c.settlement_month?(u(),f(L,{key:1},[e[29]||(e[29]=s(" · 处方池:",-1)),r("strong",null,_(c.require_system_auto_prescription?"仅系统代开":"含手动与系统"),1),c.explicit_order_time_window?(u(),f(L,{key:0},[e[27]||(e[27]=s(" · 列表对齐:",-1)),e[28]||(e[28]=r("strong",null,"是",-1))],64)):x("",!0)],64)):x("",!0)])):x("",!0)])]),_:1}),n(D,{class:"cs-panel cs-reconcile-card",shadow:"never"},{default:o(()=>{var a,z,Be;return[r("div",Cl,[r("div",Sl,[r("div",Vl,[F.value?(u(),h(S,{key:0,type:"success",effect:"dark"},{default:o(()=>[...e[34]||(e[34]=[s("已确定业绩",-1)])]),_:1})):((a=O.value)==null?void 0:a.status)===2?(u(),h(S,{key:1,type:"warning",effect:"plain"},{default:o(()=>[...e[35]||(e[35]=[s("已撤回确定",-1)])]),_:1})):(u(),h(S,{key:2,type:"info",effect:"plain"},{default:o(()=>[...e[36]||(e[36]=[s("待确定业绩",-1)])]),_:1})),F.value&&((z=O.value)!=null&&z.confirmed_at_text)?(u(),f("span",Ol,_(O.value.confirmed_admin_name||"—")+" · "+_(O.value.confirmed_at_text),1)):((Be=O.value)==null?void 0:Be.status)===2&&O.value.revoked_at_text?(u(),f("span",Nl," 撤回:"+_(O.value.revoked_admin_name||"—")+" · "+_(O.value.revoked_at_text),1)):x("",!0)]),r("div",El,[n(C,{type:"primary",plain:"",onClick:at},{default:o(()=>[...e[37]||(e[37]=[s("业绩明细核对",-1)])]),_:1}),n(C,{disabled:F.value||_e.value,onClick:ot},{default:o(()=>[...e[38]||(e[38]=[s(" 保存核对备注 ",-1)])]),_:1},8,["disabled"]),n(C,{type:"warning",disabled:F.value||ce.value,onClick:st},{default:o(()=>[...e[39]||(e[39]=[s(" 确定本期业绩 ",-1)])]),_:1},8,["disabled"]),F.value?(u(),h(C,{key:0,type:"danger",plain:"",loading:pe.value,onClick:rt},{default:o(()=>[...e[40]||(e[40]=[s(" 撤回确定 ",-1)])]),_:1},8,["loading"])):x("",!0)])]),n(pt,{modelValue:J.value,"onUpdate:modelValue":e[5]||(e[5]=vt=>J.value=vt),type:"textarea",rows:2,maxlength:"500","show-word-limit":"",placeholder:"核对备注(可与财务线下对齐后填写;确定业绩前可反复保存)",disabled:F.value,class:"cs-reconcile__note"},null,8,["modelValue","disabled"]),Number(U.value.carry_in_order_count)>0?(u(),f("p",Dl,[e[41]||(e[41]=s(" 上期顺延汇入本期:",-1)),r("strong",null,_(U.value.carry_in_order_count),1),e[42]||(e[42]=s(" 单(已并入当前汇总) ",-1))])):x("",!0)])]}),_:1}),n(D,{class:"cs-panel cs-summary-card",shadow:"never"},{default:o(()=>[n(ft,{modelValue:Oe.value,"onUpdate:modelValue":e[6]||(e[6]=a=>Oe.value=a),class:"cs-summary-tabs"},{default:o(()=>[n(ye,{label:"部门汇总",name:"dept"},{default:o(()=>[r("div",zl,[r("div",Ml,[e[43]||(e[43]=r("span",{class:"cs-table-head__title"},"部门汇总",-1)),ee.value?(u(),f("div",$l,[n(S,{size:"small",type:"info",effect:"plain",class:"cs-drill-state__tag"},{default:o(()=>[s(" 当前下钻:"+_(ee.value.path||ee.value.name),1)]),_:1}),n(C,{link:"",type:"primary",class:"cs-drill-state__back",onClick:Xe},{default:o(()=>[n(E,null,{default:o(()=>[n(B(Pt))]),_:1}),s(" "+_(je.value),1)]),_:1})])):x("",!0)]),e[44]||(e[44]=r("span",{class:"cs-table-head__hint"},[s(" 金额单位:元;与业绩看板相同的部门摊列规则(业绩归属医助 → 展示「中心」)。 "),r("strong",null,"点击部门"),s(":若有子部门则下钻一层;末级部门弹出「已完成业绩订单」明细。 ")],-1))]),Q((u(),h(le,{data:ue.value,border:"",stripe:"",size:"small",class:"cs-table cs-table--clickable","show-summary":"","summary-method":_t},{default:o(()=>[n(d,{prop:"dept_name",label:"部门","min-width":"220",fixed:""},{default:o(({row:a})=>[a.dept_id>0?(u(),h(mt,{key:0,type:"primary",underline:!1,class:"cs-dept-link",onClick:z=>Je(a)},{default:o(()=>[r("span",Tl,_(a.dept_name),1),n(E,{class:"cs-dept-link__icon"},{default:o(()=>[ze(a.dept_id)?(u(),h(B(Yt),{key:0})):(u(),h(B(qt),{key:1}))]),_:2},1024)]),_:2},1032,["onClick"])):(u(),f("span",Rl,_(a.dept_name),1))]),_:1}),n(d,{prop:"completed_order_count",label:"已完成单数","min-width":"104",align:"right"}),n(d,{prop:"completed_order_amount",label:"已完成金额","min-width":"112",align:"right"},{default:o(({row:a})=>[s(_(y(a.completed_order_amount)),1)]),_:1}),n(d,{prop:"current_period_count",label:"本期提成单数","min-width":"118",align:"right"}),n(d,{prop:"current_period_amount",label:"本期提成金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.current_period_amount)),1)]),_:1}),n(d,{prop:"deferred_period_count",label:"顺延下期单数","min-width":"118",align:"right"}),n(d,{prop:"deferred_period_amount",label:"顺延下期金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.deferred_period_amount)),1)]),_:1})]),_:1},8,["data"])),[[W,T.value]])]),_:1}),n(ye,{label:"按医助下发",name:"assistant"},{default:o(()=>[e[45]||(e[45]=r("div",{class:"cs-table-head"},[r("span",{class:"cs-table-head__title"},"业绩归属医助 × 挂号渠道"),r("span",{class:"cs-table-head__hint"},[s(" 按诊单业绩归属医助 "),r("strong",null,"×"),s(" 挂号渠道(doctor_appointment.channels)拆分到行; "),r("strong",null,"「复诊2」「复诊3」「自媒体1」等保持各自独立"),s(",未关联挂号统一归到「未匹配挂号渠道」。 同一医助多行"),r("strong",null,"自动合并「医助 / 归属中心」单元格"),s(",「顺延汇入」为上期结转进入本期订单池的单数。 "),r("strong",null,"展示部门"),s("有勾选时,本表仅列出"),r("strong",null,"可归入该部门上下文"),s("的业绩医助(与人事部门落在所选部门范围内的账号一致)。 "),r("strong",null,"点击挂号渠道"),s(":查看该行对应的业务订单明细(与上方部门筛选一致)。 ")])],-1)),Q((u(),h(le,{data:oe.value,border:"",stripe:"",size:"small",class:"cs-table cs-table--grouped","show-summary":"","summary-method":Me,"span-method":B(dt)},{default:o(()=>[n(d,{prop:"assistant_name",label:"医助","min-width":"120",fixed:"","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属中心","min-width":"120","show-overflow-tooltip":""}),n(d,{prop:"appt_channel_name",label:"挂号渠道","min-width":"120","show-overflow-tooltip":""},{default:o(({row:a})=>[n(S,{size:"small",class:qe(["cs-channel-tag cs-channel-tag--clickable",Te(a.appt_channel_name)]),effect:"plain",onClick:Ue(z=>Ke(a),["stop"])},{default:o(()=>[s(_(a.appt_channel_name),1)]),_:2},1032,["class","onClick"])]),_:1}),n(d,{prop:"carry_in_order_count",label:"顺延汇入单数","min-width":"112",align:"right"}),n(d,{prop:"completed_order_count",label:"已完成单数","min-width":"104",align:"right"}),n(d,{prop:"completed_order_amount",label:"已完成金额","min-width":"112",align:"right"},{default:o(({row:a})=>[s(_(y(a.completed_order_amount)),1)]),_:1}),n(d,{prop:"current_period_count",label:"本期提成单数","min-width":"118",align:"right"}),n(d,{prop:"current_period_amount",label:"本期提成金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.current_period_amount)),1)]),_:1}),n(d,{prop:"deferred_period_count",label:"顺延下期单数","min-width":"118",align:"right"}),n(d,{prop:"deferred_period_amount",label:"顺延下期金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.deferred_period_amount)),1)]),_:1})]),_:1},8,["data","span-method"])),[[W,T.value]])]),_:1}),n(ye,{label:"按医生下发",name:"doctor"},{default:o(()=>[e[46]||(e[46]=r("div",{class:"cs-table-head"},[r("span",{class:"cs-table-head__title"},"处方开方医生 × 挂号渠道"),r("span",{class:"cs-table-head__hint"},[s(" 按处方创建账号(开方人) "),r("strong",null,"×"),s(" 挂号渠道拆分; 可与医助维度交叉核对;同一医生多行自动合并「医生 / 归属中心」单元格。 "),r("strong",null,"展示部门"),s("有勾选时,与医助表相同,仅统计"),r("strong",null,"该部门上下文内"),s("订单对应的开方医生。 "),r("strong",null,"点击挂号渠道"),s(":查看该行对应的业务订单明细。 ")])],-1)),Q((u(),h(le,{data:se.value,border:"",stripe:"",size:"small",class:"cs-table cs-table--grouped","show-summary":"","summary-method":Me,"span-method":B(ut)},{default:o(()=>[n(d,{prop:"doctor_name",label:"医生","min-width":"120",fixed:"","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属中心","min-width":"120","show-overflow-tooltip":""}),n(d,{prop:"appt_channel_name",label:"挂号渠道","min-width":"120","show-overflow-tooltip":""},{default:o(({row:a})=>[n(S,{size:"small",class:qe(["cs-channel-tag cs-channel-tag--clickable",Te(a.appt_channel_name)]),effect:"plain",onClick:Ue(z=>et(a),["stop"])},{default:o(()=>[s(_(a.appt_channel_name),1)]),_:2},1032,["class","onClick"])]),_:1}),n(d,{prop:"carry_in_order_count",label:"顺延汇入单数","min-width":"112",align:"right"}),n(d,{prop:"completed_order_count",label:"已完成单数","min-width":"104",align:"right"}),n(d,{prop:"completed_order_amount",label:"已完成金额","min-width":"112",align:"right"},{default:o(({row:a})=>[s(_(y(a.completed_order_amount)),1)]),_:1}),n(d,{prop:"current_period_count",label:"本期提成单数","min-width":"118",align:"right"}),n(d,{prop:"current_period_amount",label:"本期提成金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.current_period_amount)),1)]),_:1}),n(d,{prop:"deferred_period_count",label:"顺延下期单数","min-width":"118",align:"right"}),n(d,{prop:"deferred_period_amount",label:"顺延下期金额","min-width":"118",align:"right"},{default:o(({row:a})=>[s(_(y(a.deferred_period_amount)),1)]),_:1})]),_:1},8,["data","span-method"])),[[W,T.value]])]),_:1})]),_:1},8,["modelValue"])]),_:1}),n(Le,{modelValue:me.value,"onUpdate:modelValue":e[9]||(e[9]=a=>me.value=a),title:"业绩明细核对",width:"1280px","destroy-on-close":"",class:"cs-dialog",onOpen:nt},{default:o(()=>[r("div",Fl,[n(Re,{modelValue:P.value,"onUpdate:modelValue":e[7]||(e[7]=a=>P.value=a),size:"small",onChange:e[8]||(e[8]=a=>we(1))},{default:o(()=>[n(A,{label:"all"},{default:o(()=>[...e[47]||(e[47]=[s("全部",-1)])]),_:1}),n(A,{label:"current"},{default:o(()=>[...e[48]||(e[48]=[s("本期提成",-1)])]),_:1}),n(A,{label:"deferred"},{default:o(()=>[...e[49]||(e[49]=[s("顺延下期",-1)])]),_:1})]),_:1},8,["modelValue"])]),Q((u(),h(le,{data:ve.value,border:"",stripe:"",size:"small","max-height":"440"},{default:o(()=>[n(d,{prop:"order_no",label:"业务订单号","min-width":"128","show-overflow-tooltip":""}),n(d,{label:"快递单号","min-width":"132","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.tracking_number||"—"),1)]),_:1}),n(d,{label:"挂号日期","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[r("span",null,_(a.appointment_date_text||"—"),1),a.appointment_status&&Number(a.appointment_status)!==3?(u(),h(S,{key:0,class:"cs-tag-appt-muted",type:"info",size:"small",effect:"plain"},{default:o(()=>[...e[50]||(e[50]=[s("未完结挂号",-1)])]),_:1})):x("",!0)]),_:1}),n(d,{label:"挂号渠道","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.appt_channel_name||"—"),1)]),_:1}),n(d,{prop:"assistant_name",label:"业绩医助","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"doctor_name",label:"开方医生","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属部门","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"amount",label:"金额",width:"108",align:"right"},{default:o(({row:a})=>[s(_(y(a.amount)),1)]),_:1}),n(d,{label:"分段",width:"88",align:"center"},{default:o(({row:a})=>[a.bucket==="current"?(u(),h(S,{key:0,type:"success",size:"small"},{default:o(()=>[...e[51]||(e[51]=[s("本期",-1)])]),_:1})):(u(),h(S,{key:1,type:"warning",size:"small"},{default:o(()=>[...e[52]||(e[52]=[s("顺延",-1)])]),_:1}))]),_:1}),n(d,{label:"结转",width:"72",align:"center"},{default:o(({row:a})=>[a.is_carry_in?(u(),f("span",Ll,"是")):(u(),f("span",Bl,"—"))]),_:1}),n(d,{label:"顺延说明","min-width":"200","show-overflow-tooltip":""},{default:o(({row:a})=>[a.bucket==="deferred"&&a.bucket_defer_text?(u(),f("span",Il,_(a.bucket_defer_text),1)):(u(),f("span",Ul,"—"))]),_:1}),n(d,{label:"物流签收","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.sign_time_text||"—"),1)]),_:1}),n(d,{prop:"pay_time_text",label:"尾款支付","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.pay_time_text||"—"),1)]),_:1}),n(d,{prop:"create_time_text",label:"订单创建",width:"152"})]),_:1},8,["data"])),[[W,fe.value]]),r("div",Pl,[n(Fe,{layout:"total, prev, pager, next",total:ge.value,"page-size":Ee.value,"current-page":Ne.value,onCurrentChange:we},null,8,["total","page-size","current-page"])])]),_:1},8,["modelValue"]),n(Le,{modelValue:X.value,"onUpdate:modelValue":e[12]||(e[12]=a=>X.value=a),title:We.value,width:"1280px","destroy-on-close":"",class:"cs-dialog"},{default:o(()=>[r("div",Yl,[n(Re,{modelValue:M.value,"onUpdate:modelValue":e[10]||(e[10]=a=>M.value=a),size:"small",onChange:e[11]||(e[11]=a=>te(1))},{default:o(()=>[n(A,{label:"all"},{default:o(()=>[...e[53]||(e[53]=[s("全部已完成",-1)])]),_:1}),n(A,{label:"current"},{default:o(()=>[...e[54]||(e[54]=[s("本期提成",-1)])]),_:1}),n(A,{label:"deferred"},{default:o(()=>[...e[55]||(e[55]=[s("顺延下期",-1)])]),_:1})]),_:1},8,["modelValue"]),r("span",ql,[e[58]||(e[58]=s(" 结算月:",-1)),r("strong",null,_(c.settlement_month||g.value),1),K.value&&K.value!=="—"?(u(),f(L,{key:0},[e[56]||(e[56]=s(" · 订单创建:",-1)),r("strong",null,_(K.value),1)],64)):x("",!0),c.channel_name?(u(),f(L,{key:1},[e[57]||(e[57]=s(" · 渠道:",-1)),r("strong",null,_(c.channel_name),1)],64)):x("",!0)])]),Q((u(),h(le,{data:q.value,border:"",stripe:"",size:"small","max-height":"440"},{default:o(()=>[n(d,{prop:"order_no",label:"业务订单号","min-width":"128","show-overflow-tooltip":""}),n(d,{label:"快递单号","min-width":"132","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.tracking_number||"—"),1)]),_:1}),n(d,{label:"挂号日期","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[r("span",null,_(a.appointment_date_text||"—"),1),a.appointment_status&&Number(a.appointment_status)!==3?(u(),h(S,{key:0,class:"cs-tag-appt-muted",type:"info",size:"small",effect:"plain"},{default:o(()=>[...e[59]||(e[59]=[s("未完结挂号",-1)])]),_:1})):x("",!0)]),_:1}),n(d,{label:"挂号渠道","min-width":"124","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.appt_channel_name||"—"),1)]),_:1}),n(d,{prop:"assistant_name",label:"业绩医助","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"doctor_name",label:"开方医生","min-width":"100","show-overflow-tooltip":""}),n(d,{prop:"primary_dept_name",label:"归属部门","min-width":"120","show-overflow-tooltip":""}),n(d,{prop:"amount",label:"金额",width:"108",align:"right"},{default:o(({row:a})=>[s(_(y(a.amount)),1)]),_:1}),n(d,{label:"分段",width:"88",align:"center"},{default:o(({row:a})=>[a.bucket==="current"?(u(),h(S,{key:0,type:"success",size:"small"},{default:o(()=>[...e[60]||(e[60]=[s("本期",-1)])]),_:1})):(u(),h(S,{key:1,type:"warning",size:"small"},{default:o(()=>[...e[61]||(e[61]=[s("顺延",-1)])]),_:1}))]),_:1}),n(d,{label:"结转",width:"72",align:"center"},{default:o(({row:a})=>[a.is_carry_in?(u(),f("span",Gl,"是")):(u(),f("span",Hl,"—"))]),_:1}),n(d,{label:"顺延说明","min-width":"200","show-overflow-tooltip":""},{default:o(({row:a})=>[a.bucket==="deferred"&&a.bucket_defer_text?(u(),f("span",Al,_(a.bucket_defer_text),1)):(u(),f("span",Wl,"—"))]),_:1}),n(d,{label:"物流签收","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.sign_time_text||"—"),1)]),_:1}),n(d,{prop:"pay_time_text",label:"尾款支付","min-width":"152","show-overflow-tooltip":""},{default:o(({row:a})=>[s(_(a.pay_time_text||"—"),1)]),_:1}),n(d,{prop:"create_time_text",label:"订单创建",width:"152"})]),_:1},8,["data"])),[[W,he.value]]),r("div",Ql,[n(Fe,{layout:"total, prev, pager, next",total:G.value,"page-size":De.value,"current-page":Z.value,onCurrentChange:te},null,8,["total","page-size","current-page"])])]),_:1},8,["modelValue","title"])])}}}),Ra=tl(jl,[["__scopeId","data-v-71fdf5ef"]]);export{Ra as default}; diff --git a/server/public/admin/assets/config-CKYP7IWW.js b/server/public/admin/assets/config-C_Ur91ii.js similarity index 94% rename from server/public/admin/assets/config-CKYP7IWW.js rename to server/public/admin/assets/config-C_Ur91ii.js index 3ba4368a..675ab3fd 100644 --- a/server/public/admin/assets/config-CKYP7IWW.js +++ b/server/public/admin/assets/config-C_Ur91ii.js @@ -1 +1 @@ -import{_ as q}from"./index-DbiC_Mh1.js";import{K as R,J as j,B,C as T,i as J,G as N,I as O,D as G}from"./element-plus-DFTWCWyi.js";import{_ as K}from"./picker-cSgp8cEl.js";import{g as F,s as L}from"./wx_oa-BOc4Brkk.js";import{e as z}from"./index-Nt5zMHcc.js";import{f as x,as as c,ak as m,I as M,a as o,aN as i,J as l,aP as f,G as v,O as r}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,r as P,q as Z}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const H={class:"w-80"},Q={class:"w-80"},W={class:"w-80"},X={class:"w-80"},Y={class:"flex-1 min-w-0"},$={class:"sm:flex"},h={class:"mr-4 sm:w-80 flex"},ee={class:"flex-1 min-w-0"},oe={class:"w-80"},le={class:"flex-1 min-w-0"},te={class:"w-80"},se={class:"flex-1 min-w-0"},ie={class:"flex-1 min-w-0"},de={class:"sm:flex"},ne={class:"mr-4 sm:w-80 flex"},ae={class:"flex-1 min-w-0"},re={class:"sm:flex"},me={class:"mr-4 sm:w-80 flex"},pe={class:"flex-1 min-w-0"},ue={class:"sm:flex"},_e={class:"mr-4 sm:w-80 flex"},fe=x({name:"wxOaConfig"}),Vo=x({...fe,setup(ve){const y=z(),t=P({name:"",original_id:" ",qr_code:"",app_id:"",app_secret:"",url:"",token:"",encoding_aes_key:"",encryption_type:1,business_domain:"",js_secure_domain:"",web_auth_domain:""}),w=Z(),k={app_id:[{required:!0,message:"请输入AppID",trigger:["blur","change"]}],app_secret:[{required:!0,message:"请输入AppSecret",trigger:["blur","change"]}]},g=async()=>{const p=await F();for(const e in t)t[e]=p[e]},U=async()=>{var p;await((p=w.value)==null?void 0:p.validate()),await L(t),g()};return g(),(p,e)=>{const A=R,u=j,a=T,n=B,E=K,_=J,V=O,D=N,I=G,S=q,b=c("copy"),C=c("perms");return m(),M("div",null,[o(u,{class:"!border-none",shadow:"never"},{default:i(()=>[o(A,{type:"warning",title:"温馨提示:填写微信公众号开发配置,请前往微信公众平台申请服务号并完成认证",closable:!1,"show-icon":""})]),_:1}),o(I,{ref_key:"formRef",ref:w,model:s(t),rules:k,"label-width":s(y).isMobile?"80px":"160px"},{default:i(()=>[o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[13]||(e[13]=l("div",{class:"font-medium mb-7"},"微信公众号",-1)),o(n,{label:"公众号名称",prop:"name"},{default:i(()=>[l("div",H,[o(a,{modelValue:s(t).name,"onUpdate:modelValue":e[0]||(e[0]=d=>s(t).name=d),placeholder:"请输入公众号名称"},null,8,["modelValue"])])]),_:1}),o(n,{label:"原始ID",prop:"original_id"},{default:i(()=>[l("div",Q,[o(a,{modelValue:s(t).original_id,"onUpdate:modelValue":e[1]||(e[1]=d=>s(t).original_id=d),placeholder:"请输入原始ID"},null,8,["modelValue"])])]),_:1}),o(n,{label:"公众号二维码",prop:"qr_code"},{default:i(()=>[l("div",null,[l("div",null,[o(E,{modelValue:s(t).qr_code,"onUpdate:modelValue":e[2]||(e[2]=d=>s(t).qr_code=d),limit:1},null,8,["modelValue"])]),e[12]||(e[12]=l("div",{class:"form-tips"},"建议尺寸:宽400px*高400px。jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[15]||(e[15]=l("div",{class:"font-medium mb-7"},"公众号开发者信息",-1)),o(n,{label:"AppID",prop:"app_id"},{default:i(()=>[l("div",W,[o(a,{modelValue:s(t).app_id,"onUpdate:modelValue":e[3]||(e[3]=d=>s(t).app_id=d),placeholder:"请输入AppID"},null,8,["modelValue"])])]),_:1}),o(n,{label:"AppSecret",prop:"app_secret"},{default:i(()=>[l("div",X,[o(a,{modelValue:s(t).app_secret,"onUpdate:modelValue":e[4]||(e[4]=d=>s(t).app_secret=d),placeholder:"请输入AppSecret"},null,8,["modelValue"])])]),_:1}),o(n,null,{default:i(()=>[...e[14]||(e[14]=[l("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->开发者ID,设置AppID和AppSecret ",-1)])]),_:1})]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[23]||(e[23]=l("div",{class:"font-medium mb-7"},"服务器配置",-1)),o(n,{label:"URL"},{default:i(()=>[l("div",Y,[l("div",$,[l("div",h,[o(a,{modelValue:s(t).url,"onUpdate:modelValue":e[5]||(e[5]=d=>s(t).url=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[16]||(e[16]=[r("复制",-1)])]),_:1})),[[b,s(t).url]])]),e[17]||(e[17]=l("div",{class:"form-tips"}," 登录微信公众平台,点击开发>基本配置>服务器配置,填写服务器地址(URL) ",-1))])]),_:1}),o(n,{label:"Token",prop:"Token"},{default:i(()=>[l("div",ee,[l("div",oe,[o(a,{modelValue:s(t).token,"onUpdate:modelValue":e[6]||(e[6]=d=>s(t).token=d),placeholder:"请输入Token"},null,8,["modelValue"])]),e[18]||(e[18]=l("div",{class:"form-tips"}," 登录微信公众平台,点击开发>基本配置>服务器配置,设置令牌Token。不填默认为“likeshop” ",-1))])]),_:1}),o(n,{label:"EncodingAESKey",prop:"encoding_aes_key"},{default:i(()=>[l("div",le,[l("div",te,[o(a,{modelValue:s(t).encoding_aes_key,"onUpdate:modelValue":e[7]||(e[7]=d=>s(t).encoding_aes_key=d),placeholder:"请输入EncodingAESKey"},null,8,["modelValue"])]),e[19]||(e[19]=l("div",{class:"form-tips"}," 消息加密密钥由43位字符组成,字符范围为A-Z,a-z,0-9 ",-1))])]),_:1}),o(n,{label:"消息加密方式",required:"",prop:"encryption_type"},{default:i(()=>[l("div",se,[o(D,{class:"flex-col !items-start min-w-0",modelValue:s(t).encryption_type,"onUpdate:modelValue":e[8]||(e[8]=d=>s(t).encryption_type=d)},{default:i(()=>[o(V,{value:1},{default:i(()=>[...e[20]||(e[20]=[r(" 明文模式 (不使用消息体加解密功能,安全系数较低) ",-1)])]),_:1}),o(V,{value:2},{default:i(()=>[...e[21]||(e[21]=[r(" 兼容模式 (明文、密文将共存,方便开发者调试和维护) ",-1)])]),_:1}),o(V,{value:3},{default:i(()=>[...e[22]||(e[22]=[r(" 安全模式(推荐) (消息包为纯密文,需要开发者加密和解密,安全系数高) ",-1)])]),_:1})]),_:1},8,["modelValue"])])]),_:1})]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[30]||(e[30]=l("div",{class:"font-medium mb-7"},"功能设置",-1)),o(n,{label:"业务域名"},{default:i(()=>[l("div",ie,[l("div",de,[l("div",ne,[o(a,{modelValue:s(t).business_domain,"onUpdate:modelValue":e[9]||(e[9]=d=>s(t).business_domain=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[24]||(e[24]=[r("复制",-1)])]),_:1})),[[b,s(t).business_domain]])]),e[25]||(e[25]=l("div",{class:"form-tips"}," 登录微信公众平台,点击设置>公众号设置>功能设置,填写业务域名 ",-1))])]),_:1}),o(n,{label:"JS接口安全域名"},{default:i(()=>[l("div",ae,[l("div",re,[l("div",me,[o(a,{modelValue:s(t).js_secure_domain,"onUpdate:modelValue":e[10]||(e[10]=d=>s(t).js_secure_domain=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[26]||(e[26]=[r("复制",-1)])]),_:1})),[[b,s(t).js_secure_domain]])]),e[27]||(e[27]=l("div",{class:"form-tips"}," 登录微信公众平台,点击设置>公众号设置>功能设置,填写JS接口安全域名 ",-1))])]),_:1}),o(n,{label:"网页授权域名"},{default:i(()=>[l("div",pe,[l("div",ue,[l("div",_e,[o(a,{modelValue:s(t).web_auth_domain,"onUpdate:modelValue":e[11]||(e[11]=d=>s(t).web_auth_domain=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[28]||(e[28]=[r("复制",-1)])]),_:1})),[[b,s(t).web_auth_domain]])]),e[29]||(e[29]=l("div",{class:"form-tips"}," 登录微信公众平台,点击设置>公众号设置>功能设置,填写网页授权域名 ",-1))])]),_:1})]),_:1})]),_:1},8,["model","label-width"]),f((m(),v(S,null,{default:i(()=>[o(_,{type:"primary",onClick:U},{default:i(()=>[...e[31]||(e[31]=[r("保存",-1)])]),_:1})]),_:1})),[[C,["channel.official_account_setting/setConfig"]]])])}}});export{Vo as default}; +import{_ as q}from"./index-j275bAO5.js";import{K as R,J as j,B,C as T,i as J,G as N,I as O,D as G}from"./element-plus-DFTWCWyi.js";import{_ as K}from"./picker-DzCeqD7m.js";import{g as F,s as L}from"./wx_oa-CN0ZaZdj.js";import{e as z}from"./index--WnM67ZH.js";import{f as x,as as c,ak as m,I as M,a as o,aN as i,J as l,aP as f,G as v,O as r}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,r as P,q as Z}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const H={class:"w-80"},Q={class:"w-80"},W={class:"w-80"},X={class:"w-80"},Y={class:"flex-1 min-w-0"},$={class:"sm:flex"},h={class:"mr-4 sm:w-80 flex"},ee={class:"flex-1 min-w-0"},oe={class:"w-80"},le={class:"flex-1 min-w-0"},te={class:"w-80"},se={class:"flex-1 min-w-0"},ie={class:"flex-1 min-w-0"},de={class:"sm:flex"},ne={class:"mr-4 sm:w-80 flex"},ae={class:"flex-1 min-w-0"},re={class:"sm:flex"},me={class:"mr-4 sm:w-80 flex"},pe={class:"flex-1 min-w-0"},ue={class:"sm:flex"},_e={class:"mr-4 sm:w-80 flex"},fe=x({name:"wxOaConfig"}),Vo=x({...fe,setup(ve){const y=z(),t=P({name:"",original_id:" ",qr_code:"",app_id:"",app_secret:"",url:"",token:"",encoding_aes_key:"",encryption_type:1,business_domain:"",js_secure_domain:"",web_auth_domain:""}),w=Z(),k={app_id:[{required:!0,message:"请输入AppID",trigger:["blur","change"]}],app_secret:[{required:!0,message:"请输入AppSecret",trigger:["blur","change"]}]},g=async()=>{const p=await F();for(const e in t)t[e]=p[e]},U=async()=>{var p;await((p=w.value)==null?void 0:p.validate()),await L(t),g()};return g(),(p,e)=>{const A=R,u=j,a=T,n=B,E=K,_=J,V=O,D=N,I=G,S=q,b=c("copy"),C=c("perms");return m(),M("div",null,[o(u,{class:"!border-none",shadow:"never"},{default:i(()=>[o(A,{type:"warning",title:"温馨提示:填写微信公众号开发配置,请前往微信公众平台申请服务号并完成认证",closable:!1,"show-icon":""})]),_:1}),o(I,{ref_key:"formRef",ref:w,model:s(t),rules:k,"label-width":s(y).isMobile?"80px":"160px"},{default:i(()=>[o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[13]||(e[13]=l("div",{class:"font-medium mb-7"},"微信公众号",-1)),o(n,{label:"公众号名称",prop:"name"},{default:i(()=>[l("div",H,[o(a,{modelValue:s(t).name,"onUpdate:modelValue":e[0]||(e[0]=d=>s(t).name=d),placeholder:"请输入公众号名称"},null,8,["modelValue"])])]),_:1}),o(n,{label:"原始ID",prop:"original_id"},{default:i(()=>[l("div",Q,[o(a,{modelValue:s(t).original_id,"onUpdate:modelValue":e[1]||(e[1]=d=>s(t).original_id=d),placeholder:"请输入原始ID"},null,8,["modelValue"])])]),_:1}),o(n,{label:"公众号二维码",prop:"qr_code"},{default:i(()=>[l("div",null,[l("div",null,[o(E,{modelValue:s(t).qr_code,"onUpdate:modelValue":e[2]||(e[2]=d=>s(t).qr_code=d),limit:1},null,8,["modelValue"])]),e[12]||(e[12]=l("div",{class:"form-tips"},"建议尺寸:宽400px*高400px。jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[15]||(e[15]=l("div",{class:"font-medium mb-7"},"公众号开发者信息",-1)),o(n,{label:"AppID",prop:"app_id"},{default:i(()=>[l("div",W,[o(a,{modelValue:s(t).app_id,"onUpdate:modelValue":e[3]||(e[3]=d=>s(t).app_id=d),placeholder:"请输入AppID"},null,8,["modelValue"])])]),_:1}),o(n,{label:"AppSecret",prop:"app_secret"},{default:i(()=>[l("div",X,[o(a,{modelValue:s(t).app_secret,"onUpdate:modelValue":e[4]||(e[4]=d=>s(t).app_secret=d),placeholder:"请输入AppSecret"},null,8,["modelValue"])])]),_:1}),o(n,null,{default:i(()=>[...e[14]||(e[14]=[l("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->开发者ID,设置AppID和AppSecret ",-1)])]),_:1})]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[23]||(e[23]=l("div",{class:"font-medium mb-7"},"服务器配置",-1)),o(n,{label:"URL"},{default:i(()=>[l("div",Y,[l("div",$,[l("div",h,[o(a,{modelValue:s(t).url,"onUpdate:modelValue":e[5]||(e[5]=d=>s(t).url=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[16]||(e[16]=[r("复制",-1)])]),_:1})),[[b,s(t).url]])]),e[17]||(e[17]=l("div",{class:"form-tips"}," 登录微信公众平台,点击开发>基本配置>服务器配置,填写服务器地址(URL) ",-1))])]),_:1}),o(n,{label:"Token",prop:"Token"},{default:i(()=>[l("div",ee,[l("div",oe,[o(a,{modelValue:s(t).token,"onUpdate:modelValue":e[6]||(e[6]=d=>s(t).token=d),placeholder:"请输入Token"},null,8,["modelValue"])]),e[18]||(e[18]=l("div",{class:"form-tips"}," 登录微信公众平台,点击开发>基本配置>服务器配置,设置令牌Token。不填默认为“likeshop” ",-1))])]),_:1}),o(n,{label:"EncodingAESKey",prop:"encoding_aes_key"},{default:i(()=>[l("div",le,[l("div",te,[o(a,{modelValue:s(t).encoding_aes_key,"onUpdate:modelValue":e[7]||(e[7]=d=>s(t).encoding_aes_key=d),placeholder:"请输入EncodingAESKey"},null,8,["modelValue"])]),e[19]||(e[19]=l("div",{class:"form-tips"}," 消息加密密钥由43位字符组成,字符范围为A-Z,a-z,0-9 ",-1))])]),_:1}),o(n,{label:"消息加密方式",required:"",prop:"encryption_type"},{default:i(()=>[l("div",se,[o(D,{class:"flex-col !items-start min-w-0",modelValue:s(t).encryption_type,"onUpdate:modelValue":e[8]||(e[8]=d=>s(t).encryption_type=d)},{default:i(()=>[o(V,{value:1},{default:i(()=>[...e[20]||(e[20]=[r(" 明文模式 (不使用消息体加解密功能,安全系数较低) ",-1)])]),_:1}),o(V,{value:2},{default:i(()=>[...e[21]||(e[21]=[r(" 兼容模式 (明文、密文将共存,方便开发者调试和维护) ",-1)])]),_:1}),o(V,{value:3},{default:i(()=>[...e[22]||(e[22]=[r(" 安全模式(推荐) (消息包为纯密文,需要开发者加密和解密,安全系数高) ",-1)])]),_:1})]),_:1},8,["modelValue"])])]),_:1})]),_:1}),o(u,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[e[30]||(e[30]=l("div",{class:"font-medium mb-7"},"功能设置",-1)),o(n,{label:"业务域名"},{default:i(()=>[l("div",ie,[l("div",de,[l("div",ne,[o(a,{modelValue:s(t).business_domain,"onUpdate:modelValue":e[9]||(e[9]=d=>s(t).business_domain=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[24]||(e[24]=[r("复制",-1)])]),_:1})),[[b,s(t).business_domain]])]),e[25]||(e[25]=l("div",{class:"form-tips"}," 登录微信公众平台,点击设置>公众号设置>功能设置,填写业务域名 ",-1))])]),_:1}),o(n,{label:"JS接口安全域名"},{default:i(()=>[l("div",ae,[l("div",re,[l("div",me,[o(a,{modelValue:s(t).js_secure_domain,"onUpdate:modelValue":e[10]||(e[10]=d=>s(t).js_secure_domain=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[26]||(e[26]=[r("复制",-1)])]),_:1})),[[b,s(t).js_secure_domain]])]),e[27]||(e[27]=l("div",{class:"form-tips"}," 登录微信公众平台,点击设置>公众号设置>功能设置,填写JS接口安全域名 ",-1))])]),_:1}),o(n,{label:"网页授权域名"},{default:i(()=>[l("div",pe,[l("div",ue,[l("div",_e,[o(a,{modelValue:s(t).web_auth_domain,"onUpdate:modelValue":e[11]||(e[11]=d=>s(t).web_auth_domain=d),disabled:""},null,8,["modelValue"])]),f((m(),v(_,null,{default:i(()=>[...e[28]||(e[28]=[r("复制",-1)])]),_:1})),[[b,s(t).web_auth_domain]])]),e[29]||(e[29]=l("div",{class:"form-tips"}," 登录微信公众平台,点击设置>公众号设置>功能设置,填写网页授权域名 ",-1))])]),_:1})]),_:1})]),_:1},8,["model","label-width"]),f((m(),v(S,null,{default:i(()=>[o(_,{type:"primary",onClick:U},{default:i(()=>[...e[31]||(e[31]=[r("保存",-1)])]),_:1})]),_:1})),[[C,["channel.official_account_setting/setConfig"]]])])}}});export{Vo as default}; diff --git a/server/public/admin/assets/consumer-CKmJdevC.js b/server/public/admin/assets/consumer-CMvrcBkD.js similarity index 81% rename from server/public/admin/assets/consumer-CKmJdevC.js rename to server/public/admin/assets/consumer-CMvrcBkD.js index 28eac95f..84daf238 100644 --- a/server/public/admin/assets/consumer-CKmJdevC.js +++ b/server/public/admin/assets/consumer-CMvrcBkD.js @@ -1 +1 @@ -import{r}from"./index-Nt5zMHcc.js";function u(e){return r.get({url:"/user.user/lists",params:e},{ignoreCancelToken:!0})}function s(e){return r.get({url:"/user.user/detail",params:e})}function n(e){return r.post({url:"/user.user/edit",params:e})}function o(e){return r.post({url:"/user.user/adjustMoney",params:e})}export{o as a,u as b,s as g,n as u}; +import{r}from"./index--WnM67ZH.js";function u(e){return r.get({url:"/user.user/lists",params:e},{ignoreCancelToken:!0})}function s(e){return r.get({url:"/user.user/detail",params:e})}function n(e){return r.post({url:"/user.user/edit",params:e})}function o(e){return r.post({url:"/user.user/adjustMoney",params:e})}export{o as a,u as b,s as g,n as u}; diff --git a/server/public/admin/assets/content-dDIhxzWA.js b/server/public/admin/assets/content-B7Rh7c78.js similarity index 90% rename from server/public/admin/assets/content-dDIhxzWA.js rename to server/public/admin/assets/content-B7Rh7c78.js index e4bb293e..1afa1036 100644 --- a/server/public/admin/assets/content-dDIhxzWA.js +++ b/server/public/admin/assets/content-B7Rh7c78.js @@ -1 +1 @@ -import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js";import"./decoration-img-A6h02C6l.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-D3j4saYE.js";import"./decoration-img-Bn25X5JS.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/content-BFX6n9yY.js b/server/public/admin/assets/content-B7hHbbXh.js similarity index 70% rename from server/public/admin/assets/content-BFX6n9yY.js rename to server/public/admin/assets/content-B7hHbbXh.js index fa45bcbc..6755fff0 100644 --- a/server/public/admin/assets/content-BFX6n9yY.js +++ b/server/public/admin/assets/content-B7hHbbXh.js @@ -1 +1 @@ -import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/content-DPq40ncB.js b/server/public/admin/assets/content-BLxl9Qo-.js similarity index 96% rename from server/public/admin/assets/content-DPq40ncB.js rename to server/public/admin/assets/content-BLxl9Qo-.js index c9a1aa0e..b31f7caf 100644 --- a/server/public/admin/assets/content-DPq40ncB.js +++ b/server/public/admin/assets/content-BLxl9Qo-.js @@ -1 +1 @@ -import{_ as r}from"./index-Nt5zMHcc.js";import{ak as p,I as i,J as o}from"./@vue/runtime-core-C6bnekPw.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const m="/admin/assets/default_avatar-C6VB7PGm.png",e={},s={class:"user-info flex items-center px-[25px]"};function a(n,t){return p(),i("div",s,[...t[0]||(t[0]=[o("img",{src:m,class:"w-[60px] h-[60px]",alt:""},null,-1),o("div",{class:"text-white text-[18px] ml-[10px]"},"未登录",-1)])])}const T=r(e,[["render",a],["__scopeId","data-v-4b1b613f"]]);export{T as default}; +import{_ as r}from"./index--WnM67ZH.js";import{ak as p,I as i,J as o}from"./@vue/runtime-core-C6bnekPw.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const m="/admin/assets/default_avatar-C6VB7PGm.png",e={},s={class:"user-info flex items-center px-[25px]"};function a(n,t){return p(),i("div",s,[...t[0]||(t[0]=[o("img",{src:m,class:"w-[60px] h-[60px]",alt:""},null,-1),o("div",{class:"text-white text-[18px] ml-[10px]"},"未登录",-1)])])}const T=r(e,[["render",a],["__scopeId","data-v-4b1b613f"]]);export{T as default}; diff --git a/server/public/admin/assets/content-Bq2N97AM.js b/server/public/admin/assets/content-BRFykSo7.js similarity index 95% rename from server/public/admin/assets/content-Bq2N97AM.js rename to server/public/admin/assets/content-BRFykSo7.js index 1be65e3e..a7e0aec4 100644 --- a/server/public/admin/assets/content-Bq2N97AM.js +++ b/server/public/admin/assets/content-BRFykSo7.js @@ -1 +1 @@ -import{c as y,_ as v}from"./index-Nt5zMHcc.js";import d from"./decoration-img-A6h02C6l.js";import{f as b,ak as t,I as e,J as i,H as m,F as x,ap as f,a as n,A as g}from"./@vue/runtime-core-C6bnekPw.js";import{Q as c}from"./@vue/shared-mAAVTE9n.js";import{y as u}from"./@vue/reactivity-DiY1c2vO.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const k={class:"my-service"},w={key:0,class:"title px-[15px] py-[10px]"},B={key:1,class:"flex flex-wrap pt-[20px] pb-[10px]"},I={class:"mt-[7px]"},N={key:2},V={class:"ml-[10px] flex-1"},j=b({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){const _=o,a=g(()=>{var s;return((s=_.content.data)==null?void 0:s.filter(l=>l.is_show=="1"))||[]});return(s,l)=>{const h=y;return t(),e("div",k,[o.content.title?(t(),e("div",w,[i("div",null,c(o.content.title),1)])):m("",!0),o.content.style==1?(t(),e("div",B,[(t(!0),e(x,null,f(u(a),(r,p)=>(t(),e("div",{key:p,class:"flex flex-col items-center w-1/4 mb-[15px]"},[n(d,{width:"26px",height:"26px",src:r.image,alt:""},null,8,["src"]),i("div",I,c(r.name),1)]))),128))])):m("",!0),o.content.style==2?(t(),e("div",N,[(t(!0),e(x,null,f(u(a),(r,p)=>(t(),e("div",{key:p,class:"flex items-center border-b border-[#e5e5e5] h-[50px] px-[12px]"},[n(d,{width:"24px",height:"24px",src:r.image,alt:""},null,8,["src"]),i("div",V,c(r.name),1),i("div",null,[n(h,{name:"el-icon-ArrowRight"})])]))),128))])):m("",!0)])}}}),xt=v(j,[["__scopeId","data-v-2f09c27b"]]);export{xt as default}; +import{c as y,_ as v}from"./index--WnM67ZH.js";import d from"./decoration-img-Bn25X5JS.js";import{f as b,ak as t,I as e,J as i,H as m,F as x,ap as f,a as n,A as g}from"./@vue/runtime-core-C6bnekPw.js";import{Q as c}from"./@vue/shared-mAAVTE9n.js";import{y as u}from"./@vue/reactivity-DiY1c2vO.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const k={class:"my-service"},w={key:0,class:"title px-[15px] py-[10px]"},B={key:1,class:"flex flex-wrap pt-[20px] pb-[10px]"},I={class:"mt-[7px]"},N={key:2},V={class:"ml-[10px] flex-1"},j=b({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){const _=o,a=g(()=>{var s;return((s=_.content.data)==null?void 0:s.filter(l=>l.is_show=="1"))||[]});return(s,l)=>{const h=y;return t(),e("div",k,[o.content.title?(t(),e("div",w,[i("div",null,c(o.content.title),1)])):m("",!0),o.content.style==1?(t(),e("div",B,[(t(!0),e(x,null,f(u(a),(r,p)=>(t(),e("div",{key:p,class:"flex flex-col items-center w-1/4 mb-[15px]"},[n(d,{width:"26px",height:"26px",src:r.image,alt:""},null,8,["src"]),i("div",I,c(r.name),1)]))),128))])):m("",!0),o.content.style==2?(t(),e("div",N,[(t(!0),e(x,null,f(u(a),(r,p)=>(t(),e("div",{key:p,class:"flex items-center border-b border-[#e5e5e5] h-[50px] px-[12px]"},[n(d,{width:"24px",height:"24px",src:r.image,alt:""},null,8,["src"]),i("div",V,c(r.name),1),i("div",null,[n(h,{name:"el-icon-ArrowRight"})])]))),128))])):m("",!0)])}}}),xt=v(j,[["__scopeId","data-v-2f09c27b"]]);export{xt as default}; diff --git a/server/public/admin/assets/content-_IxwYLuN.js b/server/public/admin/assets/content-By25GabM.js similarity index 96% rename from server/public/admin/assets/content-_IxwYLuN.js rename to server/public/admin/assets/content-By25GabM.js index 30a2c087..c38be3f3 100644 --- a/server/public/admin/assets/content-_IxwYLuN.js +++ b/server/public/admin/assets/content-By25GabM.js @@ -1 +1 @@ -import{_ as i,c as m}from"./index-Nt5zMHcc.js";import{ak as p,I as e,J as t,a as s}from"./@vue/runtime-core-C6bnekPw.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const c={},a={class:"search"},n={class:"search-con flex items-center px-[15px]"};function _(d,o){const r=m;return p(),e("div",a,[t("div",n,[s(r,{name:"el-icon-Search",size:17}),o[0]||(o[0]=t("span",{class:"ml-[5px]"},"请输入关键词搜索",-1))])])}const W=i(c,[["render",_],["__scopeId","data-v-3514bdd8"]]);export{W as default}; +import{_ as i,c as m}from"./index--WnM67ZH.js";import{ak as p,I as e,J as t,a as s}from"./@vue/runtime-core-C6bnekPw.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const c={},a={class:"search"},n={class:"search-con flex items-center px-[15px]"};function _(d,o){const r=m;return p(),e("div",a,[t("div",n,[s(r,{name:"el-icon-Search",size:17}),o[0]||(o[0]=t("span",{class:"ml-[5px]"},"请输入关键词搜索",-1))])])}const W=i(c,[["render",_],["__scopeId","data-v-3514bdd8"]]);export{W as default}; diff --git a/server/public/admin/assets/content-CJ-9B74m.js b/server/public/admin/assets/content-C08_uobP.js similarity index 93% rename from server/public/admin/assets/content-CJ-9B74m.js rename to server/public/admin/assets/content-C08_uobP.js index b7779447..d0096595 100644 --- a/server/public/admin/assets/content-CJ-9B74m.js +++ b/server/public/admin/assets/content-C08_uobP.js @@ -1 +1 @@ -import c from"./decoration-img-A6h02C6l.js";import{f as n,ak as r,I as o,F as l,ap as f,a as d,J as u,A as _}from"./@vue/runtime-core-C6bnekPw.js";import{p as x,Q as y}from"./@vue/shared-mAAVTE9n.js";import{y as b}from"./@vue/reactivity-DiY1c2vO.js";import{_ as h}from"./index-Nt5zMHcc.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const g={class:"tabbar flex"},v={class:"leading-3 text-[12px] mt-[4px]"},k=n({__name:"content",props:{style:{type:Object,default:()=>({})},list:{type:Array,default:()=>[]}},setup(e){const m=e,s=_(()=>{var t;return((t=m.list)==null?void 0:t.filter(i=>i.is_show==1))||[]});return(t,i)=>(r(),o("div",g,[(r(!0),o(l,null,f(b(s),(p,a)=>(r(),o("div",{key:a,class:"tabbar-item flex flex-col justify-center items-center flex-1",style:x({color:e.style.default_color})},[d(c,{width:"22px",height:"22px",src:p.unselected,fit:"cover"},null,8,["src"]),u("div",v,y(p.name),1)],4))),128))]))}}),st=h(k,[["__scopeId","data-v-0405bccb"]]);export{st as default}; +import c from"./decoration-img-Bn25X5JS.js";import{f as n,ak as r,I as o,F as l,ap as f,a as d,J as u,A as _}from"./@vue/runtime-core-C6bnekPw.js";import{p as x,Q as y}from"./@vue/shared-mAAVTE9n.js";import{y as b}from"./@vue/reactivity-DiY1c2vO.js";import{_ as h}from"./index--WnM67ZH.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const g={class:"tabbar flex"},v={class:"leading-3 text-[12px] mt-[4px]"},k=n({__name:"content",props:{style:{type:Object,default:()=>({})},list:{type:Array,default:()=>[]}},setup(e){const m=e,s=_(()=>{var t;return((t=m.list)==null?void 0:t.filter(i=>i.is_show==1))||[]});return(t,i)=>(r(),o("div",g,[(r(!0),o(l,null,f(b(s),(p,a)=>(r(),o("div",{key:a,class:"tabbar-item flex flex-col justify-center items-center flex-1",style:x({color:e.style.default_color})},[d(c,{width:"22px",height:"22px",src:p.unselected,fit:"cover"},null,8,["src"]),u("div",v,y(p.name),1)],4))),128))]))}}),st=h(k,[["__scopeId","data-v-0405bccb"]]);export{st as default}; diff --git a/server/public/admin/assets/content-qcqJQjtP.js b/server/public/admin/assets/content-CllbtYBr.js similarity index 90% rename from server/public/admin/assets/content-qcqJQjtP.js rename to server/public/admin/assets/content-CllbtYBr.js index 140730af..e254edf5 100644 --- a/server/public/admin/assets/content-qcqJQjtP.js +++ b/server/public/admin/assets/content-CllbtYBr.js @@ -1 +1 @@ -import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js";import"./decoration-img-A6h02C6l.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-jnpmExki.js";import"./decoration-img-Bn25X5JS.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/content-BvpTtLa-.js b/server/public/admin/assets/content-DDJw1TZH.js similarity index 95% rename from server/public/admin/assets/content-BvpTtLa-.js rename to server/public/admin/assets/content-DDJw1TZH.js index c57c1418..af3a1ae4 100644 --- a/server/public/admin/assets/content-BvpTtLa-.js +++ b/server/public/admin/assets/content-DDJw1TZH.js @@ -1 +1 @@ -import{_ as t}from"./index-Nt5zMHcc.js";import{ak as o,I as r}from"./@vue/runtime-core-C6bnekPw.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const m={},i={class:"page-mate"};function p(e,c){return o(),r("div",i)}const S=t(m,[["render",p]]);export{S as default}; +import{_ as t}from"./index--WnM67ZH.js";import{ak as o,I as r}from"./@vue/runtime-core-C6bnekPw.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const m={},i={class:"page-mate"};function p(e,c){return o(),r("div",i)}const S=t(m,[["render",p]]);export{S as default}; diff --git a/server/public/admin/assets/content-CsKOm_p9.js b/server/public/admin/assets/content-DKdIp2AF.js similarity index 90% rename from server/public/admin/assets/content-CsKOm_p9.js rename to server/public/admin/assets/content-DKdIp2AF.js index a6045008..34a5576c 100644 --- a/server/public/admin/assets/content-CsKOm_p9.js +++ b/server/public/admin/assets/content-DKdIp2AF.js @@ -1 +1 @@ -import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js";import"./decoration-img-A6h02C6l.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js";import"./decoration-img-Bn25X5JS.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/content-DSbMIogU.js b/server/public/admin/assets/content-DeSOYKs_.js similarity index 95% rename from server/public/admin/assets/content-DSbMIogU.js rename to server/public/admin/assets/content-DeSOYKs_.js index 4e8bb8a0..452d4ddc 100644 --- a/server/public/admin/assets/content-DSbMIogU.js +++ b/server/public/admin/assets/content-DeSOYKs_.js @@ -1 +1 @@ -import s from"./decoration-img-A6h02C6l.js";import{f as p,ak as r,I as m,J as e,a as c,H as n,O as a,F as l}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{_ as x}from"./index-Nt5zMHcc.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const d={class:"customer-service bg-white flex flex-col justify-center items-center mx-[18px] mt-[15px] rounded-[10px] px-[10px] pb-[50px]"},f={class:"w-full border-solid border-0 border-b border-[#f5f5f5] p-[15px] text-center text-[#101010] text-base font-medium"},u={class:"mt-[30px]"},b={key:0,class:"text-sm mt-[20px] font-medium"},h={key:1,class:"text-sm mt-[12px] flex flex-wrap"},w=["href"],v={key:2,class:"text-muted text-sm mt-[15px]"},y=p({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){return(k,o)=>(r(),m(l,null,[o[0]||(o[0]=e("view",{class:"bg-white p-[15px] flex text-[#101010] font-medium text-lg"}," 联系我们 ",-1)),e("view",d,[e("view",f,i(t.content.title),1),e("view",u,[c(s,{width:"100px",height:"100px",src:t.content.qrcode,alt:""},null,8,["src"])]),t.content.remark?(r(),m("view",b,i(t.content.remark),1)):n("",!0),t.content.mobile?(r(),m("view",h,[e("a",{class:"ml-[5px] phone text-primary underline",href:"tel:"+t.content.mobile},i(t.content.mobile),9,w)])):n("",!0),t.content.time?(r(),m("view",v," 服务时间:"+i(t.content.time),1)):n("",!0)]),o[1]||(o[1]=a(" Î ",-1))],64))}}),nt=x(y,[["__scopeId","data-v-ed28524a"]]);export{nt as default}; +import s from"./decoration-img-Bn25X5JS.js";import{f as p,ak as r,I as m,J as e,a as c,H as n,O as a,F as l}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{_ as x}from"./index--WnM67ZH.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const d={class:"customer-service bg-white flex flex-col justify-center items-center mx-[18px] mt-[15px] rounded-[10px] px-[10px] pb-[50px]"},f={class:"w-full border-solid border-0 border-b border-[#f5f5f5] p-[15px] text-center text-[#101010] text-base font-medium"},u={class:"mt-[30px]"},b={key:0,class:"text-sm mt-[20px] font-medium"},h={key:1,class:"text-sm mt-[12px] flex flex-wrap"},w=["href"],v={key:2,class:"text-muted text-sm mt-[15px]"},y=p({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){return(k,o)=>(r(),m(l,null,[o[0]||(o[0]=e("view",{class:"bg-white p-[15px] flex text-[#101010] font-medium text-lg"}," 联系我们 ",-1)),e("view",d,[e("view",f,i(t.content.title),1),e("view",u,[c(s,{width:"100px",height:"100px",src:t.content.qrcode,alt:""},null,8,["src"])]),t.content.remark?(r(),m("view",b,i(t.content.remark),1)):n("",!0),t.content.mobile?(r(),m("view",h,[e("a",{class:"ml-[5px] phone text-primary underline",href:"tel:"+t.content.mobile},i(t.content.mobile),9,w)])):n("",!0),t.content.time?(r(),m("view",v," 服务时间:"+i(t.content.time),1)):n("",!0)]),o[1]||(o[1]=a(" Î ",-1))],64))}}),nt=x(y,[["__scopeId","data-v-ed28524a"]]);export{nt as default}; diff --git a/server/public/admin/assets/content-DLHgc5xG.js b/server/public/admin/assets/content-T4Jkt9D0.js similarity index 94% rename from server/public/admin/assets/content-DLHgc5xG.js rename to server/public/admin/assets/content-T4Jkt9D0.js index 0df65b59..d24ccaad 100644 --- a/server/public/admin/assets/content-DLHgc5xG.js +++ b/server/public/admin/assets/content-T4Jkt9D0.js @@ -1 +1 @@ -import{s as _}from"./element-plus-DFTWCWyi.js";import l from"./decoration-img-A6h02C6l.js";import{f,ak as r,I as e,a as p,aN as a,J as t,F as m,ap as c,H as v}from"./@vue/runtime-core-C6bnekPw.js";import{o as h,Q as d}from"./@vue/shared-mAAVTE9n.js";import{_ as x}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const y={class:"pc-aside absolute top-0 bottom-0 left-0 w-[150px]"},k={class:"h-full px-[10px] flex flex-col"},b={class:"mb-auto"},g={class:"nav"},w=["to"],C={class:"ml-[10px]"},N={class:"menu"},B={class:"ml-[6px] line-clamp-1"},E=f({__name:"content",props:{nav:{type:Array,default:()=>[]},menu:{type:Array,default:()=>[]}},setup(n){return(I,i)=>{const u=_;return r(),e("div",y,[p(u,null,{default:a(()=>[t("div",k,[t("div",b,[t("div",g,[(r(!0),e(m,null,c(n.nav,(o,s)=>(r(),e(m,{key:s},[o.is_show=="1"?(r(),e("div",{key:0,to:o.link.path,class:h(["nav-item",{active:s==0}])},[p(l,{width:"18px",height:"18px",src:s==0?o.selected:o.unselected,fit:"cover"},{error:a(()=>[...i[0]||(i[0]=[t("span",null,null,-1)])]),_:1},8,["src"]),t("div",C,d(o.name),1)],10,w)):v("",!0)],64))),128))])]),t("div",null,[t("div",N,[(r(!0),e(m,null,c(n.menu,(o,s)=>(r(),e("div",{class:"menu-item",key:s},[p(l,{width:"16px",height:"16px",src:o.unselected,fit:"cover"},{error:a(()=>[...i[1]||(i[1]=[t("span",null,null,-1)])]),_:1},8,["src"]),t("span",B,d(o.name),1)]))),128))])])])]),_:1})])}}}),ut=x(E,[["__scopeId","data-v-35c14957"]]);export{ut as default}; +import{s as _}from"./element-plus-DFTWCWyi.js";import l from"./decoration-img-Bn25X5JS.js";import{f,ak as r,I as e,a as p,aN as a,J as t,F as m,ap as c,H as v}from"./@vue/runtime-core-C6bnekPw.js";import{o as h,Q as d}from"./@vue/shared-mAAVTE9n.js";import{_ as x}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const y={class:"pc-aside absolute top-0 bottom-0 left-0 w-[150px]"},k={class:"h-full px-[10px] flex flex-col"},b={class:"mb-auto"},g={class:"nav"},w=["to"],C={class:"ml-[10px]"},N={class:"menu"},B={class:"ml-[6px] line-clamp-1"},E=f({__name:"content",props:{nav:{type:Array,default:()=>[]},menu:{type:Array,default:()=>[]}},setup(n){return(I,i)=>{const u=_;return r(),e("div",y,[p(u,null,{default:a(()=>[t("div",k,[t("div",b,[t("div",g,[(r(!0),e(m,null,c(n.nav,(o,s)=>(r(),e(m,{key:s},[o.is_show=="1"?(r(),e("div",{key:0,to:o.link.path,class:h(["nav-item",{active:s==0}])},[p(l,{width:"18px",height:"18px",src:s==0?o.selected:o.unselected,fit:"cover"},{error:a(()=>[...i[0]||(i[0]=[t("span",null,null,-1)])]),_:1},8,["src"]),t("div",C,d(o.name),1)],10,w)):v("",!0)],64))),128))])]),t("div",null,[t("div",N,[(r(!0),e(m,null,c(n.menu,(o,s)=>(r(),e("div",{class:"menu-item",key:s},[p(l,{width:"16px",height:"16px",src:o.unselected,fit:"cover"},{error:a(()=>[...i[1]||(i[1]=[t("span",null,null,-1)])]),_:1},8,["src"]),t("span",B,d(o.name),1)]))),128))])])])]),_:1})])}}}),ut=x(E,[["__scopeId","data-v-35c14957"]]);export{ut as default}; diff --git a/server/public/admin/assets/content-RKc8NsXf.js b/server/public/admin/assets/content-TNbubsqc.js similarity index 95% rename from server/public/admin/assets/content-RKc8NsXf.js rename to server/public/admin/assets/content-TNbubsqc.js index 1fe32334..3d52ade6 100644 --- a/server/public/admin/assets/content-RKc8NsXf.js +++ b/server/public/admin/assets/content-TNbubsqc.js @@ -1 +1 @@ -import{c,_ as n}from"./index-Nt5zMHcc.js";import{g as l}from"./decoration-XX4ow94I.js";import{f as d,ak as o,I as s,J as t,F as _,ap as x,H as f,a as u}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{y as v,n as y}from"./@vue/reactivity-DiY1c2vO.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const w={class:"news"},b={key:0,class:"mr-[10px]"},g=["src"],h={class:"flex flex-col justify-between flex-1"},k={class:"text-[15px] font-medium line-clamp-2"},j={class:"line-clamp-1 text-sm mt-[8px]"},D={class:"text-[#999] text-xs w-full flex justify-between mt-[8px]"},V={class:"flex items-center"},B={class:"ml-[5px]"},N=d({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(C){const r=y([]);return(async()=>{const p=await l({limit:10});r.value=p})(),(p,m)=>{const a=c;return o(),s("div",w,[m[0]||(m[0]=t("div",{class:"flex items-center news-title mx-[10px] my-[15px] text-[17px] font-medium"}," 最新资讯 ",-1)),(o(!0),s(_,null,x(v(r),e=>(o(),s("div",{key:e.id,class:"news-card flex bg-white px-[10px] py-[16px] text-[#333] border-[#f2f2f2] border-b"},[e.image?(o(),s("div",b,[t("img",{src:e.image,class:"w-[120px] h-[90px] object-contain"},null,8,g)])):f("",!0),t("div",h,[t("div",k,i(e.title),1),t("div",j,i(e.desc),1),t("div",D,[t("div",null,i(e.create_time),1),t("div",V,[u(a,{name:"el-icon-View"}),t("div",B,i(e.click),1)])])])]))),128))])}}}),ft=n(N,[["__scopeId","data-v-dba98882"]]);export{ft as default}; +import{c,_ as n}from"./index--WnM67ZH.js";import{g as l}from"./decoration-BA17WVMJ.js";import{f as d,ak as o,I as s,J as t,F as _,ap as x,H as f,a as u}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{y as v,n as y}from"./@vue/reactivity-DiY1c2vO.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const w={class:"news"},b={key:0,class:"mr-[10px]"},g=["src"],h={class:"flex flex-col justify-between flex-1"},k={class:"text-[15px] font-medium line-clamp-2"},j={class:"line-clamp-1 text-sm mt-[8px]"},D={class:"text-[#999] text-xs w-full flex justify-between mt-[8px]"},V={class:"flex items-center"},B={class:"ml-[5px]"},N=d({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(C){const r=y([]);return(async()=>{const p=await l({limit:10});r.value=p})(),(p,m)=>{const a=c;return o(),s("div",w,[m[0]||(m[0]=t("div",{class:"flex items-center news-title mx-[10px] my-[15px] text-[17px] font-medium"}," 最新资讯 ",-1)),(o(!0),s(_,null,x(v(r),e=>(o(),s("div",{key:e.id,class:"news-card flex bg-white px-[10px] py-[16px] text-[#333] border-[#f2f2f2] border-b"},[e.image?(o(),s("div",b,[t("img",{src:e.image,class:"w-[120px] h-[90px] object-contain"},null,8,g)])):f("",!0),t("div",h,[t("div",k,i(e.title),1),t("div",j,i(e.desc),1),t("div",D,[t("div",null,i(e.create_time),1),t("div",V,[u(a,{name:"el-icon-View"}),t("div",B,i(e.click),1)])])])]))),128))])}}}),ft=n(N,[["__scopeId","data-v-dba98882"]]);export{ft as default}; diff --git a/server/public/admin/assets/content-GmXNQpk1.js b/server/public/admin/assets/content-bXaLxCis.js similarity index 90% rename from server/public/admin/assets/content-GmXNQpk1.js rename to server/public/admin/assets/content-bXaLxCis.js index 9187a2b1..9f553521 100644 --- a/server/public/admin/assets/content-GmXNQpk1.js +++ b/server/public/admin/assets/content-bXaLxCis.js @@ -1 +1 @@ -import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-BPonashY.js";import"./decoration-img-A6h02C6l.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js";import"./decoration-img-Bn25X5JS.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js similarity index 89% rename from server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js rename to server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js index a4332a27..24ccd05b 100644 --- a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js +++ b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js @@ -1 +1 @@ -import{K as U,s as j,i as O}from"./element-plus-DFTWCWyi.js";import{_ as R}from"./index-D18gAY1e.js";import{_ as S}from"./picker-W7EVmvPL.js";import{_ as $}from"./picker-cSgp8cEl.js";import{_ as A}from"./index-BQY2-_X1.js";import{i as u}from"./index-Nt5zMHcc.js";import{k as f}from"./lodash-es-C2A-Pj28.js";import{f as D,ak as r,G as g,aN as o,a as n,J as l,I as h,F,ap as q,O as G}from"./@vue/runtime-core-C6bnekPw.js";import{q as I}from"./@vue/reactivity-DiY1c2vO.js";const J={class:"flex flex-wrap p-4"},K={class:"bg-fill-light w-full p-4"},L={class:"flex items-center"},T={class:"mt-4 ml-4"},ee=D({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},height:{type:String,default:"170px"}},emits:["update:content"],setup(d,{expose:x,emit:k}){const _=k,i=I(),a=d,y=()=>{var e;(e=i.value)==null||e.open()},b=()=>{var e;(e=i.value)==null||e.close()},w=()=>{var e;if(((e=a.content.data)==null?void 0:e.length)<10){const t=f(a.content);t.data.push({image:"",name:"",link:{}}),_("update:content",t)}else u.msgError("最多添加10张图片")},V=e=>{var s;if(((s=a.content.data)==null?void 0:s.length)<=1)return u.msgError("最少保留一个轮播图");const t=f(a.content);t.data.splice(e,1),_("update:content",t)};return x({open:y}),(e,t)=>{const s=U,v=$,C=S,E=R,B=O,N=j;return r(),g(A,{ref_key:"popupRef",ref:i,title:"轮播图设置",async:!0,width:"980px",onConfirm:b},{default:o(()=>[n(s,{title:"最多可添加10张,建议图片尺寸750px*440px",type:"warning"}),n(N,{height:"400px",class:"mt-4"},{default:o(()=>[l("div",J,[(r(!0),h(F,null,q(d.content.data,(p,m)=>(r(),h("div",{key:m,class:"w-[400px] mr-4 mb-4"},[(r(),g(E,{key:m,onClose:c=>V(m),class:"w-full"},{default:o(()=>[l("div",K,[l("div",L,[n(v,{width:"122px",height:"122px",modelValue:p.image,"onUpdate:modelValue":c=>p.image=c,"upload-class":"bg-body","exclude-domain":""},{upload:o(()=>[...t[0]||(t[0]=[l("div",{class:"w-[122px] h-[122px] flex justify-center items-center"}," 轮播图 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"]),n(C,{modelValue:p.link,"onUpdate:modelValue":c=>p.link=c},null,8,["modelValue","onUpdate:modelValue"])])])]),_:2},1032,["onClose"]))]))),128))]),l("div",T,[n(B,{link:"",type:"primary",onClick:w},{default:o(()=>[...t[1]||(t[1]=[G("+ 添加轮播图",-1)])]),_:1})])]),_:1})]),_:1},512)}}});export{ee as _}; +import{K as U,s as j,i as O}from"./element-plus-DFTWCWyi.js";import{_ as R}from"./index-BtiRSS_3.js";import{_ as S}from"./picker-Btcf59sz.js";import{_ as $}from"./picker-DzCeqD7m.js";import{_ as A}from"./index-SocYjCJ1.js";import{i as u}from"./index--WnM67ZH.js";import{k as f}from"./lodash-es-C2A-Pj28.js";import{f as D,ak as r,G as g,aN as o,a as n,J as l,I as h,F,ap as q,O as G}from"./@vue/runtime-core-C6bnekPw.js";import{q as I}from"./@vue/reactivity-DiY1c2vO.js";const J={class:"flex flex-wrap p-4"},K={class:"bg-fill-light w-full p-4"},L={class:"flex items-center"},T={class:"mt-4 ml-4"},ee=D({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},height:{type:String,default:"170px"}},emits:["update:content"],setup(d,{expose:x,emit:k}){const _=k,i=I(),a=d,y=()=>{var e;(e=i.value)==null||e.open()},b=()=>{var e;(e=i.value)==null||e.close()},w=()=>{var e;if(((e=a.content.data)==null?void 0:e.length)<10){const t=f(a.content);t.data.push({image:"",name:"",link:{}}),_("update:content",t)}else u.msgError("最多添加10张图片")},V=e=>{var s;if(((s=a.content.data)==null?void 0:s.length)<=1)return u.msgError("最少保留一个轮播图");const t=f(a.content);t.data.splice(e,1),_("update:content",t)};return x({open:y}),(e,t)=>{const s=U,v=$,C=S,E=R,B=O,N=j;return r(),g(A,{ref_key:"popupRef",ref:i,title:"轮播图设置",async:!0,width:"980px",onConfirm:b},{default:o(()=>[n(s,{title:"最多可添加10张,建议图片尺寸750px*440px",type:"warning"}),n(N,{height:"400px",class:"mt-4"},{default:o(()=>[l("div",J,[(r(!0),h(F,null,q(d.content.data,(p,m)=>(r(),h("div",{key:m,class:"w-[400px] mr-4 mb-4"},[(r(),g(E,{key:m,onClose:c=>V(m),class:"w-full"},{default:o(()=>[l("div",K,[l("div",L,[n(v,{width:"122px",height:"122px",modelValue:p.image,"onUpdate:modelValue":c=>p.image=c,"upload-class":"bg-body","exclude-domain":""},{upload:o(()=>[...t[0]||(t[0]=[l("div",{class:"w-[122px] h-[122px] flex justify-center items-center"}," 轮播图 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"]),n(C,{modelValue:p.link,"onUpdate:modelValue":c=>p.link=c},null,8,["modelValue","onUpdate:modelValue"])])])]),_:2},1032,["onClose"]))]))),128))]),l("div",T,[n(B,{link:"",type:"primary",onClick:w},{default:o(()=>[...t[1]||(t[1]=[G("+ 添加轮播图",-1)])]),_:1})])]),_:1})]),_:1},512)}}});export{ee as _}; diff --git a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js similarity index 91% rename from server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js rename to server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js index 0d7af815..f0cc6167 100644 --- a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js +++ b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js @@ -1 +1 @@ -import i from"./decoration-img-A6h02C6l.js";import{f as c,ak as l,I as m,J as u,a as f,A as n}from"./@vue/runtime-core-C6bnekPw.js";import{y as h}from"./@vue/reactivity-DiY1c2vO.js";import{p as d}from"./@vue/shared-mAAVTE9n.js";const p={class:"banner-image w-full h-full"},w=c({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},height:{type:String,default:"96px"}},setup(e){const r=e,t=n(()=>{var a;return((a=r.content.data)==null?void 0:a.filter(s=>s.is_show=="1"))||[]}),o=n(()=>Array.isArray(t.value)&&t.value[0]?t.value[0].image:"");return(a,s)=>(l(),m("div",{class:"banner",style:d(e.styles)},[u("div",p,[f(i,{width:"100%",height:e.styles.height||e.height,src:h(o),fit:"contain"},null,8,["height","src"])])],4))}});export{w as _}; +import i from"./decoration-img-Bn25X5JS.js";import{f as c,ak as l,I as m,J as u,a as f,A as n}from"./@vue/runtime-core-C6bnekPw.js";import{y as h}from"./@vue/reactivity-DiY1c2vO.js";import{p as d}from"./@vue/shared-mAAVTE9n.js";const p={class:"banner-image w-full h-full"},w=c({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},height:{type:String,default:"96px"}},setup(e){const r=e,t=n(()=>{var a;return((a=r.content.data)==null?void 0:a.filter(s=>s.is_show=="1"))||[]}),o=n(()=>Array.isArray(t.value)&&t.value[0]?t.value[0].image:"");return(a,s)=>(l(),m("div",{class:"banner",style:d(e.styles)},[u("div",p,[f(i,{width:"100%",height:e.styles.height||e.height,src:h(o),fit:"contain"},null,8,["height","src"])])],4))}});export{w as _}; diff --git a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-D3j4saYE.js similarity index 91% rename from server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js rename to server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-D3j4saYE.js index fd49f47b..7de7fea9 100644 --- a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js +++ b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-D3j4saYE.js @@ -1 +1 @@ -import c from"./decoration-img-A6h02C6l.js";import{f as i,ak as l,I as m,J as u,a as f,A as r}from"./@vue/runtime-core-C6bnekPw.js";import{y as h}from"./@vue/reactivity-DiY1c2vO.js";import{p}from"./@vue/shared-mAAVTE9n.js";const d={class:"banner-image w-full h-full"},w=i({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},height:{type:String,default:"170px"}},setup(e){const s=e,t=r(()=>{var a;return((a=s.content.data)==null?void 0:a.filter(n=>n.is_show=="1"))||[]}),o=r(()=>Array.isArray(t.value)&&t.value[0]?t.value[0].image:"");return(a,n)=>(l(),m("div",{class:"banner",style:p(e.styles)},[u("div",d,[f(c,{width:"100%",height:e.content.style==1?e.height:"550px",src:h(o),fit:"contain"},null,8,["height","src"])])],4))}});export{w as _}; +import c from"./decoration-img-Bn25X5JS.js";import{f as i,ak as l,I as m,J as u,a as f,A as r}from"./@vue/runtime-core-C6bnekPw.js";import{y as h}from"./@vue/reactivity-DiY1c2vO.js";import{p}from"./@vue/shared-mAAVTE9n.js";const d={class:"banner-image w-full h-full"},w=i({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})},height:{type:String,default:"170px"}},setup(e){const s=e,t=r(()=>{var a;return((a=s.content.data)==null?void 0:a.filter(n=>n.is_show=="1"))||[]}),o=r(()=>Array.isArray(t.value)&&t.value[0]?t.value[0].image:"");return(a,n)=>(l(),m("div",{class:"banner",style:p(e.styles)},[u("div",d,[f(c,{width:"100%",height:e.content.style==1?e.height:"550px",src:h(o),fit:"contain"},null,8,["height","src"])])],4))}});export{w as _}; diff --git a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-BPonashY.js b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js similarity index 90% rename from server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-BPonashY.js rename to server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js index e8c34256..641738b2 100644 --- a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-BPonashY.js +++ b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js @@ -1 +1 @@ -import c from"./decoration-img-A6h02C6l.js";import{f as i,ak as m,I as p,J as l,a as u,A as s}from"./@vue/runtime-core-C6bnekPw.js";import{y as d}from"./@vue/reactivity-DiY1c2vO.js";const f={class:"banner mx-[10px] mt-[10px]"},_={class:"banner-image"},y=i({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(n){const o=n,e=s(()=>{var t;return((t=o.content.data)==null?void 0:t.filter(a=>a.is_show=="1"))||[]}),r=s(()=>Array.isArray(e.value)&&e.value[0]?e.value[0].image:"");return(t,a)=>(m(),p("div",f,[l("div",_,[u(c,{width:"100%",height:"100px",src:d(r),fit:"contain"},null,8,["src"])])]))}});export{y as _}; +import c from"./decoration-img-Bn25X5JS.js";import{f as i,ak as m,I as p,J as l,a as u,A as s}from"./@vue/runtime-core-C6bnekPw.js";import{y as d}from"./@vue/reactivity-DiY1c2vO.js";const f={class:"banner mx-[10px] mt-[10px]"},_={class:"banner-image"},y=i({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(n){const o=n,e=s(()=>{var t;return((t=o.content.data)==null?void 0:t.filter(a=>a.is_show=="1"))||[]}),r=s(()=>Array.isArray(e.value)&&e.value[0]?e.value[0].image:"");return(t,a)=>(m(),p("div",f,[l("div",_,[u(c,{width:"100%",height:"100px",src:d(r),fit:"contain"},null,8,["src"])])]))}});export{y as _}; diff --git a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-jnpmExki.js similarity index 93% rename from server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js rename to server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-jnpmExki.js index 10544810..982b2b38 100644 --- a/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js +++ b/server/public/admin/assets/content.vue_vue_type_script_setup_true_lang-jnpmExki.js @@ -1 +1 @@ -import p from"./decoration-img-A6h02C6l.js";import{f as m,ak as a,I as n,J as r,F as d,ap as f,a as u,A as _}from"./@vue/runtime-core-C6bnekPw.js";import{Q as g,p as h}from"./@vue/shared-mAAVTE9n.js";import{y as x}from"./@vue/reactivity-DiY1c2vO.js";const y={class:"nav bg-white pt-[15px] pb-[8px]"},w={class:"mt-[7px]"},j=m({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){const t=o,c=_(()=>{var s;return(((s=t.content.data)==null?void 0:s.filter(e=>e.is_show=="1"))||[]).slice(0,t.content.show_line*t.content.per_line)});return(i,s)=>(a(),n("div",y,[r("div",{class:"grid grid-rows-auto gap-y-3 w-full",style:h({"grid-template-columns":`repeat(${o.content.per_line}, 1fr)`})},[(a(!0),n(d,null,f(x(c),(e,l)=>(a(),n("div",{key:l,class:"flex flex-col items-center"},[u(p,{width:"41px",height:"41px",src:e.image,alt:""},null,8,["src"]),r("div",w,g(e.name),1)]))),128))],4)]))}});export{j as _}; +import p from"./decoration-img-Bn25X5JS.js";import{f as m,ak as a,I as n,J as r,F as d,ap as f,a as u,A as _}from"./@vue/runtime-core-C6bnekPw.js";import{Q as g,p as h}from"./@vue/shared-mAAVTE9n.js";import{y as x}from"./@vue/reactivity-DiY1c2vO.js";const y={class:"nav bg-white pt-[15px] pb-[8px]"},w={class:"mt-[7px]"},j=m({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){const t=o,c=_(()=>{var s;return(((s=t.content.data)==null?void 0:s.filter(e=>e.is_show=="1"))||[]).slice(0,t.content.show_line*t.content.per_line)});return(i,s)=>(a(),n("div",y,[r("div",{class:"grid grid-rows-auto gap-y-3 w-full",style:h({"grid-template-columns":`repeat(${o.content.per_line}, 1fr)`})},[(a(!0),n(d,null,f(x(c),(e,l)=>(a(),n("div",{key:l,class:"flex flex-col items-center"},[u(p,{width:"41px",height:"41px",src:e.image,alt:""},null,8,["src"]),r("div",w,g(e.name),1)]))),128))],4)]))}});export{j as _}; diff --git a/server/public/admin/assets/cost-edit-DGomcZem.js b/server/public/admin/assets/cost-edit-DOI5rSqz.js similarity index 87% rename from server/public/admin/assets/cost-edit-DGomcZem.js rename to server/public/admin/assets/cost-edit-DOI5rSqz.js index c49a14ee..727842c3 100644 --- a/server/public/admin/assets/cost-edit-DGomcZem.js +++ b/server/public/admin/assets/cost-edit-DOI5rSqz.js @@ -1 +1 @@ -import{_ as o}from"./cost-edit.vue_vue_type_script_setup_true_lang-Dqx_6dkh.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./self_input_stats-DMYot1WP.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";export{o as default}; +import{_ as o}from"./cost-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./self_input_stats-C4Lr_Fd7.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";export{o as default}; diff --git a/server/public/admin/assets/cost-edit.vue_vue_type_script_setup_true_lang-Dqx_6dkh.js b/server/public/admin/assets/cost-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js similarity index 95% rename from server/public/admin/assets/cost-edit.vue_vue_type_script_setup_true_lang-Dqx_6dkh.js rename to server/public/admin/assets/cost-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js index 8804ce7a..2c83ed7b 100644 --- a/server/public/admin/assets/cost-edit.vue_vue_type_script_setup_true_lang-Dqx_6dkh.js +++ b/server/public/admin/assets/cost-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js @@ -1 +1 @@ -import{D as E,B as D,a2 as S,h as q,C as A}from"./element-plus-DFTWCWyi.js";import{b as B,c as F}from"./self_input_stats-DMYot1WP.js";import{_ as I}from"./index-BQY2-_X1.js";import{_ as N}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{f as U,ak as Y,I as L,a as l,aN as r,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as p,n as O,r as z}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"edit-popup"},K=U({__name:"cost-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(u,{expose:_,emit:f}){const i=f,c=p(),d=p(),m=O("add"),g=M(()=>m.value==="edit"?"编辑账户消耗":"新增账户消耗"),e=z({id:"",cost_date:"",media_source:"",amount:0,remark:""}),b={cost_date:[{required:!0,message:"请选择日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],amount:[{required:!0,message:"请输入账户消耗金额",trigger:["blur","change"]}]},w=()=>{e.id="",e.cost_date="",e.media_source="",e.amount=0,e.remark=""},k=async()=>{var t,o;await((t=c.value)==null?void 0:t.validate()),m.value==="edit"?await B(e):await F(e),(o=d.value)==null||o.close(),i("success")},V=(t="add")=>{var o;m.value=t,w(),(o=d.value)==null||o.open()},v=t=>{e.id=t.id??"",e.cost_date=t.cost_date??"",e.media_source=t.media_source??"",e.amount=Number(t.amount??0),e.remark=t.remark??""},x=()=>{i("close")};return _({open:V,setFormData:v}),(t,o)=>{const h=S,n=D,y=q,C=A,R=E;return Y(),L("div",P,[l(I,{ref_key:"popupRef",ref:d,title:a(g),async:!0,width:"520px",onConfirm:k,onClose:x},{default:r(()=>[l(R,{ref_key:"formRef",ref:c,model:a(e),"label-width":"110px",rules:b},{default:r(()=>[l(n,{label:"日期",prop:"cost_date"},{default:r(()=>[l(h,{modelValue:a(e).cost_date,"onUpdate:modelValue":o[0]||(o[0]=s=>a(e).cost_date=s),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:a(m)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),l(n,{label:"自媒体来源",prop:"media_source"},{default:r(()=>[l(N,{modelValue:a(e).media_source,"onUpdate:modelValue":o[1]||(o[1]=s=>a(e).media_source=s),options:u.mediaSourceOptions,loading:u.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:a(m)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),l(n,{label:"账户消耗",prop:"amount"},{default:r(()=>[l(y,{modelValue:a(e).amount,"onUpdate:modelValue":o[2]||(o[2]=s=>a(e).amount=s),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1}),l(n,{label:"备注",prop:"remark"},{default:r(()=>[l(C,{modelValue:a(e).remark,"onUpdate:modelValue":o[3]||(o[3]=s=>a(e).remark=s),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{K as _}; +import{D as E,B as D,a2 as S,h as q,C as A}from"./element-plus-DFTWCWyi.js";import{b as B,c as F}from"./self_input_stats-C4Lr_Fd7.js";import{_ as I}from"./index-SocYjCJ1.js";import{_ as N}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{f as U,ak as Y,I as L,a as l,aN as r,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as p,n as O,r as z}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"edit-popup"},K=U({__name:"cost-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(u,{expose:_,emit:f}){const i=f,c=p(),d=p(),m=O("add"),g=M(()=>m.value==="edit"?"编辑账户消耗":"新增账户消耗"),e=z({id:"",cost_date:"",media_source:"",amount:0,remark:""}),b={cost_date:[{required:!0,message:"请选择日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],amount:[{required:!0,message:"请输入账户消耗金额",trigger:["blur","change"]}]},w=()=>{e.id="",e.cost_date="",e.media_source="",e.amount=0,e.remark=""},k=async()=>{var t,o;await((t=c.value)==null?void 0:t.validate()),m.value==="edit"?await B(e):await F(e),(o=d.value)==null||o.close(),i("success")},V=(t="add")=>{var o;m.value=t,w(),(o=d.value)==null||o.open()},v=t=>{e.id=t.id??"",e.cost_date=t.cost_date??"",e.media_source=t.media_source??"",e.amount=Number(t.amount??0),e.remark=t.remark??""},x=()=>{i("close")};return _({open:V,setFormData:v}),(t,o)=>{const h=S,n=D,y=q,C=A,R=E;return Y(),L("div",P,[l(I,{ref_key:"popupRef",ref:d,title:a(g),async:!0,width:"520px",onConfirm:k,onClose:x},{default:r(()=>[l(R,{ref_key:"formRef",ref:c,model:a(e),"label-width":"110px",rules:b},{default:r(()=>[l(n,{label:"日期",prop:"cost_date"},{default:r(()=>[l(h,{modelValue:a(e).cost_date,"onUpdate:modelValue":o[0]||(o[0]=s=>a(e).cost_date=s),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:a(m)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),l(n,{label:"自媒体来源",prop:"media_source"},{default:r(()=>[l(N,{modelValue:a(e).media_source,"onUpdate:modelValue":o[1]||(o[1]=s=>a(e).media_source=s),options:u.mediaSourceOptions,loading:u.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:a(m)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),l(n,{label:"账户消耗",prop:"amount"},{default:r(()=>[l(y,{modelValue:a(e).amount,"onUpdate:modelValue":o[2]||(o[2]=s=>a(e).amount=s),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1}),l(n,{label:"备注",prop:"remark"},{default:r(()=>[l(C,{modelValue:a(e).remark,"onUpdate:modelValue":o[3]||(o[3]=s=>a(e).remark=s),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{K as _}; diff --git a/server/public/admin/assets/data-table-D0gd6MAn.js b/server/public/admin/assets/data-table-Ba_q4X-N.js similarity index 83% rename from server/public/admin/assets/data-table-D0gd6MAn.js rename to server/public/admin/assets/data-table-Ba_q4X-N.js index 01a4fd44..5a8fb50e 100644 --- a/server/public/admin/assets/data-table-D0gd6MAn.js +++ b/server/public/admin/assets/data-table-Ba_q4X-N.js @@ -1 +1 @@ -import{_ as o}from"./data-table.vue_vue_type_script_setup_true_lang-BF_waQWh.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./code-C9qHBHs_.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BQY2-_X1.js";import"./usePaging-VsbTxSU0.js";export{o as default}; +import{_ as o}from"./data-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./code-CrOutkes.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-SocYjCJ1.js";import"./usePaging-VsbTxSU0.js";export{o as default}; diff --git a/server/public/admin/assets/data-table.vue_vue_type_script_setup_true_lang-BF_waQWh.js b/server/public/admin/assets/data-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js similarity index 92% rename from server/public/admin/assets/data-table.vue_vue_type_script_setup_true_lang-BF_waQWh.js rename to server/public/admin/assets/data-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js index 20f99261..774d7e48 100644 --- a/server/public/admin/assets/data-table.vue_vue_type_script_setup_true_lang-BF_waQWh.js +++ b/server/public/admin/assets/data-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js @@ -1 +1 @@ -import{D as K,B as N,C as T,i as D,M as P,N as R,L as F}from"./element-plus-DFTWCWyi.js";import{w as b}from"./@vue/runtime-dom-DDAG46FW.js";import{f as I,h as L}from"./code-C9qHBHs_.js";import{_ as S}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as U}from"./index-BQY2-_X1.js";import{u as q}from"./usePaging-VsbTxSU0.js";import{i as z}from"./index-Nt5zMHcc.js";import{f as M,w as $,ak as g,I as h,a as e,aN as l,O as w,aP as j,J,aq as O}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,a as A,q as G,r as H,n as Q}from"./@vue/reactivity-DiY1c2vO.js";const W={class:"data-table"},X={class:"m-4"},Y={class:"flex justify-end mt-4"},re=M({__name:"data-table",emits:["success"],setup(Z,{emit:C}){const v=C,u=G(),n=H({name:"",comment:""}),{pager:s,getLists:f,resetParams:y,resetPage:c}=q({fetchFun:I,params:n,size:10}),d=Q([]),V=o=>{d.value=o.map(({name:t,comment:i})=>({name:t,comment:i}))},k=async()=>{var o;if(!d.value.length)return z.msgError("请选择数据表");await L({table:d.value}),(o=u.value)==null||o.close(),v("success")};return $(()=>{var o;return(o=u.value)==null?void 0:o.visible},o=>{o&&f()}),(o,t)=>{const i=T,p=N,_=D,E=K,r=R,x=P,B=F;return g(),h("div",W,[e(U,{ref_key:"popupRef",ref:u,clickModalClose:!1,title:"选择表",width:"900px",async:!0,onConfirm:k},{trigger:l(()=>[O(o.$slots,"default")]),default:l(()=>[e(E,{class:"ls-form",model:a(n),inline:""},{default:l(()=>[e(p,{class:"w-[280px]",label:"表名称"},{default:l(()=>[e(i,{modelValue:a(n).name,"onUpdate:modelValue":t[0]||(t[0]=m=>a(n).name=m),clearable:"",onKeyup:b(a(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,{class:"w-[280px]",label:"表描述"},{default:l(()=>[e(i,{modelValue:a(n).comment,"onUpdate:modelValue":t[1]||(t[1]=m=>a(n).comment=m),clearable:"",onKeyup:b(a(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,null,{default:l(()=>[e(_,{type:"primary",onClick:a(c)},{default:l(()=>[...t[3]||(t[3]=[w("查询",-1)])]),_:1},8,["onClick"]),e(_,{onClick:a(y)},{default:l(()=>[...t[4]||(t[4]=[w("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"]),j((g(),h("div",X,[e(x,{height:"400",size:"large",data:a(s).lists,onSelectionChange:V},{default:l(()=>[e(r,{type:"selection",width:"55"}),e(r,{label:"表名称",prop:"name","min-width":"150"}),e(r,{label:"表描述",prop:"comment","min-width":"160"}),e(r,{label:"创建时间",prop:"create_time","min-width":"180"})]),_:1},8,["data"])])),[[B,a(s).loading]]),J("div",Y,[e(S,{modelValue:a(s),"onUpdate:modelValue":t[2]||(t[2]=m=>A(s)?s.value=m:null),onChange:a(f)},null,8,["modelValue","onChange"])])]),_:3},512)])}}});export{re as _}; +import{D as K,B as N,C as T,i as D,M as P,N as R,L as F}from"./element-plus-DFTWCWyi.js";import{w as b}from"./@vue/runtime-dom-DDAG46FW.js";import{f as I,h as L}from"./code-CrOutkes.js";import{_ as S}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as U}from"./index-SocYjCJ1.js";import{u as q}from"./usePaging-VsbTxSU0.js";import{i as z}from"./index--WnM67ZH.js";import{f as M,w as $,ak as g,I as h,a as e,aN as l,O as w,aP as j,J,aq as O}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,a as A,q as G,r as H,n as Q}from"./@vue/reactivity-DiY1c2vO.js";const W={class:"data-table"},X={class:"m-4"},Y={class:"flex justify-end mt-4"},re=M({__name:"data-table",emits:["success"],setup(Z,{emit:C}){const v=C,u=G(),n=H({name:"",comment:""}),{pager:s,getLists:f,resetParams:y,resetPage:c}=q({fetchFun:I,params:n,size:10}),d=Q([]),V=o=>{d.value=o.map(({name:t,comment:i})=>({name:t,comment:i}))},k=async()=>{var o;if(!d.value.length)return z.msgError("请选择数据表");await L({table:d.value}),(o=u.value)==null||o.close(),v("success")};return $(()=>{var o;return(o=u.value)==null?void 0:o.visible},o=>{o&&f()}),(o,t)=>{const i=T,p=N,_=D,E=K,r=R,x=P,B=F;return g(),h("div",W,[e(U,{ref_key:"popupRef",ref:u,clickModalClose:!1,title:"选择表",width:"900px",async:!0,onConfirm:k},{trigger:l(()=>[O(o.$slots,"default")]),default:l(()=>[e(E,{class:"ls-form",model:a(n),inline:""},{default:l(()=>[e(p,{class:"w-[280px]",label:"表名称"},{default:l(()=>[e(i,{modelValue:a(n).name,"onUpdate:modelValue":t[0]||(t[0]=m=>a(n).name=m),clearable:"",onKeyup:b(a(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,{class:"w-[280px]",label:"表描述"},{default:l(()=>[e(i,{modelValue:a(n).comment,"onUpdate:modelValue":t[1]||(t[1]=m=>a(n).comment=m),clearable:"",onKeyup:b(a(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,null,{default:l(()=>[e(_,{type:"primary",onClick:a(c)},{default:l(()=>[...t[3]||(t[3]=[w("查询",-1)])]),_:1},8,["onClick"]),e(_,{onClick:a(y)},{default:l(()=>[...t[4]||(t[4]=[w("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"]),j((g(),h("div",X,[e(x,{height:"400",size:"large",data:a(s).lists,onSelectionChange:V},{default:l(()=>[e(r,{type:"selection",width:"55"}),e(r,{label:"表名称",prop:"name","min-width":"150"}),e(r,{label:"表描述",prop:"comment","min-width":"160"}),e(r,{label:"创建时间",prop:"create_time","min-width":"180"})]),_:1},8,["data"])])),[[B,a(s).loading]]),J("div",Y,[e(S,{modelValue:a(s),"onUpdate:modelValue":t[2]||(t[2]=m=>A(s)?s.value=m:null),onChange:a(f)},null,8,["modelValue","onChange"])])]),_:3},512)])}}});export{re as _}; diff --git a/server/public/admin/assets/decoration-XX4ow94I.js b/server/public/admin/assets/decoration-BA17WVMJ.js similarity index 87% rename from server/public/admin/assets/decoration-XX4ow94I.js rename to server/public/admin/assets/decoration-BA17WVMJ.js index d98d7f55..5fa5f972 100644 --- a/server/public/admin/assets/decoration-XX4ow94I.js +++ b/server/public/admin/assets/decoration-BA17WVMJ.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function a(e){return t.get({url:"/decorate.page/detail",params:e},{ignoreCancelToken:!0})}function o(e){return t.post({url:"/decorate.page/save",params:e})}function c(e){return t.get({url:"/decorate.data/article",params:e})}function n(e){return t.get({url:"/decorate.tabbar/detail",params:e})}function u(e){return t.post({url:"/decorate.tabbar/save",params:e})}function s(){return t.get({url:"/decorate.data/pc"})}export{a,s as b,n as c,u as d,c as g,o as s}; +import{r as t}from"./index--WnM67ZH.js";function a(e){return t.get({url:"/decorate.page/detail",params:e},{ignoreCancelToken:!0})}function o(e){return t.post({url:"/decorate.page/save",params:e})}function c(e){return t.get({url:"/decorate.data/article",params:e})}function n(e){return t.get({url:"/decorate.tabbar/detail",params:e})}function u(e){return t.post({url:"/decorate.tabbar/save",params:e})}function s(){return t.get({url:"/decorate.data/pc"})}export{a,s as b,n as c,u as d,c as g,o as s}; diff --git a/server/public/admin/assets/decoration-img-A6h02C6l.js b/server/public/admin/assets/decoration-img-Bn25X5JS.js similarity index 96% rename from server/public/admin/assets/decoration-img-A6h02C6l.js rename to server/public/admin/assets/decoration-img-Bn25X5JS.js index dfb6a258..ac9e45a8 100644 --- a/server/public/admin/assets/decoration-img-A6h02C6l.js +++ b/server/public/admin/assets/decoration-img-Bn25X5JS.js @@ -1 +1 @@ -import{t as d,v as l}from"./element-plus-DFTWCWyi.js";import{e as u,c as _,o,_ as g}from"./index-Nt5zMHcc.js";import{f,ak as h,G as y,aN as i,J as e,a as N,ab as b,A as v}from"./@vue/runtime-core-C6bnekPw.js";import{y as w}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const I={class:"image-slot"},S=f({__name:"decoration-img",props:{width:{type:[String,Number],default:"auto"},height:{type:[String,Number],default:"auto"},radius:{type:[String,Number],default:0},...d},setup(m){const t=m,{getImageUrl:p}=u(),s=v(()=>({width:o(t.width),height:o(t.height),borderRadius:o(t.radius)}));return(a,r)=>{const n=_,c=l;return h(),y(c,b({style:s.value},t,{src:w(p)(a.src)}),{placeholder:i(()=>[...r[0]||(r[0]=[e("div",{class:"image-slot"},null,-1)])]),error:i(()=>[e("div",I,[N(n,{name:"el-icon-Picture",size:30})])]),_:1},16,["style","src"])}}}),at=g(S,[["__scopeId","data-v-5e0890d2"]]);export{at as default}; +import{t as d,v as l}from"./element-plus-DFTWCWyi.js";import{e as u,c as _,o,_ as g}from"./index--WnM67ZH.js";import{f,ak as h,G as y,aN as i,J as e,a as N,ab as b,A as v}from"./@vue/runtime-core-C6bnekPw.js";import{y as w}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const I={class:"image-slot"},S=f({__name:"decoration-img",props:{width:{type:[String,Number],default:"auto"},height:{type:[String,Number],default:"auto"},radius:{type:[String,Number],default:0},...d},setup(m){const t=m,{getImageUrl:p}=u(),s=v(()=>({width:o(t.width),height:o(t.height),borderRadius:o(t.radius)}));return(a,r)=>{const n=_,c=l;return h(),y(c,b({style:s.value},t,{src:w(p)(a.src)}),{placeholder:i(()=>[...r[0]||(r[0]=[e("div",{class:"image-slot"},null,-1)])]),error:i(()=>[e("div",I,[N(n,{name:"el-icon-Picture",size:30})])]),_:1},16,["style","src"])}}}),at=g(S,[["__scopeId","data-v-5e0890d2"]]);export{at as default}; diff --git a/server/public/admin/assets/default_reply-Cpi-HWLu.js b/server/public/admin/assets/default_reply-B3C3UH9r.js similarity index 93% rename from server/public/admin/assets/default_reply-Cpi-HWLu.js rename to server/public/admin/assets/default_reply-B3C3UH9r.js index 345297e7..bdc92e6e 100644 --- a/server/public/admin/assets/default_reply-Cpi-HWLu.js +++ b/server/public/admin/assets/default_reply-B3C3UH9r.js @@ -1 +1 @@ -import{K as B,J as D,i as T,M as L,N as A,g as O,L as P}from"./element-plus-DFTWCWyi.js";import{_ as U}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as J,i as v}from"./index-Nt5zMHcc.js";import{d as j,o as q,e as z}from"./wx_oa-BOc4Brkk.js";import{u as F}from"./usePaging-VsbTxSU0.js";import{_ as G}from"./edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js";import{f as H,ak as f,I,a as e,aN as n,J as y,O as u,aP as K,G as w,H as M,A as Q,n as h}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as W,q as X,n as Y}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Z}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const tt={class:"flex justify-end mt-4"},Gt=H({__name:"default_reply",setup(et){const m=X(),p=Y(!1),b=Q(()=>a=>{switch(a){case 1:return"文本"}}),{pager:r,getLists:l}=F({fetchFun:j,params:{reply_type:3}}),C=async()=>{var a;p.value=!0,await h(),(a=m.value)==null||a.open("add",3)},k=async a=>{var t,d;p.value=!0,await h(),(t=m.value)==null||t.open("edit",3),(d=m.value)==null||d.getDetail(a)},V=async a=>{await v.confirm("确定要删除?"),await q({id:a}),v.msgSuccess("删除成功"),l()},E=async a=>{try{await z({id:a}),l()}catch{l()}};return l(),(a,t)=>{const d=B,g=D,$=J,_=T,s=A,x=O,R=L,S=U,N=P;return f(),I("div",null,[e(g,{class:"!border-none",shadow:"never"},{default:n(()=>[e(d,{type:"warning",title:"温馨提示:1.粉丝在公众号发送内容时,系统无法匹配情况下发送启用的默认文本回复;2.同时只能启用一个默认回复。",closable:!1,"show-icon":""})]),_:1}),e(g,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[y("div",null,[e(_,{class:"mb-4",type:"primary",onClick:t[0]||(t[0]=o=>C())},{icon:n(()=>[e($,{name:"el-icon-Plus"})]),default:n(()=>[t[3]||(t[3]=u(" 新增 ",-1))]),_:1})]),K((f(),w(R,{size:"large",data:i(r).lists},{default:n(()=>[e(s,{label:"规则名称",prop:"name","min-width":"120"}),e(s,{label:"回复类型","min-width":"120"},{default:n(({row:o})=>[u(Z(i(b)(o.content_type)),1)]),_:1}),e(s,{label:"回复内容",prop:"content","min-width":"120"}),e(s,{label:"状态","min-width":"120"},{default:n(({row:o})=>[e(x,{modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0,onChange:c=>E(o.id)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),e(s,{label:"排序",prop:"sort","min-width":"120"}),e(s,{label:"操作",width:"120",fixed:"right"},{default:n(({row:o})=>[e(_,{type:"primary",link:"",onClick:c=>k(o)},{default:n(()=>[...t[4]||(t[4]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"]),e(_,{type:"danger",link:"",onClick:c=>V(o.id)},{default:n(()=>[...t[5]||(t[5]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[N,i(r).loading]]),y("div",tt,[e(S,{modelValue:i(r),"onUpdate:modelValue":t[1]||(t[1]=o=>W(r)?r.value=o:null),onChange:i(l)},null,8,["modelValue","onChange"])])]),_:1}),i(p)?(f(),w(G,{key:0,ref_key:"editRef",ref:m,onSuccess:i(l),onClose:t[2]||(t[2]=o=>p.value=!1)},null,8,["onSuccess"])):M("",!0)])}}});export{Gt as default}; +import{K as B,J as D,i as T,M as L,N as A,g as O,L as P}from"./element-plus-DFTWCWyi.js";import{_ as U}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as J,i as v}from"./index--WnM67ZH.js";import{d as j,o as q,e as z}from"./wx_oa-CN0ZaZdj.js";import{u as F}from"./usePaging-VsbTxSU0.js";import{_ as G}from"./edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js";import{f as H,ak as f,I,a as e,aN as n,J as y,O as u,aP as K,G as w,H as M,A as Q,n as h}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as W,q as X,n as Y}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Z}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const tt={class:"flex justify-end mt-4"},Gt=H({__name:"default_reply",setup(et){const m=X(),p=Y(!1),b=Q(()=>a=>{switch(a){case 1:return"文本"}}),{pager:r,getLists:l}=F({fetchFun:j,params:{reply_type:3}}),C=async()=>{var a;p.value=!0,await h(),(a=m.value)==null||a.open("add",3)},k=async a=>{var t,d;p.value=!0,await h(),(t=m.value)==null||t.open("edit",3),(d=m.value)==null||d.getDetail(a)},V=async a=>{await v.confirm("确定要删除?"),await q({id:a}),v.msgSuccess("删除成功"),l()},E=async a=>{try{await z({id:a}),l()}catch{l()}};return l(),(a,t)=>{const d=B,g=D,$=J,_=T,s=A,x=O,R=L,S=U,N=P;return f(),I("div",null,[e(g,{class:"!border-none",shadow:"never"},{default:n(()=>[e(d,{type:"warning",title:"温馨提示:1.粉丝在公众号发送内容时,系统无法匹配情况下发送启用的默认文本回复;2.同时只能启用一个默认回复。",closable:!1,"show-icon":""})]),_:1}),e(g,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[y("div",null,[e(_,{class:"mb-4",type:"primary",onClick:t[0]||(t[0]=o=>C())},{icon:n(()=>[e($,{name:"el-icon-Plus"})]),default:n(()=>[t[3]||(t[3]=u(" 新增 ",-1))]),_:1})]),K((f(),w(R,{size:"large",data:i(r).lists},{default:n(()=>[e(s,{label:"规则名称",prop:"name","min-width":"120"}),e(s,{label:"回复类型","min-width":"120"},{default:n(({row:o})=>[u(Z(i(b)(o.content_type)),1)]),_:1}),e(s,{label:"回复内容",prop:"content","min-width":"120"}),e(s,{label:"状态","min-width":"120"},{default:n(({row:o})=>[e(x,{modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0,onChange:c=>E(o.id)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),e(s,{label:"排序",prop:"sort","min-width":"120"}),e(s,{label:"操作",width:"120",fixed:"right"},{default:n(({row:o})=>[e(_,{type:"primary",link:"",onClick:c=>k(o)},{default:n(()=>[...t[4]||(t[4]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"]),e(_,{type:"danger",link:"",onClick:c=>V(o.id)},{default:n(()=>[...t[5]||(t[5]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[N,i(r).loading]]),y("div",tt,[e(S,{modelValue:i(r),"onUpdate:modelValue":t[1]||(t[1]=o=>W(r)?r.value=o:null),onChange:i(l)},null,8,["modelValue","onChange"])])]),_:1}),i(p)?(f(),w(G,{key:0,ref_key:"editRef",ref:m,onSuccess:i(l),onClose:t[2]||(t[2]=o=>p.value=!1)},null,8,["onSuccess"])):M("",!0)])}}});export{Gt as default}; diff --git a/server/public/admin/assets/department-CSUh_x-a.js b/server/public/admin/assets/department-D5OVad_r.js similarity index 86% rename from server/public/admin/assets/department-CSUh_x-a.js rename to server/public/admin/assets/department-D5OVad_r.js index d04f66a4..5481f877 100644 --- a/server/public/admin/assets/department-CSUh_x-a.js +++ b/server/public/admin/assets/department-D5OVad_r.js @@ -1 +1 @@ -import{r as e}from"./index-Nt5zMHcc.js";function p(t){return e.get({url:"/dept.dept/lists",params:t})}function r(t){return e.post({url:"/dept.dept/add",params:t})}function u(t){return e.post({url:"/dept.dept/edit",params:t})}function n(t){return e.post({url:"/dept.dept/delete",params:t})}function l(t){return e.get({url:"/dept.dept/detail",params:t})}function s(t){return e.get({url:"/dept.dept/all",params:t})}export{u as a,r as b,l as c,s as d,p as e,n as f}; +import{r as e}from"./index--WnM67ZH.js";function p(t){return e.get({url:"/dept.dept/lists",params:t})}function r(t){return e.post({url:"/dept.dept/add",params:t})}function u(t){return e.post({url:"/dept.dept/edit",params:t})}function n(t){return e.post({url:"/dept.dept/delete",params:t})}function l(t){return e.get({url:"/dept.dept/detail",params:t})}function s(t){return e.get({url:"/dept.dept/all",params:t})}export{u as a,r as b,l as c,s as d,p as e,n as f}; diff --git a/server/public/admin/assets/dept-tongji-C7zhtC-v.js b/server/public/admin/assets/dept-tongji-DTpWoRQ0.js similarity index 97% rename from server/public/admin/assets/dept-tongji-C7zhtC-v.js rename to server/public/admin/assets/dept-tongji-DTpWoRQ0.js index 5c88cb9f..d32a9e43 100644 --- a/server/public/admin/assets/dept-tongji-C7zhtC-v.js +++ b/server/public/admin/assets/dept-tongji-DTpWoRQ0.js @@ -1 +1 @@ -import{D as P,B as S,P as Y,Q as G,G as I,F as U,a2 as j,i as J,J as O,L as Q,M as q,N as H,T as W,R as A,E as K}from"./element-plus-DFTWCWyi.js";import{d as X,e as Z}from"./doctor-B7qEhSpt.js";import{f as $,b as tt,ak as d,I as y,a as e,aN as a,F as et,ap as at,G as k,O as i,H as ot,J as c,aP as lt}from"./@vue/runtime-core-C6bnekPw.js";import{Q as _}from"./@vue/shared-mAAVTE9n.js";import{n as g,r as st}from"./@vue/reactivity-DiY1c2vO.js";import{_ as it}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const nt={class:"dept-statistics-page"},rt={key:0},dt={class:"status-overview"},mt={class:"status-tags"},pt={key:1,class:"empty-data"},ct=$({__name:"dept-tongji",setup(_t){const u=g(!1),V=g([]),v=g([]),r=g([]),s=st({dept_id:"",time_type:"today",start_date:"",end_date:""}),D=async()=>{try{const l=await X(),t=h=>{let m=[];return h.forEach(n=>{m.push({id:n.id,name:n.name}),n.children&&n.children.length>0&&(m=m.concat(t(n.children)))}),m};V.value=t(l)||[]}catch(l){console.error("获取部门列表失败:",l)}},b=async()=>{u.value=!0;try{const l={time_type:s.time_type};s.dept_id&&(l.dept_id=s.dept_id),s.time_type==="custom"&&r.value&&r.value.length===2&&(l.start_date=r.value[0],l.end_date=r.value[1]);const t=await Z(l);v.value=t.lists||[]}catch(l){console.error("获取统计数据错误:",l),K.error(l.msg||"获取统计数据失败")}finally{u.value=!1}},T=()=>{s.time_type!=="custom"&&(r.value=[])},x=()=>{s.dept_id="",s.time_type="today",r.value=[],b()},B=l=>l>=80?"success":l>=60?"primary":"warning";return tt(()=>{D(),b()}),(l,t)=>{const h=G,m=Y,n=S,f=U,L=I,z=j,w=J,N=P,C=O,E=H,p=W,R=q,F=A,M=Q;return d(),y("div",nt,[e(C,{class:"mb-4",shadow:"hover"},{header:a(()=>[...t[3]||(t[3]=[c("div",{class:"card-header"},[c("span",{class:"card-title"},"筛选条件")],-1)])]),default:a(()=>[e(N,{inline:!0,model:s,class:"filter-form"},{default:a(()=>[e(n,{label:"部门"},{default:a(()=>[e(m,{modelValue:s.dept_id,"onUpdate:modelValue":t[0]||(t[0]=o=>s.dept_id=o),placeholder:"全部部门",clearable:"",filterable:"",style:{width:"200px"}},{default:a(()=>[(d(!0),y(et,null,at(V.value,o=>(d(),k(h,{key:o.id,label:o.name,value:o.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"时间范围"},{default:a(()=>[e(L,{modelValue:s.time_type,"onUpdate:modelValue":t[1]||(t[1]=o=>s.time_type=o),onChange:T},{default:a(()=>[e(f,{label:"today"},{default:a(()=>[...t[4]||(t[4]=[i("今天",-1)])]),_:1}),e(f,{label:"week"},{default:a(()=>[...t[5]||(t[5]=[i("最近7天",-1)])]),_:1}),e(f,{label:"month"},{default:a(()=>[...t[6]||(t[6]=[i("最近30天",-1)])]),_:1}),e(f,{label:"custom"},{default:a(()=>[...t[7]||(t[7]=[i("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),s.time_type==="custom"?(d(),k(n,{key:0},{default:a(()=>[e(z,{modelValue:r.value,"onUpdate:modelValue":t[2]||(t[2]=o=>r.value=o),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",style:{width:"260px"}},null,8,["modelValue"])]),_:1})):ot("",!0),e(n,null,{default:a(()=>[e(w,{type:"primary",onClick:b,loading:u.value},{default:a(()=>[...t[8]||(t[8]=[i("查询",-1)])]),_:1},8,["loading"]),e(w,{onClick:x},{default:a(()=>[...t[9]||(t[9]=[i("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),lt((d(),k(C,{class:"mb-4",shadow:"hover"},{header:a(()=>[...t[10]||(t[10]=[c("div",{class:"card-header"},[c("span",{class:"card-title"},"部门统计数据")],-1)])]),default:a(()=>[v.value.length>0?(d(),y("div",rt,[e(R,{data:v.value,style:{width:"100%"},"header-cell-style":{background:"#f5f7fa",color:"#606266",fontWeight:"600"}},{default:a(()=>[e(E,{prop:"dept_name",label:"部门名称",width:"120"}),e(E,{label:"状态明细","min-width":"700"},{default:a(({row:o})=>[c("div",dt,[c("div",mt,[e(p,{type:"info",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已挂号: "+_(o.registered_count),1)]),_:2},1024),e(p,{type:"success",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已完成: "+_(o.completed_count),1)]),_:2},1024),e(p,{type:"danger",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已取消: "+_(o.canceled_count),1)]),_:2},1024),e(p,{type:"warning",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已过号: "+_(o.expired_count),1)]),_:2},1024),e(p,{type:"primary",size:"small",class:"compact-tag"},{default:a(()=>[i(" 总数量: "+_(o.total_count),1)]),_:2},1024),e(p,{type:B(o.completion_rate),size:"small",class:"compact-tag"},{default:a(()=>[i(" 完成率: "+_(o.completion_rate)+"% ",1)]),_:2},1032,["type"])])])]),_:1}),e(E,{prop:"time_range",label:"统计时间","min-width":"200"})]),_:1},8,["data"])])):(d(),y("div",pt,[e(F,{description:"暂无统计数据"})]))]),_:1})),[[M,u.value]])])}}}),Zt=it(ct,[["__scopeId","data-v-edcb5eaf"]]);export{Zt as default}; +import{D as P,B as S,P as Y,Q as G,G as I,F as U,a2 as j,i as J,J as O,L as Q,M as q,N as H,T as W,R as A,E as K}from"./element-plus-DFTWCWyi.js";import{d as X,e as Z}from"./doctor-BlvK2TEo.js";import{f as $,b as tt,ak as d,I as y,a as e,aN as a,F as et,ap as at,G as k,O as i,H as ot,J as c,aP as lt}from"./@vue/runtime-core-C6bnekPw.js";import{Q as _}from"./@vue/shared-mAAVTE9n.js";import{n as g,r as st}from"./@vue/reactivity-DiY1c2vO.js";import{_ as it}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const nt={class:"dept-statistics-page"},rt={key:0},dt={class:"status-overview"},mt={class:"status-tags"},pt={key:1,class:"empty-data"},ct=$({__name:"dept-tongji",setup(_t){const u=g(!1),V=g([]),v=g([]),r=g([]),s=st({dept_id:"",time_type:"today",start_date:"",end_date:""}),D=async()=>{try{const l=await X(),t=h=>{let m=[];return h.forEach(n=>{m.push({id:n.id,name:n.name}),n.children&&n.children.length>0&&(m=m.concat(t(n.children)))}),m};V.value=t(l)||[]}catch(l){console.error("获取部门列表失败:",l)}},b=async()=>{u.value=!0;try{const l={time_type:s.time_type};s.dept_id&&(l.dept_id=s.dept_id),s.time_type==="custom"&&r.value&&r.value.length===2&&(l.start_date=r.value[0],l.end_date=r.value[1]);const t=await Z(l);v.value=t.lists||[]}catch(l){console.error("获取统计数据错误:",l),K.error(l.msg||"获取统计数据失败")}finally{u.value=!1}},T=()=>{s.time_type!=="custom"&&(r.value=[])},x=()=>{s.dept_id="",s.time_type="today",r.value=[],b()},B=l=>l>=80?"success":l>=60?"primary":"warning";return tt(()=>{D(),b()}),(l,t)=>{const h=G,m=Y,n=S,f=U,L=I,z=j,w=J,N=P,C=O,E=H,p=W,R=q,F=A,M=Q;return d(),y("div",nt,[e(C,{class:"mb-4",shadow:"hover"},{header:a(()=>[...t[3]||(t[3]=[c("div",{class:"card-header"},[c("span",{class:"card-title"},"筛选条件")],-1)])]),default:a(()=>[e(N,{inline:!0,model:s,class:"filter-form"},{default:a(()=>[e(n,{label:"部门"},{default:a(()=>[e(m,{modelValue:s.dept_id,"onUpdate:modelValue":t[0]||(t[0]=o=>s.dept_id=o),placeholder:"全部部门",clearable:"",filterable:"",style:{width:"200px"}},{default:a(()=>[(d(!0),y(et,null,at(V.value,o=>(d(),k(h,{key:o.id,label:o.name,value:o.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"时间范围"},{default:a(()=>[e(L,{modelValue:s.time_type,"onUpdate:modelValue":t[1]||(t[1]=o=>s.time_type=o),onChange:T},{default:a(()=>[e(f,{label:"today"},{default:a(()=>[...t[4]||(t[4]=[i("今天",-1)])]),_:1}),e(f,{label:"week"},{default:a(()=>[...t[5]||(t[5]=[i("最近7天",-1)])]),_:1}),e(f,{label:"month"},{default:a(()=>[...t[6]||(t[6]=[i("最近30天",-1)])]),_:1}),e(f,{label:"custom"},{default:a(()=>[...t[7]||(t[7]=[i("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),s.time_type==="custom"?(d(),k(n,{key:0},{default:a(()=>[e(z,{modelValue:r.value,"onUpdate:modelValue":t[2]||(t[2]=o=>r.value=o),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",style:{width:"260px"}},null,8,["modelValue"])]),_:1})):ot("",!0),e(n,null,{default:a(()=>[e(w,{type:"primary",onClick:b,loading:u.value},{default:a(()=>[...t[8]||(t[8]=[i("查询",-1)])]),_:1},8,["loading"]),e(w,{onClick:x},{default:a(()=>[...t[9]||(t[9]=[i("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),lt((d(),k(C,{class:"mb-4",shadow:"hover"},{header:a(()=>[...t[10]||(t[10]=[c("div",{class:"card-header"},[c("span",{class:"card-title"},"部门统计数据")],-1)])]),default:a(()=>[v.value.length>0?(d(),y("div",rt,[e(R,{data:v.value,style:{width:"100%"},"header-cell-style":{background:"#f5f7fa",color:"#606266",fontWeight:"600"}},{default:a(()=>[e(E,{prop:"dept_name",label:"部门名称",width:"120"}),e(E,{label:"状态明细","min-width":"700"},{default:a(({row:o})=>[c("div",dt,[c("div",mt,[e(p,{type:"info",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已挂号: "+_(o.registered_count),1)]),_:2},1024),e(p,{type:"success",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已完成: "+_(o.completed_count),1)]),_:2},1024),e(p,{type:"danger",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已取消: "+_(o.canceled_count),1)]),_:2},1024),e(p,{type:"warning",size:"small",class:"compact-tag"},{default:a(()=>[i(" 已过号: "+_(o.expired_count),1)]),_:2},1024),e(p,{type:"primary",size:"small",class:"compact-tag"},{default:a(()=>[i(" 总数量: "+_(o.total_count),1)]),_:2},1024),e(p,{type:B(o.completion_rate),size:"small",class:"compact-tag"},{default:a(()=>[i(" 完成率: "+_(o.completion_rate)+"% ",1)]),_:2},1032,["type"])])])]),_:1}),e(E,{prop:"time_range",label:"统计时间","min-width":"200"})]),_:1},8,["data"])])):(d(),y("div",pt,[e(F,{description:"暂无统计数据"})]))]),_:1})),[[M,u.value]])])}}}),Zt=it(ct,[["__scopeId","data-v-edcb5eaf"]]);export{Zt as default}; diff --git a/server/public/admin/assets/detail-D-NJ8OpW.js b/server/public/admin/assets/detail-BHArlIAw.js similarity index 94% rename from server/public/admin/assets/detail-D-NJ8OpW.js rename to server/public/admin/assets/detail-BHArlIAw.js index 9d8ea144..82fab725 100644 --- a/server/public/admin/assets/detail-D-NJ8OpW.js +++ b/server/public/admin/assets/detail-BHArlIAw.js @@ -1 +1 @@ -import{O as q,J as N,D as R,q as A,i as O,B as V}from"./element-plus-DFTWCWyi.js";import{_ as F}from"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import{c as I,n as J}from"./index-Nt5zMHcc.js";import{g as M,u as S,a as U}from"./consumer-CKmJdevC.js";import{_ as z}from"./account-adjust.vue_vue_type_script_setup_true_lang-Be9YVff0.js";import{u as G}from"./vue-router-QlpZ4wdW.js";import{f as C,as as H,ak as u,I as Q,a as t,aN as o,J as d,O as n,aP as c,G as y}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as g,q as T}from"./@vue/reactivity-DiY1c2vO.js";import{Q as l}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const K={class:"bg-page flex py-5 mb-10 items-center"},L={class:"basis-40 flex flex-col justify-center items-center"},W={class:"basis-40 flex flex-col justify-center items-center"},X={class:"mt-2 flex items-center"},Y=C({name:"consumerDetail"}),Se=C({...Y,setup(Z){const w=G(),r=g({avatar:"",channel:"",create_time:"",login_time:"",mobile:"",nickname:"",real_name:0,sex:0,sn:"",account:"",user_money:""}),p=g({show:!1,value:""}),j=T(),k=async()=>{const i=await M({id:w.query.id});Object.keys(r).forEach(e=>{r[e]=i[e]})},v=async(i,e)=>{J(i)||(await S({id:w.query.id,field:e,value:i}),k())},D=i=>{p.show=!0,p.value=i},h=async i=>{await U({user_id:w.query.id,...i}),p.show=!1,k()};return k(),(i,e)=>{const B=q,E=N,P=A,f=O,m=V,b=I,x=F,$=R,_=H("perms");return u(),Q("div",null,[t(E,{class:"!border-none",shadow:"never"},{default:o(()=>[t(B,{content:"用户详情",onBack:e[0]||(e[0]=s=>i.$router.back())})]),_:1}),t(E,{class:"mt-4 !border-none",header:"基本资料",shadow:"never"},{default:o(()=>[t($,{ref_key:"formRef",ref:j,class:"ls-form",model:a(r),"label-width":"120px"},{default:o(()=>[d("div",K,[d("div",L,[e[7]||(e[7]=d("div",{class:"mb-2 text-tx-regular"},"用户头像",-1)),t(P,{src:a(r).avatar,size:58},null,8,["src"])]),d("div",W,[e[9]||(e[9]=d("div",{class:"text-tx-regular"},"账户余额",-1)),d("div",X,[n(" ¥"+l(a(r).user_money)+" ",1),c((u(),y(f,{type:"primary",link:"",onClick:e[1]||(e[1]=s=>D(a(r).user_money))},{default:o(()=>[...e[8]||(e[8]=[n(" 调整 ",-1)])]),_:1})),[[_,["user.user/adjustMoney"]]])])])]),t(m,{label:"用户昵称:"},{default:o(()=>[n(l(a(r).nickname),1)]),_:1}),t(m,{label:"账号:"},{default:o(()=>[n(l(a(r).account)+" ",1),c((u(),y(x,{class:"ml-[10px]",onConfirm:e[2]||(e[2]=s=>v(s,"account")),limit:32},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"真实姓名:"},{default:o(()=>[n(l(a(r).real_name||"-")+" ",1),c((u(),y(x,{class:"ml-[10px]",onConfirm:e[3]||(e[3]=s=>v(s,"real_name")),limit:32},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"性别:"},{default:o(()=>[n(l(a(r).sex)+" ",1),c((u(),y(x,{class:"ml-[10px]",type:"select",options:[{label:"未知",value:0},{label:"男",value:1},{label:"女",value:2}],onConfirm:e[4]||(e[4]=s=>v(s,"sex"))},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"联系电话:"},{default:o(()=>[n(l(a(r).mobile||"-")+" ",1),c((u(),y(x,{class:"ml-[10px]",type:"number",onConfirm:e[5]||(e[5]=s=>v(s,"mobile"))},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"注册来源:"},{default:o(()=>[n(l(a(r).channel),1)]),_:1}),t(m,{label:"注册时间:"},{default:o(()=>[n(l(a(r).create_time),1)]),_:1}),t(m,{label:"最近登录时间:"},{default:o(()=>[n(l(a(r).login_time),1)]),_:1})]),_:1},8,["model"])]),_:1}),t(z,{show:a(p).show,"onUpdate:show":e[6]||(e[6]=s=>a(p).show=s),value:a(p).value,onConfirm:h},null,8,["show","value"])])}}});export{Se as default}; +import{O as q,J as N,D as R,q as A,i as O,B as V}from"./element-plus-DFTWCWyi.js";import{_ as F}from"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import{c as I,n as J}from"./index--WnM67ZH.js";import{g as M,u as S,a as U}from"./consumer-CMvrcBkD.js";import{_ as z}from"./account-adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js";import{u as G}from"./vue-router-QlpZ4wdW.js";import{f as C,as as H,ak as u,I as Q,a as t,aN as o,J as d,O as n,aP as c,G as y}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as g,q as T}from"./@vue/reactivity-DiY1c2vO.js";import{Q as l}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const K={class:"bg-page flex py-5 mb-10 items-center"},L={class:"basis-40 flex flex-col justify-center items-center"},W={class:"basis-40 flex flex-col justify-center items-center"},X={class:"mt-2 flex items-center"},Y=C({name:"consumerDetail"}),Se=C({...Y,setup(Z){const w=G(),r=g({avatar:"",channel:"",create_time:"",login_time:"",mobile:"",nickname:"",real_name:0,sex:0,sn:"",account:"",user_money:""}),p=g({show:!1,value:""}),j=T(),k=async()=>{const i=await M({id:w.query.id});Object.keys(r).forEach(e=>{r[e]=i[e]})},v=async(i,e)=>{J(i)||(await S({id:w.query.id,field:e,value:i}),k())},D=i=>{p.show=!0,p.value=i},h=async i=>{await U({user_id:w.query.id,...i}),p.show=!1,k()};return k(),(i,e)=>{const B=q,E=N,P=A,f=O,m=V,b=I,x=F,$=R,_=H("perms");return u(),Q("div",null,[t(E,{class:"!border-none",shadow:"never"},{default:o(()=>[t(B,{content:"用户详情",onBack:e[0]||(e[0]=s=>i.$router.back())})]),_:1}),t(E,{class:"mt-4 !border-none",header:"基本资料",shadow:"never"},{default:o(()=>[t($,{ref_key:"formRef",ref:j,class:"ls-form",model:a(r),"label-width":"120px"},{default:o(()=>[d("div",K,[d("div",L,[e[7]||(e[7]=d("div",{class:"mb-2 text-tx-regular"},"用户头像",-1)),t(P,{src:a(r).avatar,size:58},null,8,["src"])]),d("div",W,[e[9]||(e[9]=d("div",{class:"text-tx-regular"},"账户余额",-1)),d("div",X,[n(" ¥"+l(a(r).user_money)+" ",1),c((u(),y(f,{type:"primary",link:"",onClick:e[1]||(e[1]=s=>D(a(r).user_money))},{default:o(()=>[...e[8]||(e[8]=[n(" 调整 ",-1)])]),_:1})),[[_,["user.user/adjustMoney"]]])])])]),t(m,{label:"用户昵称:"},{default:o(()=>[n(l(a(r).nickname),1)]),_:1}),t(m,{label:"账号:"},{default:o(()=>[n(l(a(r).account)+" ",1),c((u(),y(x,{class:"ml-[10px]",onConfirm:e[2]||(e[2]=s=>v(s,"account")),limit:32},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"真实姓名:"},{default:o(()=>[n(l(a(r).real_name||"-")+" ",1),c((u(),y(x,{class:"ml-[10px]",onConfirm:e[3]||(e[3]=s=>v(s,"real_name")),limit:32},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"性别:"},{default:o(()=>[n(l(a(r).sex)+" ",1),c((u(),y(x,{class:"ml-[10px]",type:"select",options:[{label:"未知",value:0},{label:"男",value:1},{label:"女",value:2}],onConfirm:e[4]||(e[4]=s=>v(s,"sex"))},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"联系电话:"},{default:o(()=>[n(l(a(r).mobile||"-")+" ",1),c((u(),y(x,{class:"ml-[10px]",type:"number",onConfirm:e[5]||(e[5]=s=>v(s,"mobile"))},{default:o(()=>[t(f,{type:"primary",link:""},{default:o(()=>[t(b,{name:"el-icon-EditPen"})]),_:1})]),_:1})),[[_,["user.user/edit"]]])]),_:1}),t(m,{label:"注册来源:"},{default:o(()=>[n(l(a(r).channel),1)]),_:1}),t(m,{label:"注册时间:"},{default:o(()=>[n(l(a(r).create_time),1)]),_:1}),t(m,{label:"最近登录时间:"},{default:o(()=>[n(l(a(r).login_time),1)]),_:1})]),_:1},8,["model"])]),_:1}),t(z,{show:a(p).show,"onUpdate:show":e[6]||(e[6]=s=>a(p).show=s),value:a(p).value,onConfirm:h},null,8,["show","value"])])}}});export{Se as default}; diff --git a/server/public/admin/assets/detail-D9Zbpq2C.js b/server/public/admin/assets/detail-BIA4i862.js similarity index 97% rename from server/public/admin/assets/detail-D9Zbpq2C.js rename to server/public/admin/assets/detail-BIA4i862.js index 00955432..eb4a81f6 100644 --- a/server/public/admin/assets/detail-D9Zbpq2C.js +++ b/server/public/admin/assets/detail-BIA4i862.js @@ -1 +1 @@ -import{_ as B}from"./index-BQY2-_X1.js";import{aa as I,ab as V,T as C,v as O}from"./element-plus-DFTWCWyi.js";import{_ as T}from"./tcm-DCW3HTOw.js";import{m as F}from"./index-Nt5zMHcc.js";import{f as H,ak as i,I as n,a as o,aN as a,O as l,F as f,ap as y,G as c,H as L,J as g,A as R}from"./@vue/runtime-core-C6bnekPw.js";import{Q as r}from"./@vue/shared-mAAVTE9n.js";import{y as t,n as h}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const z={class:"detail-popup"},A={key:0},G={key:0,class:"flex gap-2"},J={key:1},Q={key:0,class:"flex flex-wrap gap-2"},S={key:1},j={style:{"white-space":"pre-wrap"}},q={style:{"white-space":"pre-wrap"}},K={style:{"white-space":"pre-wrap"}},Fe=H({__name:"detail",setup(M,{expose:x}){const b=h(),e=h({}),v=h([]),D=async()=>{try{const p=await F({type:"past_history"});v.value=(p==null?void 0:p.past_history)||[]}catch(p){console.error("获取字典数据失败:",p)}},w=R(()=>!e.value.past_history||!e.value.past_history.length?[]:e.value.past_history.map(p=>{const _=v.value.find(s=>s.value===p);return _?_.name:p}));return x({open:async p=>{b.value.open(),await D(),e.value=await T({id:p})}}),(p,_)=>{const s=V,u=C,k=O,E=I,N=B;return i(),n("div",z,[o(N,{ref_key:"popupRef",ref:b,title:"诊单详情",width:"800px","show-confirm":!1,"z-index":1500},{default:a(()=>[o(E,{column:2,border:""},{default:a(()=>[o(s,{label:"患者ID"},{default:a(()=>[l(r(t(e).patient_id),1)]),_:1}),o(s,{label:"患者姓名"},{default:a(()=>[l(r(t(e).patient_name),1)]),_:1}),o(s,{label:"性别"},{default:a(()=>[l(r(t(e).gender_desc),1)]),_:1}),o(s,{label:"年龄"},{default:a(()=>[l(r(t(e).age)+"岁 ",1)]),_:1}),o(s,{label:"诊断日期"},{default:a(()=>[l(r(t(e).diagnosis_date_text),1)]),_:1}),o(s,{label:"诊断类型"},{default:a(()=>[l(r(t(e).diagnosis_type),1)]),_:1}),o(s,{label:"证型",span:2},{default:a(()=>[l(r(t(e).syndrome_type),1)]),_:1}),o(s,{label:"既往史",span:2},{default:a(()=>[(i(!0),n(f,null,y(t(w),m=>(i(),c(u,{key:m,class:"mr-2",type:"info"},{default:a(()=>[l(r(m),1)]),_:2},1024))),128)),t(w).length?L("",!0):(i(),n("span",A,"无"))]),_:1}),o(s,{label:"外伤史"},{default:a(()=>[l(r(t(e).trauma_history?"有":"无"),1)]),_:1}),o(s,{label:"手术史"},{default:a(()=>[l(r(t(e).surgery_history?"有":"无"),1)]),_:1}),o(s,{label:"过敏史"},{default:a(()=>[l(r(t(e).allergy_history?"有":"无"),1)]),_:1}),o(s,{label:"家族病史"},{default:a(()=>[l(r(t(e).family_history?"有":"无"),1)]),_:1}),o(s,{label:"妊娠哺乳史",span:2},{default:a(()=>[l(r(t(e).pregnancy_history?"有":"无"),1)]),_:1}),o(s,{label:"舌苔照片",span:2},{default:a(()=>[t(e).tongue_images&&t(e).tongue_images.length?(i(),n("div",G,[(i(!0),n(f,null,y(t(e).tongue_images,(m,d)=>(i(),c(k,{key:d,src:m,"preview-src-list":t(e).tongue_images,style:{width:"100px",height:"100px"},fit:"cover"},null,8,["src","preview-src-list"]))),128))])):(i(),n("span",J,"暂无"))]),_:1}),o(s,{label:"检查报告",span:2},{default:a(()=>[t(e).report_files&&t(e).report_files.length?(i(),n("div",Q,[(i(!0),n(f,null,y(t(e).report_files,(m,d)=>(i(),c(k,{key:d,src:m,"preview-src-list":t(e).report_files,style:{width:"100px",height:"100px"},fit:"cover"},null,8,["src","preview-src-list"]))),128))])):(i(),n("span",S,"暂无"))]),_:1}),o(s,{label:"症状",span:2},{default:a(()=>[l(r(t(e).symptoms||"无"),1)]),_:1}),o(s,{label:"舌苔"},{default:a(()=>[l(r(t(e).tongue_coating||"无"),1)]),_:1}),o(s,{label:"脉象"},{default:a(()=>[l(r(t(e).pulse||"无"),1)]),_:1}),o(s,{label:"治则",span:2},{default:a(()=>[l(r(t(e).treatment_principle||"无"),1)]),_:1}),o(s,{label:"在用药物",span:2},{default:a(()=>[g("div",j,r(t(e).current_medications||"无"),1)]),_:1}),o(s,{label:"处方",span:2},{default:a(()=>[g("div",q,r(t(e).prescription||"无"),1)]),_:1}),o(s,{label:"医嘱",span:2},{default:a(()=>[g("div",K,r(t(e).doctor_advice||"无"),1)]),_:1}),o(s,{label:"备注",span:2},{default:a(()=>[l(r(t(e).remark||"无"),1)]),_:1}),o(s,{label:"状态"},{default:a(()=>[t(e).status==1?(i(),c(u,{key:0,type:"success"},{default:a(()=>[..._[0]||(_[0]=[l("启用",-1)])]),_:1})):(i(),c(u,{key:1,type:"danger"},{default:a(()=>[..._[1]||(_[1]=[l("禁用",-1)])]),_:1}))]),_:1}),o(s,{label:"创建时间"},{default:a(()=>[l(r(t(e).create_time),1)]),_:1})]),_:1})]),_:1},512)])}}});export{Fe as default}; +import{_ as B}from"./index-SocYjCJ1.js";import{aa as I,ab as V,T as C,v as O}from"./element-plus-DFTWCWyi.js";import{_ as T}from"./tcm-DzAQc_oE.js";import{m as F}from"./index--WnM67ZH.js";import{f as H,ak as i,I as n,a as o,aN as a,O as l,F as f,ap as y,G as c,H as L,J as g,A as R}from"./@vue/runtime-core-C6bnekPw.js";import{Q as r}from"./@vue/shared-mAAVTE9n.js";import{y as t,n as h}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const z={class:"detail-popup"},A={key:0},G={key:0,class:"flex gap-2"},J={key:1},Q={key:0,class:"flex flex-wrap gap-2"},S={key:1},j={style:{"white-space":"pre-wrap"}},q={style:{"white-space":"pre-wrap"}},K={style:{"white-space":"pre-wrap"}},Fe=H({__name:"detail",setup(M,{expose:x}){const b=h(),e=h({}),v=h([]),D=async()=>{try{const p=await F({type:"past_history"});v.value=(p==null?void 0:p.past_history)||[]}catch(p){console.error("获取字典数据失败:",p)}},w=R(()=>!e.value.past_history||!e.value.past_history.length?[]:e.value.past_history.map(p=>{const _=v.value.find(s=>s.value===p);return _?_.name:p}));return x({open:async p=>{b.value.open(),await D(),e.value=await T({id:p})}}),(p,_)=>{const s=V,u=C,k=O,E=I,N=B;return i(),n("div",z,[o(N,{ref_key:"popupRef",ref:b,title:"诊单详情",width:"800px","show-confirm":!1,"z-index":1500},{default:a(()=>[o(E,{column:2,border:""},{default:a(()=>[o(s,{label:"患者ID"},{default:a(()=>[l(r(t(e).patient_id),1)]),_:1}),o(s,{label:"患者姓名"},{default:a(()=>[l(r(t(e).patient_name),1)]),_:1}),o(s,{label:"性别"},{default:a(()=>[l(r(t(e).gender_desc),1)]),_:1}),o(s,{label:"年龄"},{default:a(()=>[l(r(t(e).age)+"岁 ",1)]),_:1}),o(s,{label:"诊断日期"},{default:a(()=>[l(r(t(e).diagnosis_date_text),1)]),_:1}),o(s,{label:"诊断类型"},{default:a(()=>[l(r(t(e).diagnosis_type),1)]),_:1}),o(s,{label:"证型",span:2},{default:a(()=>[l(r(t(e).syndrome_type),1)]),_:1}),o(s,{label:"既往史",span:2},{default:a(()=>[(i(!0),n(f,null,y(t(w),m=>(i(),c(u,{key:m,class:"mr-2",type:"info"},{default:a(()=>[l(r(m),1)]),_:2},1024))),128)),t(w).length?L("",!0):(i(),n("span",A,"无"))]),_:1}),o(s,{label:"外伤史"},{default:a(()=>[l(r(t(e).trauma_history?"有":"无"),1)]),_:1}),o(s,{label:"手术史"},{default:a(()=>[l(r(t(e).surgery_history?"有":"无"),1)]),_:1}),o(s,{label:"过敏史"},{default:a(()=>[l(r(t(e).allergy_history?"有":"无"),1)]),_:1}),o(s,{label:"家族病史"},{default:a(()=>[l(r(t(e).family_history?"有":"无"),1)]),_:1}),o(s,{label:"妊娠哺乳史",span:2},{default:a(()=>[l(r(t(e).pregnancy_history?"有":"无"),1)]),_:1}),o(s,{label:"舌苔照片",span:2},{default:a(()=>[t(e).tongue_images&&t(e).tongue_images.length?(i(),n("div",G,[(i(!0),n(f,null,y(t(e).tongue_images,(m,d)=>(i(),c(k,{key:d,src:m,"preview-src-list":t(e).tongue_images,style:{width:"100px",height:"100px"},fit:"cover"},null,8,["src","preview-src-list"]))),128))])):(i(),n("span",J,"暂无"))]),_:1}),o(s,{label:"检查报告",span:2},{default:a(()=>[t(e).report_files&&t(e).report_files.length?(i(),n("div",Q,[(i(!0),n(f,null,y(t(e).report_files,(m,d)=>(i(),c(k,{key:d,src:m,"preview-src-list":t(e).report_files,style:{width:"100px",height:"100px"},fit:"cover"},null,8,["src","preview-src-list"]))),128))])):(i(),n("span",S,"暂无"))]),_:1}),o(s,{label:"症状",span:2},{default:a(()=>[l(r(t(e).symptoms||"无"),1)]),_:1}),o(s,{label:"舌苔"},{default:a(()=>[l(r(t(e).tongue_coating||"无"),1)]),_:1}),o(s,{label:"脉象"},{default:a(()=>[l(r(t(e).pulse||"无"),1)]),_:1}),o(s,{label:"治则",span:2},{default:a(()=>[l(r(t(e).treatment_principle||"无"),1)]),_:1}),o(s,{label:"在用药物",span:2},{default:a(()=>[g("div",j,r(t(e).current_medications||"无"),1)]),_:1}),o(s,{label:"处方",span:2},{default:a(()=>[g("div",q,r(t(e).prescription||"无"),1)]),_:1}),o(s,{label:"医嘱",span:2},{default:a(()=>[g("div",K,r(t(e).doctor_advice||"无"),1)]),_:1}),o(s,{label:"备注",span:2},{default:a(()=>[l(r(t(e).remark||"无"),1)]),_:1}),o(s,{label:"状态"},{default:a(()=>[t(e).status==1?(i(),c(u,{key:0,type:"success"},{default:a(()=>[..._[0]||(_[0]=[l("启用",-1)])]),_:1})):(i(),c(u,{key:1,type:"danger"},{default:a(()=>[..._[1]||(_[1]=[l("禁用",-1)])]),_:1}))]),_:1}),o(s,{label:"创建时间"},{default:a(()=>[l(r(t(e).create_time),1)]),_:1})]),_:1})]),_:1},512)])}}});export{Fe as default}; diff --git a/server/public/admin/assets/dict-BN4CTMA_.js b/server/public/admin/assets/dict-DnKASfBm.js similarity index 92% rename from server/public/admin/assets/dict-BN4CTMA_.js rename to server/public/admin/assets/dict-DnKASfBm.js index 54889793..0c254337 100644 --- a/server/public/admin/assets/dict-BN4CTMA_.js +++ b/server/public/admin/assets/dict-DnKASfBm.js @@ -1 +1 @@ -import{r as i}from"./index-Nt5zMHcc.js";function d(t){return i.get({url:"/setting.dict.dict_type/lists",params:t})}function n(t){return i.get({url:"/setting.dict.dict_type/all",params:t})}function c(t){return i.post({url:"/setting.dict.dict_type/add",params:t})}function r(t){return i.post({url:"/setting.dict.dict_type/edit",params:t})}function s(t){return i.post({url:"/setting.dict.dict_type/delete",params:t})}function a(t){return i.get({url:"/setting.dict.dict_data/lists",params:t},{ignoreCancelToken:!0})}function u(t){return i.post({url:"/setting.dict.dict_data/add",params:t})}function l(t){return i.post({url:"/setting.dict.dict_data/edit",params:t})}function o(t){return i.post({url:"/setting.dict.dict_data/delete",params:t})}export{l as a,u as b,a as c,n as d,o as e,d as f,r as g,c as h,s as i}; +import{r as i}from"./index--WnM67ZH.js";function d(t){return i.get({url:"/setting.dict.dict_type/lists",params:t})}function n(t){return i.get({url:"/setting.dict.dict_type/all",params:t})}function c(t){return i.post({url:"/setting.dict.dict_type/add",params:t})}function r(t){return i.post({url:"/setting.dict.dict_type/edit",params:t})}function s(t){return i.post({url:"/setting.dict.dict_type/delete",params:t})}function a(t){return i.get({url:"/setting.dict.dict_data/lists",params:t},{ignoreCancelToken:!0})}function u(t){return i.post({url:"/setting.dict.dict_data/add",params:t})}function l(t){return i.post({url:"/setting.dict.dict_data/edit",params:t})}function o(t){return i.post({url:"/setting.dict.dict_data/delete",params:t})}export{l as a,u as b,a as c,n as d,o as e,d as f,r as g,c as h,s as i}; diff --git a/server/public/admin/assets/doctor-B7qEhSpt.js b/server/public/admin/assets/doctor-BlvK2TEo.js similarity index 94% rename from server/public/admin/assets/doctor-B7qEhSpt.js rename to server/public/admin/assets/doctor-BlvK2TEo.js index ca210ea7..c06efc2b 100644 --- a/server/public/admin/assets/doctor-B7qEhSpt.js +++ b/server/public/admin/assets/doctor-BlvK2TEo.js @@ -1 +1 @@ -import{r}from"./index-Nt5zMHcc.js";function o(t){return r.get({url:"/auth.admin/lists",params:{...t,role_id:1,exclude_disabled:1}})}function n(t){return r.get({url:"/doctor.roster/lists",params:t})}function s(t){return r.post({url:"/doctor.roster/save",params:t})}function i(t){return r.post({url:"/doctor.roster/delete",params:t})}function a(t){return r.post({url:"/doctor.roster/batchSave",params:t})}function c(t){return r.get({url:"/doctor.appointment/availableSlots",params:t})}function u(t){return r.post({url:"/doctor.appointment/create",params:t})}function p(t){return r.post({url:"/doctor.appointment/cancel",params:t})}function l(t){return r.get({url:"/doctor.appointment/lists",params:t})}function d(t){return r.post({url:"/doctor.appointment/edit",params:t})}function m(t){return r.post({url:"/doctor.appointment/batchEditChannel",params:t})}function f(t){return r.post({url:"/doctor.appointment/complete",params:t})}function g(t){return r.get({url:"/doctor.statistics/lists",params:t})}function h(){return r.get({url:"/dept.dept/all"})}function S(t){return r.get({url:"/doctor.statistics/deptLists",params:t})}export{l as a,m as b,d as c,h as d,S as e,o as f,c as g,s as h,i,a as j,g as k,f as l,p as m,u as n,n as r}; +import{r}from"./index--WnM67ZH.js";function o(t){return r.get({url:"/auth.admin/lists",params:{...t,role_id:1,exclude_disabled:1}})}function n(t){return r.get({url:"/doctor.roster/lists",params:t})}function s(t){return r.post({url:"/doctor.roster/save",params:t})}function i(t){return r.post({url:"/doctor.roster/delete",params:t})}function a(t){return r.post({url:"/doctor.roster/batchSave",params:t})}function c(t){return r.get({url:"/doctor.appointment/availableSlots",params:t})}function u(t){return r.post({url:"/doctor.appointment/create",params:t})}function p(t){return r.post({url:"/doctor.appointment/cancel",params:t})}function l(t){return r.get({url:"/doctor.appointment/lists",params:t})}function d(t){return r.post({url:"/doctor.appointment/edit",params:t})}function m(t){return r.post({url:"/doctor.appointment/batchEditChannel",params:t})}function f(t){return r.post({url:"/doctor.appointment/complete",params:t})}function g(t){return r.get({url:"/doctor.statistics/lists",params:t})}function h(){return r.get({url:"/dept.dept/all"})}function S(t){return r.get({url:"/doctor.statistics/deptLists",params:t})}export{l as a,m as b,d as c,h as d,S as e,o as f,c as g,s as h,i,a as j,g as k,f as l,p as m,u as n,n as r}; diff --git a/server/public/admin/assets/edit-Dd1FB-QR.js b/server/public/admin/assets/edit-ASLpBzXk.js similarity index 84% rename from server/public/admin/assets/edit-Dd1FB-QR.js rename to server/public/admin/assets/edit-ASLpBzXk.js index 8edb13df..dc98bb4b 100644 --- a/server/public/admin/assets/edit-Dd1FB-QR.js +++ b/server/public/admin/assets/edit-ASLpBzXk.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-B1Ws5Kwo.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./article-nZc1fauP.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./article-CrrySQF9.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-C976a8DV.js b/server/public/admin/assets/edit-B612o9OQ.js similarity index 97% rename from server/public/admin/assets/edit-C976a8DV.js rename to server/public/admin/assets/edit-B612o9OQ.js index fc2d8c4c..bb78a35b 100644 --- a/server/public/admin/assets/edit-C976a8DV.js +++ b/server/public/admin/assets/edit-B612o9OQ.js @@ -1 +1 @@ -import{_ as I}from"./index-DbiC_Mh1.js";import{O as N,J as D,D as F,B as G,C as M,G as O,I as $,g as j,M as H,N as J,i as S}from"./element-plus-DFTWCWyi.js";import{j as z,F as A,G as L,H as P,I as K}from"./index-Nt5zMHcc.js";import{u as Q,a as W}from"./vue-router-QlpZ4wdW.js";import{f as v,b as X,ak as Y,I as Z,a as o,aN as l,J as i,O as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as w,q as ee,n as oe}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const te={class:"article-edit"},ae={class:"w-80"},le={class:"w-80"},re={class:"w-80"},se={class:"w-80"},ne={class:"w-80"},me=v({name:"scheduledTaskEdit"}),Ke=v({...me,setup(ie){const p=Q(),V=W(),t=w({id:"",name:"",command:"",expression:"",params:"",remark:"",status:1,type:1}),{removeTab:x}=z(),d=ee(),y=w({name:[{required:!0,message:"请输入名称"}],command:[{required:!0,message:"请输入thankphp命令,如vresion"}],expression:[{required:!0,message:"请输入crontab规则,例:5 9 * * *"}]}),E=async()=>{const s=await A({id:p.query.id});Object.keys(t).forEach(e=>{t[e]=s[e]})},u=oe([]),c=async()=>{var e;await((e=d.value)==null?void 0:e.validateField(["expression"]));const s=await L({expression:t.expression});u.value=s},k=async()=>{var s;await((s=d.value)==null?void 0:s.validate()),p.query.id?await P(t):await K(t),x(),V.back()};return X(async()=>{p.query.id&&(await E(),await c())}),(s,e)=>{const g=N,_=D,m=M,n=G,h=$,R=O,q=j,f=J,B=H,U=F,C=S,T=I;return Y(),Z("div",te,[o(_,{class:"!border-none",shadow:"never"},{default:l(()=>[o(g,{content:s.$route.meta.title,onBack:e[0]||(e[0]=r=>s.$router.back())},null,8,["content"])]),_:1}),o(_,{class:"mt-4 !border-none",shadow:"never"},{default:l(()=>[o(U,{ref_key:"formRef",ref:d,class:"ls-form",model:a(t),"label-width":"85px",rules:a(y)},{default:l(()=>[o(n,{label:"名称",prop:"name"},{default:l(()=>[i("div",ae,[o(m,{modelValue:a(t).name,"onUpdate:modelValue":e[1]||(e[1]=r=>a(t).name=r),placeholder:"请输入名称",maxlength:"30",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"类型",prop:"type"},{default:l(()=>[o(R,{modelValue:a(t).type,"onUpdate:modelValue":e[2]||(e[2]=r=>a(t).type=r)},{default:l(()=>[o(h,{value:1},{default:l(()=>[...e[8]||(e[8]=[b("定时任务",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(n,{label:"命令",prop:"command"},{default:l(()=>[i("div",le,[o(m,{modelValue:a(t).command,"onUpdate:modelValue":e[3]||(e[3]=r=>a(t).command=r),placeholder:"请输入thinkphp命令,如vresion",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"参数",prop:"params"},{default:l(()=>[i("div",re,[o(m,{modelValue:a(t).params,"onUpdate:modelValue":e[4]||(e[4]=r=>a(t).params=r),placeholder:"请输入参数,例:--id 8 --name 测试",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"状态"},{default:l(()=>[o(q,{modelValue:a(t).status,"onUpdate:modelValue":e[5]||(e[5]=r=>a(t).status=r),"active-value":1,"inactive-value":2},null,8,["modelValue"])]),_:1}),o(n,{label:"规则",prop:"expression"},{default:l(()=>[i("div",se,[o(m,{onBlur:c,modelValue:a(t).expression,"onUpdate:modelValue":e[6]||(e[6]=r=>a(t).expression=r),placeholder:"请输入crontab规则,例:5 9 * * *"},null,8,["modelValue"])])]),_:1}),o(n,null,{default:l(()=>[o(B,{data:a(u),style:{"max-width":"320px"}},{default:l(()=>[o(f,{prop:"time",label:"序号","min-width":"80"}),o(f,{prop:"date",label:"执行时间","min-width":"240"})]),_:1},8,["data"])]),_:1}),o(n,{label:"备注",prop:"remark"},{default:l(()=>[i("div",ne,[o(m,{modelValue:a(t).remark,"onUpdate:modelValue":e[7]||(e[7]=r=>a(t).remark=r),type:"textarea",autosize:{minRows:3,maxRows:6},maxlength:200,"show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1})]),_:1},8,["model","rules"])]),_:1}),o(T,null,{default:l(()=>[o(C,{type:"primary",onClick:k},{default:l(()=>[...e[9]||(e[9]=[b("保存",-1)])]),_:1})]),_:1})])}}});export{Ke as default}; +import{_ as I}from"./index-j275bAO5.js";import{O as N,J as D,D as F,B as G,C as M,G as O,I as $,g as j,M as H,N as J,i as S}from"./element-plus-DFTWCWyi.js";import{j as z,F as A,G as L,H as P,I as K}from"./index--WnM67ZH.js";import{u as Q,a as W}from"./vue-router-QlpZ4wdW.js";import{f as v,b as X,ak as Y,I as Z,a as o,aN as l,J as i,O as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as w,q as ee,n as oe}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const te={class:"article-edit"},ae={class:"w-80"},le={class:"w-80"},re={class:"w-80"},se={class:"w-80"},ne={class:"w-80"},me=v({name:"scheduledTaskEdit"}),Ke=v({...me,setup(ie){const p=Q(),V=W(),t=w({id:"",name:"",command:"",expression:"",params:"",remark:"",status:1,type:1}),{removeTab:x}=z(),d=ee(),y=w({name:[{required:!0,message:"请输入名称"}],command:[{required:!0,message:"请输入thankphp命令,如vresion"}],expression:[{required:!0,message:"请输入crontab规则,例:5 9 * * *"}]}),E=async()=>{const s=await A({id:p.query.id});Object.keys(t).forEach(e=>{t[e]=s[e]})},u=oe([]),c=async()=>{var e;await((e=d.value)==null?void 0:e.validateField(["expression"]));const s=await L({expression:t.expression});u.value=s},k=async()=>{var s;await((s=d.value)==null?void 0:s.validate()),p.query.id?await P(t):await K(t),x(),V.back()};return X(async()=>{p.query.id&&(await E(),await c())}),(s,e)=>{const g=N,_=D,m=M,n=G,h=$,R=O,q=j,f=J,B=H,U=F,C=S,T=I;return Y(),Z("div",te,[o(_,{class:"!border-none",shadow:"never"},{default:l(()=>[o(g,{content:s.$route.meta.title,onBack:e[0]||(e[0]=r=>s.$router.back())},null,8,["content"])]),_:1}),o(_,{class:"mt-4 !border-none",shadow:"never"},{default:l(()=>[o(U,{ref_key:"formRef",ref:d,class:"ls-form",model:a(t),"label-width":"85px",rules:a(y)},{default:l(()=>[o(n,{label:"名称",prop:"name"},{default:l(()=>[i("div",ae,[o(m,{modelValue:a(t).name,"onUpdate:modelValue":e[1]||(e[1]=r=>a(t).name=r),placeholder:"请输入名称",maxlength:"30",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"类型",prop:"type"},{default:l(()=>[o(R,{modelValue:a(t).type,"onUpdate:modelValue":e[2]||(e[2]=r=>a(t).type=r)},{default:l(()=>[o(h,{value:1},{default:l(()=>[...e[8]||(e[8]=[b("定时任务",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(n,{label:"命令",prop:"command"},{default:l(()=>[i("div",le,[o(m,{modelValue:a(t).command,"onUpdate:modelValue":e[3]||(e[3]=r=>a(t).command=r),placeholder:"请输入thinkphp命令,如vresion",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"参数",prop:"params"},{default:l(()=>[i("div",re,[o(m,{modelValue:a(t).params,"onUpdate:modelValue":e[4]||(e[4]=r=>a(t).params=r),placeholder:"请输入参数,例:--id 8 --name 测试",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"状态"},{default:l(()=>[o(q,{modelValue:a(t).status,"onUpdate:modelValue":e[5]||(e[5]=r=>a(t).status=r),"active-value":1,"inactive-value":2},null,8,["modelValue"])]),_:1}),o(n,{label:"规则",prop:"expression"},{default:l(()=>[i("div",se,[o(m,{onBlur:c,modelValue:a(t).expression,"onUpdate:modelValue":e[6]||(e[6]=r=>a(t).expression=r),placeholder:"请输入crontab规则,例:5 9 * * *"},null,8,["modelValue"])])]),_:1}),o(n,null,{default:l(()=>[o(B,{data:a(u),style:{"max-width":"320px"}},{default:l(()=>[o(f,{prop:"time",label:"序号","min-width":"80"}),o(f,{prop:"date",label:"执行时间","min-width":"240"})]),_:1},8,["data"])]),_:1}),o(n,{label:"备注",prop:"remark"},{default:l(()=>[i("div",ne,[o(m,{modelValue:a(t).remark,"onUpdate:modelValue":e[7]||(e[7]=r=>a(t).remark=r),type:"textarea",autosize:{minRows:3,maxRows:6},maxlength:200,"show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1})]),_:1},8,["model","rules"])]),_:1}),o(T,null,{default:l(()=>[o(C,{type:"primary",onClick:k},{default:l(()=>[...e[9]||(e[9]=[b("保存",-1)])]),_:1})]),_:1})])}}});export{Ke as default}; diff --git a/server/public/admin/assets/edit-Cti94u-p.js b/server/public/admin/assets/edit-B6nlFjfE.js similarity index 96% rename from server/public/admin/assets/edit-Cti94u-p.js rename to server/public/admin/assets/edit-B6nlFjfE.js index 9dc52bd3..ea4305d3 100644 --- a/server/public/admin/assets/edit-Cti94u-p.js +++ b/server/public/admin/assets/edit-B6nlFjfE.js @@ -1 +1 @@ -import{e as M,D as T,B as z,I as J,C as O,G as Q,h as $,i as j,L as W,a as X}from"./element-plus-DFTWCWyi.js";import{_ as Y}from"./picker-cSgp8cEl.js";import{g as Z,s as h}from"./pay-BdcLIgLH.js";import{u as ee}from"./useLockFn-X4Qce5KO.js";import{u as le}from"./getExposeType-MUpmx9zy.js";import{f as oe,ak as y,G as te,aN as a,aP as ie,I as V,a as o,O as d,J as r,F as k,H as x,A as ae}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as re,n as u}from"./@vue/reactivity-DiY1c2vO.js";import{Q as ne}from"./@vue/shared-mAAVTE9n.js";import{_ as pe}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const me={class:"h-full flex flex-col","element-loading-text":"加载中...","element-loading-background":"var(--el-bg-color)"},se={class:"flex-1"},de={class:"flex-1"},ue={class:"flex-1"},fe=oe({__name:"edit",emits:["refresh"],setup(_e,{expose:b,emit:w}){const f=u(!1),v=le(),I=u(),U=u("profile"),C=u(!1),c=u(!0),_=ae(()=>{switch(t.value.pay_way){case 1:return"余额支付";case 2:return"微信支付";case 3:return"支付宝支付";default:return""}}),t=u({id:"",pay_way:0,name:"",icon:"",sort:0,remark:"",domain:"",config:{interface_version:"",merchant_type:"",mch_id:"",pay_sign_key:"",apiclient_cert:"",apiclient_key:"",mode:"",app_id:"",private_key:"",ali_public_key:""}}),E={name:[{required:!0,message:"请输入显示名称"}],"config.mch_id":[{required:!0,message:"请输入微信支付商户号"}],"config.pay_sign_key":[{required:!0,message:"请输入微信支付商户API密钥"}],"config.apiclient_cert":[{required:!0,message:"请输入微信支付证书"}],"config.apiclient_key":[{required:!0,message:"请输入微信支付证书密钥"}],"config.app_id":[{required:!0,message:"请输入支付宝应用ID"}],"config.private_key":[{required:!0,message:"请输入支付宝应用私钥"}],"config.ali_public_key":[{required:!0,message:"请输入支付宝公钥"}]},D=w,P=(p,e,s)=>{c.value=!0,U.value=s||"profile",C.value=e||!1,q(p),I.value=p,f.value=!0},q=async p=>{const e=await Z({id:p});e.config||(e.config=t.value.config),c.value=!1,t.value=e},B=p=>{X.confirm("修改还未保存,确认退出编辑吗?").then(()=>{p()}).catch(()=>{})},F=()=>{var p;(p=v.value)==null||p.resetFields()},N=async()=>{var p;await((p=v.value)==null?void 0:p.validate()),await h(t.value),f.value=!1,D("refresh")},{isLock:R,lockFn:A}=ee(N);return b({openHandle:P}),(p,e)=>{const s=J,n=z,m=O,L=Y,g=Q,S=$,G=j,H=M,K=W;return y(),te(H,{modelValue:l(f),"onUpdate:modelValue":e[14]||(e[14]=i=>re(f)?f.value=i:null),"destroy-on-close":"",title:`${l(_)}配置`,direction:"rtl",size:"50%",onClose:F,"before-close":B},{default:a(()=>[ie((y(),V("div",me,[o(l(T),{ref_key:"formRef",ref:v,model:l(t),"label-width":"9rem",rules:E},{default:a(()=>[o(n,{label:"支付方式"},{default:a(()=>[o(s,{value:l(_),"model-value":l(_)},{default:a(()=>[d(ne(l(_)),1)]),_:1},8,["value","model-value"])]),_:1}),o(n,{label:"显示名称",prop:"name"},{default:a(()=>[o(m,{modelValue:l(t).name,"onUpdate:modelValue":e[0]||(e[0]=i=>l(t).name=i),placeholder:"请输入显示名称",style:{"max-width":"250px"}},null,8,["modelValue"])]),_:1}),o(n,{label:"图标",prop:"image"},{default:a(()=>[r("div",null,[o(L,{limit:1,disabled:!1,modelValue:l(t).icon,"onUpdate:modelValue":e[1]||(e[1]=i=>l(t).icon=i)},null,8,["modelValue"]),e[15]||(e[15]=r("div",{class:"form-tips"},"建议尺寸:200*200px",-1))])]),_:1}),l(t).pay_way==2?(y(),V(k,{key:0},[o(n,{prop:"config.interface_version",label:"微信支付接口版本"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.interface_version,"onUpdate:modelValue":e[2]||(e[2]=i=>l(t).config.interface_version=i)},{default:a(()=>[o(s,{value:"v3"},{default:a(()=>[...e[16]||(e[16]=[d("V3",-1)])]),_:1})]),_:1},8,["modelValue"]),e[17]||(e[17]=r("div",{class:"form-tips"},"暂时只支持V3版本",-1))])]),_:1}),o(n,{label:"商户类型",prop:"config.merchant_type"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.merchant_type,"onUpdate:modelValue":e[3]||(e[3]=i=>l(t).config.merchant_type=i)},{default:a(()=>[o(s,{value:"ordinary_merchant"},{default:a(()=>[...e[18]||(e[18]=[d("普通商户",-1)])]),_:1})]),_:1},8,["modelValue"]),e[19]||(e[19]=r("div",{class:"form-tips"}," 暂时只支持普通商户类型,服务商户类型模式暂不支持 ",-1))])]),_:1}),o(n,{label:"微信支付商户号",prop:"config.mch_id"},{default:a(()=>[r("div",null,[o(m,{modelValue:l(t).config.mch_id,"onUpdate:modelValue":e[4]||(e[4]=i=>l(t).config.mch_id=i),placeholder:"请输入微信支付商户号",style:{"max-width":"250px"}},null,8,["modelValue"]),e[20]||(e[20]=r("div",{class:"form-tips"},"微信支付商户号(MCHID)",-1))])]),_:1}),o(n,{label:"商户API密钥",prop:"config.pay_sign_key"},{default:a(()=>[r("div",null,[o(m,{modelValue:l(t).config.pay_sign_key,"onUpdate:modelValue":e[5]||(e[5]=i=>l(t).config.pay_sign_key=i),placeholder:"请输入微信支付商户API密钥",style:{"max-width":"250px"}},null,8,["modelValue"]),e[21]||(e[21]=r("div",{class:"form-tips"},"微信支付商户API密钥(paySignKey)",-1))])]),_:1}),o(n,{label:"微信支付证书",prop:"config.apiclient_cert"},{default:a(()=>[r("div",null,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.apiclient_cert,"onUpdate:modelValue":e[6]||(e[6]=i=>l(t).config.apiclient_cert=i),placeholder:"请输入微信支付证书",style:{"max-width":"400px"}},null,8,["modelValue"]),e[22]||(e[22]=r("div",{class:"form-tips"}," 微信支付证书(apiclient_cert.pem),前往微信商家平台生成并黏贴至此处 ",-1))])]),_:1}),o(n,{label:"微信支付证书密钥",prop:"config.apiclient_key"},{default:a(()=>[r("div",null,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.apiclient_key,"onUpdate:modelValue":e[7]||(e[7]=i=>l(t).config.apiclient_key=i),placeholder:"请输入微信支付证书密钥",style:{"max-width":"400px"}},null,8,["modelValue"]),e[23]||(e[23]=r("div",{class:"form-tips"}," 微信支付证书密钥(apiclient_key.pem),前往微信商家平台生成并黏贴至此处 ",-1))])]),_:1}),o(n,{label:"支付授权目录"},{default:a(()=>[...e[24]||(e[24]=[r("div",null,[r("div",null,[r("span",{class:"mr-[20px]"},"https://前台手机域名地址/")])],-1)])]),_:1})],64)):x("",!0),l(t).pay_way==3?(y(),V(k,{key:1},[o(n,{label:"模式",prop:"config.mode"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.mode,"onUpdate:modelValue":e[8]||(e[8]=i=>l(t).config.mode=i)},{default:a(()=>[o(s,{value:"normal_mode"},{default:a(()=>[...e[25]||(e[25]=[d("普通模式",-1)])]),_:1})]),_:1},8,["modelValue"]),e[26]||(e[26]=r("div",{class:"form-tips"},"暂时仅支持支付宝普通模式",-1))])]),_:1}),o(n,{label:"商户类型",prop:"config.merchant_type"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.merchant_type,"onUpdate:modelValue":e[9]||(e[9]=i=>l(t).config.merchant_type=i)},{default:a(()=>[o(s,{value:"ordinary_merchant"},{default:a(()=>[...e[27]||(e[27]=[d("普通商户",-1)])]),_:1})]),_:1},8,["modelValue"]),e[28]||(e[28]=r("div",{class:"form-tips"}," 暂时只支持普通商户类型,服务商户类型模式暂不支持 ",-1))])]),_:1}),o(n,{label:"应用ID",prop:"config.app_id"},{default:a(()=>[r("div",se,[o(m,{modelValue:l(t).config.app_id,"onUpdate:modelValue":e[10]||(e[10]=i=>l(t).config.app_id=i),placeholder:"请输入支付宝应用ID",style:{"max-width":"250px"}},null,8,["modelValue"]),e[29]||(e[29]=r("div",{class:"form-tips"},"支付宝应用APP_ID",-1))])]),_:1}),o(n,{label:"应用私钥",prop:"config.private_key"},{default:a(()=>[r("div",de,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.private_key,"onUpdate:modelValue":e[11]||(e[11]=i=>l(t).config.private_key=i),placeholder:"请输入支付宝应用私钥",style:{"max-width":"400px"}},null,8,["modelValue"]),e[30]||(e[30]=r("div",{class:"form-tips"},"支付宝应用私钥(private_key)",-1))])]),_:1}),o(n,{label:"支付宝公钥",prop:"config.ali_public_key"},{default:a(()=>[r("div",ue,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.ali_public_key,"onUpdate:modelValue":e[12]||(e[12]=i=>l(t).config.ali_public_key=i),placeholder:"请输入支付宝公钥",style:{"max-width":"400px"}},null,8,["modelValue"]),e[31]||(e[31]=r("div",{class:"form-tips"},"支付宝公钥(alipayCertPublicKey)",-1))])]),_:1})],64)):x("",!0),o(n,{label:"排序",prop:"sort"},{default:a(()=>[r("div",null,[o(S,{modelValue:l(t).sort,"onUpdate:modelValue":e[13]||(e[13]=i=>l(t).sort=i),min:0,max:9999},null,8,["modelValue"]),e[32]||(e[32]=r("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),o(n,null,{default:a(()=>[o(G,{type:"primary",loading:l(R),onClick:l(A)},{default:a(()=>[...e[33]||(e[33]=[d("保存",-1)])]),_:1},8,["loading","onClick"])]),_:1})]),_:1},8,["model"])])),[[K,l(c)]])]),_:1},8,["modelValue","title"])}}}),yl=pe(fe,[["__scopeId","data-v-221f14e8"]]);export{yl as default}; +import{e as M,D as T,B as z,I as J,C as O,G as Q,h as $,i as j,L as W,a as X}from"./element-plus-DFTWCWyi.js";import{_ as Y}from"./picker-DzCeqD7m.js";import{g as Z,s as h}from"./pay-hWrQY7o1.js";import{u as ee}from"./useLockFn-X4Qce5KO.js";import{u as le}from"./getExposeType-MUpmx9zy.js";import{f as oe,ak as y,G as te,aN as a,aP as ie,I as V,a as o,O as d,J as r,F as k,H as x,A as ae}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as re,n as u}from"./@vue/reactivity-DiY1c2vO.js";import{Q as ne}from"./@vue/shared-mAAVTE9n.js";import{_ as pe}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const me={class:"h-full flex flex-col","element-loading-text":"加载中...","element-loading-background":"var(--el-bg-color)"},se={class:"flex-1"},de={class:"flex-1"},ue={class:"flex-1"},fe=oe({__name:"edit",emits:["refresh"],setup(_e,{expose:b,emit:w}){const f=u(!1),v=le(),I=u(),U=u("profile"),C=u(!1),c=u(!0),_=ae(()=>{switch(t.value.pay_way){case 1:return"余额支付";case 2:return"微信支付";case 3:return"支付宝支付";default:return""}}),t=u({id:"",pay_way:0,name:"",icon:"",sort:0,remark:"",domain:"",config:{interface_version:"",merchant_type:"",mch_id:"",pay_sign_key:"",apiclient_cert:"",apiclient_key:"",mode:"",app_id:"",private_key:"",ali_public_key:""}}),E={name:[{required:!0,message:"请输入显示名称"}],"config.mch_id":[{required:!0,message:"请输入微信支付商户号"}],"config.pay_sign_key":[{required:!0,message:"请输入微信支付商户API密钥"}],"config.apiclient_cert":[{required:!0,message:"请输入微信支付证书"}],"config.apiclient_key":[{required:!0,message:"请输入微信支付证书密钥"}],"config.app_id":[{required:!0,message:"请输入支付宝应用ID"}],"config.private_key":[{required:!0,message:"请输入支付宝应用私钥"}],"config.ali_public_key":[{required:!0,message:"请输入支付宝公钥"}]},D=w,P=(p,e,s)=>{c.value=!0,U.value=s||"profile",C.value=e||!1,q(p),I.value=p,f.value=!0},q=async p=>{const e=await Z({id:p});e.config||(e.config=t.value.config),c.value=!1,t.value=e},B=p=>{X.confirm("修改还未保存,确认退出编辑吗?").then(()=>{p()}).catch(()=>{})},F=()=>{var p;(p=v.value)==null||p.resetFields()},N=async()=>{var p;await((p=v.value)==null?void 0:p.validate()),await h(t.value),f.value=!1,D("refresh")},{isLock:R,lockFn:A}=ee(N);return b({openHandle:P}),(p,e)=>{const s=J,n=z,m=O,L=Y,g=Q,S=$,G=j,H=M,K=W;return y(),te(H,{modelValue:l(f),"onUpdate:modelValue":e[14]||(e[14]=i=>re(f)?f.value=i:null),"destroy-on-close":"",title:`${l(_)}配置`,direction:"rtl",size:"50%",onClose:F,"before-close":B},{default:a(()=>[ie((y(),V("div",me,[o(l(T),{ref_key:"formRef",ref:v,model:l(t),"label-width":"9rem",rules:E},{default:a(()=>[o(n,{label:"支付方式"},{default:a(()=>[o(s,{value:l(_),"model-value":l(_)},{default:a(()=>[d(ne(l(_)),1)]),_:1},8,["value","model-value"])]),_:1}),o(n,{label:"显示名称",prop:"name"},{default:a(()=>[o(m,{modelValue:l(t).name,"onUpdate:modelValue":e[0]||(e[0]=i=>l(t).name=i),placeholder:"请输入显示名称",style:{"max-width":"250px"}},null,8,["modelValue"])]),_:1}),o(n,{label:"图标",prop:"image"},{default:a(()=>[r("div",null,[o(L,{limit:1,disabled:!1,modelValue:l(t).icon,"onUpdate:modelValue":e[1]||(e[1]=i=>l(t).icon=i)},null,8,["modelValue"]),e[15]||(e[15]=r("div",{class:"form-tips"},"建议尺寸:200*200px",-1))])]),_:1}),l(t).pay_way==2?(y(),V(k,{key:0},[o(n,{prop:"config.interface_version",label:"微信支付接口版本"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.interface_version,"onUpdate:modelValue":e[2]||(e[2]=i=>l(t).config.interface_version=i)},{default:a(()=>[o(s,{value:"v3"},{default:a(()=>[...e[16]||(e[16]=[d("V3",-1)])]),_:1})]),_:1},8,["modelValue"]),e[17]||(e[17]=r("div",{class:"form-tips"},"暂时只支持V3版本",-1))])]),_:1}),o(n,{label:"商户类型",prop:"config.merchant_type"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.merchant_type,"onUpdate:modelValue":e[3]||(e[3]=i=>l(t).config.merchant_type=i)},{default:a(()=>[o(s,{value:"ordinary_merchant"},{default:a(()=>[...e[18]||(e[18]=[d("普通商户",-1)])]),_:1})]),_:1},8,["modelValue"]),e[19]||(e[19]=r("div",{class:"form-tips"}," 暂时只支持普通商户类型,服务商户类型模式暂不支持 ",-1))])]),_:1}),o(n,{label:"微信支付商户号",prop:"config.mch_id"},{default:a(()=>[r("div",null,[o(m,{modelValue:l(t).config.mch_id,"onUpdate:modelValue":e[4]||(e[4]=i=>l(t).config.mch_id=i),placeholder:"请输入微信支付商户号",style:{"max-width":"250px"}},null,8,["modelValue"]),e[20]||(e[20]=r("div",{class:"form-tips"},"微信支付商户号(MCHID)",-1))])]),_:1}),o(n,{label:"商户API密钥",prop:"config.pay_sign_key"},{default:a(()=>[r("div",null,[o(m,{modelValue:l(t).config.pay_sign_key,"onUpdate:modelValue":e[5]||(e[5]=i=>l(t).config.pay_sign_key=i),placeholder:"请输入微信支付商户API密钥",style:{"max-width":"250px"}},null,8,["modelValue"]),e[21]||(e[21]=r("div",{class:"form-tips"},"微信支付商户API密钥(paySignKey)",-1))])]),_:1}),o(n,{label:"微信支付证书",prop:"config.apiclient_cert"},{default:a(()=>[r("div",null,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.apiclient_cert,"onUpdate:modelValue":e[6]||(e[6]=i=>l(t).config.apiclient_cert=i),placeholder:"请输入微信支付证书",style:{"max-width":"400px"}},null,8,["modelValue"]),e[22]||(e[22]=r("div",{class:"form-tips"}," 微信支付证书(apiclient_cert.pem),前往微信商家平台生成并黏贴至此处 ",-1))])]),_:1}),o(n,{label:"微信支付证书密钥",prop:"config.apiclient_key"},{default:a(()=>[r("div",null,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.apiclient_key,"onUpdate:modelValue":e[7]||(e[7]=i=>l(t).config.apiclient_key=i),placeholder:"请输入微信支付证书密钥",style:{"max-width":"400px"}},null,8,["modelValue"]),e[23]||(e[23]=r("div",{class:"form-tips"}," 微信支付证书密钥(apiclient_key.pem),前往微信商家平台生成并黏贴至此处 ",-1))])]),_:1}),o(n,{label:"支付授权目录"},{default:a(()=>[...e[24]||(e[24]=[r("div",null,[r("div",null,[r("span",{class:"mr-[20px]"},"https://前台手机域名地址/")])],-1)])]),_:1})],64)):x("",!0),l(t).pay_way==3?(y(),V(k,{key:1},[o(n,{label:"模式",prop:"config.mode"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.mode,"onUpdate:modelValue":e[8]||(e[8]=i=>l(t).config.mode=i)},{default:a(()=>[o(s,{value:"normal_mode"},{default:a(()=>[...e[25]||(e[25]=[d("普通模式",-1)])]),_:1})]),_:1},8,["modelValue"]),e[26]||(e[26]=r("div",{class:"form-tips"},"暂时仅支持支付宝普通模式",-1))])]),_:1}),o(n,{label:"商户类型",prop:"config.merchant_type"},{default:a(()=>[r("div",null,[o(g,{modelValue:l(t).config.merchant_type,"onUpdate:modelValue":e[9]||(e[9]=i=>l(t).config.merchant_type=i)},{default:a(()=>[o(s,{value:"ordinary_merchant"},{default:a(()=>[...e[27]||(e[27]=[d("普通商户",-1)])]),_:1})]),_:1},8,["modelValue"]),e[28]||(e[28]=r("div",{class:"form-tips"}," 暂时只支持普通商户类型,服务商户类型模式暂不支持 ",-1))])]),_:1}),o(n,{label:"应用ID",prop:"config.app_id"},{default:a(()=>[r("div",se,[o(m,{modelValue:l(t).config.app_id,"onUpdate:modelValue":e[10]||(e[10]=i=>l(t).config.app_id=i),placeholder:"请输入支付宝应用ID",style:{"max-width":"250px"}},null,8,["modelValue"]),e[29]||(e[29]=r("div",{class:"form-tips"},"支付宝应用APP_ID",-1))])]),_:1}),o(n,{label:"应用私钥",prop:"config.private_key"},{default:a(()=>[r("div",de,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.private_key,"onUpdate:modelValue":e[11]||(e[11]=i=>l(t).config.private_key=i),placeholder:"请输入支付宝应用私钥",style:{"max-width":"400px"}},null,8,["modelValue"]),e[30]||(e[30]=r("div",{class:"form-tips"},"支付宝应用私钥(private_key)",-1))])]),_:1}),o(n,{label:"支付宝公钥",prop:"config.ali_public_key"},{default:a(()=>[r("div",ue,[o(m,{type:"textarea",rows:3,modelValue:l(t).config.ali_public_key,"onUpdate:modelValue":e[12]||(e[12]=i=>l(t).config.ali_public_key=i),placeholder:"请输入支付宝公钥",style:{"max-width":"400px"}},null,8,["modelValue"]),e[31]||(e[31]=r("div",{class:"form-tips"},"支付宝公钥(alipayCertPublicKey)",-1))])]),_:1})],64)):x("",!0),o(n,{label:"排序",prop:"sort"},{default:a(()=>[r("div",null,[o(S,{modelValue:l(t).sort,"onUpdate:modelValue":e[13]||(e[13]=i=>l(t).sort=i),min:0,max:9999},null,8,["modelValue"]),e[32]||(e[32]=r("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),o(n,null,{default:a(()=>[o(G,{type:"primary",loading:l(R),onClick:l(A)},{default:a(()=>[...e[33]||(e[33]=[d("保存",-1)])]),_:1},8,["loading","onClick"])]),_:1})]),_:1},8,["model"])])),[[K,l(c)]])]),_:1},8,["modelValue","title"])}}}),yl=pe(fe,[["__scopeId","data-v-221f14e8"]]);export{yl as default}; diff --git a/server/public/admin/assets/edit-DUXbzElE.js b/server/public/admin/assets/edit-BJAaLgsl.js similarity index 97% rename from server/public/admin/assets/edit-DUXbzElE.js rename to server/public/admin/assets/edit-BJAaLgsl.js index c4510df9..b605710b 100644 --- a/server/public/admin/assets/edit-DUXbzElE.js +++ b/server/public/admin/assets/edit-BJAaLgsl.js @@ -1 +1 @@ -import{D as A,B as Q,a2 as T,P as z,ag as J,Q as L,W,h as j,C as H}from"./element-plus-DFTWCWyi.js";import{a as K,b as X,c as Z}from"./finance-L1-WPbJt.js";import{_ as $}from"./index-BQY2-_X1.js";import{f as ee,ak as d,I as u,a as n,aN as r,F as b,ap as g,G as k,J as V,A as te}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as w,n as oe,r as ae}from"./@vue/reactivity-DiY1c2vO.js";import{Q as le}from"./@vue/shared-mAAVTE9n.js";import{_ as ne}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"edit-popup"},se={class:"channel-opt-row"},de={class:"opt-name"},me=ee({__name:"edit",props:{mediaChannelGroups:{},deptOptions:{},defaultMediaChannelCode:{}},emits:["success","close"],setup(p,{expose:v,emit:C}){const y=p,_=C,f=w(),c=w(),m=oe("add"),E=te(()=>m.value==="edit"?"编辑账户消耗":"新增账户消耗"),x={value:"id",label:"name",children:"children"},e=ae({id:"",cost_date:"",media_channel_code:"",dept_id:"",amount:0,remark:""}),D={cost_date:[{required:!0,message:"请选择日期",trigger:["change"]}],media_channel_code:[{required:!0,message:"请选择自媒体渠道",trigger:["change"]}],dept_id:[{required:!0,message:"请选择绑定部门",trigger:["change"]}],amount:[{required:!0,message:"请输入账户消耗金额",trigger:["blur","change"]}]},R=()=>{e.id="",e.cost_date="",e.media_channel_code=y.defaultMediaChannelCode||"",e.dept_id="",e.amount=0,e.remark=""},F=async()=>{var o,t;await((o=f.value)==null?void 0:o.validate()),m.value==="edit"?await K(e):await X(e),(t=c.value)==null||t.close(),_("success")},N=(o="add")=>{var t;m.value=o,R(),(t=c.value)==null||t.open()},h=o=>{e.id=o.id??"",e.cost_date=o.cost_date??"",e.media_channel_code=o.media_channel_code??"",e.dept_id=o.dept_id?Number(o.dept_id):"",e.amount=Number(o.amount??0),e.remark=o.remark??""},q=async o=>{const t=await Z({id:o.id});h(t)},B=()=>{_("close")};return v({open:N,setFormData:h,getDetail:q}),(o,t)=>{const I=T,s=Q,U=L,G=J,M=z,O=W,P=j,S=H,Y=A;return d(),u("div",re,[n($,{ref_key:"popupRef",ref:c,title:l(E),async:!0,width:"560px",onConfirm:F,onClose:B},{default:r(()=>[n(Y,{ref_key:"formRef",ref:f,model:l(e),"label-width":"100px",rules:D},{default:r(()=>[n(s,{label:"日期",prop:"cost_date"},{default:r(()=>[n(I,{modelValue:l(e).cost_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).cost_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(m)==="edit"},null,8,["modelValue","disabled"])]),_:1}),n(s,{label:"自媒体渠道",prop:"media_channel_code"},{default:r(()=>[n(M,{modelValue:l(e).media_channel_code,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_channel_code=a),placeholder:"请选择自媒体渠道",class:"account-cost-channel-select w-full",filterable:""},{default:r(()=>[(d(!0),u(b,null,g(p.mediaChannelGroups,a=>(d(),k(G,{key:a.group_name,label:a.group_name},{default:r(()=>[(d(!0),u(b,null,g(a.channels,i=>(d(),k(U,{key:i.channel_code,label:i.channel_name,value:i.channel_code},{default:r(()=>[V("div",se,[V("span",de,le(i.channel_name),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(s,{label:"部门",prop:"dept_id"},{default:r(()=>[n(O,{modelValue:l(e).dept_id,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).dept_id=a),data:p.deptOptions,"node-key":"id",props:x,"default-expand-all":!0,"check-strictly":"",placeholder:"请选择绑定部门",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","data"])]),_:1}),n(s,{label:"账户消耗",prop:"amount"},{default:r(()=>[n(P,{modelValue:l(e).amount,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1}),n(s,{label:"备注",prop:"remark"},{default:r(()=>[n(S,{modelValue:l(e).remark,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:4,maxRows:6},maxlength:"255","show-word-limit":"",placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}}),He=ne(me,[["__scopeId","data-v-234837b3"]]);export{He as default}; +import{D as A,B as Q,a2 as T,P as z,ag as J,Q as L,W,h as j,C as H}from"./element-plus-DFTWCWyi.js";import{a as K,b as X,c as Z}from"./finance-CuL8jhJS.js";import{_ as $}from"./index-SocYjCJ1.js";import{f as ee,ak as d,I as u,a as n,aN as r,F as b,ap as g,G as k,J as V,A as te}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as w,n as oe,r as ae}from"./@vue/reactivity-DiY1c2vO.js";import{Q as le}from"./@vue/shared-mAAVTE9n.js";import{_ as ne}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"edit-popup"},se={class:"channel-opt-row"},de={class:"opt-name"},me=ee({__name:"edit",props:{mediaChannelGroups:{},deptOptions:{},defaultMediaChannelCode:{}},emits:["success","close"],setup(p,{expose:v,emit:C}){const y=p,_=C,f=w(),c=w(),m=oe("add"),E=te(()=>m.value==="edit"?"编辑账户消耗":"新增账户消耗"),x={value:"id",label:"name",children:"children"},e=ae({id:"",cost_date:"",media_channel_code:"",dept_id:"",amount:0,remark:""}),D={cost_date:[{required:!0,message:"请选择日期",trigger:["change"]}],media_channel_code:[{required:!0,message:"请选择自媒体渠道",trigger:["change"]}],dept_id:[{required:!0,message:"请选择绑定部门",trigger:["change"]}],amount:[{required:!0,message:"请输入账户消耗金额",trigger:["blur","change"]}]},R=()=>{e.id="",e.cost_date="",e.media_channel_code=y.defaultMediaChannelCode||"",e.dept_id="",e.amount=0,e.remark=""},F=async()=>{var o,t;await((o=f.value)==null?void 0:o.validate()),m.value==="edit"?await K(e):await X(e),(t=c.value)==null||t.close(),_("success")},N=(o="add")=>{var t;m.value=o,R(),(t=c.value)==null||t.open()},h=o=>{e.id=o.id??"",e.cost_date=o.cost_date??"",e.media_channel_code=o.media_channel_code??"",e.dept_id=o.dept_id?Number(o.dept_id):"",e.amount=Number(o.amount??0),e.remark=o.remark??""},q=async o=>{const t=await Z({id:o.id});h(t)},B=()=>{_("close")};return v({open:N,setFormData:h,getDetail:q}),(o,t)=>{const I=T,s=Q,U=L,G=J,M=z,O=W,P=j,S=H,Y=A;return d(),u("div",re,[n($,{ref_key:"popupRef",ref:c,title:l(E),async:!0,width:"560px",onConfirm:F,onClose:B},{default:r(()=>[n(Y,{ref_key:"formRef",ref:f,model:l(e),"label-width":"100px",rules:D},{default:r(()=>[n(s,{label:"日期",prop:"cost_date"},{default:r(()=>[n(I,{modelValue:l(e).cost_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).cost_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(m)==="edit"},null,8,["modelValue","disabled"])]),_:1}),n(s,{label:"自媒体渠道",prop:"media_channel_code"},{default:r(()=>[n(M,{modelValue:l(e).media_channel_code,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_channel_code=a),placeholder:"请选择自媒体渠道",class:"account-cost-channel-select w-full",filterable:""},{default:r(()=>[(d(!0),u(b,null,g(p.mediaChannelGroups,a=>(d(),k(G,{key:a.group_name,label:a.group_name},{default:r(()=>[(d(!0),u(b,null,g(a.channels,i=>(d(),k(U,{key:i.channel_code,label:i.channel_name,value:i.channel_code},{default:r(()=>[V("div",se,[V("span",de,le(i.channel_name),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(s,{label:"部门",prop:"dept_id"},{default:r(()=>[n(O,{modelValue:l(e).dept_id,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).dept_id=a),data:p.deptOptions,"node-key":"id",props:x,"default-expand-all":!0,"check-strictly":"",placeholder:"请选择绑定部门",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","data"])]),_:1}),n(s,{label:"账户消耗",prop:"amount"},{default:r(()=>[n(P,{modelValue:l(e).amount,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1}),n(s,{label:"备注",prop:"remark"},{default:r(()=>[n(S,{modelValue:l(e).remark,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:4,maxRows:6},maxlength:"255","show-word-limit":"",placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}}),He=ne(me,[["__scopeId","data-v-234837b3"]]);export{He as default}; diff --git a/server/public/admin/assets/edit-3qCytcox.js b/server/public/admin/assets/edit-BS5dUZ6W.js similarity index 95% rename from server/public/admin/assets/edit-3qCytcox.js rename to server/public/admin/assets/edit-BS5dUZ6W.js index 1a28e771..a6a5bba1 100644 --- a/server/public/admin/assets/edit-3qCytcox.js +++ b/server/public/admin/assets/edit-BS5dUZ6W.js @@ -1 +1 @@ -import{D as X,U as Y,B as Z,C as h,G as ee,I as le,h as oe,W as te,P as ae,Q as re,g as de,i as ie,e as ne}from"./element-plus-DFTWCWyi.js";import{_ as se}from"./picker-cSgp8cEl.js";import{b as pe,d as ue,e as me}from"./admin-BAFPFiwc.js";import{d as fe}from"./department-CSUh_x-a.js";import{j as _e}from"./post-CjhbCF7F.js";import{i as ge,m as be,_ as ce}from"./index-Nt5zMHcc.js";import{u as Ve}from"./useDictOptions-CT8hbU1b.js";import{f as ve,ak as _,I as v,a as t,aN as r,O as u,G as w,J as s,H as we,F as R,ap as A,A as ye}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as xe,q as Ue,n as b,r as B}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ee={class:"edit-drawer"},je={class:"text-primary font-medium"},De={class:"w-full"},ke={class:"ml-2 text-gray-500"},qe={class:"flex justify-end"},Ce=ve({__name:"edit",emits:["success","close"],setup(Ne,{expose:O,emit:S}){function F(i){if(i.status!==1)return!0;const e=i.children;return Array.isArray(e)&&e.length>0}const y=S,x=Ue(),f=b(!1),m=b("add"),c=b(!1),U=b([]),T=async()=>{const i=await be({type:"department"});U.value=(i==null?void 0:i.department)||[]},G=ye(()=>m.value=="edit"?"编辑医助":"新增医助"),o=B({id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[2],dept_id:[],jobs_id:[],avatar:"",title:"",department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1,diagnosis_count:null}),{optionsData:E}=Ve({jobs:{api:_e},dept:{api:fe,params:{apply_data_scope:1}}}),V=(i,e,n)=>{o.password&&(e||n(new Error("请再次输入密码")),e!==o.password&&n(new Error("两次输入密码不一致!"))),n()},g=B({account:[{required:!0,message:"请输入账号",trigger:["blur"]}],name:[{required:!0,message:"请输入姓名",trigger:["blur"]}],gender:[{required:!0,message:"请选择性别",trigger:["change"]}],dept_id:[{required:!0,type:"array",min:1,message:"请选择归属部门",trigger:["change"]}],phone:[{validator:(i,e,n)=>{e&&!/^1[3-9]\d{9}$/.test(e)?n(new Error("请输入正确的手机号")):n()},trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}],password_confirm:[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:V,trigger:"blur"}]}),P=async()=>{var i;try{await((i=x.value)==null?void 0:i.validate()),c.value=!0,m.value=="edit"?await pe(o):await ue(o),ge.msgSuccess(m.value=="edit"?"编辑成功":"新增成功"),f.value=!1,y("success")}catch(e){console.error("提交失败:",e)}finally{c.value=!1}},Q=(i="add")=>{m.value=i,f.value=!0,T(),i==="add"&&(Object.assign(o,{id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[2],dept_id:[],jobs_id:[],avatar:"",title:"",department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1,diagnosis_count:null}),g.password=[{required:!0,message:"请输入密码",trigger:["blur"]}],g.password_confirm=[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:V,trigger:"blur"}])},z=async i=>{g.password=[],g.password_confirm=[{validator:V,trigger:"blur"}];const e=await me({id:i.id});for(const n in o)e[n]!=null&&e[n]!=null&&(o[n]=e[n]);o.role_id.includes(2)||o.role_id.push(2)},j=()=>{f.value=!1,y("close")};return O({open:Q,setFormData:z}),(i,e)=>{const n=Y,d=Z,p=h,H=se,D=le,J=ee,L=oe,W=te,k=re,q=ae,C=de,$=X,N=ie,K=ne;return _(),v("div",Ee,[t(K,{modelValue:l(f),"onUpdate:modelValue":e[18]||(e[18]=a=>xe(f)?f.value=a:null),title:l(G),direction:"rtl",size:"780px","before-close":j},{footer:r(()=>[s("div",qe,[t(N,{onClick:j},{default:r(()=>[...e[30]||(e[30]=[u("取消",-1)])]),_:1}),t(N,{type:"primary",onClick:P,loading:l(c)},{default:r(()=>[...e[31]||(e[31]=[u("确定",-1)])]),_:1},8,["loading"])])]),default:r(()=>[t($,{ref_key:"formRef",ref:x,model:l(o),"label-width":"100px",rules:l(g)},{default:r(()=>[t(n,{"content-position":"left"},{default:r(()=>[...e[19]||(e[19]=[u("基本信息",-1)])]),_:1}),l(m)==="edit"&&l(o).diagnosis_count!=null?(_(),w(d,{key:0,label:"创建诊单数"},{default:r(()=>[s("span",je,I(l(o).diagnosis_count),1),e[20]||(e[20]=s("span",{class:"text-tx-secondary text-sm ml-2"},"条",-1))]),_:1})):we("",!0),t(d,{label:"账号",prop:"account"},{default:r(()=>[t(p,{modelValue:l(o).account,"onUpdate:modelValue":e[0]||(e[0]=a=>l(o).account=a),placeholder:"请输入账号",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"头像"},{default:r(()=>[s("div",null,[s("div",null,[t(H,{modelValue:l(o).avatar,"onUpdate:modelValue":e[1]||(e[1]=a=>l(o).avatar=a),limit:1},null,8,["modelValue"])]),e[21]||(e[21]=s("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1}),t(d,{label:"姓名",prop:"name"},{default:r(()=>[t(p,{modelValue:l(o).name,"onUpdate:modelValue":e[2]||(e[2]=a=>l(o).name=a),placeholder:"请输入姓名",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"性别",prop:"gender"},{default:r(()=>[t(J,{modelValue:l(o).gender,"onUpdate:modelValue":e[3]||(e[3]=a=>l(o).gender=a)},{default:r(()=>[t(D,{label:1},{default:r(()=>[...e[22]||(e[22]=[u("男",-1)])]),_:1}),t(D,{label:2},{default:r(()=>[...e[23]||(e[23]=[u("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"年龄",prop:"age"},{default:r(()=>[t(L,{modelValue:l(o).age,"onUpdate:modelValue":e[4]||(e[4]=a=>l(o).age=a),min:18,max:100,placeholder:"请输入年龄"},null,8,["modelValue"])]),_:1}),t(d,{label:"手机号",prop:"phone"},{default:r(()=>[t(p,{modelValue:l(o).phone,"onUpdate:modelValue":e[5]||(e[5]=a=>l(o).phone=a),placeholder:"请输入手机号",clearable:""},null,8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[24]||(e[24]=[u("组织信息",-1)])]),_:1}),t(d,{label:"归属部门",prop:"dept_id"},{default:r(()=>[s("div",De,[t(W,{class:"flex-1 w-full",modelValue:l(o).dept_id,"onUpdate:modelValue":e[6]||(e[6]=a=>l(o).dept_id=a),data:l(E).dept,clearable:"",multiple:"","node-key":"id",props:{label:"name",disabled:F},"check-strictly":"","default-expand-all":!0,placeholder:"请选择末级归属部门"},null,8,["modelValue","data","props"]),e[25]||(e[25]=s("div",{class:"form-tips"},"仅可选末级部门(含下级的父部门不可选),与数据权限范围一致。",-1))])]),_:1}),t(d,{label:"岗位",prop:"jobs_id"},{default:r(()=>[t(q,{class:"flex-1",modelValue:l(o).jobs_id,"onUpdate:modelValue":e[7]||(e[7]=a=>l(o).jobs_id=a),clearable:"",multiple:"",placeholder:"请选择岗位"},{default:r(()=>[(_(!0),v(R,null,A(l(E).jobs,(a,M)=>(_(),w(k,{key:M,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[26]||(e[26]=[u("专业信息",-1)])]),_:1}),t(d,{label:"职称",prop:"title"},{default:r(()=>[t(p,{modelValue:l(o).title,"onUpdate:modelValue":e[8]||(e[8]=a=>l(o).title=a),placeholder:"如:主任医师、副主任医师",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"所属科室",prop:"department"},{default:r(()=>[t(q,{modelValue:l(o).department,"onUpdate:modelValue":e[9]||(e[9]=a=>l(o).department=a),placeholder:"请选择所属科室",clearable:"",class:"flex-1"},{default:r(()=>[(_(!0),v(R,null,A(l(U),a=>(_(),w(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"擅长领域",prop:"specialty"},{default:r(()=>[t(p,{modelValue:l(o).specialty,"onUpdate:modelValue":e[10]||(e[10]=a=>l(o).specialty=a),type:"textarea",rows:3,placeholder:"请输入擅长领域"},null,8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[27]||(e[27]=[u("履历信息",-1)])]),_:1}),t(d,{label:"教育背景",prop:"education"},{default:r(()=>[t(p,{modelValue:l(o).education,"onUpdate:modelValue":e[11]||(e[11]=a=>l(o).education=a),type:"textarea",rows:3,placeholder:"请输入教育背景,如:北京中医药大学 中医学博士"},null,8,["modelValue"])]),_:1}),t(d,{label:"工作经历",prop:"experience"},{default:r(()=>[t(p,{modelValue:l(o).experience,"onUpdate:modelValue":e[12]||(e[12]=a=>l(o).experience=a),type:"textarea",rows:4,placeholder:"请输入工作经历"},null,8,["modelValue"])]),_:1}),t(d,{label:"荣誉资质",prop:"honors"},{default:r(()=>[t(p,{modelValue:l(o).honors,"onUpdate:modelValue":e[13]||(e[13]=a=>l(o).honors=a),type:"textarea",rows:3,placeholder:"请输入荣誉资质"},null,8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[28]||(e[28]=[u("账号设置",-1)])]),_:1}),t(d,{label:"密码",prop:"password"},{default:r(()=>[t(p,{modelValue:l(o).password,"onUpdate:modelValue":e[14]||(e[14]=a=>l(o).password=a),"show-password":"",clearable:"",placeholder:l(m)==="edit"?"不修改请留空":"请输入密码"},null,8,["modelValue","placeholder"])]),_:1}),t(d,{label:"确认密码",prop:"password_confirm"},{default:r(()=>[t(p,{modelValue:l(o).password_confirm,"onUpdate:modelValue":e[15]||(e[15]=a=>l(o).password_confirm=a),"show-password":"",clearable:"",placeholder:l(m)==="edit"?"不修改请留空":"请输入确认密码"},null,8,["modelValue","placeholder"])]),_:1}),t(d,{label:"状态"},{default:r(()=>[t(C,{modelValue:l(o).disable,"onUpdate:modelValue":e[16]||(e[16]=a=>l(o).disable=a),"active-value":0,"inactive-value":1},null,8,["modelValue"]),s("span",ke,I(l(o).disable===0?"启用":"禁用"),1)]),_:1}),t(d,{label:"多处登录"},{default:r(()=>[s("div",null,[t(C,{modelValue:l(o).multipoint_login,"onUpdate:modelValue":e[17]||(e[17]=a=>l(o).multipoint_login=a),"active-value":1,"inactive-value":0},null,8,["modelValue"]),e[29]||(e[29]=s("div",{class:"form-tips"},"允许多人同时在线登录",-1))])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Il=ce(Ce,[["__scopeId","data-v-f616077a"]]);export{Il as default}; +import{D as X,U as Y,B as Z,C as h,G as ee,I as le,h as oe,W as te,P as ae,Q as re,g as de,i as ie,e as ne}from"./element-plus-DFTWCWyi.js";import{_ as se}from"./picker-DzCeqD7m.js";import{b as pe,d as ue,e as me}from"./admin-CGNFdyXh.js";import{d as fe}from"./department-D5OVad_r.js";import{j as _e}from"./post-D694zeqo.js";import{i as ge,m as be,_ as ce}from"./index--WnM67ZH.js";import{u as Ve}from"./useDictOptions-lSbSoycG.js";import{f as ve,ak as _,I as v,a as t,aN as r,O as u,G as w,J as s,H as we,F as R,ap as A,A as ye}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as xe,q as Ue,n as b,r as B}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ee={class:"edit-drawer"},je={class:"text-primary font-medium"},De={class:"w-full"},ke={class:"ml-2 text-gray-500"},qe={class:"flex justify-end"},Ce=ve({__name:"edit",emits:["success","close"],setup(Ne,{expose:O,emit:S}){function F(i){if(i.status!==1)return!0;const e=i.children;return Array.isArray(e)&&e.length>0}const y=S,x=Ue(),f=b(!1),m=b("add"),c=b(!1),U=b([]),T=async()=>{const i=await be({type:"department"});U.value=(i==null?void 0:i.department)||[]},G=ye(()=>m.value=="edit"?"编辑医助":"新增医助"),o=B({id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[2],dept_id:[],jobs_id:[],avatar:"",title:"",department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1,diagnosis_count:null}),{optionsData:E}=Ve({jobs:{api:_e},dept:{api:fe,params:{apply_data_scope:1}}}),V=(i,e,n)=>{o.password&&(e||n(new Error("请再次输入密码")),e!==o.password&&n(new Error("两次输入密码不一致!"))),n()},g=B({account:[{required:!0,message:"请输入账号",trigger:["blur"]}],name:[{required:!0,message:"请输入姓名",trigger:["blur"]}],gender:[{required:!0,message:"请选择性别",trigger:["change"]}],dept_id:[{required:!0,type:"array",min:1,message:"请选择归属部门",trigger:["change"]}],phone:[{validator:(i,e,n)=>{e&&!/^1[3-9]\d{9}$/.test(e)?n(new Error("请输入正确的手机号")):n()},trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}],password_confirm:[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:V,trigger:"blur"}]}),P=async()=>{var i;try{await((i=x.value)==null?void 0:i.validate()),c.value=!0,m.value=="edit"?await pe(o):await ue(o),ge.msgSuccess(m.value=="edit"?"编辑成功":"新增成功"),f.value=!1,y("success")}catch(e){console.error("提交失败:",e)}finally{c.value=!1}},Q=(i="add")=>{m.value=i,f.value=!0,T(),i==="add"&&(Object.assign(o,{id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[2],dept_id:[],jobs_id:[],avatar:"",title:"",department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1,diagnosis_count:null}),g.password=[{required:!0,message:"请输入密码",trigger:["blur"]}],g.password_confirm=[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:V,trigger:"blur"}])},z=async i=>{g.password=[],g.password_confirm=[{validator:V,trigger:"blur"}];const e=await me({id:i.id});for(const n in o)e[n]!=null&&e[n]!=null&&(o[n]=e[n]);o.role_id.includes(2)||o.role_id.push(2)},j=()=>{f.value=!1,y("close")};return O({open:Q,setFormData:z}),(i,e)=>{const n=Y,d=Z,p=h,H=se,D=le,J=ee,L=oe,W=te,k=re,q=ae,C=de,$=X,N=ie,K=ne;return _(),v("div",Ee,[t(K,{modelValue:l(f),"onUpdate:modelValue":e[18]||(e[18]=a=>xe(f)?f.value=a:null),title:l(G),direction:"rtl",size:"780px","before-close":j},{footer:r(()=>[s("div",qe,[t(N,{onClick:j},{default:r(()=>[...e[30]||(e[30]=[u("取消",-1)])]),_:1}),t(N,{type:"primary",onClick:P,loading:l(c)},{default:r(()=>[...e[31]||(e[31]=[u("确定",-1)])]),_:1},8,["loading"])])]),default:r(()=>[t($,{ref_key:"formRef",ref:x,model:l(o),"label-width":"100px",rules:l(g)},{default:r(()=>[t(n,{"content-position":"left"},{default:r(()=>[...e[19]||(e[19]=[u("基本信息",-1)])]),_:1}),l(m)==="edit"&&l(o).diagnosis_count!=null?(_(),w(d,{key:0,label:"创建诊单数"},{default:r(()=>[s("span",je,I(l(o).diagnosis_count),1),e[20]||(e[20]=s("span",{class:"text-tx-secondary text-sm ml-2"},"条",-1))]),_:1})):we("",!0),t(d,{label:"账号",prop:"account"},{default:r(()=>[t(p,{modelValue:l(o).account,"onUpdate:modelValue":e[0]||(e[0]=a=>l(o).account=a),placeholder:"请输入账号",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"头像"},{default:r(()=>[s("div",null,[s("div",null,[t(H,{modelValue:l(o).avatar,"onUpdate:modelValue":e[1]||(e[1]=a=>l(o).avatar=a),limit:1},null,8,["modelValue"])]),e[21]||(e[21]=s("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1}),t(d,{label:"姓名",prop:"name"},{default:r(()=>[t(p,{modelValue:l(o).name,"onUpdate:modelValue":e[2]||(e[2]=a=>l(o).name=a),placeholder:"请输入姓名",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"性别",prop:"gender"},{default:r(()=>[t(J,{modelValue:l(o).gender,"onUpdate:modelValue":e[3]||(e[3]=a=>l(o).gender=a)},{default:r(()=>[t(D,{label:1},{default:r(()=>[...e[22]||(e[22]=[u("男",-1)])]),_:1}),t(D,{label:2},{default:r(()=>[...e[23]||(e[23]=[u("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"年龄",prop:"age"},{default:r(()=>[t(L,{modelValue:l(o).age,"onUpdate:modelValue":e[4]||(e[4]=a=>l(o).age=a),min:18,max:100,placeholder:"请输入年龄"},null,8,["modelValue"])]),_:1}),t(d,{label:"手机号",prop:"phone"},{default:r(()=>[t(p,{modelValue:l(o).phone,"onUpdate:modelValue":e[5]||(e[5]=a=>l(o).phone=a),placeholder:"请输入手机号",clearable:""},null,8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[24]||(e[24]=[u("组织信息",-1)])]),_:1}),t(d,{label:"归属部门",prop:"dept_id"},{default:r(()=>[s("div",De,[t(W,{class:"flex-1 w-full",modelValue:l(o).dept_id,"onUpdate:modelValue":e[6]||(e[6]=a=>l(o).dept_id=a),data:l(E).dept,clearable:"",multiple:"","node-key":"id",props:{label:"name",disabled:F},"check-strictly":"","default-expand-all":!0,placeholder:"请选择末级归属部门"},null,8,["modelValue","data","props"]),e[25]||(e[25]=s("div",{class:"form-tips"},"仅可选末级部门(含下级的父部门不可选),与数据权限范围一致。",-1))])]),_:1}),t(d,{label:"岗位",prop:"jobs_id"},{default:r(()=>[t(q,{class:"flex-1",modelValue:l(o).jobs_id,"onUpdate:modelValue":e[7]||(e[7]=a=>l(o).jobs_id=a),clearable:"",multiple:"",placeholder:"请选择岗位"},{default:r(()=>[(_(!0),v(R,null,A(l(E).jobs,(a,M)=>(_(),w(k,{key:M,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[26]||(e[26]=[u("专业信息",-1)])]),_:1}),t(d,{label:"职称",prop:"title"},{default:r(()=>[t(p,{modelValue:l(o).title,"onUpdate:modelValue":e[8]||(e[8]=a=>l(o).title=a),placeholder:"如:主任医师、副主任医师",clearable:""},null,8,["modelValue"])]),_:1}),t(d,{label:"所属科室",prop:"department"},{default:r(()=>[t(q,{modelValue:l(o).department,"onUpdate:modelValue":e[9]||(e[9]=a=>l(o).department=a),placeholder:"请选择所属科室",clearable:"",class:"flex-1"},{default:r(()=>[(_(!0),v(R,null,A(l(U),a=>(_(),w(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"擅长领域",prop:"specialty"},{default:r(()=>[t(p,{modelValue:l(o).specialty,"onUpdate:modelValue":e[10]||(e[10]=a=>l(o).specialty=a),type:"textarea",rows:3,placeholder:"请输入擅长领域"},null,8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[27]||(e[27]=[u("履历信息",-1)])]),_:1}),t(d,{label:"教育背景",prop:"education"},{default:r(()=>[t(p,{modelValue:l(o).education,"onUpdate:modelValue":e[11]||(e[11]=a=>l(o).education=a),type:"textarea",rows:3,placeholder:"请输入教育背景,如:北京中医药大学 中医学博士"},null,8,["modelValue"])]),_:1}),t(d,{label:"工作经历",prop:"experience"},{default:r(()=>[t(p,{modelValue:l(o).experience,"onUpdate:modelValue":e[12]||(e[12]=a=>l(o).experience=a),type:"textarea",rows:4,placeholder:"请输入工作经历"},null,8,["modelValue"])]),_:1}),t(d,{label:"荣誉资质",prop:"honors"},{default:r(()=>[t(p,{modelValue:l(o).honors,"onUpdate:modelValue":e[13]||(e[13]=a=>l(o).honors=a),type:"textarea",rows:3,placeholder:"请输入荣誉资质"},null,8,["modelValue"])]),_:1}),t(n,{"content-position":"left"},{default:r(()=>[...e[28]||(e[28]=[u("账号设置",-1)])]),_:1}),t(d,{label:"密码",prop:"password"},{default:r(()=>[t(p,{modelValue:l(o).password,"onUpdate:modelValue":e[14]||(e[14]=a=>l(o).password=a),"show-password":"",clearable:"",placeholder:l(m)==="edit"?"不修改请留空":"请输入密码"},null,8,["modelValue","placeholder"])]),_:1}),t(d,{label:"确认密码",prop:"password_confirm"},{default:r(()=>[t(p,{modelValue:l(o).password_confirm,"onUpdate:modelValue":e[15]||(e[15]=a=>l(o).password_confirm=a),"show-password":"",clearable:"",placeholder:l(m)==="edit"?"不修改请留空":"请输入确认密码"},null,8,["modelValue","placeholder"])]),_:1}),t(d,{label:"状态"},{default:r(()=>[t(C,{modelValue:l(o).disable,"onUpdate:modelValue":e[16]||(e[16]=a=>l(o).disable=a),"active-value":0,"inactive-value":1},null,8,["modelValue"]),s("span",ke,I(l(o).disable===0?"启用":"禁用"),1)]),_:1}),t(d,{label:"多处登录"},{default:r(()=>[s("div",null,[t(C,{modelValue:l(o).multipoint_login,"onUpdate:modelValue":e[17]||(e[17]=a=>l(o).multipoint_login=a),"active-value":1,"inactive-value":0},null,8,["modelValue"]),e[29]||(e[29]=s("div",{class:"form-tips"},"允许多人同时在线登录",-1))])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Il=ce(Ce,[["__scopeId","data-v-f616077a"]]);export{Il as default}; diff --git a/server/public/admin/assets/edit-BUOSeNnT.js b/server/public/admin/assets/edit-BT12nby0.js similarity index 77% rename from server/public/admin/assets/edit-BUOSeNnT.js rename to server/public/admin/assets/edit-BT12nby0.js index 2749d32f..d9f49235 100644 --- a/server/public/admin/assets/edit-BUOSeNnT.js +++ b/server/public/admin/assets/edit-BT12nby0.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-DXBj1QMo.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./message-DMZbcMZ3.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./message-E3FypG9J.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-D0pt24OW.js b/server/public/admin/assets/edit-BVcM1H4r.js similarity index 74% rename from server/public/admin/assets/edit-D0pt24OW.js rename to server/public/admin/assets/edit-BVcM1H4r.js index fee1d148..15ba65aa 100644 --- a/server/public/admin/assets/edit-D0pt24OW.js +++ b/server/public/admin/assets/edit-BVcM1H4r.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-CitHzUnN.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./department-CSUh_x-a.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./useDictOptions-CT8hbU1b.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./department-D5OVad_r.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./useDictOptions-lSbSoycG.js";export{o as default}; diff --git a/server/public/admin/assets/edit-C1B46Nw-.js b/server/public/admin/assets/edit-BcZRFQne.js similarity index 83% rename from server/public/admin/assets/edit-C1B46Nw-.js rename to server/public/admin/assets/edit-BcZRFQne.js index abdfd946..21f8626e 100644 --- a/server/public/admin/assets/edit-C1B46Nw-.js +++ b/server/public/admin/assets/edit-BcZRFQne.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-C66WHFUi.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-CBTeizmE.js b/server/public/admin/assets/edit-Bj7qxXPN.js similarity index 90% rename from server/public/admin/assets/edit-CBTeizmE.js rename to server/public/admin/assets/edit-Bj7qxXPN.js index 43759383..72720363 100644 --- a/server/public/admin/assets/edit-CBTeizmE.js +++ b/server/public/admin/assets/edit-Bj7qxXPN.js @@ -1 +1 @@ -import{_ as F}from"./index-DbiC_Mh1.js";import{O as $,J as j,D as z,B as G,C as T,P as A,Q as J,h as L,G as P,I as S,i as H}from"./element-plus-DFTWCWyi.js";import{_ as M}from"./index.vue_vue_type_style_index_0_lang-BHpNHC57.js";import{_ as Q}from"./picker-cSgp8cEl.js";import{g as K,h as W,i as X,j as Y}from"./article-nZc1fauP.js";import{u as Z}from"./useDictOptions-CT8hbU1b.js";import{j as tt}from"./index-Nt5zMHcc.js";import{u as et,a as ot}from"./vue-router-QlpZ4wdW.js";import{f as v,ak as d,I as V,a as e,aN as r,J as i,F as lt,ap as at,G as rt,O as u}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as w,q as it}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@wangeditor/editor-Cyf37SuL.js";import"./@wangeditor/editor-for-vue-D1vSph3l.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const st={class:"article-edit"},mt={class:"xl:flex"},nt={class:"w-80"},pt={class:"w-80"},dt={class:"w-80"},ut={class:"w-80"},_t={class:"xl:ml-20"},ct=v({name:"articleListsEdit"}),ge=v({...ct,setup(ft){const p=et(),g=ot(),o=w({id:"",title:"",image:"",cid:"",desc:"",author:"",content:"",click_virtual:0,sort:0,is_show:1,abstract:""}),{removeTab:x}=tt(),_=it(),k=w({title:[{required:!0,message:"请输入文章标题",trigger:"blur"}],cid:[{required:!0,message:"请选择文章栏目",trigger:"blur"}]}),E=async()=>{const m=await K({id:p.query.id});Object.keys(o).forEach(t=>{o[t]=m[t]})},{optionsData:y}=Z({article_cate:{api:Y}}),R=async()=>{var m;await((m=_.value)==null?void 0:m.validate()),p.query.id?await W(o):await X(o),x(),g.back()};return p.query.id&&E(),(m,t)=>{const U=$,c=j,n=T,s=G,h=J,q=A,B=Q,f=L,b=S,C=P,D=M,I=z,N=H,O=F;return d(),V("div",st,[e(c,{class:"!border-none",shadow:"never"},{default:r(()=>[e(U,{content:m.$route.meta.title,onBack:t[0]||(t[0]=l=>m.$router.back())},null,8,["content"])]),_:1}),e(c,{class:"mt-4 !border-none",shadow:"never"},{default:r(()=>[e(I,{ref_key:"formRef",ref:_,class:"ls-form",model:a(o),"label-width":"85px",rules:a(k)},{default:r(()=>[i("div",mt,[i("div",null,[e(s,{label:"文章标题",prop:"title"},{default:r(()=>[i("div",nt,[e(n,{modelValue:a(o).title,"onUpdate:modelValue":t[1]||(t[1]=l=>a(o).title=l),placeholder:"请输入文章标题",type:"textarea",autosize:{minRows:3,maxRows:3},maxlength:"64","show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1}),e(s,{label:"文章栏目",prop:"cid"},{default:r(()=>[e(q,{class:"w-80",modelValue:a(o).cid,"onUpdate:modelValue":t[2]||(t[2]=l=>a(o).cid=l),placeholder:"请选择文章栏目",clearable:""},{default:r(()=>[(d(!0),V(lt,null,at(a(y).article_cate,l=>(d(),rt(h,{key:l.id,label:l.name,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(s,{label:"文章简介",prop:"desc"},{default:r(()=>[i("div",pt,[e(n,{modelValue:a(o).desc,"onUpdate:modelValue":t[3]||(t[3]=l=>a(o).desc=l),placeholder:"请输入文章简介",type:"textarea",autosize:{minRows:3,maxRows:6},maxlength:200,"show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1}),e(s,{label:"摘要",prop:"abstract"},{default:r(()=>[i("div",dt,[e(n,{type:"textarea",autosize:{minRows:6,maxRows:6},modelValue:a(o).abstract,"onUpdate:modelValue":t[4]||(t[4]=l=>a(o).abstract=l),maxlength:"200","show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1}),e(s,{label:"文章封面",prop:"image"},{default:r(()=>[i("div",null,[i("div",null,[e(B,{modelValue:a(o).image,"onUpdate:modelValue":t[5]||(t[5]=l=>a(o).image=l),limit:1},null,8,["modelValue"])]),t[11]||(t[11]=i("div",{class:"form-tips"},"建议尺寸:240*180px",-1))])]),_:1}),e(s,{label:"作者",prop:"author"},{default:r(()=>[i("div",ut,[e(n,{modelValue:a(o).author,"onUpdate:modelValue":t[6]||(t[6]=l=>a(o).author=l),placeholder:"请输入作者名称"},null,8,["modelValue"])])]),_:1}),e(s,{label:"排序",prop:"sort"},{default:r(()=>[i("div",null,[e(f,{modelValue:a(o).sort,"onUpdate:modelValue":t[7]||(t[7]=l=>a(o).sort=l),min:0,max:9999},null,8,["modelValue"]),t[12]||(t[12]=i("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),e(s,{label:"初始浏览量",prop:"click_virtual"},{default:r(()=>[i("div",null,[e(f,{modelValue:a(o).click_virtual,"onUpdate:modelValue":t[8]||(t[8]=l=>a(o).click_virtual=l),min:0},null,8,["modelValue"])])]),_:1}),e(s,{label:"文章状态",required:"",prop:"is_show"},{default:r(()=>[e(C,{modelValue:a(o).is_show,"onUpdate:modelValue":t[9]||(t[9]=l=>a(o).is_show=l)},{default:r(()=>[e(b,{value:1},{default:r(()=>[...t[13]||(t[13]=[u("显示",-1)])]),_:1}),e(b,{value:0},{default:r(()=>[...t[14]||(t[14]=[u("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),i("div",_t,[e(s,{label:"文章内容",prop:"content"},{default:r(()=>[e(D,{modelValue:a(o).content,"onUpdate:modelValue":t[10]||(t[10]=l=>a(o).content=l),height:667,width:375},null,8,["modelValue"])]),_:1})])])]),_:1},8,["model","rules"])]),_:1}),e(O,null,{default:r(()=>[e(N,{type:"primary",onClick:R},{default:r(()=>[...t[15]||(t[15]=[u("保存",-1)])]),_:1})]),_:1})])}}});export{ge as default}; +import{_ as F}from"./index-j275bAO5.js";import{O as $,J as j,D as z,B as G,C as T,P as A,Q as J,h as L,G as P,I as S,i as H}from"./element-plus-DFTWCWyi.js";import{_ as M}from"./index.vue_vue_type_style_index_0_lang-Dbv7WGME.js";import{_ as Q}from"./picker-DzCeqD7m.js";import{g as K,h as W,i as X,j as Y}from"./article-CrrySQF9.js";import{u as Z}from"./useDictOptions-lSbSoycG.js";import{j as tt}from"./index--WnM67ZH.js";import{u as et,a as ot}from"./vue-router-QlpZ4wdW.js";import{f as v,ak as d,I as V,a as e,aN as r,J as i,F as lt,ap as at,G as rt,O as u}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as w,q as it}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@wangeditor/editor-Cyf37SuL.js";import"./@wangeditor/editor-for-vue-D1vSph3l.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const st={class:"article-edit"},mt={class:"xl:flex"},nt={class:"w-80"},pt={class:"w-80"},dt={class:"w-80"},ut={class:"w-80"},_t={class:"xl:ml-20"},ct=v({name:"articleListsEdit"}),ge=v({...ct,setup(ft){const p=et(),g=ot(),o=w({id:"",title:"",image:"",cid:"",desc:"",author:"",content:"",click_virtual:0,sort:0,is_show:1,abstract:""}),{removeTab:x}=tt(),_=it(),k=w({title:[{required:!0,message:"请输入文章标题",trigger:"blur"}],cid:[{required:!0,message:"请选择文章栏目",trigger:"blur"}]}),E=async()=>{const m=await K({id:p.query.id});Object.keys(o).forEach(t=>{o[t]=m[t]})},{optionsData:y}=Z({article_cate:{api:Y}}),R=async()=>{var m;await((m=_.value)==null?void 0:m.validate()),p.query.id?await W(o):await X(o),x(),g.back()};return p.query.id&&E(),(m,t)=>{const U=$,c=j,n=T,s=G,h=J,q=A,B=Q,f=L,b=S,C=P,D=M,I=z,N=H,O=F;return d(),V("div",st,[e(c,{class:"!border-none",shadow:"never"},{default:r(()=>[e(U,{content:m.$route.meta.title,onBack:t[0]||(t[0]=l=>m.$router.back())},null,8,["content"])]),_:1}),e(c,{class:"mt-4 !border-none",shadow:"never"},{default:r(()=>[e(I,{ref_key:"formRef",ref:_,class:"ls-form",model:a(o),"label-width":"85px",rules:a(k)},{default:r(()=>[i("div",mt,[i("div",null,[e(s,{label:"文章标题",prop:"title"},{default:r(()=>[i("div",nt,[e(n,{modelValue:a(o).title,"onUpdate:modelValue":t[1]||(t[1]=l=>a(o).title=l),placeholder:"请输入文章标题",type:"textarea",autosize:{minRows:3,maxRows:3},maxlength:"64","show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1}),e(s,{label:"文章栏目",prop:"cid"},{default:r(()=>[e(q,{class:"w-80",modelValue:a(o).cid,"onUpdate:modelValue":t[2]||(t[2]=l=>a(o).cid=l),placeholder:"请选择文章栏目",clearable:""},{default:r(()=>[(d(!0),V(lt,null,at(a(y).article_cate,l=>(d(),rt(h,{key:l.id,label:l.name,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(s,{label:"文章简介",prop:"desc"},{default:r(()=>[i("div",pt,[e(n,{modelValue:a(o).desc,"onUpdate:modelValue":t[3]||(t[3]=l=>a(o).desc=l),placeholder:"请输入文章简介",type:"textarea",autosize:{minRows:3,maxRows:6},maxlength:200,"show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1}),e(s,{label:"摘要",prop:"abstract"},{default:r(()=>[i("div",dt,[e(n,{type:"textarea",autosize:{minRows:6,maxRows:6},modelValue:a(o).abstract,"onUpdate:modelValue":t[4]||(t[4]=l=>a(o).abstract=l),maxlength:"200","show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1}),e(s,{label:"文章封面",prop:"image"},{default:r(()=>[i("div",null,[i("div",null,[e(B,{modelValue:a(o).image,"onUpdate:modelValue":t[5]||(t[5]=l=>a(o).image=l),limit:1},null,8,["modelValue"])]),t[11]||(t[11]=i("div",{class:"form-tips"},"建议尺寸:240*180px",-1))])]),_:1}),e(s,{label:"作者",prop:"author"},{default:r(()=>[i("div",ut,[e(n,{modelValue:a(o).author,"onUpdate:modelValue":t[6]||(t[6]=l=>a(o).author=l),placeholder:"请输入作者名称"},null,8,["modelValue"])])]),_:1}),e(s,{label:"排序",prop:"sort"},{default:r(()=>[i("div",null,[e(f,{modelValue:a(o).sort,"onUpdate:modelValue":t[7]||(t[7]=l=>a(o).sort=l),min:0,max:9999},null,8,["modelValue"]),t[12]||(t[12]=i("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),e(s,{label:"初始浏览量",prop:"click_virtual"},{default:r(()=>[i("div",null,[e(f,{modelValue:a(o).click_virtual,"onUpdate:modelValue":t[8]||(t[8]=l=>a(o).click_virtual=l),min:0},null,8,["modelValue"])])]),_:1}),e(s,{label:"文章状态",required:"",prop:"is_show"},{default:r(()=>[e(C,{modelValue:a(o).is_show,"onUpdate:modelValue":t[9]||(t[9]=l=>a(o).is_show=l)},{default:r(()=>[e(b,{value:1},{default:r(()=>[...t[13]||(t[13]=[u("显示",-1)])]),_:1}),e(b,{value:0},{default:r(()=>[...t[14]||(t[14]=[u("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),i("div",_t,[e(s,{label:"文章内容",prop:"content"},{default:r(()=>[e(D,{modelValue:a(o).content,"onUpdate:modelValue":t[10]||(t[10]=l=>a(o).content=l),height:667,width:375},null,8,["modelValue"])]),_:1})])])]),_:1},8,["model","rules"])]),_:1}),e(O,null,{default:r(()=>[e(N,{type:"primary",onClick:R},{default:r(()=>[...t[15]||(t[15]=[u("保存",-1)])]),_:1})]),_:1})])}}});export{ge as default}; diff --git a/server/public/admin/assets/edit-D4acFfZD.js b/server/public/admin/assets/edit-BowxPaau.js similarity index 95% rename from server/public/admin/assets/edit-D4acFfZD.js rename to server/public/admin/assets/edit-BowxPaau.js index 3d7360cc..724aa6bb 100644 --- a/server/public/admin/assets/edit-D4acFfZD.js +++ b/server/public/admin/assets/edit-BowxPaau.js @@ -1 +1 @@ -import{D as X,U as Y,B as Z,C as h,G as ee,I as le,h as oe,W as ae,P as te,Q as re,g as ne,i as de,e as ie}from"./element-plus-DFTWCWyi.js";import{_ as se}from"./picker-cSgp8cEl.js";import{b as pe,d as ue,e as me}from"./admin-BAFPFiwc.js";import{d as fe}from"./department-CSUh_x-a.js";import{j as _e}from"./post-CjhbCF7F.js";import{i as be,m as ge,_ as ce}from"./index-Nt5zMHcc.js";import{u as Ve}from"./useDictOptions-CT8hbU1b.js";import{f as ve,ak as g,I as y,a,aN as r,O as u,J as s,F as B,ap as I,G as N,A as we}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as ye,q as xe,n as c,r as O}from"./@vue/reactivity-DiY1c2vO.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ue={class:"edit-drawer"},Ee={class:"w-full"},je={class:"ml-2 text-gray-500"},qe={class:"ml-2 text-gray-500"},De={class:"ml-2 text-gray-500"},ke={class:"ml-2 text-gray-500"},Ce={class:"flex justify-end"},Re=ve({__name:"edit",emits:["success","close"],setup(Ae,{expose:S,emit:F}){function T(d){if(d.status!==1)return!0;const e=d.children;return Array.isArray(e)&&e.length>0}const x=F,U=xe(),m=c(!1),f=c("add"),v=c(!1),E=c([]),G=async()=>{const d=await ge({type:"department"});E.value=(d==null?void 0:d.department)||[]},P=we(()=>f.value=="edit"?"编辑医生":"新增医生"),l=O({id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[1],dept_id:[],jobs_id:[],avatar:"",title:"",license_no:"",qualification_images:"",enable_image_consult:1,enable_video_consult:1,enable_charge:0,department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1}),{optionsData:j}=Ve({jobs:{api:_e},dept:{api:fe,params:{apply_data_scope:1}}}),w=(d,e,i)=>{l.password&&(e||i(new Error("请再次输入密码")),e!==l.password&&i(new Error("两次输入密码不一致!"))),i()},_=O({account:[{required:!0,message:"请输入账号",trigger:["blur"]}],name:[{required:!0,message:"请输入姓名",trigger:["blur"]}],gender:[{required:!0,message:"请选择性别",trigger:["change"]}],dept_id:[{required:!0,type:"array",min:1,message:"请选择归属部门",trigger:["change"]}],phone:[{validator:(d,e,i)=>{e&&!/^1[3-9]\d{9}$/.test(e)?i(new Error("请输入正确的手机号")):i()},trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}],password_confirm:[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:w,trigger:"blur"}]}),Q=async()=>{var d;try{await((d=U.value)==null?void 0:d.validate()),v.value=!0,f.value=="edit"?await pe(l):await ue(l),be.msgSuccess(f.value=="edit"?"编辑成功":"新增成功"),m.value=!1,x("success")}catch(e){console.error("提交失败:",e)}finally{v.value=!1}},z=(d="add")=>{f.value=d,m.value=!0,G(),d==="add"&&(Object.assign(l,{id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[1],dept_id:[],jobs_id:[],avatar:"",title:"",license_no:"",qualification_images:"",enable_image_consult:1,enable_video_consult:1,enable_charge:0,department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1}),_.password=[{required:!0,message:"请输入密码",trigger:["blur"]}],_.password_confirm=[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:w,trigger:"blur"}])},J=async d=>{_.password=[],_.password_confirm=[{validator:w,trigger:"blur"}];const e=await me({id:d.id});for(const i in l)e[i]!=null&&e[i]!=null&&(l[i]=e[i]);l.role_id.includes(1)||l.role_id.push(1)},q=()=>{m.value=!1,x("close")};return S({open:z,setFormData:J}),(d,e)=>{const i=Y,p=h,n=Z,D=se,k=le,L=ee,W=oe,$=ae,C=re,R=te,b=ne,H=X,A=de,K=ie;return g(),y("div",Ue,[a(K,{modelValue:o(m),"onUpdate:modelValue":e[23]||(e[23]=t=>ye(m)?m.value=t:null),title:o(P),direction:"rtl",size:"780px","before-close":q},{footer:r(()=>[s("div",Ce,[a(A,{onClick:q},{default:r(()=>[...e[35]||(e[35]=[u("取消",-1)])]),_:1}),a(A,{type:"primary",onClick:Q,loading:o(v)},{default:r(()=>[...e[36]||(e[36]=[u("确定",-1)])]),_:1},8,["loading"])])]),default:r(()=>[a(H,{ref_key:"formRef",ref:U,model:o(l),"label-width":"100px",rules:o(_)},{default:r(()=>[a(i,{"content-position":"left"},{default:r(()=>[...e[24]||(e[24]=[u("基本信息",-1)])]),_:1}),a(n,{label:"账号",prop:"account"},{default:r(()=>[a(p,{modelValue:o(l).account,"onUpdate:modelValue":e[0]||(e[0]=t=>o(l).account=t),placeholder:"请输入账号",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"头像"},{default:r(()=>[s("div",null,[s("div",null,[a(D,{modelValue:o(l).avatar,"onUpdate:modelValue":e[1]||(e[1]=t=>o(l).avatar=t),limit:1},null,8,["modelValue"])]),e[25]||(e[25]=s("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1}),a(n,{label:"姓名",prop:"name"},{default:r(()=>[a(p,{modelValue:o(l).name,"onUpdate:modelValue":e[2]||(e[2]=t=>o(l).name=t),placeholder:"请输入姓名",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"性别",prop:"gender"},{default:r(()=>[a(L,{modelValue:o(l).gender,"onUpdate:modelValue":e[3]||(e[3]=t=>o(l).gender=t)},{default:r(()=>[a(k,{label:1},{default:r(()=>[...e[26]||(e[26]=[u("男",-1)])]),_:1}),a(k,{label:2},{default:r(()=>[...e[27]||(e[27]=[u("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"年龄",prop:"age"},{default:r(()=>[a(W,{modelValue:o(l).age,"onUpdate:modelValue":e[4]||(e[4]=t=>o(l).age=t),min:18,max:100,placeholder:"请输入年龄"},null,8,["modelValue"])]),_:1}),a(n,{label:"手机号",prop:"phone"},{default:r(()=>[a(p,{modelValue:o(l).phone,"onUpdate:modelValue":e[5]||(e[5]=t=>o(l).phone=t),placeholder:"请输入手机号",clearable:""},null,8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[28]||(e[28]=[u("组织信息",-1)])]),_:1}),a(n,{label:"归属部门",prop:"dept_id"},{default:r(()=>[s("div",Ee,[a($,{class:"flex-1 w-full",modelValue:o(l).dept_id,"onUpdate:modelValue":e[6]||(e[6]=t=>o(l).dept_id=t),data:o(j).dept,clearable:"",multiple:"","node-key":"id",props:{label:"name",disabled:T},"check-strictly":"","default-expand-all":!0,placeholder:"请选择末级归属部门"},null,8,["modelValue","data","props"]),e[29]||(e[29]=s("div",{class:"form-tips"},"仅可选末级部门(含下级的父部门不可选),与数据权限范围一致。",-1))])]),_:1}),a(n,{label:"岗位",prop:"jobs_id"},{default:r(()=>[a(R,{class:"flex-1",modelValue:o(l).jobs_id,"onUpdate:modelValue":e[7]||(e[7]=t=>o(l).jobs_id=t),clearable:"",multiple:"",placeholder:"请选择岗位"},{default:r(()=>[(g(!0),y(B,null,I(o(j).jobs,(t,M)=>(g(),N(C,{key:M,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[30]||(e[30]=[u("专业信息",-1)])]),_:1}),a(n,{label:"职称",prop:"title"},{default:r(()=>[a(p,{modelValue:o(l).title,"onUpdate:modelValue":e[8]||(e[8]=t=>o(l).title=t),placeholder:"如:主任医师、副主任医师",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"执业证书编号",prop:"license_no"},{default:r(()=>[a(p,{modelValue:o(l).license_no,"onUpdate:modelValue":e[9]||(e[9]=t=>o(l).license_no=t),placeholder:"请输入执业证书编号",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"资质图片"},{default:r(()=>[s("div",null,[s("div",null,[a(D,{modelValue:o(l).qualification_images,"onUpdate:modelValue":e[10]||(e[10]=t=>o(l).qualification_images=t),limit:9},null,8,["modelValue"])]),e[31]||(e[31]=s("div",{class:"form-tips"},"上传医生资质证书、荣誉证书等图片,最多9张,建议尺寸:800*600px",-1))])]),_:1}),a(n,{label:"图文问诊"},{default:r(()=>[a(b,{modelValue:o(l).enable_image_consult,"onUpdate:modelValue":e[11]||(e[11]=t=>o(l).enable_image_consult=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),s("span",je,V(o(l).enable_image_consult===1?"已开启":"已关闭"),1)]),_:1}),a(n,{label:"视频问诊"},{default:r(()=>[a(b,{modelValue:o(l).enable_video_consult,"onUpdate:modelValue":e[12]||(e[12]=t=>o(l).enable_video_consult=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),s("span",qe,V(o(l).enable_video_consult===1?"已开启":"已关闭"),1)]),_:1}),a(n,{label:"是否开启收费"},{default:r(()=>[a(b,{modelValue:o(l).enable_charge,"onUpdate:modelValue":e[13]||(e[13]=t=>o(l).enable_charge=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),s("span",De,V(o(l).enable_charge===1?"已开启":"已关闭"),1)]),_:1}),a(n,{label:"所属科室",prop:"department"},{default:r(()=>[a(R,{modelValue:o(l).department,"onUpdate:modelValue":e[14]||(e[14]=t=>o(l).department=t),placeholder:"请选择所属科室",clearable:"",class:"flex-1"},{default:r(()=>[(g(!0),y(B,null,I(o(E),t=>(g(),N(C,{key:t.value,label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"擅长领域",prop:"specialty"},{default:r(()=>[a(p,{modelValue:o(l).specialty,"onUpdate:modelValue":e[15]||(e[15]=t=>o(l).specialty=t),type:"textarea",rows:3,placeholder:"请输入擅长领域"},null,8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[32]||(e[32]=[u("履历信息",-1)])]),_:1}),a(n,{label:"教育背景",prop:"education"},{default:r(()=>[a(p,{modelValue:o(l).education,"onUpdate:modelValue":e[16]||(e[16]=t=>o(l).education=t),type:"textarea",rows:3,placeholder:"请输入教育背景,如:北京中医药大学 中医学博士"},null,8,["modelValue"])]),_:1}),a(n,{label:"工作经历",prop:"experience"},{default:r(()=>[a(p,{modelValue:o(l).experience,"onUpdate:modelValue":e[17]||(e[17]=t=>o(l).experience=t),type:"textarea",rows:4,placeholder:"请输入工作经历"},null,8,["modelValue"])]),_:1}),a(n,{label:"荣誉资质",prop:"honors"},{default:r(()=>[a(p,{modelValue:o(l).honors,"onUpdate:modelValue":e[18]||(e[18]=t=>o(l).honors=t),type:"textarea",rows:3,placeholder:"请输入荣誉资质"},null,8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[33]||(e[33]=[u("账号设置",-1)])]),_:1}),a(n,{label:"密码",prop:"password"},{default:r(()=>[a(p,{modelValue:o(l).password,"onUpdate:modelValue":e[19]||(e[19]=t=>o(l).password=t),"show-password":"",clearable:"",placeholder:o(f)==="edit"?"不修改请留空":"请输入密码"},null,8,["modelValue","placeholder"])]),_:1}),a(n,{label:"确认密码",prop:"password_confirm"},{default:r(()=>[a(p,{modelValue:o(l).password_confirm,"onUpdate:modelValue":e[20]||(e[20]=t=>o(l).password_confirm=t),"show-password":"",clearable:"",placeholder:o(f)==="edit"?"不修改请留空":"请输入确认密码"},null,8,["modelValue","placeholder"])]),_:1}),a(n,{label:"状态"},{default:r(()=>[a(b,{modelValue:o(l).disable,"onUpdate:modelValue":e[21]||(e[21]=t=>o(l).disable=t),"active-value":0,"inactive-value":1},null,8,["modelValue"]),s("span",ke,V(o(l).disable===0?"启用":"禁用"),1)]),_:1}),a(n,{label:"多处登录"},{default:r(()=>[s("div",null,[a(b,{modelValue:o(l).multipoint_login,"onUpdate:modelValue":e[22]||(e[22]=t=>o(l).multipoint_login=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),e[34]||(e[34]=s("div",{class:"form-tips"},"允许多人同时在线登录",-1))])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Ol=ce(Re,[["__scopeId","data-v-c5cf7e96"]]);export{Ol as default}; +import{D as X,U as Y,B as Z,C as h,G as ee,I as le,h as oe,W as ae,P as te,Q as re,g as ne,i as de,e as ie}from"./element-plus-DFTWCWyi.js";import{_ as se}from"./picker-DzCeqD7m.js";import{b as pe,d as ue,e as me}from"./admin-CGNFdyXh.js";import{d as fe}from"./department-D5OVad_r.js";import{j as _e}from"./post-D694zeqo.js";import{i as be,m as ge,_ as ce}from"./index--WnM67ZH.js";import{u as Ve}from"./useDictOptions-lSbSoycG.js";import{f as ve,ak as g,I as y,a,aN as r,O as u,J as s,F as B,ap as I,G as N,A as we}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as ye,q as xe,n as c,r as O}from"./@vue/reactivity-DiY1c2vO.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ue={class:"edit-drawer"},Ee={class:"w-full"},je={class:"ml-2 text-gray-500"},qe={class:"ml-2 text-gray-500"},De={class:"ml-2 text-gray-500"},ke={class:"ml-2 text-gray-500"},Ce={class:"flex justify-end"},Re=ve({__name:"edit",emits:["success","close"],setup(Ae,{expose:S,emit:F}){function T(d){if(d.status!==1)return!0;const e=d.children;return Array.isArray(e)&&e.length>0}const x=F,U=xe(),m=c(!1),f=c("add"),v=c(!1),E=c([]),G=async()=>{const d=await ge({type:"department"});E.value=(d==null?void 0:d.department)||[]},P=we(()=>f.value=="edit"?"编辑医生":"新增医生"),l=O({id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[1],dept_id:[],jobs_id:[],avatar:"",title:"",license_no:"",qualification_images:"",enable_image_consult:1,enable_video_consult:1,enable_charge:0,department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1}),{optionsData:j}=Ve({jobs:{api:_e},dept:{api:fe,params:{apply_data_scope:1}}}),w=(d,e,i)=>{l.password&&(e||i(new Error("请再次输入密码")),e!==l.password&&i(new Error("两次输入密码不一致!"))),i()},_=O({account:[{required:!0,message:"请输入账号",trigger:["blur"]}],name:[{required:!0,message:"请输入姓名",trigger:["blur"]}],gender:[{required:!0,message:"请选择性别",trigger:["change"]}],dept_id:[{required:!0,type:"array",min:1,message:"请选择归属部门",trigger:["change"]}],phone:[{validator:(d,e,i)=>{e&&!/^1[3-9]\d{9}$/.test(e)?i(new Error("请输入正确的手机号")):i()},trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}],password_confirm:[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:w,trigger:"blur"}]}),Q=async()=>{var d;try{await((d=U.value)==null?void 0:d.validate()),v.value=!0,f.value=="edit"?await pe(l):await ue(l),be.msgSuccess(f.value=="edit"?"编辑成功":"新增成功"),m.value=!1,x("success")}catch(e){console.error("提交失败:",e)}finally{v.value=!1}},z=(d="add")=>{f.value=d,m.value=!0,G(),d==="add"&&(Object.assign(l,{id:"",account:"",name:"",gender:1,age:null,phone:"",role_id:[1],dept_id:[],jobs_id:[],avatar:"",title:"",license_no:"",qualification_images:"",enable_image_consult:1,enable_video_consult:1,enable_charge:0,department:"",specialty:"",education:"",experience:"",honors:"",password:"",password_confirm:"",disable:0,multipoint_login:1}),_.password=[{required:!0,message:"请输入密码",trigger:["blur"]}],_.password_confirm=[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:w,trigger:"blur"}])},J=async d=>{_.password=[],_.password_confirm=[{validator:w,trigger:"blur"}];const e=await me({id:d.id});for(const i in l)e[i]!=null&&e[i]!=null&&(l[i]=e[i]);l.role_id.includes(1)||l.role_id.push(1)},q=()=>{m.value=!1,x("close")};return S({open:z,setFormData:J}),(d,e)=>{const i=Y,p=h,n=Z,D=se,k=le,L=ee,W=oe,$=ae,C=re,R=te,b=ne,H=X,A=de,K=ie;return g(),y("div",Ue,[a(K,{modelValue:o(m),"onUpdate:modelValue":e[23]||(e[23]=t=>ye(m)?m.value=t:null),title:o(P),direction:"rtl",size:"780px","before-close":q},{footer:r(()=>[s("div",Ce,[a(A,{onClick:q},{default:r(()=>[...e[35]||(e[35]=[u("取消",-1)])]),_:1}),a(A,{type:"primary",onClick:Q,loading:o(v)},{default:r(()=>[...e[36]||(e[36]=[u("确定",-1)])]),_:1},8,["loading"])])]),default:r(()=>[a(H,{ref_key:"formRef",ref:U,model:o(l),"label-width":"100px",rules:o(_)},{default:r(()=>[a(i,{"content-position":"left"},{default:r(()=>[...e[24]||(e[24]=[u("基本信息",-1)])]),_:1}),a(n,{label:"账号",prop:"account"},{default:r(()=>[a(p,{modelValue:o(l).account,"onUpdate:modelValue":e[0]||(e[0]=t=>o(l).account=t),placeholder:"请输入账号",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"头像"},{default:r(()=>[s("div",null,[s("div",null,[a(D,{modelValue:o(l).avatar,"onUpdate:modelValue":e[1]||(e[1]=t=>o(l).avatar=t),limit:1},null,8,["modelValue"])]),e[25]||(e[25]=s("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1}),a(n,{label:"姓名",prop:"name"},{default:r(()=>[a(p,{modelValue:o(l).name,"onUpdate:modelValue":e[2]||(e[2]=t=>o(l).name=t),placeholder:"请输入姓名",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"性别",prop:"gender"},{default:r(()=>[a(L,{modelValue:o(l).gender,"onUpdate:modelValue":e[3]||(e[3]=t=>o(l).gender=t)},{default:r(()=>[a(k,{label:1},{default:r(()=>[...e[26]||(e[26]=[u("男",-1)])]),_:1}),a(k,{label:2},{default:r(()=>[...e[27]||(e[27]=[u("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"年龄",prop:"age"},{default:r(()=>[a(W,{modelValue:o(l).age,"onUpdate:modelValue":e[4]||(e[4]=t=>o(l).age=t),min:18,max:100,placeholder:"请输入年龄"},null,8,["modelValue"])]),_:1}),a(n,{label:"手机号",prop:"phone"},{default:r(()=>[a(p,{modelValue:o(l).phone,"onUpdate:modelValue":e[5]||(e[5]=t=>o(l).phone=t),placeholder:"请输入手机号",clearable:""},null,8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[28]||(e[28]=[u("组织信息",-1)])]),_:1}),a(n,{label:"归属部门",prop:"dept_id"},{default:r(()=>[s("div",Ee,[a($,{class:"flex-1 w-full",modelValue:o(l).dept_id,"onUpdate:modelValue":e[6]||(e[6]=t=>o(l).dept_id=t),data:o(j).dept,clearable:"",multiple:"","node-key":"id",props:{label:"name",disabled:T},"check-strictly":"","default-expand-all":!0,placeholder:"请选择末级归属部门"},null,8,["modelValue","data","props"]),e[29]||(e[29]=s("div",{class:"form-tips"},"仅可选末级部门(含下级的父部门不可选),与数据权限范围一致。",-1))])]),_:1}),a(n,{label:"岗位",prop:"jobs_id"},{default:r(()=>[a(R,{class:"flex-1",modelValue:o(l).jobs_id,"onUpdate:modelValue":e[7]||(e[7]=t=>o(l).jobs_id=t),clearable:"",multiple:"",placeholder:"请选择岗位"},{default:r(()=>[(g(!0),y(B,null,I(o(j).jobs,(t,M)=>(g(),N(C,{key:M,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[30]||(e[30]=[u("专业信息",-1)])]),_:1}),a(n,{label:"职称",prop:"title"},{default:r(()=>[a(p,{modelValue:o(l).title,"onUpdate:modelValue":e[8]||(e[8]=t=>o(l).title=t),placeholder:"如:主任医师、副主任医师",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"执业证书编号",prop:"license_no"},{default:r(()=>[a(p,{modelValue:o(l).license_no,"onUpdate:modelValue":e[9]||(e[9]=t=>o(l).license_no=t),placeholder:"请输入执业证书编号",clearable:""},null,8,["modelValue"])]),_:1}),a(n,{label:"资质图片"},{default:r(()=>[s("div",null,[s("div",null,[a(D,{modelValue:o(l).qualification_images,"onUpdate:modelValue":e[10]||(e[10]=t=>o(l).qualification_images=t),limit:9},null,8,["modelValue"])]),e[31]||(e[31]=s("div",{class:"form-tips"},"上传医生资质证书、荣誉证书等图片,最多9张,建议尺寸:800*600px",-1))])]),_:1}),a(n,{label:"图文问诊"},{default:r(()=>[a(b,{modelValue:o(l).enable_image_consult,"onUpdate:modelValue":e[11]||(e[11]=t=>o(l).enable_image_consult=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),s("span",je,V(o(l).enable_image_consult===1?"已开启":"已关闭"),1)]),_:1}),a(n,{label:"视频问诊"},{default:r(()=>[a(b,{modelValue:o(l).enable_video_consult,"onUpdate:modelValue":e[12]||(e[12]=t=>o(l).enable_video_consult=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),s("span",qe,V(o(l).enable_video_consult===1?"已开启":"已关闭"),1)]),_:1}),a(n,{label:"是否开启收费"},{default:r(()=>[a(b,{modelValue:o(l).enable_charge,"onUpdate:modelValue":e[13]||(e[13]=t=>o(l).enable_charge=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),s("span",De,V(o(l).enable_charge===1?"已开启":"已关闭"),1)]),_:1}),a(n,{label:"所属科室",prop:"department"},{default:r(()=>[a(R,{modelValue:o(l).department,"onUpdate:modelValue":e[14]||(e[14]=t=>o(l).department=t),placeholder:"请选择所属科室",clearable:"",class:"flex-1"},{default:r(()=>[(g(!0),y(B,null,I(o(E),t=>(g(),N(C,{key:t.value,label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"擅长领域",prop:"specialty"},{default:r(()=>[a(p,{modelValue:o(l).specialty,"onUpdate:modelValue":e[15]||(e[15]=t=>o(l).specialty=t),type:"textarea",rows:3,placeholder:"请输入擅长领域"},null,8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[32]||(e[32]=[u("履历信息",-1)])]),_:1}),a(n,{label:"教育背景",prop:"education"},{default:r(()=>[a(p,{modelValue:o(l).education,"onUpdate:modelValue":e[16]||(e[16]=t=>o(l).education=t),type:"textarea",rows:3,placeholder:"请输入教育背景,如:北京中医药大学 中医学博士"},null,8,["modelValue"])]),_:1}),a(n,{label:"工作经历",prop:"experience"},{default:r(()=>[a(p,{modelValue:o(l).experience,"onUpdate:modelValue":e[17]||(e[17]=t=>o(l).experience=t),type:"textarea",rows:4,placeholder:"请输入工作经历"},null,8,["modelValue"])]),_:1}),a(n,{label:"荣誉资质",prop:"honors"},{default:r(()=>[a(p,{modelValue:o(l).honors,"onUpdate:modelValue":e[18]||(e[18]=t=>o(l).honors=t),type:"textarea",rows:3,placeholder:"请输入荣誉资质"},null,8,["modelValue"])]),_:1}),a(i,{"content-position":"left"},{default:r(()=>[...e[33]||(e[33]=[u("账号设置",-1)])]),_:1}),a(n,{label:"密码",prop:"password"},{default:r(()=>[a(p,{modelValue:o(l).password,"onUpdate:modelValue":e[19]||(e[19]=t=>o(l).password=t),"show-password":"",clearable:"",placeholder:o(f)==="edit"?"不修改请留空":"请输入密码"},null,8,["modelValue","placeholder"])]),_:1}),a(n,{label:"确认密码",prop:"password_confirm"},{default:r(()=>[a(p,{modelValue:o(l).password_confirm,"onUpdate:modelValue":e[20]||(e[20]=t=>o(l).password_confirm=t),"show-password":"",clearable:"",placeholder:o(f)==="edit"?"不修改请留空":"请输入确认密码"},null,8,["modelValue","placeholder"])]),_:1}),a(n,{label:"状态"},{default:r(()=>[a(b,{modelValue:o(l).disable,"onUpdate:modelValue":e[21]||(e[21]=t=>o(l).disable=t),"active-value":0,"inactive-value":1},null,8,["modelValue"]),s("span",ke,V(o(l).disable===0?"启用":"禁用"),1)]),_:1}),a(n,{label:"多处登录"},{default:r(()=>[s("div",null,[a(b,{modelValue:o(l).multipoint_login,"onUpdate:modelValue":e[22]||(e[22]=t=>o(l).multipoint_login=t),"active-value":1,"inactive-value":0},null,8,["modelValue"]),e[34]||(e[34]=s("div",{class:"form-tips"},"允许多人同时在线登录",-1))])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Ol=ce(Re,[["__scopeId","data-v-c5cf7e96"]]);export{Ol as default}; diff --git a/server/public/admin/assets/edit-Ch21x6RV.js b/server/public/admin/assets/edit-CWxEoG6s.js similarity index 77% rename from server/public/admin/assets/edit-Ch21x6RV.js rename to server/public/admin/assets/edit-CWxEoG6s.js index c5eece0d..8be00ec5 100644 --- a/server/public/admin/assets/edit-Ch21x6RV.js +++ b/server/public/admin/assets/edit-CWxEoG6s.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./wx_oa-BOc4Brkk.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./wx_oa-CN0ZaZdj.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-CYXDKzEl.js b/server/public/admin/assets/edit-C__1lqOK.js similarity index 94% rename from server/public/admin/assets/edit-CYXDKzEl.js rename to server/public/admin/assets/edit-C__1lqOK.js index 9998b6fd..0038f12d 100644 --- a/server/public/admin/assets/edit-CYXDKzEl.js +++ b/server/public/admin/assets/edit-C__1lqOK.js @@ -1 +1 @@ -import{O as F,J as G,L,B as O,G as S,I as T,C as U,D as j,i as J}from"./element-plus-DFTWCWyi.js";import{_ as P}from"./index-DbiC_Mh1.js";import{l as $}from"./lodash-D3kF6u-c.js";import{n as z,s as H}from"./message-DMZbcMZ3.js";import{j as M,i as Q}from"./index-Nt5zMHcc.js";import{u as A,a as K}from"./vue-router-QlpZ4wdW.js";import{f as w,ak as p,I as c,a as t,aN as o,aP as W,G as X,J as l,O as m,F as Y,ap as Z}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,n as h,r as ee,q as te}from"./@vue/reactivity-DiY1c2vO.js";import{Q as d}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const oe={class:"w-80"},se={class:"flex-1"},ae={class:"w-full max-w-[320px]"},ne={class:"form-tips"},ie=w({name:"noticeEdit"}),Ae=w({...ie,setup(re){const f=A(),y=K(),_=h(!1),s=ee({id:"",scene_name:"",type:"",scene_desc:"",sms_notice:{status:0,template_id:"",content:"",tips:[]},oa_notice:{},mnp_notice:{},system_notice:{}}),k={"sms_notice.template_id":[{required:!0,message:"请输入模板ID",trigger:"blur"}],"sms_notice.content":[{required:!0,message:"请输入短信内容",trigger:"blur"}]},{removeTab:E}=M(),v=te(),V=async()=>{_.value=!0;const i=await z({id:f.query.id});Object.keys(i).forEach(e=>{s[e]=i[e]}),_.value=!1},x=async()=>{var e;await((e=v.value)==null?void 0:e.validate());const i={id:s.id,template:$.pick(s,["sms_notice","oa_notice","mnp_notice","system_notice"])};await H(i),Q.msgSuccess("操作成功"),E(),y.back()};return f.query.id&&V(),(i,e)=>{const D=F,u=G,r=O,b=T,R=S,g=U,B=j,I=J,q=P,C=L;return p(),c("div",null,[t(u,{class:"!border-none",shadow:"never"},{default:o(()=>[t(D,{content:"编辑通知设置",onBack:e[0]||(e[0]=n=>i.$router.back())})]),_:1}),W((p(),X(B,{ref_key:"formRef",ref:v,model:a(s),"label-width":"120px",rules:k},{default:o(()=>[t(u,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[e[4]||(e[4]=l("div",{class:"font-medium mb-7"},"通知名称",-1)),t(r,{label:"通知名称"},{default:o(()=>[m(d(a(s).scene_name),1)]),_:1}),t(r,{label:"通知类型"},{default:o(()=>[m(d(a(s).type),1)]),_:1}),t(r,{label:"通知业务"},{default:o(()=>[m(d(a(s).scene_desc),1)]),_:1})]),_:1}),t(u,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[e[7]||(e[7]=l("div",{class:"font-medium mb-7"},"短信通知",-1)),t(r,{label:"开启状态",prop:"sms_notice.status",required:""},{default:o(()=>[t(R,{modelValue:a(s).sms_notice.status,"onUpdate:modelValue":e[1]||(e[1]=n=>a(s).sms_notice.status=n)},{default:o(()=>[t(b,{value:"0"},{default:o(()=>[...e[5]||(e[5]=[m("关闭",-1)])]),_:1}),t(b,{value:"1"},{default:o(()=>[...e[6]||(e[6]=[m("开启",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(r,{label:"模板ID",prop:"sms_notice.template_id"},{default:o(()=>[l("div",oe,[t(g,{modelValue:a(s).sms_notice.template_id,"onUpdate:modelValue":e[2]||(e[2]=n=>a(s).sms_notice.template_id=n),placeholder:"请输入模板ID"},null,8,["modelValue"])])]),_:1}),t(r,{label:"短信内容",prop:"sms_notice.content"},{default:o(()=>[l("div",se,[l("div",ae,[t(g,{type:"textarea",autosize:{minRows:6,maxRows:6},modelValue:a(s).sms_notice.content,"onUpdate:modelValue":e[3]||(e[3]=n=>a(s).sms_notice.content=n)},null,8,["modelValue"])]),l("div",ne,[(p(!0),c(Y,null,Z(a(s).sms_notice.tips,(n,N)=>(p(),c("div",{key:N},d(n),1))),128))])])]),_:1})]),_:1})]),_:1},8,["model"])),[[C,a(_)]]),t(q,null,{default:o(()=>[t(I,{type:"primary",onClick:x},{default:o(()=>[...e[8]||(e[8]=[m("保存",-1)])]),_:1})]),_:1})])}}});export{Ae as default}; +import{O as F,J as G,L,B as O,G as S,I as T,C as U,D as j,i as J}from"./element-plus-DFTWCWyi.js";import{_ as P}from"./index-j275bAO5.js";import{l as $}from"./lodash-D3kF6u-c.js";import{n as z,s as H}from"./message-E3FypG9J.js";import{j as M,i as Q}from"./index--WnM67ZH.js";import{u as A,a as K}from"./vue-router-QlpZ4wdW.js";import{f as w,ak as p,I as c,a as t,aN as o,aP as W,G as X,J as l,O as m,F as Y,ap as Z}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,n as h,r as ee,q as te}from"./@vue/reactivity-DiY1c2vO.js";import{Q as d}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const oe={class:"w-80"},se={class:"flex-1"},ae={class:"w-full max-w-[320px]"},ne={class:"form-tips"},ie=w({name:"noticeEdit"}),Ae=w({...ie,setup(re){const f=A(),y=K(),_=h(!1),s=ee({id:"",scene_name:"",type:"",scene_desc:"",sms_notice:{status:0,template_id:"",content:"",tips:[]},oa_notice:{},mnp_notice:{},system_notice:{}}),k={"sms_notice.template_id":[{required:!0,message:"请输入模板ID",trigger:"blur"}],"sms_notice.content":[{required:!0,message:"请输入短信内容",trigger:"blur"}]},{removeTab:E}=M(),v=te(),V=async()=>{_.value=!0;const i=await z({id:f.query.id});Object.keys(i).forEach(e=>{s[e]=i[e]}),_.value=!1},x=async()=>{var e;await((e=v.value)==null?void 0:e.validate());const i={id:s.id,template:$.pick(s,["sms_notice","oa_notice","mnp_notice","system_notice"])};await H(i),Q.msgSuccess("操作成功"),E(),y.back()};return f.query.id&&V(),(i,e)=>{const D=F,u=G,r=O,b=T,R=S,g=U,B=j,I=J,q=P,C=L;return p(),c("div",null,[t(u,{class:"!border-none",shadow:"never"},{default:o(()=>[t(D,{content:"编辑通知设置",onBack:e[0]||(e[0]=n=>i.$router.back())})]),_:1}),W((p(),X(B,{ref_key:"formRef",ref:v,model:a(s),"label-width":"120px",rules:k},{default:o(()=>[t(u,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[e[4]||(e[4]=l("div",{class:"font-medium mb-7"},"通知名称",-1)),t(r,{label:"通知名称"},{default:o(()=>[m(d(a(s).scene_name),1)]),_:1}),t(r,{label:"通知类型"},{default:o(()=>[m(d(a(s).type),1)]),_:1}),t(r,{label:"通知业务"},{default:o(()=>[m(d(a(s).scene_desc),1)]),_:1})]),_:1}),t(u,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[e[7]||(e[7]=l("div",{class:"font-medium mb-7"},"短信通知",-1)),t(r,{label:"开启状态",prop:"sms_notice.status",required:""},{default:o(()=>[t(R,{modelValue:a(s).sms_notice.status,"onUpdate:modelValue":e[1]||(e[1]=n=>a(s).sms_notice.status=n)},{default:o(()=>[t(b,{value:"0"},{default:o(()=>[...e[5]||(e[5]=[m("关闭",-1)])]),_:1}),t(b,{value:"1"},{default:o(()=>[...e[6]||(e[6]=[m("开启",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(r,{label:"模板ID",prop:"sms_notice.template_id"},{default:o(()=>[l("div",oe,[t(g,{modelValue:a(s).sms_notice.template_id,"onUpdate:modelValue":e[2]||(e[2]=n=>a(s).sms_notice.template_id=n),placeholder:"请输入模板ID"},null,8,["modelValue"])])]),_:1}),t(r,{label:"短信内容",prop:"sms_notice.content"},{default:o(()=>[l("div",se,[l("div",ae,[t(g,{type:"textarea",autosize:{minRows:6,maxRows:6},modelValue:a(s).sms_notice.content,"onUpdate:modelValue":e[3]||(e[3]=n=>a(s).sms_notice.content=n)},null,8,["modelValue"])]),l("div",ne,[(p(!0),c(Y,null,Z(a(s).sms_notice.tips,(n,N)=>(p(),c("div",{key:N},d(n),1))),128))])])]),_:1})]),_:1})]),_:1},8,["model"])),[[C,a(_)]]),t(q,null,{default:o(()=>[t(I,{type:"primary",onClick:x},{default:o(()=>[...e[8]||(e[8]=[m("保存",-1)])]),_:1})]),_:1})])}}});export{Ae as default}; diff --git a/server/public/admin/assets/edit-CLcIiMBx.js b/server/public/admin/assets/edit-D6VzjpSE.js similarity index 77% rename from server/public/admin/assets/edit-CLcIiMBx.js rename to server/public/admin/assets/edit-D6VzjpSE.js index bc0223d2..a3204bff 100644 --- a/server/public/admin/assets/edit-CLcIiMBx.js +++ b/server/public/admin/assets/edit-D6VzjpSE.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-Csv2cIsH.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./post-CjhbCF7F.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./dict-DnKASfBm.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-Bx3YhV3D.js b/server/public/admin/assets/edit-D_EVoHF9.js similarity index 77% rename from server/public/admin/assets/edit-Bx3YhV3D.js rename to server/public/admin/assets/edit-D_EVoHF9.js index 160fda62..c54428de 100644 --- a/server/public/admin/assets/edit-Bx3YhV3D.js +++ b/server/public/admin/assets/edit-D_EVoHF9.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-D0_v-7QH.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./dict-BN4CTMA_.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./post-D694zeqo.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-CsfWrQHN.js b/server/public/admin/assets/edit-DiacXhqZ.js similarity index 96% rename from server/public/admin/assets/edit-CsfWrQHN.js rename to server/public/admin/assets/edit-DiacXhqZ.js index 5e9d825d..2103868a 100644 --- a/server/public/admin/assets/edit-CsfWrQHN.js +++ b/server/public/admin/assets/edit-DiacXhqZ.js @@ -1 +1 @@ -import{m as Ze,l as el,D as ll,U as al,B as tl,C as ol,a4 as il,a5 as dl,G as nl,I as sl,h as rl,P as ul,Q as pl,a2 as ml,af as _l,al as fl,F as gl,R as cl,i as vl,T as yl,e as bl,E as ae}from"./element-plus-DFTWCWyi.js";import{N as Vl,$ as Ee,a0 as kl,a1 as hl,_ as Oe,a2 as wl}from"./tcm-DCW3HTOw.js";import{e as xl,u as Ul,m as h,_ as Nl}from"./index-Nt5zMHcc.js";import{h as P}from"./perm-DkIPMPyD.js";import El from"./DailyMatrix-j3uF_86P.js";import Ol from"./CaseRecordList-Bo5qAgx7.js";import Pl from"./CallRecordPanel-DvHFqqux.js";import Rl from"./ImChatRecordPanel-DpRXSwhQ.js";import Dl from"./AssignLogPanel-B1IM06sV.js";import Il from"./AppointmentRecordPanel-CHr1S2Xh.js";import Cl from"./NoteTimeline-BrIUegAJ.js";/* empty css */import zl from"./PatientOrderList-MM0hhqMY.js";import Fl from"./index-5vSbbrqK.js";import{g as Bl}from"./patient-BKtZKzsB.js";import{f as Tl,w as Pe,ak as d,I as g,a as o,aN as a,J as A,O as r,F as x,H as R,G as u,ap as U,A as J}from"./@vue/runtime-core-C6bnekPw.js";import{n as p,a as Re,y as t}from"./@vue/reactivity-DiY1c2vO.js";import{Q as k}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./vue-echarts-BNtg2q_G.js";import"./resize-detector-G6vbKCU7.js";import"./DiagnosisTodoList-BFQuq0si.js";import"./blood-thresholds-CJ1fqMjh.js";import"./RecordingPlaybackBlock-39655xEj.js";import"./RecordingVideoPlayer-CRxrgEoO.js";import"./im-business-message-parse-QKjFLn3X.js";import"./doctor-B7qEhSpt.js";import"./index-afeGV-gc.js";import"./medicine-D4btWglq.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./html2canvas-QH1iLAAe.js";const $l={class:"edit-drawer"},Ll={class:"tcm-dd-header"},Sl={class:"tcm-dd-header__row"},Ml={class:"tcm-dd-header__title"},ql={key:0,class:"tcm-dd-header__sub"},Yl={key:0,class:"tcm-dd-header__name"},Al={key:1,class:"tcm-dd-header__id"},Gl={key:0,class:"tcm-dd-header__sep"},Hl=["disabled"],Jl={key:0,class:"text-xs text-gray-400 mt-1"},Ql={key:0,class:"p-4"},Xl={key:0,class:"bingli-tab-content"},jl={class:"tcm-dd-footer"},Kl=Tl({__name:"edit",emits:["success"],setup(Wl,{expose:De,emit:Ie}){const Ce=Ie;xl();const Q=p(),ze=p(null),X=p(),z=p(!1),E=p(!1),j=p(),D=p("add"),K=p(!1),M=J(()=>P(["tcm.diagnosis/phonePlain"])),te=J(()=>P(["tcm.diagnosis/dailyRecord"])),Fe=J(()=>D.value==="edit"&&!M.value),F=p(!1),b=p("basic"),Be=J(()=>E.value?"诊单详情":D.value==="add"?"新增诊单":"编辑诊单"),W=p([]),oe=async()=>{if(l.value.id)try{W.value=await Bl({diagnosis_id:Number(l.value.id)})||[]}catch{W.value=[]}},ie=p([]),Te=async()=>{if(l.value.id)try{ie.value=await Vl({diagnosis_id:Number(l.value.id)})||[]}catch{ie.value=[]}};Pe(()=>b.value,async n=>{n==="doctorNote"&&l.value.id&&await oe(),n==="trackingNote"&&l.value.id&&await Te()}),Pe([z,b],()=>{z.value&&(b.value==="chat"&&!P(["tcm.diagnosis/chat"])&&(b.value="basic"),b.value==="visit"&&!P(["tcm.diagnosis/huifang"])&&(b.value="basic"),b.value==="assignLog"&&!P(["tcm.diagnosis/assign"])&&!P(["tcm.diagnosis/detail"])&&(b.value="basic"),b.value==="appointmentRecords"&&!P(["doctor.appointment/lists"])&&(b.value="basic"),b.value==="daily"&&!te.value&&(b.value="basic"))});const l=p({id:"",patient_id:"",patient_name:"",id_card:"",phone:"",gender:1,age:void 0,diagnosis_date:"",diagnosis_type:"",syndrome_type:"",diabetes_type:"",diabetes_discovery_year:"",local_hospital_diagnosis:[],local_hospital_name:"",marital_status:void 0,height:void 0,weight:void 0,region:"",systolic_pressure:void 0,diastolic_pressure:void 0,fasting_blood_sugar:"",appetite:[],water_intake:"",diet_condition:[],weight_change:"",body_feeling:[],sleep_condition:[],eye_condition:[],head_feeling:[],sweat_condition:[],skin_condition:[],urine_condition:[],stool_condition:[],kidney_condition:[],fatty_liver_degree:"",past_history:[],trauma_history:0,surgery_history:0,allergy_history:0,family_history:0,pregnancy_history:0,assistant_id:void 0,symptoms:"",tongue_coating:"",pulse:"",treatment_principle:"",prescription:"",doctor_advice:"",remark:"",current_medications:"",status:1,external_userid:""}),N=p(""),B=p(""),Z=p(!1),ee=p(!1),G=n=>!n||n.length<11?n:n.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),$e=()=>{N.value&&(F.value=!F.value)},le=n=>n&&(n.length===15?n.replace(/(\d{6})\d{5}(\d{4})/,"$1*****$2"):n.length===18?n.replace(/(\d{6})\d{8}(\d{4})/,"$1********$2"):n),Le=()=>{if(Z.value=!0,!!N.value){if(M.value){l.value.phone=N.value;return}D.value==="add"&&(l.value.phone=N.value)}},Se=async()=>{if(Z.value=!1,M.value){if(l.value.phone&&l.value.phone.length===11&&(N.value=l.value.phone,/^1[3-9]\d{9}$/.test(l.value.phone)))try{const n=await Ee({phone:l.value.phone,id:l.value.id||""});n.exists&&ae.warning(n.message)}catch(n){console.error("检查手机号失败:",n)}return}if(D.value==="add"&&l.value.phone&&l.value.phone.length===11){if(N.value=l.value.phone,/^1[3-9]\d{9}$/.test(l.value.phone))try{const n=await Ee({phone:l.value.phone,id:l.value.id||""});n.exists&&ae.warning(n.message)}catch(n){console.error("检查手机号失败:",n)}l.value.phone=G(l.value.phone)}},Me=()=>{ee.value=!0,B.value&&(l.value.id_card=B.value)},qe=async()=>{if(ee.value=!1,l.value.id_card&&(l.value.id_card.length===15||l.value.id_card.length===18)){if(B.value=l.value.id_card,/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(l.value.id_card)){const n=l.value.id_card,e=parseInt(n.substring(6,10)),f=parseInt(n.substring(10,12)),_=parseInt(n.substring(12,14)),c=new Date;let s=c.getFullYear()-e;(c.getMonth()+1{const _=B.value||e;if(_&&!/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(_)){f(new Error("身份证号格式不正确"));return}f()},trigger:"blur"}],phone:[{required:!0,validator:(n,e,f)=>{const _=N.value||e;if(!_){f(new Error("请输入手机号"));return}if(!/^1[3-9]\d{9}$/.test(_)){f(new Error("手机号格式不正确"));return}f()},trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],age:[{required:!0,message:"请输入年龄",trigger:"blur"}],fasting_blood_sugar:[{required:!0,message:"请输入空腹血糖",trigger:"blur"}],diagnosis_type:[{required:!0,message:"请选择诊断类型",trigger:"change"}],diabetes_discovery_year:[{max:50,message:"最多50个字符",trigger:"blur"}]},de=p([]),Ae=p([]),Ge=p([]),ne=p([]),se=p([]),re=p([]),ue=p([]),pe=p([]),me=p([]),_e=p([]),fe=p([]),ge=p([]),ce=p([]),ve=p([]),ye=p([]),be=p([]),Ve=p([]),ke=p([]),he=async()=>{try{const[n,e,f,_,c,s,m,v,T,O,I,$,S,q,V,w,y,Y]=await Promise.all([h({type:"diagnosis_type"}),h({type:"syndrome_type"}),h({type:"diabetes_type"}),h({type:"past_history"}),h({type:"appetite"}),h({type:"water_intake"}),h({type:"diet_condition"}),h({type:"weight_change"}),h({type:"body_feeling"}),h({type:"sleep_condition"}),h({type:"eye_condition"}),h({type:"head_feeling"}),h({type:"sweat_condition"}),h({type:"skin_condition"}),h({type:"urine_condition"}),h({type:"stool_condition"}),h({type:"kidney_condition"}),h({type:"fatty_liver_degree"})]);de.value=(n==null?void 0:n.diagnosis_type)||[],Ae.value=(e==null?void 0:e.syndrome_type)||[],Ge.value=(f==null?void 0:f.diabetes_type)||[],ne.value=(_==null?void 0:_.past_history)||[],se.value=(c==null?void 0:c.appetite)||[],re.value=(s==null?void 0:s.water_intake)||[],ue.value=(m==null?void 0:m.diet_condition)||[],pe.value=(v==null?void 0:v.weight_change)||[],me.value=(T==null?void 0:T.body_feeling)||[],_e.value=(O==null?void 0:O.sleep_condition)||[],fe.value=(I==null?void 0:I.eye_condition)||[],ge.value=($==null?void 0:$.head_feeling)||[],ce.value=(S==null?void 0:S.sweat_condition)||[],ve.value=(q==null?void 0:q.skin_condition)||[],ye.value=(V==null?void 0:V.urine_condition)||[],be.value=(w==null?void 0:w.stool_condition)||[],Ve.value=(y==null?void 0:y.kidney_condition)||[],ke.value=(Y==null?void 0:Y.fatty_liver_degree)||[]}catch(n){console.error("获取字典数据失败:",n)}};async function we(n){const e=await Oe({id:n});N.value=e.phone||"",B.value=e.id_card||"",e.phone=M.value?e.phone||"":G(e.phone||""),e.id_card=le(e.id_card||""),l.value=e;const f=e.diabetes_discovery_year;l.value.diabetes_discovery_year=f==null||f===""?"":String(f)}const He=async(n,e)=>{var f;if(E.value=!1,D.value=n,z.value=!0,b.value="basic",F.value=!1,await he(),n==="edit"&&e)await we(e);else if(n==="add"){const _=Ul();l.value.assistant_id=((f=_.userInfo)==null?void 0:f.id)||"",l.value.diagnosis_type="follow_up"}},Je=async n=>{n&&(E.value=!0,D.value="edit",z.value=!0,b.value="basic",F.value=!1,await he(),await we(n))},Qe=async()=>{var n;if(!E.value){await((n=j.value)==null?void 0:n.validate()),K.value=!0;try{const e={...l.value,phone:N.value||l.value.phone,id_card:B.value||l.value.id_card};if(D.value==="add"){const f=await hl(e);if(f&&f.id){D.value="edit",F.value=!1,l.value.id=f.id;try{const _=await Oe({id:f.id});l.value.patient_id=_.patient_id,N.value=_.phone||"",B.value=_.id_card||"",l.value.phone=M.value?_.phone||"":G(_.phone||""),l.value.id_card=le(_.id_card||"")}catch(_){console.error("获取详情失败:",_)}}}else await wl(e);Ce("success")}catch(e){console.error("提交失败:",e)}finally{K.value=!1}}},Xe=n=>{var e;(e=X.value)==null||e.openById(n.id)},je=()=>{var e;if(E.value)return;const n={id:l.value.id,diagnosis_id:l.value.id,appointment_id:0,patient_name:l.value.patient_name,patient_phone:N.value||l.value.phone,patient_gender:l.value.gender,patient_age:l.value.age,case_record:JSON.parse(JSON.stringify(l.value))};(e=X.value)==null||e.open(n)},xe=()=>{var n;(n=j.value)==null||n.resetFields(),l.value={id:"",patient_id:"",patient_name:"",id_card:"",phone:"",gender:1,age:void 0,diagnosis_date:"",diagnosis_type:"",syndrome_type:"",diabetes_type:"",diabetes_discovery_year:"",local_hospital_diagnosis:[],local_hospital_name:"",marital_status:void 0,height:void 0,weight:void 0,region:"",systolic_pressure:void 0,diastolic_pressure:void 0,fasting_blood_sugar:"",appetite:[],water_intake:"",diet_condition:[],weight_change:"",body_feeling:[],sleep_condition:[],eye_condition:[],head_feeling:[],sweat_condition:[],skin_condition:[],urine_condition:[],stool_condition:[],kidney_condition:[],fatty_liver_degree:"",past_history:[],trauma_history:0,surgery_history:0,allergy_history:0,family_history:0,pregnancy_history:0,assistant_id:void 0,symptoms:"",tongue_coating:"",pulse:"",treatment_principle:"",prescription:"",doctor_advice:"",remark:"",current_medications:"",status:1,external_userid:""},N.value="",B.value="",Z.value=!1,ee.value=!1,F.value=!1,E.value=!1,z.value=!1};return De({open:He,openViewOnly:Je,refreshCaseList:()=>{var n,e;return(e=(n=Q.value)==null?void 0:n.refresh)==null?void 0:e.call(n)}}),(n,e)=>{const f=yl,_=al,c=ol,s=tl,m=dl,v=il,T=sl,O=nl,I=rl,$=pl,S=ul,q=ml,V=fl,w=_l,y=gl,Y=ll,C=el,L=cl,Ke=Ze,Ue=vl,We=bl;return d(),g("div",$l,[o(We,{modelValue:t(z),"onUpdate:modelValue":e[44]||(e[44]=i=>Re(z)?z.value=i:null),size:"60%","before-close":xe,"z-index":t(E)?4e3:1500,modal:!0,class:"diagnosis-drawer tcm-diagnosis-drawer"},{header:a(()=>[A("div",Ll,[A("div",Sl,[A("h2",Ml,k(t(Be)),1),t(E)?(d(),u(f,{key:0,type:"info",effect:"plain",round:"",size:"small",class:"tcm-dd-header__badge"},{default:a(()=>[...e[45]||(e[45]=[r(" 只读 ",-1)])]),_:1})):t(D)==="add"?(d(),u(f,{key:1,type:"success",effect:"plain",round:"",size:"small",class:"tcm-dd-header__badge"},{default:a(()=>[...e[46]||(e[46]=[r(" 新建 ",-1)])]),_:1})):(d(),u(f,{key:2,type:"warning",effect:"plain",round:"",size:"small",class:"tcm-dd-header__badge"},{default:a(()=>[...e[47]||(e[47]=[r(" 编辑 ",-1)])]),_:1}))]),t(l).patient_name||t(l).id?(d(),g("p",ql,[t(l).patient_name?(d(),g("span",Yl,k(t(l).patient_name),1)):R("",!0),t(l).id?(d(),g("span",Al,[t(l).patient_name?(d(),g("span",Gl,"·")):R("",!0),r(" 诊单 "+k(t(l).patient_id||t(l).id),1)])):R("",!0)])):R("",!0)])]),footer:a(()=>[A("div",jl,[o(Ue,{class:"tcm-dd-footer__btn",onClick:xe},{default:a(()=>[r(k(t(E)?"关闭":"取消"),1)]),_:1}),!t(E)&&t(b)==="basic"?(d(),u(Ue,{key:0,class:"tcm-dd-footer__btn",type:"primary",onClick:Qe,loading:t(K)},{default:a(()=>[...e[75]||(e[75]=[r(" 保存病历 ",-1)])]),_:1},8,["loading"])):R("",!0)])]),default:a(()=>[o(Ke,{modelValue:t(b),"onUpdate:modelValue":e[42]||(e[42]=i=>Re(b)?b.value=i:null),class:"diagnosis-tabs tcm-diagnosis-tabs"},{default:a(()=>[o(C,{label:"病历",name:"basic"},{default:a(()=>[o(Y,{ref_key:"formRef",ref:j,model:t(l),rules:Ye,"label-width":"160px"},{default:a(()=>[A("fieldset",{disabled:t(E),class:"diagnosis-view-fieldset border-0 min-w-0 p-0 m-0"},[o(_,{"content-position":"left"},{default:a(()=>[...e[48]||(e[48]=[r("基本信息",-1)])]),_:1}),o(s,{label:"诊单ID"},{default:a(()=>[o(c,{modelValue:t(l).patient_id,"onUpdate:modelValue":e[0]||(e[0]=i=>t(l).patient_id=i),disabled:"",placeholder:"系统自动生成"},null,8,["modelValue"])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"姓名",prop:"patient_name"},{default:a(()=>[o(c,{modelValue:t(l).patient_name,"onUpdate:modelValue":e[1]||(e[1]=i=>t(l).patient_name=i),placeholder:"请输入姓名"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"身份证号",prop:"id_card"},{default:a(()=>[o(c,{modelValue:t(l).id_card,"onUpdate:modelValue":e[2]||(e[2]=i=>t(l).id_card=i),placeholder:"请输入身份证号",maxlength:"18",onFocus:Me,onBlur:qe},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"手机号",prop:"phone"},{default:a(()=>[t(Fe)?(d(),g(x,{key:0},[o(c,{"model-value":t(F)?t(N)||"":G(t(N)||""),readonly:"",placeholder:"点击可查看完整手机号",maxlength:"11",class:"cursor-pointer phone-mask-toggle",onClick:$e},null,8,["model-value"]),t(N)&&!t(F)?(d(),g("p",Jl," 当前为脱敏显示,点击输入框可查看完整号码 ")):R("",!0)],64)):(d(),u(c,{key:1,modelValue:t(l).phone,"onUpdate:modelValue":e[3]||(e[3]=i=>t(l).phone=i),placeholder:"请输入手机号",maxlength:"11",onFocus:Le,onBlur:Se},null,8,["modelValue"]))]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"性别",prop:"gender"},{default:a(()=>[o(O,{modelValue:t(l).gender,"onUpdate:modelValue":e[4]||(e[4]=i=>t(l).gender=i)},{default:a(()=>[o(T,{label:1},{default:a(()=>[...e[49]||(e[49]=[r("男",-1)])]),_:1}),o(T,{label:0},{default:a(()=>[...e[50]||(e[50]=[r("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"年龄",prop:"age"},{default:a(()=>[o(I,{modelValue:t(l).age,"onUpdate:modelValue":e[5]||(e[5]=i=>t(l).age=i),min:0,max:150,placeholder:"请输入年龄",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[51]||(e[51]=[r("生命体征",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"婚姻状态",prop:"marital_status"},{default:a(()=>[o(S,{modelValue:t(l).marital_status,"onUpdate:modelValue":e[6]||(e[6]=i=>t(l).marital_status=i),placeholder:"请选择婚姻状态",class:"w-full","popper-options":{strategy:"fixed"},"popper-class":"high-z-index"},{default:a(()=>[o($,{label:"未婚",value:0}),o($,{label:"已婚",value:1}),o($,{label:"离异",value:2})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"就诊人身高(cm)",prop:"height"},{default:a(()=>[o(I,{modelValue:t(l).height,"onUpdate:modelValue":e[7]||(e[7]=i=>t(l).height=i),min:0,max:300,placeholder:"请输入身高",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"体重(kg)",prop:"weight"},{default:a(()=>[o(I,{modelValue:t(l).weight,"onUpdate:modelValue":e[8]||(e[8]=i=>t(l).weight=i),min:0,max:500,step:.1,placeholder:"请输入体重",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"地区",prop:"region"},{default:a(()=>[o(c,{modelValue:t(l).region,"onUpdate:modelValue":e[9]||(e[9]=i=>t(l).region=i),placeholder:"请输入地区"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"就诊人血压(高压mmHg)",prop:"systolic_pressure"},{default:a(()=>[o(I,{modelValue:t(l).systolic_pressure,"onUpdate:modelValue":e[10]||(e[10]=i=>t(l).systolic_pressure=i),min:0,max:250,placeholder:"请输入高压",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"就诊人血压(低压mmHg)",prop:"diastolic_pressure"},{default:a(()=>[o(I,{modelValue:t(l).diastolic_pressure,"onUpdate:modelValue":e[11]||(e[11]=i=>t(l).diastolic_pressure=i),min:0,max:150,placeholder:"请输入低压",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"空腹血糖(mmol/L)",prop:"fasting_blood_sugar"},{default:a(()=>[o(c,{modelValue:t(l).fasting_blood_sugar,"onUpdate:modelValue":e[12]||(e[12]=i=>t(l).fasting_blood_sugar=i),placeholder:"请输入空腹血糖,如:8.5 或 8-9",maxlength:"20",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"诊断类型",prop:"diagnosis_type"},{default:a(()=>[o(S,{modelValue:t(l).diagnosis_type,"onUpdate:modelValue":e[13]||(e[13]=i=>t(l).diagnosis_type=i),placeholder:"请选择诊断类型",class:"w-full","popper-options":{strategy:"fixed"},"popper-class":"high-z-index"},{default:a(()=>[(d(!0),g(x,null,U(t(de),i=>(d(),u($,{key:i.value,label:i.name,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"状态",prop:"status"},{default:a(()=>[o(O,{modelValue:t(l).status,"onUpdate:modelValue":e[14]||(e[14]=i=>t(l).status=i)},{default:a(()=>[o(T,{label:1},{default:a(()=>[...e[52]||(e[52]=[r("启用",-1)])]),_:1}),o(T,{label:0},{default:a(()=>[...e[53]||(e[53]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"在用药物",prop:"current_medications"},{default:a(()=>[o(c,{modelValue:t(l).current_medications,"onUpdate:modelValue":e[15]||(e[15]=i=>t(l).current_medications=i),type:"textarea",rows:3,placeholder:"请填写患者当前正在使用的药物(如降压药、降糖药等),多种请换行或顿号分隔",maxlength:"2000","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[54]||(e[54]=[r("主诉",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"当地医院诊断日期",prop:"diagnosis_date"},{default:a(()=>[o(q,{modelValue:t(l).diagnosis_date,"onUpdate:modelValue":e[16]||(e[16]=i=>t(l).diagnosis_date=i),type:"date",placeholder:"请选择诊断日期","value-format":"YYYY-MM-DD",class:"w-full","popper-options":{strategy:"fixed"},"popper-class":"high-z-index"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"发现糖尿病患病史",prop:"diabetes_discovery_year"},{default:a(()=>[o(c,{modelValue:t(l).diabetes_discovery_year,"onUpdate:modelValue":e[17]||(e[17]=i=>t(l).diabetes_discovery_year=i),clearable:"",maxlength:"50","show-word-limit":"",placeholder:"可填数字或文字,如:5、1年、半年",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(s,{label:"当地医院诊断结果",prop:"local_hospital_diagnosis",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).local_hospital_diagnosis,"onUpdate:modelValue":e[18]||(e[18]=i=>t(l).local_hospital_diagnosis=i)},{default:a(()=>[o(V,{label:"糖尿病"},{default:a(()=>[...e[55]||(e[55]=[r("糖尿病",-1)])]),_:1}),o(V,{label:"消渴病"},{default:a(()=>[...e[56]||(e[56]=[r("消渴病",-1)])]),_:1}),o(V,{label:"糖尿病前期"},{default:a(()=>[...e[57]||(e[57]=[r("糖尿病前期",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"当地就诊医院名称",prop:"local_hospital_name"},{default:a(()=>[o(c,{modelValue:t(l).local_hospital_name,"onUpdate:modelValue":e[19]||(e[19]=i=>t(l).local_hospital_name=i),placeholder:"请输入当地就诊医院名称(不能填写当地、本地、互联网等关键词)"},null,8,["modelValue"])]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[58]||(e[58]=[r("现病史",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(s,{label:"口腔感觉",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).appetite,"onUpdate:modelValue":e[20]||(e[20]=i=>t(l).appetite=i)},{default:a(()=>[(d(!0),g(x,null,U(t(se),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:20},{default:a(()=>[o(s,{label:"每日饮水量",class:"compact-form-item"},{default:a(()=>[o(O,{modelValue:t(l).water_intake,"onUpdate:modelValue":e[21]||(e[21]=i=>t(l).water_intake=i)},{default:a(()=>[o(y,{label:""},{default:a(()=>[...e[59]||(e[59]=[r("无",-1)])]),_:1}),(d(!0),g(x,null,U(t(re),i=>(d(),u(y,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"近一个月体重变化",class:"compact-form-item"},{default:a(()=>[o(O,{modelValue:t(l).weight_change,"onUpdate:modelValue":e[22]||(e[22]=i=>t(l).weight_change=i)},{default:a(()=>[o(y,{label:""},{default:a(()=>[...e[60]||(e[60]=[r("无",-1)])]),_:1}),(d(!0),g(x,null,U(t(pe),i=>(d(),u(y,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"脂肪肝程度",class:"compact-form-item"},{default:a(()=>[o(O,{modelValue:t(l).fatty_liver_degree,"onUpdate:modelValue":e[23]||(e[23]=i=>t(l).fatty_liver_degree=i)},{default:a(()=>[o(y,{label:""},{default:a(()=>[...e[61]||(e[61]=[r("无",-1)])]),_:1}),(d(!0),g(x,null,U(t(ke),i=>(d(),u(y,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(s,{label:"饮食情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).diet_condition,"onUpdate:modelValue":e[24]||(e[24]=i=>t(l).diet_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ue),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"肢体感觉",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).body_feeling,"onUpdate:modelValue":e[25]||(e[25]=i=>t(l).body_feeling=i)},{default:a(()=>[(d(!0),g(x,null,U(t(me),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"睡眠情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).sleep_condition,"onUpdate:modelValue":e[26]||(e[26]=i=>t(l).sleep_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(_e),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"眼睛情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).eye_condition,"onUpdate:modelValue":e[27]||(e[27]=i=>t(l).eye_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(fe),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"头部感觉",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).head_feeling,"onUpdate:modelValue":e[28]||(e[28]=i=>t(l).head_feeling=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ge),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"出汗情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).sweat_condition,"onUpdate:modelValue":e[29]||(e[29]=i=>t(l).sweat_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ce),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"皮肤情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).skin_condition,"onUpdate:modelValue":e[30]||(e[30]=i=>t(l).skin_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ve),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"小便情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).urine_condition,"onUpdate:modelValue":e[31]||(e[31]=i=>t(l).urine_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ye),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"大便情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).stool_condition,"onUpdate:modelValue":e[32]||(e[32]=i=>t(l).stool_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(be),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"腰肾情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).kidney_condition,"onUpdate:modelValue":e[33]||(e[33]=i=>t(l).kidney_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(Ve),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"其他补充",prop:"symptoms"},{default:a(()=>[o(c,{modelValue:t(l).symptoms,"onUpdate:modelValue":e[34]||(e[34]=i=>t(l).symptoms=i),type:"textarea",rows:3,placeholder:"请输入症状"},null,8,["modelValue"])]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[62]||(e[62]=[r("既往史",-1)])]),_:1}),o(s,{label:"",prop:"past_history",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).past_history,"onUpdate:modelValue":e[35]||(e[35]=i=>t(l).past_history=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ne),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[63]||(e[63]=[r("其他病史",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"外伤史"},{default:a(()=>[o(O,{modelValue:t(l).trauma_history,"onUpdate:modelValue":e[36]||(e[36]=i=>t(l).trauma_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[64]||(e[64]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[65]||(e[65]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"手术史"},{default:a(()=>[o(O,{modelValue:t(l).surgery_history,"onUpdate:modelValue":e[37]||(e[37]=i=>t(l).surgery_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[66]||(e[66]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[67]||(e[67]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"过敏史"},{default:a(()=>[o(O,{modelValue:t(l).allergy_history,"onUpdate:modelValue":e[38]||(e[38]=i=>t(l).allergy_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[68]||(e[68]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[69]||(e[69]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"家族病史"},{default:a(()=>[o(O,{modelValue:t(l).family_history,"onUpdate:modelValue":e[39]||(e[39]=i=>t(l).family_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[70]||(e[70]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[71]||(e[71]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"妊娠哺乳史"},{default:a(()=>[o(O,{modelValue:t(l).pregnancy_history,"onUpdate:modelValue":e[40]||(e[40]=i=>t(l).pregnancy_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[72]||(e[72]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[73]||(e[73]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[74]||(e[74]=[r("诊断信息",-1)])]),_:1}),o(s,{label:"病史补充",prop:"remark"},{default:a(()=>[o(c,{modelValue:t(l).remark,"onUpdate:modelValue":e[41]||(e[41]=i=>t(l).remark=i),type:"textarea",rows:2,placeholder:"请输入病史补充"},null,8,["modelValue"])]),_:1})],8,Hl)]),_:1},8,["model"])]),_:1}),o(C,{label:"医生备注",name:"doctorNote",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),g("div",Ql,[o(Cl,{notes:t(W),"diagnosis-id":Number(t(l).id),readonly:t(E),onRefresh:oe},null,8,["notes","diagnosis-id","readonly"])])):(d(),u(L,{key:1,description:"请先保存诊单后查看"}))]),_:1},8,["disabled"]),t(te)?(d(),u(C,{key:0,label:"日常记录",name:"daily",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(El,{key:0,"diagnosis-id":Number(t(l).id),"patient-id":Number(t(l).patient_id),age:t(l).age,"patient-name":t(l).patient_name,"read-only":t(E)},null,8,["diagnosis-id","patient-id","age","patient-name","read-only"])):(d(),u(L,{key:1,description:"请先保存诊单后查看"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/chufang"])?(d(),u(C,{key:1,label:"处方",name:"bingli",disabled:!t(l).id},{default:a(()=>[t(l).id?(d(),g("div",Xl,[o(Ol,{ref_key:"caseRecordListRef",ref:Q,"diagnosis-id":Number(t(l).id),"read-only":t(E),onView:Xe,onOpenPrescription:je},null,8,["diagnosis-id","read-only"])])):(d(),u(L,{key:1,description:"请先保存诊单,开方后病历将在此显示"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/patientOrders"])?(d(),u(C,{key:2,label:"业务订单",name:"patientOrders",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(zl,{key:0,"diagnosis-id":Number(t(l).id),"patient-id":Number(t(l).patient_id)||0},null,8,["diagnosis-id","patient-id"])):(d(),u(L,{key:1,description:"请先保存诊单后查看业务订单"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/huifang"])?(d(),u(C,{key:3,label:"视频录制回放记录",name:"visit",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(Pl,{key:0,ref_key:"callRecordPanelRef",ref:ze,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):(d(),u(L,{key:1,description:"请先保存诊单后再查看视频录制回放记录"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/chat"])?(d(),u(C,{key:4,label:"聊天记录",name:"chat",disabled:!t(l).id,lazy:""},{default:a(()=>[t(b)==="chat"&&t(l).id?(d(),u(Rl,{key:0,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):t(l).id?R("",!0):(d(),u(L,{key:1,description:"请先保存诊单后再查看聊天记录"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/assign"])||t(P)(["tcm.diagnosis/detail"])?(d(),u(C,{key:5,label:"指派医助记录",name:"assignLog",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(Dl,{key:0,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):(d(),u(L,{key:1,description:"请先保存诊单后再查看指派记录"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["doctor.appointment/lists"])?(d(),u(C,{key:6,label:"挂号记录",name:"appointmentRecords",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(Il,{key:0,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):(d(),u(L,{key:1,description:"请先保存诊单后再查看挂号记录"}))]),_:1},8,["disabled"])):R("",!0)]),_:1},8,["modelValue"]),o(Fl,{ref_key:"prescriptionRef",ref:X,onSuccess:e[43]||(e[43]=i=>{var H,Ne;return(Ne=(H=t(Q))==null?void 0:H.refresh)==null?void 0:Ne.call(H)})},null,512)]),_:1},8,["modelValue","z-index"])])}}}),xt=Nl(Kl,[["__scopeId","data-v-4d5cecd1"]]);export{xt as default}; +import{m as Ze,l as el,D as ll,U as al,B as tl,C as ol,a4 as il,a5 as dl,G as nl,I as sl,h as rl,P as ul,Q as pl,a2 as ml,af as _l,al as fl,F as gl,R as cl,i as vl,T as yl,e as bl,E as ae}from"./element-plus-DFTWCWyi.js";import{N as Vl,$ as Ee,a0 as kl,a1 as hl,_ as Oe,a2 as wl}from"./tcm-DzAQc_oE.js";import{e as xl,u as Ul,m as h,_ as Nl}from"./index--WnM67ZH.js";import{h as P}from"./perm-CLhA0PJe.js";import El from"./DailyMatrix-DyqovtVx.js";import Ol from"./CaseRecordList-Dl_AaWiA.js";import Pl from"./CallRecordPanel-BQekhSi-.js";import Rl from"./ImChatRecordPanel-yVs1ANxt.js";import Dl from"./AssignLogPanel-nLggvTO6.js";import Il from"./AppointmentRecordPanel-CNtykthG.js";import Cl from"./NoteTimeline-Vt4S5dzs.js";/* empty css */import zl from"./PatientOrderList-_Y1o6_3U.js";import Fl from"./index-C5tKSXIA.js";import{g as Bl}from"./patient-BNjmKCvA.js";import{f as Tl,w as Pe,ak as d,I as g,a as o,aN as a,J as A,O as r,F as x,H as R,G as u,ap as U,A as J}from"./@vue/runtime-core-C6bnekPw.js";import{n as p,a as Re,y as t}from"./@vue/reactivity-DiY1c2vO.js";import{Q as k}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./vue-echarts-BNtg2q_G.js";import"./resize-detector-G6vbKCU7.js";import"./DiagnosisTodoList-Be3uAeoQ.js";import"./blood-thresholds-CJ1fqMjh.js";import"./RecordingPlaybackBlock-BHZL3zDJ.js";import"./RecordingVideoPlayer-LJMNYP-k.js";import"./im-business-message-parse-QKjFLn3X.js";import"./doctor-BlvK2TEo.js";import"./index-DgkrquIz.js";import"./medicine-KRcHi5G1.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./html2canvas-QH1iLAAe.js";const $l={class:"edit-drawer"},Ll={class:"tcm-dd-header"},Sl={class:"tcm-dd-header__row"},Ml={class:"tcm-dd-header__title"},ql={key:0,class:"tcm-dd-header__sub"},Yl={key:0,class:"tcm-dd-header__name"},Al={key:1,class:"tcm-dd-header__id"},Gl={key:0,class:"tcm-dd-header__sep"},Hl=["disabled"],Jl={key:0,class:"text-xs text-gray-400 mt-1"},Ql={key:0,class:"p-4"},Xl={key:0,class:"bingli-tab-content"},jl={class:"tcm-dd-footer"},Kl=Tl({__name:"edit",emits:["success"],setup(Wl,{expose:De,emit:Ie}){const Ce=Ie;xl();const Q=p(),ze=p(null),X=p(),z=p(!1),E=p(!1),j=p(),D=p("add"),K=p(!1),M=J(()=>P(["tcm.diagnosis/phonePlain"])),te=J(()=>P(["tcm.diagnosis/dailyRecord"])),Fe=J(()=>D.value==="edit"&&!M.value),F=p(!1),b=p("basic"),Be=J(()=>E.value?"诊单详情":D.value==="add"?"新增诊单":"编辑诊单"),W=p([]),oe=async()=>{if(l.value.id)try{W.value=await Bl({diagnosis_id:Number(l.value.id)})||[]}catch{W.value=[]}},ie=p([]),Te=async()=>{if(l.value.id)try{ie.value=await Vl({diagnosis_id:Number(l.value.id)})||[]}catch{ie.value=[]}};Pe(()=>b.value,async n=>{n==="doctorNote"&&l.value.id&&await oe(),n==="trackingNote"&&l.value.id&&await Te()}),Pe([z,b],()=>{z.value&&(b.value==="chat"&&!P(["tcm.diagnosis/chat"])&&(b.value="basic"),b.value==="visit"&&!P(["tcm.diagnosis/huifang"])&&(b.value="basic"),b.value==="assignLog"&&!P(["tcm.diagnosis/assign"])&&!P(["tcm.diagnosis/detail"])&&(b.value="basic"),b.value==="appointmentRecords"&&!P(["doctor.appointment/lists"])&&(b.value="basic"),b.value==="daily"&&!te.value&&(b.value="basic"))});const l=p({id:"",patient_id:"",patient_name:"",id_card:"",phone:"",gender:1,age:void 0,diagnosis_date:"",diagnosis_type:"",syndrome_type:"",diabetes_type:"",diabetes_discovery_year:"",local_hospital_diagnosis:[],local_hospital_name:"",marital_status:void 0,height:void 0,weight:void 0,region:"",systolic_pressure:void 0,diastolic_pressure:void 0,fasting_blood_sugar:"",appetite:[],water_intake:"",diet_condition:[],weight_change:"",body_feeling:[],sleep_condition:[],eye_condition:[],head_feeling:[],sweat_condition:[],skin_condition:[],urine_condition:[],stool_condition:[],kidney_condition:[],fatty_liver_degree:"",past_history:[],trauma_history:0,surgery_history:0,allergy_history:0,family_history:0,pregnancy_history:0,assistant_id:void 0,symptoms:"",tongue_coating:"",pulse:"",treatment_principle:"",prescription:"",doctor_advice:"",remark:"",current_medications:"",status:1,external_userid:""}),N=p(""),B=p(""),Z=p(!1),ee=p(!1),G=n=>!n||n.length<11?n:n.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),$e=()=>{N.value&&(F.value=!F.value)},le=n=>n&&(n.length===15?n.replace(/(\d{6})\d{5}(\d{4})/,"$1*****$2"):n.length===18?n.replace(/(\d{6})\d{8}(\d{4})/,"$1********$2"):n),Le=()=>{if(Z.value=!0,!!N.value){if(M.value){l.value.phone=N.value;return}D.value==="add"&&(l.value.phone=N.value)}},Se=async()=>{if(Z.value=!1,M.value){if(l.value.phone&&l.value.phone.length===11&&(N.value=l.value.phone,/^1[3-9]\d{9}$/.test(l.value.phone)))try{const n=await Ee({phone:l.value.phone,id:l.value.id||""});n.exists&&ae.warning(n.message)}catch(n){console.error("检查手机号失败:",n)}return}if(D.value==="add"&&l.value.phone&&l.value.phone.length===11){if(N.value=l.value.phone,/^1[3-9]\d{9}$/.test(l.value.phone))try{const n=await Ee({phone:l.value.phone,id:l.value.id||""});n.exists&&ae.warning(n.message)}catch(n){console.error("检查手机号失败:",n)}l.value.phone=G(l.value.phone)}},Me=()=>{ee.value=!0,B.value&&(l.value.id_card=B.value)},qe=async()=>{if(ee.value=!1,l.value.id_card&&(l.value.id_card.length===15||l.value.id_card.length===18)){if(B.value=l.value.id_card,/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(l.value.id_card)){const n=l.value.id_card,e=parseInt(n.substring(6,10)),f=parseInt(n.substring(10,12)),_=parseInt(n.substring(12,14)),c=new Date;let s=c.getFullYear()-e;(c.getMonth()+1{const _=B.value||e;if(_&&!/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(_)){f(new Error("身份证号格式不正确"));return}f()},trigger:"blur"}],phone:[{required:!0,validator:(n,e,f)=>{const _=N.value||e;if(!_){f(new Error("请输入手机号"));return}if(!/^1[3-9]\d{9}$/.test(_)){f(new Error("手机号格式不正确"));return}f()},trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],age:[{required:!0,message:"请输入年龄",trigger:"blur"}],fasting_blood_sugar:[{required:!0,message:"请输入空腹血糖",trigger:"blur"}],diagnosis_type:[{required:!0,message:"请选择诊断类型",trigger:"change"}],diabetes_discovery_year:[{max:50,message:"最多50个字符",trigger:"blur"}]},de=p([]),Ae=p([]),Ge=p([]),ne=p([]),se=p([]),re=p([]),ue=p([]),pe=p([]),me=p([]),_e=p([]),fe=p([]),ge=p([]),ce=p([]),ve=p([]),ye=p([]),be=p([]),Ve=p([]),ke=p([]),he=async()=>{try{const[n,e,f,_,c,s,m,v,T,O,I,$,S,q,V,w,y,Y]=await Promise.all([h({type:"diagnosis_type"}),h({type:"syndrome_type"}),h({type:"diabetes_type"}),h({type:"past_history"}),h({type:"appetite"}),h({type:"water_intake"}),h({type:"diet_condition"}),h({type:"weight_change"}),h({type:"body_feeling"}),h({type:"sleep_condition"}),h({type:"eye_condition"}),h({type:"head_feeling"}),h({type:"sweat_condition"}),h({type:"skin_condition"}),h({type:"urine_condition"}),h({type:"stool_condition"}),h({type:"kidney_condition"}),h({type:"fatty_liver_degree"})]);de.value=(n==null?void 0:n.diagnosis_type)||[],Ae.value=(e==null?void 0:e.syndrome_type)||[],Ge.value=(f==null?void 0:f.diabetes_type)||[],ne.value=(_==null?void 0:_.past_history)||[],se.value=(c==null?void 0:c.appetite)||[],re.value=(s==null?void 0:s.water_intake)||[],ue.value=(m==null?void 0:m.diet_condition)||[],pe.value=(v==null?void 0:v.weight_change)||[],me.value=(T==null?void 0:T.body_feeling)||[],_e.value=(O==null?void 0:O.sleep_condition)||[],fe.value=(I==null?void 0:I.eye_condition)||[],ge.value=($==null?void 0:$.head_feeling)||[],ce.value=(S==null?void 0:S.sweat_condition)||[],ve.value=(q==null?void 0:q.skin_condition)||[],ye.value=(V==null?void 0:V.urine_condition)||[],be.value=(w==null?void 0:w.stool_condition)||[],Ve.value=(y==null?void 0:y.kidney_condition)||[],ke.value=(Y==null?void 0:Y.fatty_liver_degree)||[]}catch(n){console.error("获取字典数据失败:",n)}};async function we(n){const e=await Oe({id:n});N.value=e.phone||"",B.value=e.id_card||"",e.phone=M.value?e.phone||"":G(e.phone||""),e.id_card=le(e.id_card||""),l.value=e;const f=e.diabetes_discovery_year;l.value.diabetes_discovery_year=f==null||f===""?"":String(f)}const He=async(n,e)=>{var f;if(E.value=!1,D.value=n,z.value=!0,b.value="basic",F.value=!1,await he(),n==="edit"&&e)await we(e);else if(n==="add"){const _=Ul();l.value.assistant_id=((f=_.userInfo)==null?void 0:f.id)||"",l.value.diagnosis_type="follow_up"}},Je=async n=>{n&&(E.value=!0,D.value="edit",z.value=!0,b.value="basic",F.value=!1,await he(),await we(n))},Qe=async()=>{var n;if(!E.value){await((n=j.value)==null?void 0:n.validate()),K.value=!0;try{const e={...l.value,phone:N.value||l.value.phone,id_card:B.value||l.value.id_card};if(D.value==="add"){const f=await hl(e);if(f&&f.id){D.value="edit",F.value=!1,l.value.id=f.id;try{const _=await Oe({id:f.id});l.value.patient_id=_.patient_id,N.value=_.phone||"",B.value=_.id_card||"",l.value.phone=M.value?_.phone||"":G(_.phone||""),l.value.id_card=le(_.id_card||"")}catch(_){console.error("获取详情失败:",_)}}}else await wl(e);Ce("success")}catch(e){console.error("提交失败:",e)}finally{K.value=!1}}},Xe=n=>{var e;(e=X.value)==null||e.openById(n.id)},je=()=>{var e;if(E.value)return;const n={id:l.value.id,diagnosis_id:l.value.id,appointment_id:0,patient_name:l.value.patient_name,patient_phone:N.value||l.value.phone,patient_gender:l.value.gender,patient_age:l.value.age,case_record:JSON.parse(JSON.stringify(l.value))};(e=X.value)==null||e.open(n)},xe=()=>{var n;(n=j.value)==null||n.resetFields(),l.value={id:"",patient_id:"",patient_name:"",id_card:"",phone:"",gender:1,age:void 0,diagnosis_date:"",diagnosis_type:"",syndrome_type:"",diabetes_type:"",diabetes_discovery_year:"",local_hospital_diagnosis:[],local_hospital_name:"",marital_status:void 0,height:void 0,weight:void 0,region:"",systolic_pressure:void 0,diastolic_pressure:void 0,fasting_blood_sugar:"",appetite:[],water_intake:"",diet_condition:[],weight_change:"",body_feeling:[],sleep_condition:[],eye_condition:[],head_feeling:[],sweat_condition:[],skin_condition:[],urine_condition:[],stool_condition:[],kidney_condition:[],fatty_liver_degree:"",past_history:[],trauma_history:0,surgery_history:0,allergy_history:0,family_history:0,pregnancy_history:0,assistant_id:void 0,symptoms:"",tongue_coating:"",pulse:"",treatment_principle:"",prescription:"",doctor_advice:"",remark:"",current_medications:"",status:1,external_userid:""},N.value="",B.value="",Z.value=!1,ee.value=!1,F.value=!1,E.value=!1,z.value=!1};return De({open:He,openViewOnly:Je,refreshCaseList:()=>{var n,e;return(e=(n=Q.value)==null?void 0:n.refresh)==null?void 0:e.call(n)}}),(n,e)=>{const f=yl,_=al,c=ol,s=tl,m=dl,v=il,T=sl,O=nl,I=rl,$=pl,S=ul,q=ml,V=fl,w=_l,y=gl,Y=ll,C=el,L=cl,Ke=Ze,Ue=vl,We=bl;return d(),g("div",$l,[o(We,{modelValue:t(z),"onUpdate:modelValue":e[44]||(e[44]=i=>Re(z)?z.value=i:null),size:"60%","before-close":xe,"z-index":t(E)?4e3:1500,modal:!0,class:"diagnosis-drawer tcm-diagnosis-drawer"},{header:a(()=>[A("div",Ll,[A("div",Sl,[A("h2",Ml,k(t(Be)),1),t(E)?(d(),u(f,{key:0,type:"info",effect:"plain",round:"",size:"small",class:"tcm-dd-header__badge"},{default:a(()=>[...e[45]||(e[45]=[r(" 只读 ",-1)])]),_:1})):t(D)==="add"?(d(),u(f,{key:1,type:"success",effect:"plain",round:"",size:"small",class:"tcm-dd-header__badge"},{default:a(()=>[...e[46]||(e[46]=[r(" 新建 ",-1)])]),_:1})):(d(),u(f,{key:2,type:"warning",effect:"plain",round:"",size:"small",class:"tcm-dd-header__badge"},{default:a(()=>[...e[47]||(e[47]=[r(" 编辑 ",-1)])]),_:1}))]),t(l).patient_name||t(l).id?(d(),g("p",ql,[t(l).patient_name?(d(),g("span",Yl,k(t(l).patient_name),1)):R("",!0),t(l).id?(d(),g("span",Al,[t(l).patient_name?(d(),g("span",Gl,"·")):R("",!0),r(" 诊单 "+k(t(l).patient_id||t(l).id),1)])):R("",!0)])):R("",!0)])]),footer:a(()=>[A("div",jl,[o(Ue,{class:"tcm-dd-footer__btn",onClick:xe},{default:a(()=>[r(k(t(E)?"关闭":"取消"),1)]),_:1}),!t(E)&&t(b)==="basic"?(d(),u(Ue,{key:0,class:"tcm-dd-footer__btn",type:"primary",onClick:Qe,loading:t(K)},{default:a(()=>[...e[75]||(e[75]=[r(" 保存病历 ",-1)])]),_:1},8,["loading"])):R("",!0)])]),default:a(()=>[o(Ke,{modelValue:t(b),"onUpdate:modelValue":e[42]||(e[42]=i=>Re(b)?b.value=i:null),class:"diagnosis-tabs tcm-diagnosis-tabs"},{default:a(()=>[o(C,{label:"病历",name:"basic"},{default:a(()=>[o(Y,{ref_key:"formRef",ref:j,model:t(l),rules:Ye,"label-width":"160px"},{default:a(()=>[A("fieldset",{disabled:t(E),class:"diagnosis-view-fieldset border-0 min-w-0 p-0 m-0"},[o(_,{"content-position":"left"},{default:a(()=>[...e[48]||(e[48]=[r("基本信息",-1)])]),_:1}),o(s,{label:"诊单ID"},{default:a(()=>[o(c,{modelValue:t(l).patient_id,"onUpdate:modelValue":e[0]||(e[0]=i=>t(l).patient_id=i),disabled:"",placeholder:"系统自动生成"},null,8,["modelValue"])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"姓名",prop:"patient_name"},{default:a(()=>[o(c,{modelValue:t(l).patient_name,"onUpdate:modelValue":e[1]||(e[1]=i=>t(l).patient_name=i),placeholder:"请输入姓名"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"身份证号",prop:"id_card"},{default:a(()=>[o(c,{modelValue:t(l).id_card,"onUpdate:modelValue":e[2]||(e[2]=i=>t(l).id_card=i),placeholder:"请输入身份证号",maxlength:"18",onFocus:Me,onBlur:qe},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"手机号",prop:"phone"},{default:a(()=>[t(Fe)?(d(),g(x,{key:0},[o(c,{"model-value":t(F)?t(N)||"":G(t(N)||""),readonly:"",placeholder:"点击可查看完整手机号",maxlength:"11",class:"cursor-pointer phone-mask-toggle",onClick:$e},null,8,["model-value"]),t(N)&&!t(F)?(d(),g("p",Jl," 当前为脱敏显示,点击输入框可查看完整号码 ")):R("",!0)],64)):(d(),u(c,{key:1,modelValue:t(l).phone,"onUpdate:modelValue":e[3]||(e[3]=i=>t(l).phone=i),placeholder:"请输入手机号",maxlength:"11",onFocus:Le,onBlur:Se},null,8,["modelValue"]))]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"性别",prop:"gender"},{default:a(()=>[o(O,{modelValue:t(l).gender,"onUpdate:modelValue":e[4]||(e[4]=i=>t(l).gender=i)},{default:a(()=>[o(T,{label:1},{default:a(()=>[...e[49]||(e[49]=[r("男",-1)])]),_:1}),o(T,{label:0},{default:a(()=>[...e[50]||(e[50]=[r("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"年龄",prop:"age"},{default:a(()=>[o(I,{modelValue:t(l).age,"onUpdate:modelValue":e[5]||(e[5]=i=>t(l).age=i),min:0,max:150,placeholder:"请输入年龄",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[51]||(e[51]=[r("生命体征",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"婚姻状态",prop:"marital_status"},{default:a(()=>[o(S,{modelValue:t(l).marital_status,"onUpdate:modelValue":e[6]||(e[6]=i=>t(l).marital_status=i),placeholder:"请选择婚姻状态",class:"w-full","popper-options":{strategy:"fixed"},"popper-class":"high-z-index"},{default:a(()=>[o($,{label:"未婚",value:0}),o($,{label:"已婚",value:1}),o($,{label:"离异",value:2})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"就诊人身高(cm)",prop:"height"},{default:a(()=>[o(I,{modelValue:t(l).height,"onUpdate:modelValue":e[7]||(e[7]=i=>t(l).height=i),min:0,max:300,placeholder:"请输入身高",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"体重(kg)",prop:"weight"},{default:a(()=>[o(I,{modelValue:t(l).weight,"onUpdate:modelValue":e[8]||(e[8]=i=>t(l).weight=i),min:0,max:500,step:.1,placeholder:"请输入体重",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"地区",prop:"region"},{default:a(()=>[o(c,{modelValue:t(l).region,"onUpdate:modelValue":e[9]||(e[9]=i=>t(l).region=i),placeholder:"请输入地区"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"就诊人血压(高压mmHg)",prop:"systolic_pressure"},{default:a(()=>[o(I,{modelValue:t(l).systolic_pressure,"onUpdate:modelValue":e[10]||(e[10]=i=>t(l).systolic_pressure=i),min:0,max:250,placeholder:"请输入高压",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"就诊人血压(低压mmHg)",prop:"diastolic_pressure"},{default:a(()=>[o(I,{modelValue:t(l).diastolic_pressure,"onUpdate:modelValue":e[11]||(e[11]=i=>t(l).diastolic_pressure=i),min:0,max:150,placeholder:"请输入低压",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"空腹血糖(mmol/L)",prop:"fasting_blood_sugar"},{default:a(()=>[o(c,{modelValue:t(l).fasting_blood_sugar,"onUpdate:modelValue":e[12]||(e[12]=i=>t(l).fasting_blood_sugar=i),placeholder:"请输入空腹血糖,如:8.5 或 8-9",maxlength:"20",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"诊断类型",prop:"diagnosis_type"},{default:a(()=>[o(S,{modelValue:t(l).diagnosis_type,"onUpdate:modelValue":e[13]||(e[13]=i=>t(l).diagnosis_type=i),placeholder:"请选择诊断类型",class:"w-full","popper-options":{strategy:"fixed"},"popper-class":"high-z-index"},{default:a(()=>[(d(!0),g(x,null,U(t(de),i=>(d(),u($,{key:i.value,label:i.name,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"状态",prop:"status"},{default:a(()=>[o(O,{modelValue:t(l).status,"onUpdate:modelValue":e[14]||(e[14]=i=>t(l).status=i)},{default:a(()=>[o(T,{label:1},{default:a(()=>[...e[52]||(e[52]=[r("启用",-1)])]),_:1}),o(T,{label:0},{default:a(()=>[...e[53]||(e[53]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"在用药物",prop:"current_medications"},{default:a(()=>[o(c,{modelValue:t(l).current_medications,"onUpdate:modelValue":e[15]||(e[15]=i=>t(l).current_medications=i),type:"textarea",rows:3,placeholder:"请填写患者当前正在使用的药物(如降压药、降糖药等),多种请换行或顿号分隔",maxlength:"2000","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[54]||(e[54]=[r("主诉",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"当地医院诊断日期",prop:"diagnosis_date"},{default:a(()=>[o(q,{modelValue:t(l).diagnosis_date,"onUpdate:modelValue":e[16]||(e[16]=i=>t(l).diagnosis_date=i),type:"date",placeholder:"请选择诊断日期","value-format":"YYYY-MM-DD",class:"w-full","popper-options":{strategy:"fixed"},"popper-class":"high-z-index"},null,8,["modelValue"])]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"发现糖尿病患病史",prop:"diabetes_discovery_year"},{default:a(()=>[o(c,{modelValue:t(l).diabetes_discovery_year,"onUpdate:modelValue":e[17]||(e[17]=i=>t(l).diabetes_discovery_year=i),clearable:"",maxlength:"50","show-word-limit":"",placeholder:"可填数字或文字,如:5、1年、半年",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(s,{label:"当地医院诊断结果",prop:"local_hospital_diagnosis",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).local_hospital_diagnosis,"onUpdate:modelValue":e[18]||(e[18]=i=>t(l).local_hospital_diagnosis=i)},{default:a(()=>[o(V,{label:"糖尿病"},{default:a(()=>[...e[55]||(e[55]=[r("糖尿病",-1)])]),_:1}),o(V,{label:"消渴病"},{default:a(()=>[...e[56]||(e[56]=[r("消渴病",-1)])]),_:1}),o(V,{label:"糖尿病前期"},{default:a(()=>[...e[57]||(e[57]=[r("糖尿病前期",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"当地就诊医院名称",prop:"local_hospital_name"},{default:a(()=>[o(c,{modelValue:t(l).local_hospital_name,"onUpdate:modelValue":e[19]||(e[19]=i=>t(l).local_hospital_name=i),placeholder:"请输入当地就诊医院名称(不能填写当地、本地、互联网等关键词)"},null,8,["modelValue"])]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[58]||(e[58]=[r("现病史",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(s,{label:"口腔感觉",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).appetite,"onUpdate:modelValue":e[20]||(e[20]=i=>t(l).appetite=i)},{default:a(()=>[(d(!0),g(x,null,U(t(se),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:20},{default:a(()=>[o(s,{label:"每日饮水量",class:"compact-form-item"},{default:a(()=>[o(O,{modelValue:t(l).water_intake,"onUpdate:modelValue":e[21]||(e[21]=i=>t(l).water_intake=i)},{default:a(()=>[o(y,{label:""},{default:a(()=>[...e[59]||(e[59]=[r("无",-1)])]),_:1}),(d(!0),g(x,null,U(t(re),i=>(d(),u(y,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"近一个月体重变化",class:"compact-form-item"},{default:a(()=>[o(O,{modelValue:t(l).weight_change,"onUpdate:modelValue":e[22]||(e[22]=i=>t(l).weight_change=i)},{default:a(()=>[o(y,{label:""},{default:a(()=>[...e[60]||(e[60]=[r("无",-1)])]),_:1}),(d(!0),g(x,null,U(t(pe),i=>(d(),u(y,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"脂肪肝程度",class:"compact-form-item"},{default:a(()=>[o(O,{modelValue:t(l).fatty_liver_degree,"onUpdate:modelValue":e[23]||(e[23]=i=>t(l).fatty_liver_degree=i)},{default:a(()=>[o(y,{label:""},{default:a(()=>[...e[61]||(e[61]=[r("无",-1)])]),_:1}),(d(!0),g(x,null,U(t(ke),i=>(d(),u(y,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(s,{label:"饮食情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).diet_condition,"onUpdate:modelValue":e[24]||(e[24]=i=>t(l).diet_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ue),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"肢体感觉",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).body_feeling,"onUpdate:modelValue":e[25]||(e[25]=i=>t(l).body_feeling=i)},{default:a(()=>[(d(!0),g(x,null,U(t(me),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"睡眠情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).sleep_condition,"onUpdate:modelValue":e[26]||(e[26]=i=>t(l).sleep_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(_e),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"眼睛情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).eye_condition,"onUpdate:modelValue":e[27]||(e[27]=i=>t(l).eye_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(fe),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"头部感觉",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).head_feeling,"onUpdate:modelValue":e[28]||(e[28]=i=>t(l).head_feeling=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ge),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"出汗情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).sweat_condition,"onUpdate:modelValue":e[29]||(e[29]=i=>t(l).sweat_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ce),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"皮肤情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).skin_condition,"onUpdate:modelValue":e[30]||(e[30]=i=>t(l).skin_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ve),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"小便情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).urine_condition,"onUpdate:modelValue":e[31]||(e[31]=i=>t(l).urine_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ye),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"大便情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).stool_condition,"onUpdate:modelValue":e[32]||(e[32]=i=>t(l).stool_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(be),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"腰肾情况",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).kidney_condition,"onUpdate:modelValue":e[33]||(e[33]=i=>t(l).kidney_condition=i)},{default:a(()=>[(d(!0),g(x,null,U(t(Ve),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"其他补充",prop:"symptoms"},{default:a(()=>[o(c,{modelValue:t(l).symptoms,"onUpdate:modelValue":e[34]||(e[34]=i=>t(l).symptoms=i),type:"textarea",rows:3,placeholder:"请输入症状"},null,8,["modelValue"])]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[62]||(e[62]=[r("既往史",-1)])]),_:1}),o(s,{label:"",prop:"past_history",class:"checkbox-form-item"},{default:a(()=>[o(w,{modelValue:t(l).past_history,"onUpdate:modelValue":e[35]||(e[35]=i=>t(l).past_history=i)},{default:a(()=>[(d(!0),g(x,null,U(t(ne),i=>(d(),u(V,{key:i.value,label:i.value},{default:a(()=>[r(k(i.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[63]||(e[63]=[r("其他病史",-1)])]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:8},{default:a(()=>[o(s,{label:"外伤史"},{default:a(()=>[o(O,{modelValue:t(l).trauma_history,"onUpdate:modelValue":e[36]||(e[36]=i=>t(l).trauma_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[64]||(e[64]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[65]||(e[65]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"手术史"},{default:a(()=>[o(O,{modelValue:t(l).surgery_history,"onUpdate:modelValue":e[37]||(e[37]=i=>t(l).surgery_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[66]||(e[66]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[67]||(e[67]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:8},{default:a(()=>[o(s,{label:"过敏史"},{default:a(()=>[o(O,{modelValue:t(l).allergy_history,"onUpdate:modelValue":e[38]||(e[38]=i=>t(l).allergy_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[68]||(e[68]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[69]||(e[69]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(v,{gutter:20},{default:a(()=>[o(m,{span:12},{default:a(()=>[o(s,{label:"家族病史"},{default:a(()=>[o(O,{modelValue:t(l).family_history,"onUpdate:modelValue":e[39]||(e[39]=i=>t(l).family_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[70]||(e[70]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[71]||(e[71]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(m,{span:12},{default:a(()=>[o(s,{label:"妊娠哺乳史"},{default:a(()=>[o(O,{modelValue:t(l).pregnancy_history,"onUpdate:modelValue":e[40]||(e[40]=i=>t(l).pregnancy_history=i)},{default:a(()=>[o(y,{label:1},{default:a(()=>[...e[72]||(e[72]=[r("有",-1)])]),_:1}),o(y,{label:0},{default:a(()=>[...e[73]||(e[73]=[r("无",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(_,{"content-position":"left"},{default:a(()=>[...e[74]||(e[74]=[r("诊断信息",-1)])]),_:1}),o(s,{label:"病史补充",prop:"remark"},{default:a(()=>[o(c,{modelValue:t(l).remark,"onUpdate:modelValue":e[41]||(e[41]=i=>t(l).remark=i),type:"textarea",rows:2,placeholder:"请输入病史补充"},null,8,["modelValue"])]),_:1})],8,Hl)]),_:1},8,["model"])]),_:1}),o(C,{label:"医生备注",name:"doctorNote",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),g("div",Ql,[o(Cl,{notes:t(W),"diagnosis-id":Number(t(l).id),readonly:t(E),onRefresh:oe},null,8,["notes","diagnosis-id","readonly"])])):(d(),u(L,{key:1,description:"请先保存诊单后查看"}))]),_:1},8,["disabled"]),t(te)?(d(),u(C,{key:0,label:"日常记录",name:"daily",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(El,{key:0,"diagnosis-id":Number(t(l).id),"patient-id":Number(t(l).patient_id),age:t(l).age,"patient-name":t(l).patient_name,"read-only":t(E)},null,8,["diagnosis-id","patient-id","age","patient-name","read-only"])):(d(),u(L,{key:1,description:"请先保存诊单后查看"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/chufang"])?(d(),u(C,{key:1,label:"处方",name:"bingli",disabled:!t(l).id},{default:a(()=>[t(l).id?(d(),g("div",Xl,[o(Ol,{ref_key:"caseRecordListRef",ref:Q,"diagnosis-id":Number(t(l).id),"read-only":t(E),onView:Xe,onOpenPrescription:je},null,8,["diagnosis-id","read-only"])])):(d(),u(L,{key:1,description:"请先保存诊单,开方后病历将在此显示"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/patientOrders"])?(d(),u(C,{key:2,label:"业务订单",name:"patientOrders",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(zl,{key:0,"diagnosis-id":Number(t(l).id),"patient-id":Number(t(l).patient_id)||0},null,8,["diagnosis-id","patient-id"])):(d(),u(L,{key:1,description:"请先保存诊单后查看业务订单"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/huifang"])?(d(),u(C,{key:3,label:"视频录制回放记录",name:"visit",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(Pl,{key:0,ref_key:"callRecordPanelRef",ref:ze,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):(d(),u(L,{key:1,description:"请先保存诊单后再查看视频录制回放记录"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/chat"])?(d(),u(C,{key:4,label:"聊天记录",name:"chat",disabled:!t(l).id,lazy:""},{default:a(()=>[t(b)==="chat"&&t(l).id?(d(),u(Rl,{key:0,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):t(l).id?R("",!0):(d(),u(L,{key:1,description:"请先保存诊单后再查看聊天记录"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["tcm.diagnosis/assign"])||t(P)(["tcm.diagnosis/detail"])?(d(),u(C,{key:5,label:"指派医助记录",name:"assignLog",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(Dl,{key:0,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):(d(),u(L,{key:1,description:"请先保存诊单后再查看指派记录"}))]),_:1},8,["disabled"])):R("",!0),t(P)(["doctor.appointment/lists"])?(d(),u(C,{key:6,label:"挂号记录",name:"appointmentRecords",disabled:!t(l).id,lazy:""},{default:a(()=>[t(l).id?(d(),u(Il,{key:0,"diagnosis-id":Number(t(l).id)},null,8,["diagnosis-id"])):(d(),u(L,{key:1,description:"请先保存诊单后再查看挂号记录"}))]),_:1},8,["disabled"])):R("",!0)]),_:1},8,["modelValue"]),o(Fl,{ref_key:"prescriptionRef",ref:X,onSuccess:e[43]||(e[43]=i=>{var H,Ne;return(Ne=(H=t(Q))==null?void 0:H.refresh)==null?void 0:Ne.call(H)})},null,512)]),_:1},8,["modelValue","z-index"])])}}}),xt=Nl(Kl,[["__scopeId","data-v-4d5cecd1"]]);export{xt as default}; diff --git a/server/public/admin/assets/edit-CABP8P7N.js b/server/public/admin/assets/edit-ZxXJUj0T.js similarity index 77% rename from server/public/admin/assets/edit-CABP8P7N.js rename to server/public/admin/assets/edit-ZxXJUj0T.js index 06d88054..d67dd210 100644 --- a/server/public/admin/assets/edit-CABP8P7N.js +++ b/server/public/admin/assets/edit-ZxXJUj0T.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-mezlrvEI.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./role-Dce31LXP.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./dict-DnKASfBm.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-8GAClaG6.js b/server/public/admin/assets/edit-lTigZ_qg.js similarity index 82% rename from server/public/admin/assets/edit-8GAClaG6.js rename to server/public/admin/assets/edit-lTigZ_qg.js index afc4d355..8638a2f1 100644 --- a/server/public/admin/assets/edit-8GAClaG6.js +++ b/server/public/admin/assets/edit-lTigZ_qg.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-CCRvmlU6.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./menu-Dcx2e7zx.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./menu-Da1RBBpC.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit-lUrEdFe-.js b/server/public/admin/assets/edit-mXenLf8p.js similarity index 97% rename from server/public/admin/assets/edit-lUrEdFe-.js rename to server/public/admin/assets/edit-mXenLf8p.js index 10c1b78b..3ec89e8e 100644 --- a/server/public/admin/assets/edit-lUrEdFe-.js +++ b/server/public/admin/assets/edit-mXenLf8p.js @@ -1 +1 @@ -import{_ as ye}from"./index-DbiC_Mh1.js";import{O as ge,J as ke,D as Ue,m as we,l as Ee,B as qe,C as xe,M as Ce,N as De,H as Ae,P as Re,Q as $e,G as Ie,I as Te,W as Ne,i as Be}from"./element-plus-DFTWCWyi.js";import{f as j,ak as p,I as v,F as q,ap as D,A as Y,a as l,aN as t,J as u,G as w,O as f,H,n as Oe,w as Pe}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Z}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as C,n as E,r as h,q as ee,t as le}from"./@vue/reactivity-DiY1c2vO.js";import{c as Se,i as ae,_ as Fe}from"./index-Nt5zMHcc.js";import{l as te}from"./lodash-D3kF6u-c.js";import{m as Le}from"./menu-Dcx2e7zx.js";import{d as Qe}from"./dict-BN4CTMA_.js";import{t as Ge,g as He}from"./code-C9qHBHs_.js";import{u as je}from"./useDictOptions-CT8hbU1b.js";import{_ as ze}from"./relations-add.vue_vue_type_script_setup_true_lang-Dd5lfrrN.js";import{u as Je,a as We}from"./vue-router-QlpZ4wdW.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const Ke=j({__name:"index",props:{options:{default:()=>[]},value:{},config:{default:()=>({label:"name",value:"value"})}},setup(P){const c=P,S=Y(()=>c.value!==null&&typeof c.value<"u"?Array.isArray(c.value)?c.value:String(c.value).split(","):[]),A=Y(()=>c.options.filter(x=>S.value.includes(x[c.config.value])));return(x,F)=>(p(),v("div",null,[(p(!0),v(q,null,D(n(A),(o,g)=>(p(),v("span",{key:g},Z(g!=0?"、":"")+Z(o[P.config.label]),1))),128))]))}}),Me={class:"code-edit"},Xe={class:"w-80"},Ye={class:"w-80"},Ze={class:"w-80"},he={class:"w-80"},el={class:"header-checkbox"},ll={class:"header-checkbox"},al={class:"header-checkbox"},tl={class:"header-checkbox"},ol={class:"header-checkbox"},nl={class:"w-80"},ul={class:"w-80"},dl={class:"w-80"},sl={class:"w-80"},ml={class:"mt-4"},rl=j({name:"tableEdit"}),il=j({...rl,setup(P){const c=Je(),S=We(),A=E("column"),x=E(!1),F=[{name:"一对一",value:"has_one"},{name:"一对多",value:"has_many"}],o=h({id:"",table_name:"",table_comment:"",author:"",remark:"",template_type:0,generate_type:0,module_name:"",class_dir:"",class_comment:"",table_column:[],menu:{pid:0,name:"",type:0},tree:{tree_id:0,tree_pid:0,tree_name:0},delete:{name:"",type:0},relations:[]}),g=E(!1),R=E(!1),$=E(!1),I=E(!1),T=E(!1),oe=()=>{o.table_column.forEach(d=>{d.is_required=g.value?1:0})},ne=()=>{o.table_column.forEach(d=>{d.is_insert=R.value?1:0})},ue=()=>{o.table_column.forEach(d=>{d.is_update=$.value?1:0})},de=()=>{o.table_column.forEach(d=>{d.is_lists=I.value?1:0})},se=()=>{o.table_column.forEach(d=>{d.is_query=T.value?1:0})};let L=0;const z=ee(),Q=ee(),J=h({table_name:[{required:!0,message:"请输入表名称"}],table_comment:[{required:!0,message:"请输入表描述"}],module_name:[{required:!0,message:"请输入模块名"}],generate_type:[{required:!0,trigger:"change"}],template_type:[{required:!0,trigger:"change"}],"menu.pid":[{required:!0,message:"请选择父级菜单"}],"menu.name":[{required:!0,message:"请输入菜单名称"}],"delete.type":[{required:!0,trigger:"change"}],"delete.name":[{required:!0,message:"请选择删除字段"}]}),W=async(d,e,k)=>{var V,_;x.value=!0,await Oe(),e&&k!==void 0&&((V=Q.value)==null||V.setFormData(e),L=k),(_=Q.value)==null||_.open(d)},me=d=>{const e=te.cloneDeep(le(d));o.relations.push(e)},re=async d=>{const e=te.cloneDeep(le(d));console.log(L),o.relations.splice(L,1,e)},ie=d=>{o.relations.splice(d,1)},pe=async()=>{const d=await Ge({id:c.query.id});Object.keys(o).forEach(e=>{o[e]=d[e]}),Pe(()=>o.generate_type,e=>{e==1&&ae.confirm("生成到模块方式如遇同名文件会覆盖旧文件,确定要选择此方式吗?").catch(()=>{o.generate_type=0})})},{optionsData:K}=je({dict_type:{api:Qe},menu:{api:Le,transformData(d){const e={id:0,name:"顶级",children:[]};return e.children=d,[e]}}}),_e=async()=>{var d,e;try{await((d=z.value)==null?void 0:d.validate()),await He(o),S.back()}catch(k){for(const V in k)Object.keys(J).includes(V)&&ae.msgError((e=k[V][0])==null?void 0:e.message)}};return pe(),(d,e)=>{const k=ge,V=ke,_=xe,r=qe,N=Ee,i=De,b=Ae,m=$e,U=Re,M=Ce,y=Te,B=Ie,fe=Ne,be=Se,O=Be,X=Ke,ve=we,ce=Ue,Ve=ye;return p(),v("div",Me,[l(V,{class:"!border-none",shadow:"never"},{default:t(()=>[l(k,{content:"编辑数据表",onBack:e[0]||(e[0]=a=>d.$router.back())})]),_:1}),l(V,{class:"mt-4 !border-none",shadow:"never"},{default:t(()=>[l(ce,{ref_key:"formRef",ref:z,class:"ls-form",model:n(o),"label-width":"100px",rules:n(J)},{default:t(()=>[l(ve,{modelValue:n(A),"onUpdate:modelValue":e[25]||(e[25]=a=>C(A)?A.value=a:null)},{default:t(()=>[l(N,{label:"基础信息",name:"base"},{default:t(()=>[l(r,{label:"表名称",prop:"table_name"},{default:t(()=>[u("div",Xe,[l(_,{modelValue:n(o).table_name,"onUpdate:modelValue":e[1]||(e[1]=a=>n(o).table_name=a),placeholder:"请输入表名称",clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"表描述",prop:"table_comment"},{default:t(()=>[u("div",Ye,[l(_,{modelValue:n(o).table_comment,"onUpdate:modelValue":e[2]||(e[2]=a=>n(o).table_comment=a),placeholder:"请输入表描述",clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"作者"},{default:t(()=>[u("div",Ze,[l(_,{modelValue:n(o).author,"onUpdate:modelValue":e[3]||(e[3]=a=>n(o).author=a),clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"备注"},{default:t(()=>[u("div",he,[l(_,{modelValue:n(o).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>n(o).remark=a),class:"w-full",type:"textarea",autosize:{minRows:4,maxRows:4},maxlength:"200","show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1})]),_:1}),l(N,{label:"字段管理",name:"column"},{default:t(()=>[l(M,{data:n(o).table_column},{default:t(()=>[l(i,{label:"字段列名",prop:"column_name"}),l(i,{label:"字段描述",prop:"column_comment","min-width":"120"},{default:t(({row:a})=>[l(_,{modelValue:a.column_comment,"onUpdate:modelValue":s=>a.column_comment=s,clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"物理类型",prop:"column_type"}),l(i,{label:"必填",width:"80"},{header:t(()=>[u("div",el,[l(b,{modelValue:n(g),"onUpdate:modelValue":e[5]||(e[5]=a=>C(g)?g.value=a:null),onChange:oe},null,8,["modelValue"]),e[26]||(e[26]=u("span",null,"必填",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_required,"onUpdate:modelValue":s=>a.is_required=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"插入",width:"80"},{header:t(()=>[u("div",ll,[l(b,{modelValue:n(R),"onUpdate:modelValue":e[6]||(e[6]=a=>C(R)?R.value=a:null),onChange:ne},null,8,["modelValue"]),e[27]||(e[27]=u("span",null,"插入",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_insert,"onUpdate:modelValue":s=>a.is_insert=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"编辑",width:"80"},{header:t(()=>[u("div",al,[l(b,{modelValue:n($),"onUpdate:modelValue":e[7]||(e[7]=a=>C($)?$.value=a:null),onChange:ue},null,8,["modelValue"]),e[28]||(e[28]=u("span",null,"编辑",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_update,"onUpdate:modelValue":s=>a.is_update=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"列表",width:"80"},{header:t(()=>[u("div",tl,[l(b,{modelValue:n(I),"onUpdate:modelValue":e[8]||(e[8]=a=>C(I)?I.value=a:null),onChange:de},null,8,["modelValue"]),e[29]||(e[29]=u("span",null,"列表",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_lists,"onUpdate:modelValue":s=>a.is_lists=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"查询",width:"80"},{header:t(()=>[u("div",ol,[l(b,{modelValue:n(T),"onUpdate:modelValue":e[9]||(e[9]=a=>C(T)?T.value=a:null),onChange:se},null,8,["modelValue"]),e[30]||(e[30]=u("span",null,"查询",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_query,"onUpdate:modelValue":s=>a.is_query=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"查询方式"},{default:t(({row:a})=>[l(U,{modelValue:a.query_type,"onUpdate:modelValue":s=>a.query_type=s},{default:t(()=>[l(m,{label:"=",value:"="}),l(m,{label:"!=",value:"!="}),l(m,{label:">",value:">"}),l(m,{label:">=",value:">="}),l(m,{label:"<",value:"<"}),l(m,{label:"<=",value:"<="}),l(m,{label:"LIKE",value:"like"}),l(m,{label:"BETWEEN",value:"between"})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"显示类型","min-width":"120"},{default:t(({row:a})=>[l(U,{modelValue:a.view_type,"onUpdate:modelValue":s=>a.view_type=s},{default:t(()=>[l(m,{label:"文本框",value:"input"}),l(m,{label:"文本域",value:"textarea"}),l(m,{label:"下拉框",value:"select"}),l(m,{label:"单选框",value:"radio"}),l(m,{label:"复选框",value:"checkbox"}),l(m,{label:"日期控件",value:"datetime"}),l(m,{label:"图片选择控件",value:"imageSelect"}),l(m,{label:"富文本控件",value:"editor"})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"字典类型","min-width":"120"},{default:t(({row:a})=>[l(U,{modelValue:a.dict_type,"onUpdate:modelValue":s=>a.dict_type=s,clearable:"",disabled:!(a.view_type=="select"||a.view_type=="radio"||a.view_type=="checkbox"),placeholder:"字典类型"},{default:t(()=>[(p(!0),v(q,null,D(n(K).dict_type,(s,G)=>(p(),w(m,{key:G,label:s.name,value:s.type,disabled:!s.status},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue","disabled"])]),_:1})]),_:1},8,["data"])]),_:1}),l(N,{label:"生成配置",name:"config"},{default:t(()=>[l(r,{label:"模板类型",prop:"template_type"},{default:t(()=>[l(B,{modelValue:n(o).template_type,"onUpdate:modelValue":e[10]||(e[10]=a=>n(o).template_type=a)},{default:t(()=>[l(y,{value:0},{default:t(()=>[...e[31]||(e[31]=[f("单表(curd)",-1)])]),_:1}),l(y,{value:1},{default:t(()=>[...e[32]||(e[32]=[f("树表(curd)",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"删除类型",prop:"delete.type"},{default:t(()=>[l(B,{modelValue:n(o).delete.type,"onUpdate:modelValue":e[11]||(e[11]=a=>n(o).delete.type=a)},{default:t(()=>[l(y,{value:0},{default:t(()=>[...e[33]||(e[33]=[f("物理删除",-1)])]),_:1}),l(y,{value:1},{default:t(()=>[...e[34]||(e[34]=[f("软删除",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),n(o).delete.type==1?(p(),w(r,{key:0,label:"删除字段",prop:"delete.name"},{default:t(()=>[l(U,{class:"w-80",modelValue:n(o).delete.name,"onUpdate:modelValue":e[12]||(e[12]=a=>n(o).delete.name=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"])]),_:1})):H("",!0),n(o).template_type==1?(p(),v(q,{key:1},[l(r,{label:"树表ID",prop:"treePrimary"},{default:t(()=>[u("div",null,[l(U,{class:"w-80",modelValue:n(o).tree.tree_id,"onUpdate:modelValue":e[13]||(e[13]=a=>n(o).tree.tree_id=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"]),e[35]||(e[35]=u("div",{class:"form-tips"},"指定树表的主要ID,一般为主键",-1))])]),_:1}),l(r,{label:"树表父ID",prop:"treeParent"},{default:t(()=>[u("div",null,[l(U,{class:"w-80",modelValue:n(o).tree.tree_pid,"onUpdate:modelValue":e[14]||(e[14]=a=>n(o).tree.tree_pid=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"]),e[36]||(e[36]=u("div",{class:"form-tips"},"指定树表的父ID,比如:parent_id",-1))])]),_:1}),l(r,{label:"树名称",prop:"treeName"},{default:t(()=>[l(U,{class:"w-80",modelValue:n(o).tree.tree_name,"onUpdate:modelValue":e[15]||(e[15]=a=>n(o).tree.tree_name=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"])]),_:1})],64)):H("",!0),l(r,{label:"类描述"},{default:t(()=>[u("div",nl,[u("div",null,[l(_,{modelValue:n(o).class_comment,"onUpdate:modelValue":e[16]||(e[16]=a=>n(o).class_comment=a),placeholder:"请输入文件描述",clearable:""},null,8,["modelValue"])]),e[37]||(e[37]=u("div",{class:"form-tips"},[u("div",null," 例:填写test,生成文件描述为test控制器(test逻辑/test模型) ")],-1))])]),_:1}),l(r,{label:"生成方式",prop:"generate_type"},{default:t(()=>[l(B,{modelValue:n(o).generate_type,"onUpdate:modelValue":e[17]||(e[17]=a=>n(o).generate_type=a)},{default:t(()=>[l(y,{value:0},{default:t(()=>[...e[38]||(e[38]=[f("压缩包下载",-1)])]),_:1}),l(y,{value:1},{default:t(()=>[...e[39]||(e[39]=[f("生成到模块",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"模块名",prop:"module_name"},{default:t(()=>[u("div",ul,[l(_,{modelValue:n(o).module_name,"onUpdate:modelValue":e[18]||(e[18]=a=>n(o).module_name=a),placeholder:"请输入模块名",clearable:""},null,8,["modelValue"]),e[40]||(e[40]=u("div",{class:"form-tips"},"生成文件所在模块",-1))])]),_:1}),l(r,{label:"类目录"},{default:t(()=>[u("div",dl,[u("div",null,[l(_,{modelValue:n(o).class_dir,"onUpdate:modelValue":e[19]||(e[19]=a=>n(o).class_dir=a),placeholder:"请输入文件所在目录",clearable:""},null,8,["modelValue"])]),e[41]||(e[41]=u("div",{class:"form-tips"},[u("div",null," 例:填写test,则在app/模块名/controller/test下生成控制器 ")],-1))])]),_:1}),l(r,{label:"父级菜单",prop:"menu.pid"},{default:t(()=>[l(fe,{class:"w-80",modelValue:n(o).menu.pid,"onUpdate:modelValue":e[20]||(e[20]=a=>n(o).menu.pid=a),data:n(K).menu,clearable:"","node-key":"id",props:{label:"name"},"default-expand-all":"",placeholder:"请选择父级菜单","check-strictly":""},null,8,["modelValue","data"])]),_:1}),l(r,{label:"菜单名称",prop:"menu.name"},{default:t(()=>[u("div",sl,[l(_,{modelValue:n(o).menu.name,"onUpdate:modelValue":e[21]||(e[21]=a=>n(o).menu.name=a),placeholder:"请输入菜单名称",clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"菜单构建",prop:"menu.type",required:""},{default:t(()=>[u("div",null,[l(B,{modelValue:n(o).menu.type,"onUpdate:modelValue":e[22]||(e[22]=a=>n(o).menu.type=a)},{default:t(()=>[l(y,{value:1},{default:t(()=>[...e[42]||(e[42]=[f("自动构建",-1)])]),_:1}),l(y,{value:0},{default:t(()=>[...e[43]||(e[43]=[f("手动添加",-1)])]),_:1})]),_:1},8,["modelValue"]),e[44]||(e[44]=u("div",{class:"form-tips"}," 自动构建:自动执行生成菜单sql。手动添加:自行添加菜单。 ",-1))])]),_:1})]),_:1}),l(N,{label:"关联配置",name:"relations"},{default:t(()=>[l(O,{type:"primary",onClick:e[23]||(e[23]=a=>W("add"))},{icon:t(()=>[l(be,{name:"el-icon-Plus"})]),default:t(()=>[e[45]||(e[45]=f(" 新增关联 ",-1))]),_:1}),u("div",ml,[l(M,{data:n(o).relations,size:"small"},{default:t(()=>[l(i,{prop:"type",label:"关联类型"},{default:t(({row:a})=>[l(X,{value:a.type,options:F},null,8,["value"])]),_:1}),l(i,{prop:"name",label:"关联名称"}),l(i,{prop:"model",label:"关联模型"}),l(i,{prop:"local_key",label:"关联键"},{default:t(({row:a})=>[l(X,{value:a.local_key,options:n(o).table_column,config:{label:"column_comment",value:"column_name"}},null,8,["value","options"])]),_:1}),l(i,{prop:"foreign_key",label:"外键"}),l(i,{label:"操作"},{default:t(({row:a,$index:s})=>[l(O,{link:"",type:"primary",onClick:G=>W("edit",a,s)},{default:t(()=>[...e[46]||(e[46]=[f(" 编辑 ",-1)])]),_:1},8,["onClick"]),l(O,{link:"",type:"danger",onClick:G=>ie(s)},{default:t(()=>[...e[47]||(e[47]=[f(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),n(x)?(p(),w(ze,{key:0,column:n(o).table_column,types:F,ref_key:"editRef",ref:Q,onAdd:me,onEdit:re,onClose:e[24]||(e[24]=a=>x.value=!1)},null,8,["column"])):H("",!0)])]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["model","rules"])]),_:1}),l(Ve,null,{default:t(()=>[l(O,{type:"primary",onClick:_e},{default:t(()=>[...e[48]||(e[48]=[f("保存",-1)])]),_:1})]),_:1})])}}}),aa=Fe(il,[["__scopeId","data-v-f4669353"]]);export{aa as default}; +import{_ as ye}from"./index-j275bAO5.js";import{O as ge,J as ke,D as Ue,m as we,l as Ee,B as qe,C as xe,M as Ce,N as De,H as Ae,P as Re,Q as $e,G as Ie,I as Te,W as Ne,i as Be}from"./element-plus-DFTWCWyi.js";import{f as j,ak as p,I as v,F as q,ap as D,A as Y,a as l,aN as t,J as u,G as w,O as f,H,n as Oe,w as Pe}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Z}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as C,n as E,r as h,q as ee,t as le}from"./@vue/reactivity-DiY1c2vO.js";import{c as Se,i as ae,_ as Fe}from"./index--WnM67ZH.js";import{l as te}from"./lodash-D3kF6u-c.js";import{m as Le}from"./menu-Da1RBBpC.js";import{d as Qe}from"./dict-DnKASfBm.js";import{t as Ge,g as He}from"./code-CrOutkes.js";import{u as je}from"./useDictOptions-lSbSoycG.js";import{_ as ze}from"./relations-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js";import{u as Je,a as We}from"./vue-router-QlpZ4wdW.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const Ke=j({__name:"index",props:{options:{default:()=>[]},value:{},config:{default:()=>({label:"name",value:"value"})}},setup(P){const c=P,S=Y(()=>c.value!==null&&typeof c.value<"u"?Array.isArray(c.value)?c.value:String(c.value).split(","):[]),A=Y(()=>c.options.filter(x=>S.value.includes(x[c.config.value])));return(x,F)=>(p(),v("div",null,[(p(!0),v(q,null,D(n(A),(o,g)=>(p(),v("span",{key:g},Z(g!=0?"、":"")+Z(o[P.config.label]),1))),128))]))}}),Me={class:"code-edit"},Xe={class:"w-80"},Ye={class:"w-80"},Ze={class:"w-80"},he={class:"w-80"},el={class:"header-checkbox"},ll={class:"header-checkbox"},al={class:"header-checkbox"},tl={class:"header-checkbox"},ol={class:"header-checkbox"},nl={class:"w-80"},ul={class:"w-80"},dl={class:"w-80"},sl={class:"w-80"},ml={class:"mt-4"},rl=j({name:"tableEdit"}),il=j({...rl,setup(P){const c=Je(),S=We(),A=E("column"),x=E(!1),F=[{name:"一对一",value:"has_one"},{name:"一对多",value:"has_many"}],o=h({id:"",table_name:"",table_comment:"",author:"",remark:"",template_type:0,generate_type:0,module_name:"",class_dir:"",class_comment:"",table_column:[],menu:{pid:0,name:"",type:0},tree:{tree_id:0,tree_pid:0,tree_name:0},delete:{name:"",type:0},relations:[]}),g=E(!1),R=E(!1),$=E(!1),I=E(!1),T=E(!1),oe=()=>{o.table_column.forEach(d=>{d.is_required=g.value?1:0})},ne=()=>{o.table_column.forEach(d=>{d.is_insert=R.value?1:0})},ue=()=>{o.table_column.forEach(d=>{d.is_update=$.value?1:0})},de=()=>{o.table_column.forEach(d=>{d.is_lists=I.value?1:0})},se=()=>{o.table_column.forEach(d=>{d.is_query=T.value?1:0})};let L=0;const z=ee(),Q=ee(),J=h({table_name:[{required:!0,message:"请输入表名称"}],table_comment:[{required:!0,message:"请输入表描述"}],module_name:[{required:!0,message:"请输入模块名"}],generate_type:[{required:!0,trigger:"change"}],template_type:[{required:!0,trigger:"change"}],"menu.pid":[{required:!0,message:"请选择父级菜单"}],"menu.name":[{required:!0,message:"请输入菜单名称"}],"delete.type":[{required:!0,trigger:"change"}],"delete.name":[{required:!0,message:"请选择删除字段"}]}),W=async(d,e,k)=>{var V,_;x.value=!0,await Oe(),e&&k!==void 0&&((V=Q.value)==null||V.setFormData(e),L=k),(_=Q.value)==null||_.open(d)},me=d=>{const e=te.cloneDeep(le(d));o.relations.push(e)},re=async d=>{const e=te.cloneDeep(le(d));console.log(L),o.relations.splice(L,1,e)},ie=d=>{o.relations.splice(d,1)},pe=async()=>{const d=await Ge({id:c.query.id});Object.keys(o).forEach(e=>{o[e]=d[e]}),Pe(()=>o.generate_type,e=>{e==1&&ae.confirm("生成到模块方式如遇同名文件会覆盖旧文件,确定要选择此方式吗?").catch(()=>{o.generate_type=0})})},{optionsData:K}=je({dict_type:{api:Qe},menu:{api:Le,transformData(d){const e={id:0,name:"顶级",children:[]};return e.children=d,[e]}}}),_e=async()=>{var d,e;try{await((d=z.value)==null?void 0:d.validate()),await He(o),S.back()}catch(k){for(const V in k)Object.keys(J).includes(V)&&ae.msgError((e=k[V][0])==null?void 0:e.message)}};return pe(),(d,e)=>{const k=ge,V=ke,_=xe,r=qe,N=Ee,i=De,b=Ae,m=$e,U=Re,M=Ce,y=Te,B=Ie,fe=Ne,be=Se,O=Be,X=Ke,ve=we,ce=Ue,Ve=ye;return p(),v("div",Me,[l(V,{class:"!border-none",shadow:"never"},{default:t(()=>[l(k,{content:"编辑数据表",onBack:e[0]||(e[0]=a=>d.$router.back())})]),_:1}),l(V,{class:"mt-4 !border-none",shadow:"never"},{default:t(()=>[l(ce,{ref_key:"formRef",ref:z,class:"ls-form",model:n(o),"label-width":"100px",rules:n(J)},{default:t(()=>[l(ve,{modelValue:n(A),"onUpdate:modelValue":e[25]||(e[25]=a=>C(A)?A.value=a:null)},{default:t(()=>[l(N,{label:"基础信息",name:"base"},{default:t(()=>[l(r,{label:"表名称",prop:"table_name"},{default:t(()=>[u("div",Xe,[l(_,{modelValue:n(o).table_name,"onUpdate:modelValue":e[1]||(e[1]=a=>n(o).table_name=a),placeholder:"请输入表名称",clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"表描述",prop:"table_comment"},{default:t(()=>[u("div",Ye,[l(_,{modelValue:n(o).table_comment,"onUpdate:modelValue":e[2]||(e[2]=a=>n(o).table_comment=a),placeholder:"请输入表描述",clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"作者"},{default:t(()=>[u("div",Ze,[l(_,{modelValue:n(o).author,"onUpdate:modelValue":e[3]||(e[3]=a=>n(o).author=a),clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"备注"},{default:t(()=>[u("div",he,[l(_,{modelValue:n(o).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>n(o).remark=a),class:"w-full",type:"textarea",autosize:{minRows:4,maxRows:4},maxlength:"200","show-word-limit":"",clearable:""},null,8,["modelValue"])])]),_:1})]),_:1}),l(N,{label:"字段管理",name:"column"},{default:t(()=>[l(M,{data:n(o).table_column},{default:t(()=>[l(i,{label:"字段列名",prop:"column_name"}),l(i,{label:"字段描述",prop:"column_comment","min-width":"120"},{default:t(({row:a})=>[l(_,{modelValue:a.column_comment,"onUpdate:modelValue":s=>a.column_comment=s,clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"物理类型",prop:"column_type"}),l(i,{label:"必填",width:"80"},{header:t(()=>[u("div",el,[l(b,{modelValue:n(g),"onUpdate:modelValue":e[5]||(e[5]=a=>C(g)?g.value=a:null),onChange:oe},null,8,["modelValue"]),e[26]||(e[26]=u("span",null,"必填",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_required,"onUpdate:modelValue":s=>a.is_required=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"插入",width:"80"},{header:t(()=>[u("div",ll,[l(b,{modelValue:n(R),"onUpdate:modelValue":e[6]||(e[6]=a=>C(R)?R.value=a:null),onChange:ne},null,8,["modelValue"]),e[27]||(e[27]=u("span",null,"插入",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_insert,"onUpdate:modelValue":s=>a.is_insert=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"编辑",width:"80"},{header:t(()=>[u("div",al,[l(b,{modelValue:n($),"onUpdate:modelValue":e[7]||(e[7]=a=>C($)?$.value=a:null),onChange:ue},null,8,["modelValue"]),e[28]||(e[28]=u("span",null,"编辑",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_update,"onUpdate:modelValue":s=>a.is_update=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"列表",width:"80"},{header:t(()=>[u("div",tl,[l(b,{modelValue:n(I),"onUpdate:modelValue":e[8]||(e[8]=a=>C(I)?I.value=a:null),onChange:de},null,8,["modelValue"]),e[29]||(e[29]=u("span",null,"列表",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_lists,"onUpdate:modelValue":s=>a.is_lists=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"查询",width:"80"},{header:t(()=>[u("div",ol,[l(b,{modelValue:n(T),"onUpdate:modelValue":e[9]||(e[9]=a=>C(T)?T.value=a:null),onChange:se},null,8,["modelValue"]),e[30]||(e[30]=u("span",null,"查询",-1))])]),default:t(({row:a})=>[l(b,{modelValue:a.is_query,"onUpdate:modelValue":s=>a.is_query=s,"true-value":1,"false-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"查询方式"},{default:t(({row:a})=>[l(U,{modelValue:a.query_type,"onUpdate:modelValue":s=>a.query_type=s},{default:t(()=>[l(m,{label:"=",value:"="}),l(m,{label:"!=",value:"!="}),l(m,{label:">",value:">"}),l(m,{label:">=",value:">="}),l(m,{label:"<",value:"<"}),l(m,{label:"<=",value:"<="}),l(m,{label:"LIKE",value:"like"}),l(m,{label:"BETWEEN",value:"between"})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"显示类型","min-width":"120"},{default:t(({row:a})=>[l(U,{modelValue:a.view_type,"onUpdate:modelValue":s=>a.view_type=s},{default:t(()=>[l(m,{label:"文本框",value:"input"}),l(m,{label:"文本域",value:"textarea"}),l(m,{label:"下拉框",value:"select"}),l(m,{label:"单选框",value:"radio"}),l(m,{label:"复选框",value:"checkbox"}),l(m,{label:"日期控件",value:"datetime"}),l(m,{label:"图片选择控件",value:"imageSelect"}),l(m,{label:"富文本控件",value:"editor"})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:1}),l(i,{label:"字典类型","min-width":"120"},{default:t(({row:a})=>[l(U,{modelValue:a.dict_type,"onUpdate:modelValue":s=>a.dict_type=s,clearable:"",disabled:!(a.view_type=="select"||a.view_type=="radio"||a.view_type=="checkbox"),placeholder:"字典类型"},{default:t(()=>[(p(!0),v(q,null,D(n(K).dict_type,(s,G)=>(p(),w(m,{key:G,label:s.name,value:s.type,disabled:!s.status},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue","disabled"])]),_:1})]),_:1},8,["data"])]),_:1}),l(N,{label:"生成配置",name:"config"},{default:t(()=>[l(r,{label:"模板类型",prop:"template_type"},{default:t(()=>[l(B,{modelValue:n(o).template_type,"onUpdate:modelValue":e[10]||(e[10]=a=>n(o).template_type=a)},{default:t(()=>[l(y,{value:0},{default:t(()=>[...e[31]||(e[31]=[f("单表(curd)",-1)])]),_:1}),l(y,{value:1},{default:t(()=>[...e[32]||(e[32]=[f("树表(curd)",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"删除类型",prop:"delete.type"},{default:t(()=>[l(B,{modelValue:n(o).delete.type,"onUpdate:modelValue":e[11]||(e[11]=a=>n(o).delete.type=a)},{default:t(()=>[l(y,{value:0},{default:t(()=>[...e[33]||(e[33]=[f("物理删除",-1)])]),_:1}),l(y,{value:1},{default:t(()=>[...e[34]||(e[34]=[f("软删除",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),n(o).delete.type==1?(p(),w(r,{key:0,label:"删除字段",prop:"delete.name"},{default:t(()=>[l(U,{class:"w-80",modelValue:n(o).delete.name,"onUpdate:modelValue":e[12]||(e[12]=a=>n(o).delete.name=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"])]),_:1})):H("",!0),n(o).template_type==1?(p(),v(q,{key:1},[l(r,{label:"树表ID",prop:"treePrimary"},{default:t(()=>[u("div",null,[l(U,{class:"w-80",modelValue:n(o).tree.tree_id,"onUpdate:modelValue":e[13]||(e[13]=a=>n(o).tree.tree_id=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"]),e[35]||(e[35]=u("div",{class:"form-tips"},"指定树表的主要ID,一般为主键",-1))])]),_:1}),l(r,{label:"树表父ID",prop:"treeParent"},{default:t(()=>[u("div",null,[l(U,{class:"w-80",modelValue:n(o).tree.tree_pid,"onUpdate:modelValue":e[14]||(e[14]=a=>n(o).tree.tree_pid=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"]),e[36]||(e[36]=u("div",{class:"form-tips"},"指定树表的父ID,比如:parent_id",-1))])]),_:1}),l(r,{label:"树名称",prop:"treeName"},{default:t(()=>[l(U,{class:"w-80",modelValue:n(o).tree.tree_name,"onUpdate:modelValue":e[15]||(e[15]=a=>n(o).tree.tree_name=a),clearable:""},{default:t(()=>[(p(!0),v(q,null,D(n(o).table_column,a=>(p(),w(m,{key:a.id,value:a.column_name,label:`${a.column_name}:${a.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"])]),_:1})],64)):H("",!0),l(r,{label:"类描述"},{default:t(()=>[u("div",nl,[u("div",null,[l(_,{modelValue:n(o).class_comment,"onUpdate:modelValue":e[16]||(e[16]=a=>n(o).class_comment=a),placeholder:"请输入文件描述",clearable:""},null,8,["modelValue"])]),e[37]||(e[37]=u("div",{class:"form-tips"},[u("div",null," 例:填写test,生成文件描述为test控制器(test逻辑/test模型) ")],-1))])]),_:1}),l(r,{label:"生成方式",prop:"generate_type"},{default:t(()=>[l(B,{modelValue:n(o).generate_type,"onUpdate:modelValue":e[17]||(e[17]=a=>n(o).generate_type=a)},{default:t(()=>[l(y,{value:0},{default:t(()=>[...e[38]||(e[38]=[f("压缩包下载",-1)])]),_:1}),l(y,{value:1},{default:t(()=>[...e[39]||(e[39]=[f("生成到模块",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"模块名",prop:"module_name"},{default:t(()=>[u("div",ul,[l(_,{modelValue:n(o).module_name,"onUpdate:modelValue":e[18]||(e[18]=a=>n(o).module_name=a),placeholder:"请输入模块名",clearable:""},null,8,["modelValue"]),e[40]||(e[40]=u("div",{class:"form-tips"},"生成文件所在模块",-1))])]),_:1}),l(r,{label:"类目录"},{default:t(()=>[u("div",dl,[u("div",null,[l(_,{modelValue:n(o).class_dir,"onUpdate:modelValue":e[19]||(e[19]=a=>n(o).class_dir=a),placeholder:"请输入文件所在目录",clearable:""},null,8,["modelValue"])]),e[41]||(e[41]=u("div",{class:"form-tips"},[u("div",null," 例:填写test,则在app/模块名/controller/test下生成控制器 ")],-1))])]),_:1}),l(r,{label:"父级菜单",prop:"menu.pid"},{default:t(()=>[l(fe,{class:"w-80",modelValue:n(o).menu.pid,"onUpdate:modelValue":e[20]||(e[20]=a=>n(o).menu.pid=a),data:n(K).menu,clearable:"","node-key":"id",props:{label:"name"},"default-expand-all":"",placeholder:"请选择父级菜单","check-strictly":""},null,8,["modelValue","data"])]),_:1}),l(r,{label:"菜单名称",prop:"menu.name"},{default:t(()=>[u("div",sl,[l(_,{modelValue:n(o).menu.name,"onUpdate:modelValue":e[21]||(e[21]=a=>n(o).menu.name=a),placeholder:"请输入菜单名称",clearable:""},null,8,["modelValue"])])]),_:1}),l(r,{label:"菜单构建",prop:"menu.type",required:""},{default:t(()=>[u("div",null,[l(B,{modelValue:n(o).menu.type,"onUpdate:modelValue":e[22]||(e[22]=a=>n(o).menu.type=a)},{default:t(()=>[l(y,{value:1},{default:t(()=>[...e[42]||(e[42]=[f("自动构建",-1)])]),_:1}),l(y,{value:0},{default:t(()=>[...e[43]||(e[43]=[f("手动添加",-1)])]),_:1})]),_:1},8,["modelValue"]),e[44]||(e[44]=u("div",{class:"form-tips"}," 自动构建:自动执行生成菜单sql。手动添加:自行添加菜单。 ",-1))])]),_:1})]),_:1}),l(N,{label:"关联配置",name:"relations"},{default:t(()=>[l(O,{type:"primary",onClick:e[23]||(e[23]=a=>W("add"))},{icon:t(()=>[l(be,{name:"el-icon-Plus"})]),default:t(()=>[e[45]||(e[45]=f(" 新增关联 ",-1))]),_:1}),u("div",ml,[l(M,{data:n(o).relations,size:"small"},{default:t(()=>[l(i,{prop:"type",label:"关联类型"},{default:t(({row:a})=>[l(X,{value:a.type,options:F},null,8,["value"])]),_:1}),l(i,{prop:"name",label:"关联名称"}),l(i,{prop:"model",label:"关联模型"}),l(i,{prop:"local_key",label:"关联键"},{default:t(({row:a})=>[l(X,{value:a.local_key,options:n(o).table_column,config:{label:"column_comment",value:"column_name"}},null,8,["value","options"])]),_:1}),l(i,{prop:"foreign_key",label:"外键"}),l(i,{label:"操作"},{default:t(({row:a,$index:s})=>[l(O,{link:"",type:"primary",onClick:G=>W("edit",a,s)},{default:t(()=>[...e[46]||(e[46]=[f(" 编辑 ",-1)])]),_:1},8,["onClick"]),l(O,{link:"",type:"danger",onClick:G=>ie(s)},{default:t(()=>[...e[47]||(e[47]=[f(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),n(x)?(p(),w(ze,{key:0,column:n(o).table_column,types:F,ref_key:"editRef",ref:Q,onAdd:me,onEdit:re,onClose:e[24]||(e[24]=a=>x.value=!1)},null,8,["column"])):H("",!0)])]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["model","rules"])]),_:1}),l(Ve,null,{default:t(()=>[l(O,{type:"primary",onClick:_e},{default:t(()=>[...e[48]||(e[48]=[f("保存",-1)])]),_:1})]),_:1})])}}}),aa=Fe(il,[["__scopeId","data-v-f4669353"]]);export{aa as default}; diff --git a/server/public/admin/assets/edit-Csi7FS4G.js b/server/public/admin/assets/edit-q_Bxd75_.js similarity index 65% rename from server/public/admin/assets/edit-Csi7FS4G.js rename to server/public/admin/assets/edit-q_Bxd75_.js index 0392d5e9..6ecc3238 100644 --- a/server/public/admin/assets/edit-Csi7FS4G.js +++ b/server/public/admin/assets/edit-q_Bxd75_.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-V9yb54Tt.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-CSUh_x-a.js";import"./post-CjhbCF7F.js";import"./admin-BAFPFiwc.js";import"./role-Dce31LXP.js";import"./useDictOptions-CT8hbU1b.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-ChNKntck.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-D5OVad_r.js";import"./post-D694zeqo.js";import"./admin-CGNFdyXh.js";import"./role-BvkAFvOK.js";import"./useDictOptions-lSbSoycG.js";export{o as default}; diff --git a/server/public/admin/assets/edit-BeTgW91N.js b/server/public/admin/assets/edit-uu_5ibVr.js similarity index 77% rename from server/public/admin/assets/edit-BeTgW91N.js rename to server/public/admin/assets/edit-uu_5ibVr.js index e2ae85d7..a6137843 100644 --- a/server/public/admin/assets/edit-BeTgW91N.js +++ b/server/public/admin/assets/edit-uu_5ibVr.js @@ -1 +1 @@ -import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-CeopjxTy.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./dict-BN4CTMA_.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";export{o as default}; +import{_ as o}from"./edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./role-BvkAFvOK.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";export{o as default}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js similarity index 98% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js index 6b12fc1a..2a3a44d7 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js @@ -1 +1 @@ -import{D as F,B as G,C as A,G as O,I as S,h as T,g as z}from"./element-plus-DFTWCWyi.js";import{f as H,h as J,i as j}from"./wx_oa-BOc4Brkk.js";import{_ as K}from"./index-BQY2-_X1.js";import{f as L,ak as p,I as M,a as o,aN as a,J as n,G as c,H as v,O as i,A as P}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as x,r as Q,n as W}from"./@vue/reactivity-DiY1c2vO.js";const X={class:"edit-popup"},Y={class:"flex-1"},Z={class:"flex-1"},$={class:"flex-1"},h={class:"flex-1"},ee={class:"flex-1"},te={class:"flex-1"},le={class:"flex-1"},ue=L({__name:"edit",emits:["success","close"],setup(oe,{expose:b,emit:k}){const V=k,g=x(),f=x(),_=W("add"),R=P(()=>_.value=="edit"?"编辑":"新增"),t=Q({id:"",name:"",reply_type:0,content_type:1,keyword:"",content:"",matching_type:1,status:1,sort:0,reply_num:1}),E={name:[{required:!0,message:"请输入规则名称",trigger:["blur"]}],keyword:[{required:!0,message:"请输入关键词",trigger:["blur"]}],matching_type:[{required:!0,message:"请选择匹配方式",trigger:["blur"]}],content_type:[{required:!0,message:"请选择回复类型",trigger:["blur"]}],content:[{required:!0,message:"请输入回复内容",trigger:["blur"]}]},U=async()=>{var r,e;await((r=g.value)==null?void 0:r.validate()),_.value=="edit"?await H(t):await J(t),(e=f.value)==null||e.close(),V("success")},q=(r="add",e=0)=>{var u;_.value=r,t.reply_type=e,(u=f.value)==null||u.open()},w=r=>{for(const e in t)r[e]!=null&&r[e]!=null&&(t[e]=r[e])},C=async r=>{const e=await j({id:r.id});w(e)},N=()=>{V("close")};return b({open:q,setFormData:w,getDetail:C}),(r,e)=>{const u=A,d=G,m=S,y=O,B=T,D=z,I=F;return p(),M("div",X,[o(K,{ref_key:"popupRef",ref:f,title:l(R),async:!0,width:"500px",onConfirm:U,onClose:N},{default:a(()=>[o(I,{ref_key:"formRef",ref:g,model:l(t),"label-width":"84px",rules:E,class:"pr-10"},{default:a(()=>[o(d,{label:"规则名称",prop:"name"},{default:a(()=>[n("div",Y,[o(u,{modelValue:l(t).name,"onUpdate:modelValue":e[0]||(e[0]=s=>l(t).name=s),placeholder:"请输入规则名称"},null,8,["modelValue"]),e[8]||(e[8]=n("div",{class:"form-tips"},"方便通过名称管理关注回复内容",-1))])]),_:1}),l(t).reply_type==2?(p(),c(d,{key:0,label:"关键词",prop:"keyword"},{default:a(()=>[n("div",Z,[o(u,{modelValue:l(t).keyword,"onUpdate:modelValue":e[1]||(e[1]=s=>l(t).keyword=s),placeholder:"请输入关键词"},null,8,["modelValue"]),e[9]||(e[9]=n("div",{class:"form-tips"},"方便通过名称管理关注回复内容",-1))])]),_:1})):v("",!0),l(t).reply_type==2?(p(),c(d,{key:1,label:"匹配方式",prop:"matching_type"},{default:a(()=>[n("div",$,[o(y,{modelValue:l(t).matching_type,"onUpdate:modelValue":e[2]||(e[2]=s=>l(t).matching_type=s)},{default:a(()=>[o(m,{value:1},{default:a(()=>[...e[10]||(e[10]=[i("全匹配",-1)])]),_:1}),o(m,{value:2},{default:a(()=>[...e[11]||(e[11]=[i("模糊匹配",-1)])]),_:1})]),_:1},8,["modelValue"]),e[12]||(e[12]=n("div",{class:"form-tips"},"模糊匹配时,关键词部分匹配用户输入的内容即可",-1))])]),_:1})):v("",!0),o(d,{label:"回复类型",prop:"content_type",min:0},{default:a(()=>[n("div",h,[o(y,{modelValue:l(t).content_type,"onUpdate:modelValue":e[3]||(e[3]=s=>l(t).content_type=s)},{default:a(()=>[o(m,{value:1},{default:a(()=>[...e[13]||(e[13]=[i("文本",-1)])]),_:1})]),_:1},8,["modelValue"]),e[14]||(e[14]=n("div",{class:"form-tips"},"暂时只支持文本类型",-1))])]),_:1}),o(d,{label:"回复内容",prop:"content"},{default:a(()=>[n("div",ee,[o(u,{modelValue:l(t).content,"onUpdate:modelValue":e[4]||(e[4]=s=>l(t).content=s),autosize:{minRows:4,maxRows:4},type:"textarea",maxlength:"200","show-word-limit":"",placeholder:"请输入回复内容"},null,8,["modelValue"])])]),_:1}),o(d,{label:"排序"},{default:a(()=>[n("div",te,[o(B,{modelValue:l(t).sort,"onUpdate:modelValue":e[5]||(e[5]=s=>l(t).sort=s),min:0,max:9999},null,8,["modelValue"])])]),_:1}),l(t).reply_type==2?(p(),c(d,{key:2,label:"回复数量",prop:"reply_num",required:""},{default:a(()=>[n("div",le,[o(y,{modelValue:l(t).reply_num,"onUpdate:modelValue":e[6]||(e[6]=s=>l(t).reply_num=s)},{default:a(()=>[o(m,{value:1},{default:a(()=>[...e[15]||(e[15]=[i("回复匹配首词条",-1)])]),_:1})]),_:1},8,["modelValue"]),e[16]||(e[16]=n("div",{class:"form-tips"}," 设置关键词匹配多条时回复的数量,暂时支持回复一条内容 ",-1))])]),_:1})):v("",!0),o(d,{label:"启用状态"},{default:a(()=>[o(D,{modelValue:l(t).status,"onUpdate:modelValue":e[7]||(e[7]=s=>l(t).status=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{ue as _}; +import{D as F,B as G,C as A,G as O,I as S,h as T,g as z}from"./element-plus-DFTWCWyi.js";import{f as H,h as J,i as j}from"./wx_oa-CN0ZaZdj.js";import{_ as K}from"./index-SocYjCJ1.js";import{f as L,ak as p,I as M,a as o,aN as a,J as n,G as c,H as v,O as i,A as P}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as x,r as Q,n as W}from"./@vue/reactivity-DiY1c2vO.js";const X={class:"edit-popup"},Y={class:"flex-1"},Z={class:"flex-1"},$={class:"flex-1"},h={class:"flex-1"},ee={class:"flex-1"},te={class:"flex-1"},le={class:"flex-1"},ue=L({__name:"edit",emits:["success","close"],setup(oe,{expose:b,emit:k}){const V=k,g=x(),f=x(),_=W("add"),R=P(()=>_.value=="edit"?"编辑":"新增"),t=Q({id:"",name:"",reply_type:0,content_type:1,keyword:"",content:"",matching_type:1,status:1,sort:0,reply_num:1}),E={name:[{required:!0,message:"请输入规则名称",trigger:["blur"]}],keyword:[{required:!0,message:"请输入关键词",trigger:["blur"]}],matching_type:[{required:!0,message:"请选择匹配方式",trigger:["blur"]}],content_type:[{required:!0,message:"请选择回复类型",trigger:["blur"]}],content:[{required:!0,message:"请输入回复内容",trigger:["blur"]}]},U=async()=>{var r,e;await((r=g.value)==null?void 0:r.validate()),_.value=="edit"?await H(t):await J(t),(e=f.value)==null||e.close(),V("success")},q=(r="add",e=0)=>{var u;_.value=r,t.reply_type=e,(u=f.value)==null||u.open()},w=r=>{for(const e in t)r[e]!=null&&r[e]!=null&&(t[e]=r[e])},C=async r=>{const e=await j({id:r.id});w(e)},N=()=>{V("close")};return b({open:q,setFormData:w,getDetail:C}),(r,e)=>{const u=A,d=G,m=S,y=O,B=T,D=z,I=F;return p(),M("div",X,[o(K,{ref_key:"popupRef",ref:f,title:l(R),async:!0,width:"500px",onConfirm:U,onClose:N},{default:a(()=>[o(I,{ref_key:"formRef",ref:g,model:l(t),"label-width":"84px",rules:E,class:"pr-10"},{default:a(()=>[o(d,{label:"规则名称",prop:"name"},{default:a(()=>[n("div",Y,[o(u,{modelValue:l(t).name,"onUpdate:modelValue":e[0]||(e[0]=s=>l(t).name=s),placeholder:"请输入规则名称"},null,8,["modelValue"]),e[8]||(e[8]=n("div",{class:"form-tips"},"方便通过名称管理关注回复内容",-1))])]),_:1}),l(t).reply_type==2?(p(),c(d,{key:0,label:"关键词",prop:"keyword"},{default:a(()=>[n("div",Z,[o(u,{modelValue:l(t).keyword,"onUpdate:modelValue":e[1]||(e[1]=s=>l(t).keyword=s),placeholder:"请输入关键词"},null,8,["modelValue"]),e[9]||(e[9]=n("div",{class:"form-tips"},"方便通过名称管理关注回复内容",-1))])]),_:1})):v("",!0),l(t).reply_type==2?(p(),c(d,{key:1,label:"匹配方式",prop:"matching_type"},{default:a(()=>[n("div",$,[o(y,{modelValue:l(t).matching_type,"onUpdate:modelValue":e[2]||(e[2]=s=>l(t).matching_type=s)},{default:a(()=>[o(m,{value:1},{default:a(()=>[...e[10]||(e[10]=[i("全匹配",-1)])]),_:1}),o(m,{value:2},{default:a(()=>[...e[11]||(e[11]=[i("模糊匹配",-1)])]),_:1})]),_:1},8,["modelValue"]),e[12]||(e[12]=n("div",{class:"form-tips"},"模糊匹配时,关键词部分匹配用户输入的内容即可",-1))])]),_:1})):v("",!0),o(d,{label:"回复类型",prop:"content_type",min:0},{default:a(()=>[n("div",h,[o(y,{modelValue:l(t).content_type,"onUpdate:modelValue":e[3]||(e[3]=s=>l(t).content_type=s)},{default:a(()=>[o(m,{value:1},{default:a(()=>[...e[13]||(e[13]=[i("文本",-1)])]),_:1})]),_:1},8,["modelValue"]),e[14]||(e[14]=n("div",{class:"form-tips"},"暂时只支持文本类型",-1))])]),_:1}),o(d,{label:"回复内容",prop:"content"},{default:a(()=>[n("div",ee,[o(u,{modelValue:l(t).content,"onUpdate:modelValue":e[4]||(e[4]=s=>l(t).content=s),autosize:{minRows:4,maxRows:4},type:"textarea",maxlength:"200","show-word-limit":"",placeholder:"请输入回复内容"},null,8,["modelValue"])])]),_:1}),o(d,{label:"排序"},{default:a(()=>[n("div",te,[o(B,{modelValue:l(t).sort,"onUpdate:modelValue":e[5]||(e[5]=s=>l(t).sort=s),min:0,max:9999},null,8,["modelValue"])])]),_:1}),l(t).reply_type==2?(p(),c(d,{key:2,label:"回复数量",prop:"reply_num",required:""},{default:a(()=>[n("div",le,[o(y,{modelValue:l(t).reply_num,"onUpdate:modelValue":e[6]||(e[6]=s=>l(t).reply_num=s)},{default:a(()=>[o(m,{value:1},{default:a(()=>[...e[15]||(e[15]=[i("回复匹配首词条",-1)])]),_:1})]),_:1},8,["modelValue"]),e[16]||(e[16]=n("div",{class:"form-tips"}," 设置关键词匹配多条时回复的数量,暂时支持回复一条内容 ",-1))])]),_:1})):v("",!0),o(d,{label:"启用状态"},{default:a(()=>[o(D,{modelValue:l(t).status,"onUpdate:modelValue":e[7]||(e[7]=s=>l(t).status=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{ue as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-mezlrvEI.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js similarity index 94% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-mezlrvEI.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js index 401ce8e1..a3a666f1 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-mezlrvEI.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js @@ -1 +1 @@ -import{D as h,B as k,C,h as g,P as D,Q as F}from"./element-plus-DFTWCWyi.js";import{a as I,b as U}from"./role-Dce31LXP.js";import{_ as B}from"./index-BQY2-_X1.js";import{f as N,ak as q,I as A,a as o,aN as n,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as _,r as z,n as O}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"edit-popup"},M=N({__name:"edit",emits:["success","close"],setup(Q,{expose:f,emit:b}){const d=b,i=_(),r=_(),u=O("add"),v=S(()=>u.value=="edit"?"编辑角色":"新增角色"),l=z({id:"",name:"",desc:"",sort:0,data_scope:1,menu_id:[]}),V={name:[{required:!0,message:"请输入名称",trigger:["blur"]}]},w=async()=>{var t,e;await((t=i.value)==null?void 0:t.validate()),u.value=="edit"?await I(l):await U(l),(e=r.value)==null||e.close(),d("success")},x=()=>{d("close")};return f({open:(t="add")=>{var e;u.value=t,(e=r.value)==null||e.open()},setFormData:async t=>{for(const e in l)t[e]!=null&&t[e]!=null&&(l[e]=t[e])}}),(t,e)=>{const c=C,m=k,y=g,p=F,E=D,R=h;return q(),A("div",P,[o(B,{ref_key:"popupRef",ref:r,title:a(v),async:!0,width:"550px",onConfirm:w,onClose:x},{default:n(()=>[o(R,{class:"ls-form",ref_key:"formRef",ref:i,rules:V,model:a(l),"label-width":"60px"},{default:n(()=>[o(m,{label:"名称",prop:"name"},{default:n(()=>[o(c,{class:"ls-input",modelValue:a(l).name,"onUpdate:modelValue":e[0]||(e[0]=s=>a(l).name=s),placeholder:"请输入名称",clearable:""},null,8,["modelValue"])]),_:1}),o(m,{label:"备注",prop:"desc"},{default:n(()=>[o(c,{modelValue:a(l).desc,"onUpdate:modelValue":e[1]||(e[1]=s=>a(l).desc=s),type:"textarea",autosize:{minRows:4,maxRows:6},placeholder:"请输入备注",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),o(m,{label:"排序",prop:"sort"},{default:n(()=>[o(y,{modelValue:a(l).sort,"onUpdate:modelValue":e[2]||(e[2]=s=>a(l).sort=s),min:0,max:9999},null,8,["modelValue"])]),_:1}),o(m,{label:"数据范围",prop:"data_scope"},{default:n(()=>[o(E,{modelValue:a(l).data_scope,"onUpdate:modelValue":e[3]||(e[3]=s=>a(l).data_scope=s),placeholder:"请选择数据范围",class:"ls-input"},{default:n(()=>[o(p,{value:1,label:"全部数据(免隔离)"}),o(p,{value:2,label:"本部门及下级部门"}),o(p,{value:3,label:"仅本部门"}),o(p,{value:4,label:"仅本人"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{M as _}; +import{D as h,B as k,C,h as g,P as D,Q as F}from"./element-plus-DFTWCWyi.js";import{a as I,b as U}from"./role-BvkAFvOK.js";import{_ as B}from"./index-SocYjCJ1.js";import{f as N,ak as q,I as A,a as o,aN as n,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as _,r as z,n as O}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"edit-popup"},M=N({__name:"edit",emits:["success","close"],setup(Q,{expose:f,emit:b}){const d=b,i=_(),r=_(),u=O("add"),v=S(()=>u.value=="edit"?"编辑角色":"新增角色"),l=z({id:"",name:"",desc:"",sort:0,data_scope:1,menu_id:[]}),V={name:[{required:!0,message:"请输入名称",trigger:["blur"]}]},w=async()=>{var t,e;await((t=i.value)==null?void 0:t.validate()),u.value=="edit"?await I(l):await U(l),(e=r.value)==null||e.close(),d("success")},x=()=>{d("close")};return f({open:(t="add")=>{var e;u.value=t,(e=r.value)==null||e.open()},setFormData:async t=>{for(const e in l)t[e]!=null&&t[e]!=null&&(l[e]=t[e])}}),(t,e)=>{const c=C,m=k,y=g,p=F,E=D,R=h;return q(),A("div",P,[o(B,{ref_key:"popupRef",ref:r,title:a(v),async:!0,width:"550px",onConfirm:w,onClose:x},{default:n(()=>[o(R,{class:"ls-form",ref_key:"formRef",ref:i,rules:V,model:a(l),"label-width":"60px"},{default:n(()=>[o(m,{label:"名称",prop:"name"},{default:n(()=>[o(c,{class:"ls-input",modelValue:a(l).name,"onUpdate:modelValue":e[0]||(e[0]=s=>a(l).name=s),placeholder:"请输入名称",clearable:""},null,8,["modelValue"])]),_:1}),o(m,{label:"备注",prop:"desc"},{default:n(()=>[o(c,{modelValue:a(l).desc,"onUpdate:modelValue":e[1]||(e[1]=s=>a(l).desc=s),type:"textarea",autosize:{minRows:4,maxRows:6},placeholder:"请输入备注",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),o(m,{label:"排序",prop:"sort"},{default:n(()=>[o(y,{modelValue:a(l).sort,"onUpdate:modelValue":e[2]||(e[2]=s=>a(l).sort=s),min:0,max:9999},null,8,["modelValue"])]),_:1}),o(m,{label:"数据范围",prop:"data_scope"},{default:n(()=>[o(E,{modelValue:a(l).data_scope,"onUpdate:modelValue":e[3]||(e[3]=s=>a(l).data_scope=s),placeholder:"请选择数据范围",class:"ls-input"},{default:n(()=>[o(p,{value:1,label:"全部数据(免隔离)"}),o(p,{value:2,label:"本部门及下级部门"}),o(p,{value:3,label:"仅本部门"}),o(p,{value:4,label:"仅本人"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{M as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CitHzUnN.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js similarity index 96% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CitHzUnN.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js index 428ad97b..84a21811 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CitHzUnN.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js @@ -1 +1 @@ -import{D as B,B as N,W as I,C as q,h as A,g as F}from"./element-plus-DFTWCWyi.js";import{d as S,a as M,b as T,c as G}from"./department-CSUh_x-a.js";import{_ as H}from"./index-BQY2-_X1.js";import{u as J}from"./useDictOptions-CT8hbU1b.js";import{f as O,ak as _,I as W,a as o,aN as r,G as $,H as j,J as V,A as z}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,q as b,r as K,n as L}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"edit-popup"},ae=O({__name:"edit",emits:["success","close"],setup(Q,{expose:g,emit:v}){const p=v,c=b(),m=b(),u=L("add"),w=z(()=>u.value=="edit"?"编辑部门":"新增部门"),l=K({id:"",pid:"",name:"",leader:"",mobile:"",sort:0,status:1}),x={pid:[{required:!0,message:"请选择上级部门",trigger:["change"]}],name:[{required:!0,message:"请输入部门名称",trigger:["blur"]}],mobile:[{validator:(a,e,d)=>{if(e){const n=/^[1][3,4,5,6,7,8,9][0-9]{9}$/;if(console.log(n.test(e)),n.test(e))d();else return d(new Error("请输入正确的手机号"))}else return d()},trigger:["blur"]}]},{optionsData:k}=J({dept:{api:S}}),y=async()=>{var a,e;await((a=c.value)==null?void 0:a.validate()),u.value=="edit"?await M(l):await T(l),(e=m.value)==null||e.close(),p("success")},E=(a="add")=>{var e;u.value=a,(e=m.value)==null||e.open()},f=a=>{for(const e in l)a[e]!=null&&a[e]!=null&&(l[e]=a[e])},h=async a=>{const e=await G({id:a.id});f(e)},C=()=>{p("close")};return g({open:E,setFormData:f,getDetail:h}),(a,e)=>{const d=I,n=N,i=q,D=A,R=F,U=B;return _(),W("div",P,[o(H,{ref_key:"popupRef",ref:m,title:t(w),async:!0,width:"550px",onConfirm:y,onClose:C},{default:r(()=>[o(U,{ref_key:"formRef",ref:c,model:t(l),"label-width":"84px",rules:x},{default:r(()=>[t(l).pid!==0?(_(),$(n,{key:0,label:"上级部门",prop:"pid"},{default:r(()=>[o(d,{class:"flex-1",modelValue:t(l).pid,"onUpdate:modelValue":e[0]||(e[0]=s=>t(l).pid=s),data:t(k).dept,clearable:"","node-key":"id",props:{value:"id",label:"name"},"check-strictly":"","default-expand-all":!0,placeholder:"请选择上级部门"},null,8,["modelValue","data"])]),_:1})):j("",!0),o(n,{label:"部门名称",prop:"name"},{default:r(()=>[o(i,{modelValue:t(l).name,"onUpdate:modelValue":e[1]||(e[1]=s=>t(l).name=s),placeholder:"请输入部门名称",maxlength:100},null,8,["modelValue"])]),_:1}),o(n,{label:"负责人",prop:"leader"},{default:r(()=>[o(i,{modelValue:t(l).leader,"onUpdate:modelValue":e[2]||(e[2]=s=>t(l).leader=s),placeholder:"请输入负责人姓名",maxlength:30},null,8,["modelValue"])]),_:1}),o(n,{label:"联系电话",prop:"mobile"},{default:r(()=>[o(i,{modelValue:t(l).mobile,"onUpdate:modelValue":e[3]||(e[3]=s=>t(l).mobile=s),placeholder:"请输入联系电话"},null,8,["modelValue"])]),_:1}),o(n,{label:"排序",prop:"sort"},{default:r(()=>[V("div",null,[o(D,{modelValue:t(l).sort,"onUpdate:modelValue":e[4]||(e[4]=s=>t(l).sort=s),min:0,max:9999},null,8,["modelValue"]),e[6]||(e[6]=V("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),o(n,{label:"部门状态"},{default:r(()=>[o(R,{modelValue:t(l).status,"onUpdate:modelValue":e[5]||(e[5]=s=>t(l).status=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{ae as _}; +import{D as B,B as N,W as I,C as q,h as A,g as F}from"./element-plus-DFTWCWyi.js";import{d as S,a as M,b as T,c as G}from"./department-D5OVad_r.js";import{_ as H}from"./index-SocYjCJ1.js";import{u as J}from"./useDictOptions-lSbSoycG.js";import{f as O,ak as _,I as W,a as o,aN as r,G as $,H as j,J as V,A as z}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,q as b,r as K,n as L}from"./@vue/reactivity-DiY1c2vO.js";const P={class:"edit-popup"},ae=O({__name:"edit",emits:["success","close"],setup(Q,{expose:g,emit:v}){const p=v,c=b(),m=b(),u=L("add"),w=z(()=>u.value=="edit"?"编辑部门":"新增部门"),l=K({id:"",pid:"",name:"",leader:"",mobile:"",sort:0,status:1}),x={pid:[{required:!0,message:"请选择上级部门",trigger:["change"]}],name:[{required:!0,message:"请输入部门名称",trigger:["blur"]}],mobile:[{validator:(a,e,d)=>{if(e){const n=/^[1][3,4,5,6,7,8,9][0-9]{9}$/;if(console.log(n.test(e)),n.test(e))d();else return d(new Error("请输入正确的手机号"))}else return d()},trigger:["blur"]}]},{optionsData:k}=J({dept:{api:S}}),y=async()=>{var a,e;await((a=c.value)==null?void 0:a.validate()),u.value=="edit"?await M(l):await T(l),(e=m.value)==null||e.close(),p("success")},E=(a="add")=>{var e;u.value=a,(e=m.value)==null||e.open()},f=a=>{for(const e in l)a[e]!=null&&a[e]!=null&&(l[e]=a[e])},h=async a=>{const e=await G({id:a.id});f(e)},C=()=>{p("close")};return g({open:E,setFormData:f,getDetail:h}),(a,e)=>{const d=I,n=N,i=q,D=A,R=F,U=B;return _(),W("div",P,[o(H,{ref_key:"popupRef",ref:m,title:t(w),async:!0,width:"550px",onConfirm:y,onClose:C},{default:r(()=>[o(U,{ref_key:"formRef",ref:c,model:t(l),"label-width":"84px",rules:x},{default:r(()=>[t(l).pid!==0?(_(),$(n,{key:0,label:"上级部门",prop:"pid"},{default:r(()=>[o(d,{class:"flex-1",modelValue:t(l).pid,"onUpdate:modelValue":e[0]||(e[0]=s=>t(l).pid=s),data:t(k).dept,clearable:"","node-key":"id",props:{value:"id",label:"name"},"check-strictly":"","default-expand-all":!0,placeholder:"请选择上级部门"},null,8,["modelValue","data"])]),_:1})):j("",!0),o(n,{label:"部门名称",prop:"name"},{default:r(()=>[o(i,{modelValue:t(l).name,"onUpdate:modelValue":e[1]||(e[1]=s=>t(l).name=s),placeholder:"请输入部门名称",maxlength:100},null,8,["modelValue"])]),_:1}),o(n,{label:"负责人",prop:"leader"},{default:r(()=>[o(i,{modelValue:t(l).leader,"onUpdate:modelValue":e[2]||(e[2]=s=>t(l).leader=s),placeholder:"请输入负责人姓名",maxlength:30},null,8,["modelValue"])]),_:1}),o(n,{label:"联系电话",prop:"mobile"},{default:r(()=>[o(i,{modelValue:t(l).mobile,"onUpdate:modelValue":e[3]||(e[3]=s=>t(l).mobile=s),placeholder:"请输入联系电话"},null,8,["modelValue"])]),_:1}),o(n,{label:"排序",prop:"sort"},{default:r(()=>[V("div",null,[o(D,{modelValue:t(l).sort,"onUpdate:modelValue":e[4]||(e[4]=s=>t(l).sort=s),min:0,max:9999},null,8,["modelValue"]),e[6]||(e[6]=V("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),o(n,{label:"部门状态"},{default:r(()=>[o(R,{modelValue:t(l).status,"onUpdate:modelValue":e[5]||(e[5]=s=>t(l).status=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{ae as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-DXBj1QMo.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js similarity index 95% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-DXBj1QMo.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js index 877e1633..c9f86112 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-DXBj1QMo.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js @@ -1 +1 @@ -import{D as I,B as S,C as w,G as x,I as T}from"./element-plus-DFTWCWyi.js";import{b as q,c as A}from"./message-DMZbcMZ3.js";import{_ as K}from"./index-BQY2-_X1.js";import{f as U,ak as n,I as Y,a,aN as o,J as B,G as i,H as _,O as c}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as y,r as N}from"./@vue/reactivity-DiY1c2vO.js";import{Q as F}from"./@vue/shared-mAAVTE9n.js";const G={class:"edit-popup"},M=U({__name:"edit",emits:["success"],setup(H,{expose:g,emit:E}){const V=E,d=y(),m=y(),t=N({name:"",type:"",sign:"",app_key:"",app_id:"",secret_key:"",secret_id:"",status:0}),k={sign:[{required:!0,message:"请输入短信签名",trigger:"blur"}],app_id:[{required:!0,message:"请输入APP_ID",trigger:"blur"}],app_key:[{required:!0,message:"请输入APP_KEY",trigger:"blur"}],secret_key:[{required:!0,message:"请输入SECRET_KEY",trigger:"blur"}],secret_id:[{required:!0,message:"请输入SECRET_ID",trigger:"blur"}]},b=async()=>{var s,e;await((s=d.value)==null?void 0:s.validate()),await q(t),(e=m.value)==null||e.close(),V("success")},C=async()=>{const s=await A({type:t.type});for(const e in s)t[e]=s[e]},R=s=>{var e;t.type=s,(e=m.value)==null||e.open(),C()},P=()=>{var s;(s=d.value)==null||s.resetFields()};return g({open:R}),(s,e)=>{const p=S,u=w,f=T,D=x,v=I;return n(),Y("div",G,[a(K,{ref_key:"popupRef",ref:m,title:"设置短信",async:!0,width:"550px",onConfirm:b,onClose:P},{default:o(()=>[a(v,{ref_key:"formRef",ref:d,model:l(t),"label-width":"120px",rules:k},{default:o(()=>[a(p,{label:"短信渠道"},{default:o(()=>[B("div",null,F(l(t).name),1)]),_:1}),a(p,{label:"短信签名",prop:"sign"},{default:o(()=>[a(u,{modelValue:l(t).sign,"onUpdate:modelValue":e[0]||(e[0]=r=>l(t).sign=r),placeholder:"请输入短信签名"},null,8,["modelValue"])]),_:1}),l(t).type=="ali"?(n(),i(p,{key:0,label:"APP_KEY",prop:"app_key"},{default:o(()=>[a(u,{modelValue:l(t).app_key,"onUpdate:modelValue":e[1]||(e[1]=r=>l(t).app_key=r),placeholder:"请输入APP_KEY"},null,8,["modelValue"])]),_:1})):_("",!0),l(t).type=="tencent"?(n(),i(p,{key:1,label:"APP_ID",prop:"app_id"},{default:o(()=>[a(u,{modelValue:l(t).app_id,"onUpdate:modelValue":e[2]||(e[2]=r=>l(t).app_id=r),placeholder:"请输入APP_ID"},null,8,["modelValue"])]),_:1})):_("",!0),l(t).type=="tencent"?(n(),i(p,{key:2,label:"SECRET_ID",prop:"secret_id"},{default:o(()=>[a(u,{modelValue:l(t).secret_id,"onUpdate:modelValue":e[3]||(e[3]=r=>l(t).secret_id=r),placeholder:"请输入SECRET_ID"},null,8,["modelValue"])]),_:1})):_("",!0),a(p,{label:"SECRET_KEY",prop:"secret_key"},{default:o(()=>[a(u,{modelValue:l(t).secret_key,"onUpdate:modelValue":e[4]||(e[4]=r=>l(t).secret_key=r),placeholder:"请输入SECRET_KEY"},null,8,["modelValue"])]),_:1}),a(p,{label:"状态",prop:"status"},{default:o(()=>[a(D,{modelValue:l(t).status,"onUpdate:modelValue":e[5]||(e[5]=r=>l(t).status=r)},{default:o(()=>[a(f,{value:0},{default:o(()=>[...e[6]||(e[6]=[c("关闭",-1)])]),_:1}),a(f,{value:1},{default:o(()=>[...e[7]||(e[7]=[c("开启",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},512)])}}});export{M as _}; +import{D as I,B as S,C as w,G as x,I as T}from"./element-plus-DFTWCWyi.js";import{b as q,c as A}from"./message-E3FypG9J.js";import{_ as K}from"./index-SocYjCJ1.js";import{f as U,ak as n,I as Y,a,aN as o,J as B,G as i,H as _,O as c}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as y,r as N}from"./@vue/reactivity-DiY1c2vO.js";import{Q as F}from"./@vue/shared-mAAVTE9n.js";const G={class:"edit-popup"},M=U({__name:"edit",emits:["success"],setup(H,{expose:g,emit:E}){const V=E,d=y(),m=y(),t=N({name:"",type:"",sign:"",app_key:"",app_id:"",secret_key:"",secret_id:"",status:0}),k={sign:[{required:!0,message:"请输入短信签名",trigger:"blur"}],app_id:[{required:!0,message:"请输入APP_ID",trigger:"blur"}],app_key:[{required:!0,message:"请输入APP_KEY",trigger:"blur"}],secret_key:[{required:!0,message:"请输入SECRET_KEY",trigger:"blur"}],secret_id:[{required:!0,message:"请输入SECRET_ID",trigger:"blur"}]},b=async()=>{var s,e;await((s=d.value)==null?void 0:s.validate()),await q(t),(e=m.value)==null||e.close(),V("success")},C=async()=>{const s=await A({type:t.type});for(const e in s)t[e]=s[e]},R=s=>{var e;t.type=s,(e=m.value)==null||e.open(),C()},P=()=>{var s;(s=d.value)==null||s.resetFields()};return g({open:R}),(s,e)=>{const p=S,u=w,f=T,D=x,v=I;return n(),Y("div",G,[a(K,{ref_key:"popupRef",ref:m,title:"设置短信",async:!0,width:"550px",onConfirm:b,onClose:P},{default:o(()=>[a(v,{ref_key:"formRef",ref:d,model:l(t),"label-width":"120px",rules:k},{default:o(()=>[a(p,{label:"短信渠道"},{default:o(()=>[B("div",null,F(l(t).name),1)]),_:1}),a(p,{label:"短信签名",prop:"sign"},{default:o(()=>[a(u,{modelValue:l(t).sign,"onUpdate:modelValue":e[0]||(e[0]=r=>l(t).sign=r),placeholder:"请输入短信签名"},null,8,["modelValue"])]),_:1}),l(t).type=="ali"?(n(),i(p,{key:0,label:"APP_KEY",prop:"app_key"},{default:o(()=>[a(u,{modelValue:l(t).app_key,"onUpdate:modelValue":e[1]||(e[1]=r=>l(t).app_key=r),placeholder:"请输入APP_KEY"},null,8,["modelValue"])]),_:1})):_("",!0),l(t).type=="tencent"?(n(),i(p,{key:1,label:"APP_ID",prop:"app_id"},{default:o(()=>[a(u,{modelValue:l(t).app_id,"onUpdate:modelValue":e[2]||(e[2]=r=>l(t).app_id=r),placeholder:"请输入APP_ID"},null,8,["modelValue"])]),_:1})):_("",!0),l(t).type=="tencent"?(n(),i(p,{key:2,label:"SECRET_ID",prop:"secret_id"},{default:o(()=>[a(u,{modelValue:l(t).secret_id,"onUpdate:modelValue":e[3]||(e[3]=r=>l(t).secret_id=r),placeholder:"请输入SECRET_ID"},null,8,["modelValue"])]),_:1})):_("",!0),a(p,{label:"SECRET_KEY",prop:"secret_key"},{default:o(()=>[a(u,{modelValue:l(t).secret_key,"onUpdate:modelValue":e[4]||(e[4]=r=>l(t).secret_key=r),placeholder:"请输入SECRET_KEY"},null,8,["modelValue"])]),_:1}),a(p,{label:"状态",prop:"status"},{default:o(()=>[a(D,{modelValue:l(t).status,"onUpdate:modelValue":e[5]||(e[5]=r=>l(t).status=r)},{default:o(()=>[a(f,{value:0},{default:o(()=>[...e[6]||(e[6]=[c("关闭",-1)])]),_:1}),a(f,{value:1},{default:o(()=>[...e[7]||(e[7]=[c("开启",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},512)])}}});export{M as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CeopjxTy.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js similarity index 95% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CeopjxTy.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js index 556037e0..40897a3c 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CeopjxTy.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js @@ -1 +1 @@ -import{D as C,B as D,C as I,h as N,G as U,I as q}from"./element-plus-DFTWCWyi.js";import{a as B,b as F}from"./dict-BN4CTMA_.js";import{_ as A}from"./index-BQY2-_X1.js";import{f as G,ak as T,I as z,a as o,aN as t,J as _,O as c,A as J}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as v,r as O,n as S}from"./@vue/reactivity-DiY1c2vO.js";const j={class:"edit-popup"},Y=G({__name:"edit",emits:["success","close"],setup(H,{expose:V,emit:b}){const p=b,i=v(),m=v(),d=S("add"),w=J(()=>d.value=="edit"?"编辑字典数据":"新增字典数据"),l=O({id:"",type_value:"",name:"",value:"",sort:0,status:1,remark:"",type_id:0}),x={name:[{required:!0,message:"请输入数据名称",trigger:["blur"]}],value:[{required:!0,message:"请输入数据值",trigger:["blur"]}]},k=async()=>{var s,e;await((s=i.value)==null?void 0:s.validate()),d.value=="edit"?await B(l):await F(l),(e=m.value)==null||e.close(),p("success")},y=()=>{p("close")};return V({open:(s="add")=>{var e;d.value=s,(e=m.value)==null||e.open()},setFormData:s=>{for(const e in l)s[e]!=null&&s[e]!=null&&(l[e]=s[e])}}),(s,e)=>{const n=I,u=D,g=N,f=q,R=U,E=C;return T(),z("div",j,[o(A,{ref_key:"popupRef",ref:m,title:a(w),async:!0,width:"550px",onConfirm:k,onClose:y},{default:t(()=>[o(E,{class:"ls-form",ref_key:"formRef",ref:i,rules:x,model:a(l),"label-width":"84px"},{default:t(()=>[o(u,{label:"字典类型"},{default:t(()=>[o(n,{"model-value":a(l).type_value,placeholder:"请输入字典类型",disabled:""},null,8,["model-value"])]),_:1}),o(u,{label:"数据名称",prop:"name"},{default:t(()=>[o(n,{modelValue:a(l).name,"onUpdate:modelValue":e[0]||(e[0]=r=>a(l).name=r),placeholder:"请输入数据名称",clearable:""},null,8,["modelValue"])]),_:1}),o(u,{label:"数据值",prop:"value"},{default:t(()=>[o(n,{modelValue:a(l).value,"onUpdate:modelValue":e[1]||(e[1]=r=>a(l).value=r),placeholder:"请输入数据值",clearable:""},null,8,["modelValue"])]),_:1}),o(u,{label:"排序",prop:"sort"},{default:t(()=>[_("div",null,[o(g,{modelValue:a(l).sort,"onUpdate:modelValue":e[2]||(e[2]=r=>a(l).sort=r),min:0,max:9999},null,8,["modelValue"]),e[5]||(e[5]=_("div",{class:"form-tips"},"数值越大越排前",-1))])]),_:1}),o(u,{label:"状态",required:"",prop:"status"},{default:t(()=>[o(R,{modelValue:a(l).status,"onUpdate:modelValue":e[3]||(e[3]=r=>a(l).status=r)},{default:t(()=>[o(f,{value:1},{default:t(()=>[...e[6]||(e[6]=[c("正常",-1)])]),_:1}),o(f,{value:0},{default:t(()=>[...e[7]||(e[7]=[c("停用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(u,{label:"备注",prop:"remark"},{default:t(()=>[o(n,{modelValue:a(l).remark,"onUpdate:modelValue":e[4]||(e[4]=r=>a(l).remark=r),type:"textarea",autosize:{minRows:4,maxRows:6},clearable:"",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{Y as _}; +import{D as C,B as D,C as I,h as N,G as U,I as q}from"./element-plus-DFTWCWyi.js";import{a as B,b as F}from"./dict-DnKASfBm.js";import{_ as A}from"./index-SocYjCJ1.js";import{f as G,ak as T,I as z,a as o,aN as t,J as _,O as c,A as J}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as v,r as O,n as S}from"./@vue/reactivity-DiY1c2vO.js";const j={class:"edit-popup"},Y=G({__name:"edit",emits:["success","close"],setup(H,{expose:V,emit:b}){const p=b,i=v(),m=v(),d=S("add"),w=J(()=>d.value=="edit"?"编辑字典数据":"新增字典数据"),l=O({id:"",type_value:"",name:"",value:"",sort:0,status:1,remark:"",type_id:0}),x={name:[{required:!0,message:"请输入数据名称",trigger:["blur"]}],value:[{required:!0,message:"请输入数据值",trigger:["blur"]}]},k=async()=>{var s,e;await((s=i.value)==null?void 0:s.validate()),d.value=="edit"?await B(l):await F(l),(e=m.value)==null||e.close(),p("success")},y=()=>{p("close")};return V({open:(s="add")=>{var e;d.value=s,(e=m.value)==null||e.open()},setFormData:s=>{for(const e in l)s[e]!=null&&s[e]!=null&&(l[e]=s[e])}}),(s,e)=>{const n=I,u=D,g=N,f=q,R=U,E=C;return T(),z("div",j,[o(A,{ref_key:"popupRef",ref:m,title:a(w),async:!0,width:"550px",onConfirm:k,onClose:y},{default:t(()=>[o(E,{class:"ls-form",ref_key:"formRef",ref:i,rules:x,model:a(l),"label-width":"84px"},{default:t(()=>[o(u,{label:"字典类型"},{default:t(()=>[o(n,{"model-value":a(l).type_value,placeholder:"请输入字典类型",disabled:""},null,8,["model-value"])]),_:1}),o(u,{label:"数据名称",prop:"name"},{default:t(()=>[o(n,{modelValue:a(l).name,"onUpdate:modelValue":e[0]||(e[0]=r=>a(l).name=r),placeholder:"请输入数据名称",clearable:""},null,8,["modelValue"])]),_:1}),o(u,{label:"数据值",prop:"value"},{default:t(()=>[o(n,{modelValue:a(l).value,"onUpdate:modelValue":e[1]||(e[1]=r=>a(l).value=r),placeholder:"请输入数据值",clearable:""},null,8,["modelValue"])]),_:1}),o(u,{label:"排序",prop:"sort"},{default:t(()=>[_("div",null,[o(g,{modelValue:a(l).sort,"onUpdate:modelValue":e[2]||(e[2]=r=>a(l).sort=r),min:0,max:9999},null,8,["modelValue"]),e[5]||(e[5]=_("div",{class:"form-tips"},"数值越大越排前",-1))])]),_:1}),o(u,{label:"状态",required:"",prop:"status"},{default:t(()=>[o(R,{modelValue:a(l).status,"onUpdate:modelValue":e[3]||(e[3]=r=>a(l).status=r)},{default:t(()=>[o(f,{value:1},{default:t(()=>[...e[6]||(e[6]=[c("正常",-1)])]),_:1}),o(f,{value:0},{default:t(()=>[...e[7]||(e[7]=[c("停用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(u,{label:"备注",prop:"remark"},{default:t(()=>[o(n,{modelValue:a(l).remark,"onUpdate:modelValue":e[4]||(e[4]=r=>a(l).remark=r),type:"textarea",autosize:{minRows:4,maxRows:6},clearable:"",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{Y as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-D0_v-7QH.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js similarity index 94% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-D0_v-7QH.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js index 25375023..a4c6fc82 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-D0_v-7QH.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js @@ -1 +1 @@ -import{D as R,B as E,C,G as q,I as D}from"./element-plus-DFTWCWyi.js";import{g as F,h as I}from"./dict-BN4CTMA_.js";import{_ as T}from"./index-BQY2-_X1.js";import{f as U,ak as B,I as N,a as t,aN as s,O as _,A}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as c,r as G,n as h}from"./@vue/reactivity-DiY1c2vO.js";const z={class:"edit-popup"},P=U({__name:"edit",emits:["success","close"],setup(O,{expose:y,emit:V}){const d=V,i=c(),m=c(),u=h("add"),v=A(()=>u.value=="edit"?"编辑字典类型":"新增字典类型"),o=G({id:"",name:"",type:"",status:1,remark:""}),b={name:[{required:!0,message:"请输入字典名称",trigger:["blur"]}],type:[{required:!0,message:"请输入字典类型",trigger:["blur"]}]},w=async()=>{var l,e;await((l=i.value)==null?void 0:l.validate()),u.value=="edit"?await F(o):await I(o),(e=m.value)==null||e.close(),d("success")},g=()=>{d("close")};return y({open:(l="add")=>{var e;u.value=l,(e=m.value)==null||e.open()},setFormData:l=>{for(const e in o)l[e]!=null&&l[e]!=null&&(o[e]=l[e])}}),(l,e)=>{const p=C,n=E,f=D,k=q,x=R;return B(),N("div",z,[t(T,{ref_key:"popupRef",ref:m,title:a(v),async:!0,width:"550px",onConfirm:w,onClose:g},{default:s(()=>[t(x,{class:"ls-form",ref_key:"formRef",ref:i,rules:b,model:a(o),"label-width":"84px"},{default:s(()=>[t(n,{label:"字典名称",prop:"name"},{default:s(()=>[t(p,{modelValue:a(o).name,"onUpdate:modelValue":e[0]||(e[0]=r=>a(o).name=r),placeholder:"请输入字典名称",clearable:""},null,8,["modelValue"])]),_:1}),t(n,{label:"字典类型",prop:"type"},{default:s(()=>[t(p,{modelValue:a(o).type,"onUpdate:modelValue":e[1]||(e[1]=r=>a(o).type=r),placeholder:"请输入字典类型",clearable:""},null,8,["modelValue"])]),_:1}),t(n,{label:"字典状态",required:"",prop:"status"},{default:s(()=>[t(k,{modelValue:a(o).status,"onUpdate:modelValue":e[2]||(e[2]=r=>a(o).status=r)},{default:s(()=>[t(f,{value:1},{default:s(()=>[...e[4]||(e[4]=[_("正常",-1)])]),_:1}),t(f,{value:0},{default:s(()=>[...e[5]||(e[5]=[_("停用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(n,{label:"备注",prop:"remark"},{default:s(()=>[t(p,{modelValue:a(o).remark,"onUpdate:modelValue":e[3]||(e[3]=r=>a(o).remark=r),type:"textarea",autosize:{minRows:4,maxRows:6},clearable:"",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{P as _}; +import{D as R,B as E,C,G as q,I as D}from"./element-plus-DFTWCWyi.js";import{g as F,h as I}from"./dict-DnKASfBm.js";import{_ as T}from"./index-SocYjCJ1.js";import{f as U,ak as B,I as N,a as t,aN as s,O as _,A}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as c,r as G,n as h}from"./@vue/reactivity-DiY1c2vO.js";const z={class:"edit-popup"},P=U({__name:"edit",emits:["success","close"],setup(O,{expose:y,emit:V}){const d=V,i=c(),m=c(),u=h("add"),v=A(()=>u.value=="edit"?"编辑字典类型":"新增字典类型"),o=G({id:"",name:"",type:"",status:1,remark:""}),b={name:[{required:!0,message:"请输入字典名称",trigger:["blur"]}],type:[{required:!0,message:"请输入字典类型",trigger:["blur"]}]},w=async()=>{var l,e;await((l=i.value)==null?void 0:l.validate()),u.value=="edit"?await F(o):await I(o),(e=m.value)==null||e.close(),d("success")},g=()=>{d("close")};return y({open:(l="add")=>{var e;u.value=l,(e=m.value)==null||e.open()},setFormData:l=>{for(const e in o)l[e]!=null&&l[e]!=null&&(o[e]=l[e])}}),(l,e)=>{const p=C,n=E,f=D,k=q,x=R;return B(),N("div",z,[t(T,{ref_key:"popupRef",ref:m,title:a(v),async:!0,width:"550px",onConfirm:w,onClose:g},{default:s(()=>[t(x,{class:"ls-form",ref_key:"formRef",ref:i,rules:b,model:a(o),"label-width":"84px"},{default:s(()=>[t(n,{label:"字典名称",prop:"name"},{default:s(()=>[t(p,{modelValue:a(o).name,"onUpdate:modelValue":e[0]||(e[0]=r=>a(o).name=r),placeholder:"请输入字典名称",clearable:""},null,8,["modelValue"])]),_:1}),t(n,{label:"字典类型",prop:"type"},{default:s(()=>[t(p,{modelValue:a(o).type,"onUpdate:modelValue":e[1]||(e[1]=r=>a(o).type=r),placeholder:"请输入字典类型",clearable:""},null,8,["modelValue"])]),_:1}),t(n,{label:"字典状态",required:"",prop:"status"},{default:s(()=>[t(k,{modelValue:a(o).status,"onUpdate:modelValue":e[2]||(e[2]=r=>a(o).status=r)},{default:s(()=>[t(f,{value:1},{default:s(()=>[...e[4]||(e[4]=[_("正常",-1)])]),_:1}),t(f,{value:0},{default:s(()=>[...e[5]||(e[5]=[_("停用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(n,{label:"备注",prop:"remark"},{default:s(()=>[t(p,{modelValue:a(o).remark,"onUpdate:modelValue":e[3]||(e[3]=r=>a(o).remark=r),type:"textarea",autosize:{minRows:4,maxRows:6},clearable:"",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{P as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-V9yb54Tt.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-ChNKntck.js similarity index 93% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-V9yb54Tt.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-ChNKntck.js index e940425e..d69193b6 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-V9yb54Tt.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-ChNKntck.js @@ -1 +1 @@ -import{D as G,B as H,C as J,W as L,P,Q,g as W}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./picker-cSgp8cEl.js";import{d as K}from"./department-CSUh_x-a.js";import{j as M}from"./post-CjhbCF7F.js";import{b as X,d as Y,e as Z}from"./admin-BAFPFiwc.js";import{r as $}from"./role-Dce31LXP.js";import{_ as h}from"./index-BQY2-_X1.js";import{u as ee}from"./useDictOptions-CT8hbU1b.js";import{f as le,ak as i,I as V,a as t,aN as d,J as u,F as j,ap as k,G as p,H as U,A as oe}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,q as C,r as q,n as ae}from"./@vue/reactivity-DiY1c2vO.js";const te={class:"edit-popup"},Ve=le({__name:"edit",emits:["success","close"],setup(re,{expose:D,emit:R}){const v=R,w=C(),m=C(),f=ae("add"),A=oe(()=>f.value=="edit"?"编辑管理员":"新增管理员"),l=q({id:"",account:"",name:"",dept_id:[],jobs_id:[],role_id:[],avatar:"",password:"",password_confirm:"",disable:0,multipoint_login:1,root:0}),g=(n,e,r)=>{l.password&&(e||r(new Error("请再次输入密码")),e!==l.password&&r(new Error("两次输入密码不一致!"))),r()},_=q({account:[{required:!0,message:"请输入账号",trigger:["blur"]}],name:[{required:!0,message:"请输入名称",trigger:["blur"]}],role_id:[{required:!0,validator:(n,e,r)=>{l.root||l.role_id.length?r():r(new Error("请选择角色"))}}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}],password_confirm:[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:g,trigger:"blur"}]}),{optionsData:c}=ee({role:{api:$},jobs:{api:M},dept:{api:K}}),B=async()=>{var n,e;await((n=w.value)==null?void 0:n.validate()),f.value=="edit"?await X(l):await Y(l),(e=m.value)==null||e.close(),v("success")},F=(n="add")=>{var e;f.value=n,(e=m.value)==null||e.open()},I=async n=>{_.password=[],_.password_confirm=[{validator:g,trigger:"blur"}];const e=await Z({id:n.id});for(const r in l)e[r]!=null&&e[r]!=null&&(l[r]=e[r])},N=()=>{v("close")};return D({open:F,setFormData:I}),(n,e)=>{const r=J,s=H,S=z,O=L,y=Q,E=P,x=W,T=G;return i(),V("div",te,[t(h,{ref_key:"popupRef",ref:m,title:o(A),async:!0,width:"550px",onConfirm:B,onClose:N},{default:d(()=>[t(T,{ref_key:"formRef",ref:w,model:o(l),"label-width":"84px",rules:o(_)},{default:d(()=>[t(s,{label:"账号",prop:"account"},{default:d(()=>[t(r,{modelValue:o(l).account,"onUpdate:modelValue":e[0]||(e[0]=a=>o(l).account=a),disabled:o(l).root==1,placeholder:"请输入账号",clearable:""},null,8,["modelValue","disabled"])]),_:1}),t(s,{label:"头像"},{default:d(()=>[u("div",null,[u("div",null,[t(S,{modelValue:o(l).avatar,"onUpdate:modelValue":e[1]||(e[1]=a=>o(l).avatar=a),limit:1},null,8,["modelValue"])]),e[10]||(e[10]=u("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1}),t(s,{label:"名称",prop:"name"},{default:d(()=>[t(r,{modelValue:o(l).name,"onUpdate:modelValue":e[2]||(e[2]=a=>o(l).name=a),placeholder:"请输入名称",clearable:""},null,8,["modelValue"])]),_:1}),t(s,{label:"归属部门",prop:"dept_id"},{default:d(()=>[t(O,{class:"flex-1",modelValue:o(l).dept_id,"onUpdate:modelValue":e[3]||(e[3]=a=>o(l).dept_id=a),data:o(c).dept,clearable:"",multiple:"","node-key":"id",props:{value:"id",label:"name",disabled(a){return a.status!==1}},"check-strictly":"","default-expand-all":!0,placeholder:"请选择上级部门"},null,8,["modelValue","data","props"])]),_:1}),t(s,{label:"岗位",prop:"jobs_id"},{default:d(()=>[t(E,{class:"flex-1",modelValue:o(l).jobs_id,"onUpdate:modelValue":e[4]||(e[4]=a=>o(l).jobs_id=a),clearable:"",multiple:"",placeholder:"请选择岗位"},{default:d(()=>[(i(!0),V(j,null,k(o(c).jobs,(a,b)=>(i(),p(y,{key:b,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(l).root!=1?(i(),p(s,{key:0,label:"角色",prop:"role_id"},{default:d(()=>[t(E,{modelValue:o(l).role_id,"onUpdate:modelValue":e[5]||(e[5]=a=>o(l).role_id=a),disabled:o(l).root==1,class:"flex-1",multiple:"",placeholder:"请选择角色",clearable:""},{default:d(()=>[(i(!0),V(j,null,k(o(c).role,(a,b)=>(i(),p(y,{key:b,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled"])]),_:1})):U("",!0),t(s,{label:"密码",prop:"password"},{default:d(()=>[t(r,{modelValue:o(l).password,"onUpdate:modelValue":e[6]||(e[6]=a=>o(l).password=a),"show-password":"",clearable:"",placeholder:"请输入密码"},null,8,["modelValue"])]),_:1}),t(s,{label:"确认密码",prop:"password_confirm"},{default:d(()=>[t(r,{modelValue:o(l).password_confirm,"onUpdate:modelValue":e[7]||(e[7]=a=>o(l).password_confirm=a),"show-password":"",clearable:"",placeholder:"请输入确认密码"},null,8,["modelValue"])]),_:1}),o(l).root!=1?(i(),p(s,{key:1,label:"管理员状态"},{default:d(()=>[t(x,{modelValue:o(l).disable,"onUpdate:modelValue":e[8]||(e[8]=a=>o(l).disable=a),"active-value":0,"inactive-value":1},null,8,["modelValue"])]),_:1})):U("",!0),t(s,{label:"多处登录"},{default:d(()=>[u("div",null,[t(x,{modelValue:o(l).multipoint_login,"onUpdate:modelValue":e[9]||(e[9]=a=>o(l).multipoint_login=a),"active-value":1,"inactive-value":0},null,8,["modelValue"]),e[11]||(e[11]=u("div",{class:"form-tips"},"允许多人同时在线登录",-1))])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["title"])])}}});export{Ve as _}; +import{D as G,B as H,C as J,W as L,P,Q,g as W}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./picker-DzCeqD7m.js";import{d as K}from"./department-D5OVad_r.js";import{j as M}from"./post-D694zeqo.js";import{b as X,d as Y,e as Z}from"./admin-CGNFdyXh.js";import{r as $}from"./role-BvkAFvOK.js";import{_ as h}from"./index-SocYjCJ1.js";import{u as ee}from"./useDictOptions-lSbSoycG.js";import{f as le,ak as i,I as V,a as t,aN as d,J as u,F as j,ap as k,G as p,H as U,A as oe}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,q as C,r as q,n as ae}from"./@vue/reactivity-DiY1c2vO.js";const te={class:"edit-popup"},Ve=le({__name:"edit",emits:["success","close"],setup(re,{expose:D,emit:R}){const v=R,w=C(),m=C(),f=ae("add"),A=oe(()=>f.value=="edit"?"编辑管理员":"新增管理员"),l=q({id:"",account:"",name:"",dept_id:[],jobs_id:[],role_id:[],avatar:"",password:"",password_confirm:"",disable:0,multipoint_login:1,root:0}),g=(n,e,r)=>{l.password&&(e||r(new Error("请再次输入密码")),e!==l.password&&r(new Error("两次输入密码不一致!"))),r()},_=q({account:[{required:!0,message:"请输入账号",trigger:["blur"]}],name:[{required:!0,message:"请输入名称",trigger:["blur"]}],role_id:[{required:!0,validator:(n,e,r)=>{l.root||l.role_id.length?r():r(new Error("请选择角色"))}}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}],password_confirm:[{required:!0,message:"请输入确认密码",trigger:["blur"]},{validator:g,trigger:"blur"}]}),{optionsData:c}=ee({role:{api:$},jobs:{api:M},dept:{api:K}}),B=async()=>{var n,e;await((n=w.value)==null?void 0:n.validate()),f.value=="edit"?await X(l):await Y(l),(e=m.value)==null||e.close(),v("success")},F=(n="add")=>{var e;f.value=n,(e=m.value)==null||e.open()},I=async n=>{_.password=[],_.password_confirm=[{validator:g,trigger:"blur"}];const e=await Z({id:n.id});for(const r in l)e[r]!=null&&e[r]!=null&&(l[r]=e[r])},N=()=>{v("close")};return D({open:F,setFormData:I}),(n,e)=>{const r=J,s=H,S=z,O=L,y=Q,E=P,x=W,T=G;return i(),V("div",te,[t(h,{ref_key:"popupRef",ref:m,title:o(A),async:!0,width:"550px",onConfirm:B,onClose:N},{default:d(()=>[t(T,{ref_key:"formRef",ref:w,model:o(l),"label-width":"84px",rules:o(_)},{default:d(()=>[t(s,{label:"账号",prop:"account"},{default:d(()=>[t(r,{modelValue:o(l).account,"onUpdate:modelValue":e[0]||(e[0]=a=>o(l).account=a),disabled:o(l).root==1,placeholder:"请输入账号",clearable:""},null,8,["modelValue","disabled"])]),_:1}),t(s,{label:"头像"},{default:d(()=>[u("div",null,[u("div",null,[t(S,{modelValue:o(l).avatar,"onUpdate:modelValue":e[1]||(e[1]=a=>o(l).avatar=a),limit:1},null,8,["modelValue"])]),e[10]||(e[10]=u("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1}),t(s,{label:"名称",prop:"name"},{default:d(()=>[t(r,{modelValue:o(l).name,"onUpdate:modelValue":e[2]||(e[2]=a=>o(l).name=a),placeholder:"请输入名称",clearable:""},null,8,["modelValue"])]),_:1}),t(s,{label:"归属部门",prop:"dept_id"},{default:d(()=>[t(O,{class:"flex-1",modelValue:o(l).dept_id,"onUpdate:modelValue":e[3]||(e[3]=a=>o(l).dept_id=a),data:o(c).dept,clearable:"",multiple:"","node-key":"id",props:{value:"id",label:"name",disabled(a){return a.status!==1}},"check-strictly":"","default-expand-all":!0,placeholder:"请选择上级部门"},null,8,["modelValue","data","props"])]),_:1}),t(s,{label:"岗位",prop:"jobs_id"},{default:d(()=>[t(E,{class:"flex-1",modelValue:o(l).jobs_id,"onUpdate:modelValue":e[4]||(e[4]=a=>o(l).jobs_id=a),clearable:"",multiple:"",placeholder:"请选择岗位"},{default:d(()=>[(i(!0),V(j,null,k(o(c).jobs,(a,b)=>(i(),p(y,{key:b,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(l).root!=1?(i(),p(s,{key:0,label:"角色",prop:"role_id"},{default:d(()=>[t(E,{modelValue:o(l).role_id,"onUpdate:modelValue":e[5]||(e[5]=a=>o(l).role_id=a),disabled:o(l).root==1,class:"flex-1",multiple:"",placeholder:"请选择角色",clearable:""},{default:d(()=>[(i(!0),V(j,null,k(o(c).role,(a,b)=>(i(),p(y,{key:b,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled"])]),_:1})):U("",!0),t(s,{label:"密码",prop:"password"},{default:d(()=>[t(r,{modelValue:o(l).password,"onUpdate:modelValue":e[6]||(e[6]=a=>o(l).password=a),"show-password":"",clearable:"",placeholder:"请输入密码"},null,8,["modelValue"])]),_:1}),t(s,{label:"确认密码",prop:"password_confirm"},{default:d(()=>[t(r,{modelValue:o(l).password_confirm,"onUpdate:modelValue":e[7]||(e[7]=a=>o(l).password_confirm=a),"show-password":"",clearable:"",placeholder:"请输入确认密码"},null,8,["modelValue"])]),_:1}),o(l).root!=1?(i(),p(s,{key:1,label:"管理员状态"},{default:d(()=>[t(x,{modelValue:o(l).disable,"onUpdate:modelValue":e[8]||(e[8]=a=>o(l).disable=a),"active-value":0,"inactive-value":1},null,8,["modelValue"])]),_:1})):U("",!0),t(s,{label:"多处登录"},{default:d(()=>[u("div",null,[t(x,{modelValue:o(l).multipoint_login,"onUpdate:modelValue":e[9]||(e[9]=a=>o(l).multipoint_login=a),"active-value":1,"inactive-value":0},null,8,["modelValue"]),e[11]||(e[11]=u("div",{class:"form-tips"},"允许多人同时在线登录",-1))])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["title"])])}}});export{Ve as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-C66WHFUi.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js similarity index 96% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-C66WHFUi.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js index 4866a251..bcc0ca4f 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-C66WHFUi.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js @@ -1 +1 @@ -import{D as B,B as D,I as U,C as Y,G}from"./element-plus-DFTWCWyi.js";import{r as g}from"./index-Nt5zMHcc.js";import{_ as T}from"./index-BQY2-_X1.js";import{f as h,ak as _,I as S,a as o,aN as r,J as u,O as f,G as F,H as b,A as H}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as E,r as J}from"./@vue/reactivity-DiY1c2vO.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";function le(){return g.get({url:"/setting.storage/lists"})}function L(d){return g.post({url:"/setting.storage/setup",params:d})}function Q(d){return g.get({url:"/setting.storage/detail",params:d})}const j={class:"edit-popup"},z={class:"form-tips"},M={key:0},P={class:"flex-1"},W={class:"flex-1"},ae=h({__name:"edit",emits:["success"],setup(d,{expose:v,emit:C}){const R=C,p=E(),m=E(),t=J({engine:"",bucket:"",access_key:"",secret_key:"",domain:"",region:"",status:0}),q=[{name:"本地存储",type:"local",tips:"本地存储方式不需要配置其他参数"},{name:"七牛云存储",type:"qiniu",tips:"切换七牛云存储后,素材库需要重新上传至七牛云"},{name:"阿里云OSS",type:"aliyun",tips:"切换阿里云OSS后,素材库需要重新上传至阿里云OSS"},{name:"腾讯云OSS",type:"qcloud",tips:"切换腾讯云OSS后,素材库需要重新上传至腾讯云OSS"}],x={bucket:[{required:!0,message:"请输入存储空间名称",trigger:"blur"}],access_key:[{required:!0,message:"请输入ACCESS_KEY",trigger:"blur"}],secret_key:[{required:!0,message:"请输入SECRET_KEY",trigger:"blur"}],domain:[{required:!0,message:"请输入空间域名",trigger:"blur"}],region:[{required:!0,message:"请输入REGION",trigger:"blur"}]},k=H(()=>q.find(s=>s.type==t.engine)),O=async()=>{var s,e;await((s=p.value)==null?void 0:s.validate()),await L(t),(e=m.value)==null||e.close(),R("success")},K=async()=>{const s=await Q({engine:t.engine});for(const e in s)t[e]=s[e]},w=s=>{var e;t.engine=s,(e=m.value)==null||e.open(),K()},I=()=>{var s;(s=p.value)==null||s.resetFields()};return v({open:w}),(s,e)=>{const c=U,n=D,i=Y,N=G,A=B;return _(),S("div",j,[o(T,{ref_key:"popupRef",ref:m,title:"设置存储",async:!0,width:"550px",onConfirm:O,onClose:I},{default:r(()=>[o(A,{ref_key:"formRef",ref:p,model:l(t),"label-width":"120px",rules:x},{default:r(()=>[o(n,{label:"存储方式",prop:"engine"},{default:r(()=>{var a;return[u("div",null,[o(c,{checked:""},{default:r(()=>{var y;return[f(V((y=l(k))==null?void 0:y.name),1)]}),_:1}),u("div",z,V((a=l(k))==null?void 0:a.tips),1)])]}),_:1}),l(t).engine!=="local"?(_(),S("div",M,[o(n,{label:" 存储空间名称",prop:"bucket"},{default:r(()=>[u("div",P,[o(i,{modelValue:l(t).bucket,"onUpdate:modelValue":e[0]||(e[0]=a=>l(t).bucket=a),placeholder:"请输入存储空间名称(Bucket)",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"ACCESS_KEY",prop:"access_key"},{default:r(()=>[o(i,{modelValue:l(t).access_key,"onUpdate:modelValue":e[1]||(e[1]=a=>l(t).access_key=a),placeholder:"请输入ACCESS_KEY(AK)",clearable:""},null,8,["modelValue"])]),_:1}),o(n,{label:"SECRET_KEY",prop:"secret_key"},{default:r(()=>[o(i,{modelValue:l(t).secret_key,"onUpdate:modelValue":e[2]||(e[2]=a=>l(t).secret_key=a),placeholder:"请输入SECRET_KEY(SK)",clearable:""},null,8,["modelValue"])]),_:1}),o(n,{label:"空间域名",prop:"domain"},{default:r(()=>[u("div",W,[u("div",null,[o(i,{modelValue:l(t).domain,"onUpdate:modelValue":e[3]||(e[3]=a=>l(t).domain=a),placeholder:"请输入空间域名(Domain)",clearable:""},null,8,["modelValue"])]),e[6]||(e[6]=u("div",{class:"form-tips"}," 请补全http://或https://,例如https://static.cloud.com ",-1))])]),_:1}),l(t).engine=="qcloud"?(_(),F(n,{key:0,label:"REGION",prop:"region"},{default:r(()=>[o(i,{modelValue:l(t).region,"onUpdate:modelValue":e[4]||(e[4]=a=>l(t).region=a),placeholder:"请输入region",clearable:""},null,8,["modelValue"])]),_:1})):b("",!0)])):b("",!0),o(n,{label:"状态",prop:"status"},{default:r(()=>[o(N,{modelValue:l(t).status,"onUpdate:modelValue":e[5]||(e[5]=a=>l(t).status=a)},{default:r(()=>[o(c,{value:0},{default:r(()=>[...e[7]||(e[7]=[f("关闭",-1)])]),_:1}),o(c,{value:1},{default:r(()=>[...e[8]||(e[8]=[f("开启",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},512)])}}});export{ae as _,le as s}; +import{D as B,B as D,I as U,C as Y,G}from"./element-plus-DFTWCWyi.js";import{r as g}from"./index--WnM67ZH.js";import{_ as T}from"./index-SocYjCJ1.js";import{f as h,ak as _,I as S,a as o,aN as r,J as u,O as f,G as F,H as b,A as H}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as E,r as J}from"./@vue/reactivity-DiY1c2vO.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";function le(){return g.get({url:"/setting.storage/lists"})}function L(d){return g.post({url:"/setting.storage/setup",params:d})}function Q(d){return g.get({url:"/setting.storage/detail",params:d})}const j={class:"edit-popup"},z={class:"form-tips"},M={key:0},P={class:"flex-1"},W={class:"flex-1"},ae=h({__name:"edit",emits:["success"],setup(d,{expose:v,emit:C}){const R=C,p=E(),m=E(),t=J({engine:"",bucket:"",access_key:"",secret_key:"",domain:"",region:"",status:0}),q=[{name:"本地存储",type:"local",tips:"本地存储方式不需要配置其他参数"},{name:"七牛云存储",type:"qiniu",tips:"切换七牛云存储后,素材库需要重新上传至七牛云"},{name:"阿里云OSS",type:"aliyun",tips:"切换阿里云OSS后,素材库需要重新上传至阿里云OSS"},{name:"腾讯云OSS",type:"qcloud",tips:"切换腾讯云OSS后,素材库需要重新上传至腾讯云OSS"}],x={bucket:[{required:!0,message:"请输入存储空间名称",trigger:"blur"}],access_key:[{required:!0,message:"请输入ACCESS_KEY",trigger:"blur"}],secret_key:[{required:!0,message:"请输入SECRET_KEY",trigger:"blur"}],domain:[{required:!0,message:"请输入空间域名",trigger:"blur"}],region:[{required:!0,message:"请输入REGION",trigger:"blur"}]},k=H(()=>q.find(s=>s.type==t.engine)),O=async()=>{var s,e;await((s=p.value)==null?void 0:s.validate()),await L(t),(e=m.value)==null||e.close(),R("success")},K=async()=>{const s=await Q({engine:t.engine});for(const e in s)t[e]=s[e]},w=s=>{var e;t.engine=s,(e=m.value)==null||e.open(),K()},I=()=>{var s;(s=p.value)==null||s.resetFields()};return v({open:w}),(s,e)=>{const c=U,n=D,i=Y,N=G,A=B;return _(),S("div",j,[o(T,{ref_key:"popupRef",ref:m,title:"设置存储",async:!0,width:"550px",onConfirm:O,onClose:I},{default:r(()=>[o(A,{ref_key:"formRef",ref:p,model:l(t),"label-width":"120px",rules:x},{default:r(()=>[o(n,{label:"存储方式",prop:"engine"},{default:r(()=>{var a;return[u("div",null,[o(c,{checked:""},{default:r(()=>{var y;return[f(V((y=l(k))==null?void 0:y.name),1)]}),_:1}),u("div",z,V((a=l(k))==null?void 0:a.tips),1)])]}),_:1}),l(t).engine!=="local"?(_(),S("div",M,[o(n,{label:" 存储空间名称",prop:"bucket"},{default:r(()=>[u("div",P,[o(i,{modelValue:l(t).bucket,"onUpdate:modelValue":e[0]||(e[0]=a=>l(t).bucket=a),placeholder:"请输入存储空间名称(Bucket)",clearable:""},null,8,["modelValue"])])]),_:1}),o(n,{label:"ACCESS_KEY",prop:"access_key"},{default:r(()=>[o(i,{modelValue:l(t).access_key,"onUpdate:modelValue":e[1]||(e[1]=a=>l(t).access_key=a),placeholder:"请输入ACCESS_KEY(AK)",clearable:""},null,8,["modelValue"])]),_:1}),o(n,{label:"SECRET_KEY",prop:"secret_key"},{default:r(()=>[o(i,{modelValue:l(t).secret_key,"onUpdate:modelValue":e[2]||(e[2]=a=>l(t).secret_key=a),placeholder:"请输入SECRET_KEY(SK)",clearable:""},null,8,["modelValue"])]),_:1}),o(n,{label:"空间域名",prop:"domain"},{default:r(()=>[u("div",W,[u("div",null,[o(i,{modelValue:l(t).domain,"onUpdate:modelValue":e[3]||(e[3]=a=>l(t).domain=a),placeholder:"请输入空间域名(Domain)",clearable:""},null,8,["modelValue"])]),e[6]||(e[6]=u("div",{class:"form-tips"}," 请补全http://或https://,例如https://static.cloud.com ",-1))])]),_:1}),l(t).engine=="qcloud"?(_(),F(n,{key:0,label:"REGION",prop:"region"},{default:r(()=>[o(i,{modelValue:l(t).region,"onUpdate:modelValue":e[4]||(e[4]=a=>l(t).region=a),placeholder:"请输入region",clearable:""},null,8,["modelValue"])]),_:1})):b("",!0)])):b("",!0),o(n,{label:"状态",prop:"status"},{default:r(()=>[o(N,{modelValue:l(t).status,"onUpdate:modelValue":e[5]||(e[5]=a=>l(t).status=a)},{default:r(()=>[o(c,{value:0},{default:r(()=>[...e[7]||(e[7]=[f("关闭",-1)])]),_:1}),o(c,{value:1},{default:r(()=>[...e[8]||(e[8]=[f("开启",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},512)])}}});export{ae as _,le as s}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Csv2cIsH.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js similarity index 95% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Csv2cIsH.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js index 1d73ad1a..ee269bc0 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-Csv2cIsH.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js @@ -1 +1 @@ -import{D as h,B as D,C as U,h as q,g as B}from"./element-plus-DFTWCWyi.js";import{a as I,b as N,c as j}from"./post-CjhbCF7F.js";import{_ as F}from"./index-BQY2-_X1.js";import{f as A,ak as S,I as z,a as l,aN as n,J as f,A as J}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,q as _,r as T,n as G}from"./@vue/reactivity-DiY1c2vO.js";const H={class:"edit-popup"},W=A({__name:"edit",emits:["success","close"],setup(K,{expose:b,emit:V}){const i=V,p=_(),m=_(),u=G("add"),v=J(()=>u.value=="edit"?"编辑岗位":"新增岗位"),o=T({id:"",name:"",code:"",sort:0,remark:"",status:1}),w={code:[{required:!0,message:"请输入岗位编码",trigger:["blur"]}],name:[{required:!0,message:"请输入岗位名称",trigger:["blur"]}]},g=async()=>{var a,e;await((a=p.value)==null?void 0:a.validate()),u.value=="edit"?await I(o):await N(o),(e=m.value)==null||e.close(),i("success")},x=(a="add")=>{var e;u.value=a,(e=m.value)==null||e.open()},c=a=>{for(const e in o)a[e]!=null&&a[e]!=null&&(o[e]=a[e])},k=async a=>{const e=await j({id:a.id});c(e)},y=()=>{i("close")};return b({open:x,setFormData:c,getDetail:k}),(a,e)=>{const d=U,r=D,R=q,E=B,C=h;return S(),z("div",H,[l(F,{ref_key:"popupRef",ref:m,title:t(v),async:!0,width:"550px",onConfirm:g,onClose:y},{default:n(()=>[l(C,{ref_key:"formRef",ref:p,model:t(o),"label-width":"84px",rules:w},{default:n(()=>[l(r,{label:"岗位名称",prop:"name"},{default:n(()=>[l(d,{modelValue:t(o).name,"onUpdate:modelValue":e[0]||(e[0]=s=>t(o).name=s),placeholder:"请输入岗位名称",clearable:"",maxlength:100},null,8,["modelValue"])]),_:1}),l(r,{label:"岗位编码",prop:"code"},{default:n(()=>[l(d,{modelValue:t(o).code,"onUpdate:modelValue":e[1]||(e[1]=s=>t(o).code=s),placeholder:"请输入岗位编码",clearable:""},null,8,["modelValue"])]),_:1}),l(r,{label:"排序",prop:"sort"},{default:n(()=>[f("div",null,[l(R,{modelValue:t(o).sort,"onUpdate:modelValue":e[2]||(e[2]=s=>t(o).sort=s),min:0,max:9999},null,8,["modelValue"]),e[5]||(e[5]=f("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),l(r,{label:"备注",prop:"remark"},{default:n(()=>[l(d,{modelValue:t(o).remark,"onUpdate:modelValue":e[3]||(e[3]=s=>t(o).remark=s),placeholder:"请输入备注",type:"textarea",autosize:{minRows:4,maxRows:6},maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(r,{label:"岗位状态",required:"",prop:"status"},{default:n(()=>[l(E,{modelValue:t(o).status,"onUpdate:modelValue":e[4]||(e[4]=s=>t(o).status=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{W as _}; +import{D as h,B as D,C as U,h as q,g as B}from"./element-plus-DFTWCWyi.js";import{a as I,b as N,c as j}from"./post-D694zeqo.js";import{_ as F}from"./index-SocYjCJ1.js";import{f as A,ak as S,I as z,a as l,aN as n,J as f,A as J}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,q as _,r as T,n as G}from"./@vue/reactivity-DiY1c2vO.js";const H={class:"edit-popup"},W=A({__name:"edit",emits:["success","close"],setup(K,{expose:b,emit:V}){const i=V,p=_(),m=_(),u=G("add"),v=J(()=>u.value=="edit"?"编辑岗位":"新增岗位"),o=T({id:"",name:"",code:"",sort:0,remark:"",status:1}),w={code:[{required:!0,message:"请输入岗位编码",trigger:["blur"]}],name:[{required:!0,message:"请输入岗位名称",trigger:["blur"]}]},g=async()=>{var a,e;await((a=p.value)==null?void 0:a.validate()),u.value=="edit"?await I(o):await N(o),(e=m.value)==null||e.close(),i("success")},x=(a="add")=>{var e;u.value=a,(e=m.value)==null||e.open()},c=a=>{for(const e in o)a[e]!=null&&a[e]!=null&&(o[e]=a[e])},k=async a=>{const e=await j({id:a.id});c(e)},y=()=>{i("close")};return b({open:x,setFormData:c,getDetail:k}),(a,e)=>{const d=U,r=D,R=q,E=B,C=h;return S(),z("div",H,[l(F,{ref_key:"popupRef",ref:m,title:t(v),async:!0,width:"550px",onConfirm:g,onClose:y},{default:n(()=>[l(C,{ref_key:"formRef",ref:p,model:t(o),"label-width":"84px",rules:w},{default:n(()=>[l(r,{label:"岗位名称",prop:"name"},{default:n(()=>[l(d,{modelValue:t(o).name,"onUpdate:modelValue":e[0]||(e[0]=s=>t(o).name=s),placeholder:"请输入岗位名称",clearable:"",maxlength:100},null,8,["modelValue"])]),_:1}),l(r,{label:"岗位编码",prop:"code"},{default:n(()=>[l(d,{modelValue:t(o).code,"onUpdate:modelValue":e[1]||(e[1]=s=>t(o).code=s),placeholder:"请输入岗位编码",clearable:""},null,8,["modelValue"])]),_:1}),l(r,{label:"排序",prop:"sort"},{default:n(()=>[f("div",null,[l(R,{modelValue:t(o).sort,"onUpdate:modelValue":e[2]||(e[2]=s=>t(o).sort=s),min:0,max:9999},null,8,["modelValue"]),e[5]||(e[5]=f("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),l(r,{label:"备注",prop:"remark"},{default:n(()=>[l(d,{modelValue:t(o).remark,"onUpdate:modelValue":e[3]||(e[3]=s=>t(o).remark=s),placeholder:"请输入备注",type:"textarea",autosize:{minRows:4,maxRows:6},maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(r,{label:"岗位状态",required:"",prop:"status"},{default:n(()=>[l(E,{modelValue:t(o).status,"onUpdate:modelValue":e[4]||(e[4]=s=>t(o).status=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{W as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CCRvmlU6.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js similarity index 96% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CCRvmlU6.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js index 01f19244..a06528b1 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-CCRvmlU6.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js @@ -1 +1 @@ -import{D as j,B as H,G as J,I as K,W as P,C as W,aj as $,h as z}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js";import{a as X,b as Y,c as Z,d as h}from"./menu-Dcx2e7zx.js";import{_ as ee}from"./index-BQY2-_X1.js";import{v as le,M as r,w as oe,x as te}from"./index-Nt5zMHcc.js";import{f as ae,ak as i,I as se,a as t,aN as a,O as m,G as f,H as v,J as d,A as de}from"./@vue/runtime-core-C6bnekPw.js";import{n as U,r as ue,y as l,q as w}from"./@vue/reactivity-DiY1c2vO.js";const re={class:"edit-popup"},ne={class:"flex-1"},pe={class:"flex-1"},ie={class:"flex-1"},me={class:"flex-1"},fe={class:"flex-1"},Te=ae({__name:"edit",emits:["success","close"],setup(ve,{expose:x,emit:N}){const c=N,g=w(),y=w(),b=U("add"),C=de(()=>b.value=="edit"?"编辑菜单":"新增菜单"),T=U(le()),O=(u,e)=>{const n=u?T.value.filter(V=>V.toLowerCase().includes(u.toLowerCase())):T.value;e(n.map(V=>({value:V})))},o=ue({id:"",pid:0,type:r.CATALOGUE,icon:"",name:"",sort:0,paths:"",perms:"",component:"",selected:"",params:"",is_cache:1,is_show:1,is_disable:0}),A={pid:[{required:!0,message:"请选择父级菜单",trigger:["blur","change"]}],name:[{required:!0,message:"请输入菜单名称",trigger:"blur"}],paths:[{required:!0,message:"请输入路由地址",trigger:"blur"}],component:[{required:!0,message:"请输入组件地址",trigger:"blur"}]},k=U([]),B=async()=>{const u=await X({page_type:0}),e={id:0,name:"顶级",children:[]};e.children=oe(te(u.lists).filter(n=>n.type!=r.BUTTON)),k.value.push(e)},q=async()=>{var u,e;await((u=g.value)==null?void 0:u.validate()),b.value=="edit"?await Y(o):await Z(o),(e=y.value)==null||e.close(),c("success")},M=(u="add")=>{var e;b.value=u,(e=y.value)==null||e.open()},E=u=>{for(const e in o)u[e]!=null&&u[e]!=null&&(o[e]=u[e])},R=async u=>{const e=await h({id:u.id});E(e)},G=()=>{c("close")};return B(),x({open:M,setFormData:E,getDetail:R}),(u,e)=>{const n=K,V=J,p=H,I=P,_=W,L=Q,D=$,F=z,S=j;return i(),se("div",re,[t(ee,{ref_key:"popupRef",ref:y,title:l(C),async:!0,width:"550px",onConfirm:q,onClose:G},{default:a(()=>[t(S,{ref_key:"formRef",ref:g,model:l(o),"label-width":"80px",rules:A},{default:a(()=>[t(p,{label:"菜单类型",prop:"type",required:""},{default:a(()=>[t(V,{modelValue:l(o).type,"onUpdate:modelValue":e[0]||(e[0]=s=>l(o).type=s)},{default:a(()=>[t(n,{value:l(r).CATALOGUE},{default:a(()=>[...e[13]||(e[13]=[m("目录",-1)])]),_:1},8,["value"]),t(n,{value:l(r).MENU},{default:a(()=>[...e[14]||(e[14]=[m("菜单",-1)])]),_:1},8,["value"]),t(n,{value:l(r).BUTTON},{default:a(()=>[...e[15]||(e[15]=[m("按钮",-1)])]),_:1},8,["value"])]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"父级菜单",prop:"pid"},{default:a(()=>[t(I,{class:"flex-1",modelValue:l(o).pid,"onUpdate:modelValue":e[1]||(e[1]=s=>l(o).pid=s),data:l(k),clearable:"","node-key":"id",props:{label:"name"},"default-expand-all":!0,placeholder:"请选择父级菜单","check-strictly":""},null,8,["modelValue","data"])]),_:1}),t(p,{label:"菜单名称",prop:"name"},{default:a(()=>[t(_,{modelValue:l(o).name,"onUpdate:modelValue":e[2]||(e[2]=s=>l(o).name=s),placeholder:"请输入菜单名称",clearable:""},null,8,["modelValue"])]),_:1}),l(o).type!=l(r).BUTTON?(i(),f(p,{key:0,label:"菜单图标",prop:"icon"},{default:a(()=>[t(L,{class:"flex-1",modelValue:l(o).icon,"onUpdate:modelValue":e[3]||(e[3]=s=>l(o).icon=s)},null,8,["modelValue"])]),_:1})):v("",!0),l(o).type!=l(r).BUTTON?(i(),f(p,{key:1,label:"路由路径",prop:"paths"},{default:a(()=>[d("div",ne,[t(_,{modelValue:l(o).paths,"onUpdate:modelValue":e[4]||(e[4]=s=>l(o).paths=s),placeholder:"请输入路由路径",clearable:""},null,8,["modelValue"]),e[16]||(e[16]=d("div",{class:"form-tips"}," 访问的路由地址,如:`user`,如外网地址需内链访问则以`http(s)://`开头 ",-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:2,label:"组件路径",prop:"component"},{default:a(()=>[d("div",pe,[t(D,{class:"w-full",modelValue:l(o).component,"onUpdate:modelValue":e[5]||(e[5]=s=>l(o).component=s),"fetch-suggestions":O,clearable:"",placeholder:"请输入组件路径"},null,8,["modelValue"]),e[17]||(e[17]=d("div",{class:"form-tips"}," 访问的组件路径,如:`user/setting`,默认在`views`目录下 ",-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:3,label:"选中菜单",prop:"selected"},{default:a(()=>[d("div",ie,[t(_,{modelValue:l(o).selected,"onUpdate:modelValue":e[6]||(e[6]=s=>l(o).selected=s),placeholder:"请输入路由路径",clearable:""},null,8,["modelValue"]),e[18]||(e[18]=d("div",{class:"form-tips"}," 访问详情页面,编辑页面时,菜单高亮显示,如`/consumer/lists` ",-1))])]),_:1})):v("",!0),l(o).type!=l(r).CATALOGUE?(i(),f(p,{key:4,label:"权限字符",prop:"perms"},{default:a(()=>[d("div",me,[t(_,{modelValue:l(o).perms,"onUpdate:modelValue":e[7]||(e[7]=s=>l(o).perms=s),placeholder:"请输入权限字符",clearable:""},null,8,["modelValue"]),e[19]||(e[19]=d("div",{class:"form-tips"}," 将作为server端API验权使用,如`auth.admin/user`,请谨慎修改 ",-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:5,label:"路由参数",prop:"params"},{default:a(()=>[d("div",null,[d("div",fe,[t(_,{modelValue:l(o).params,"onUpdate:modelValue":e[8]||(e[8]=s=>l(o).params=s),placeholder:"请输入路由参数",clearable:""},null,8,["modelValue"])]),e[20]||(e[20]=d("div",{class:"form-tips"},' 访问路由的默认传递参数,如:`{"id": 1, "name": "admin"}`或`id=1&name=admin` ',-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:6,label:"是否缓存",prop:"is_cache",required:""},{default:a(()=>[d("div",null,[t(V,{modelValue:l(o).is_cache,"onUpdate:modelValue":e[9]||(e[9]=s=>l(o).is_cache=s)},{default:a(()=>[t(n,{value:1},{default:a(()=>[...e[21]||(e[21]=[m("缓存",-1)])]),_:1}),t(n,{value:0},{default:a(()=>[...e[22]||(e[22]=[m("不缓存",-1)])]),_:1})]),_:1},8,["modelValue"]),e[23]||(e[23]=d("div",{class:"form-tips"},"选择缓存则会被`keep-alive`缓存",-1))])]),_:1})):v("",!0),l(o).type!=l(r).BUTTON?(i(),f(p,{key:7,label:"是否显示",prop:"is_show",required:""},{default:a(()=>[d("div",null,[t(V,{modelValue:l(o).is_show,"onUpdate:modelValue":e[10]||(e[10]=s=>l(o).is_show=s)},{default:a(()=>[t(n,{value:1},{default:a(()=>[...e[24]||(e[24]=[m("显示",-1)])]),_:1}),t(n,{value:0},{default:a(()=>[...e[25]||(e[25]=[m("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"]),e[26]||(e[26]=d("div",{class:"form-tips"}," 选择隐藏则路由将不会出现在侧边栏,但仍然可以访问 ",-1))])]),_:1})):v("",!0),l(o).type!=l(r).BUTTON?(i(),f(p,{key:8,label:"菜单状态",prop:"is_disable",required:""},{default:a(()=>[d("div",null,[t(V,{modelValue:l(o).is_disable,"onUpdate:modelValue":e[11]||(e[11]=s=>l(o).is_disable=s)},{default:a(()=>[t(n,{value:0},{default:a(()=>[...e[27]||(e[27]=[m("正常",-1)])]),_:1}),t(n,{value:1},{default:a(()=>[...e[28]||(e[28]=[m("停用",-1)])]),_:1})]),_:1},8,["modelValue"]),e[29]||(e[29]=d("div",{class:"form-tips"},"选择停用则路由将不会出现在侧边栏,也不能被访问",-1))])]),_:1})):v("",!0),t(p,{label:"菜单排序",prop:"sort"},{default:a(()=>[d("div",null,[t(F,{modelValue:l(o).sort,"onUpdate:modelValue":e[12]||(e[12]=s=>l(o).sort=s),min:0,max:9999},null,8,["modelValue"]),e[30]||(e[30]=d("div",{class:"form-tips"},"数值越大越排前",-1))])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{Te as _}; +import{D as j,B as H,G as J,I as K,W as P,C as W,aj as $,h as z}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js";import{a as X,b as Y,c as Z,d as h}from"./menu-Da1RBBpC.js";import{_ as ee}from"./index-SocYjCJ1.js";import{v as le,M as r,w as oe,x as te}from"./index--WnM67ZH.js";import{f as ae,ak as i,I as se,a as t,aN as a,O as m,G as f,H as v,J as d,A as de}from"./@vue/runtime-core-C6bnekPw.js";import{n as U,r as ue,y as l,q as w}from"./@vue/reactivity-DiY1c2vO.js";const re={class:"edit-popup"},ne={class:"flex-1"},pe={class:"flex-1"},ie={class:"flex-1"},me={class:"flex-1"},fe={class:"flex-1"},Te=ae({__name:"edit",emits:["success","close"],setup(ve,{expose:x,emit:N}){const c=N,g=w(),y=w(),b=U("add"),C=de(()=>b.value=="edit"?"编辑菜单":"新增菜单"),T=U(le()),O=(u,e)=>{const n=u?T.value.filter(V=>V.toLowerCase().includes(u.toLowerCase())):T.value;e(n.map(V=>({value:V})))},o=ue({id:"",pid:0,type:r.CATALOGUE,icon:"",name:"",sort:0,paths:"",perms:"",component:"",selected:"",params:"",is_cache:1,is_show:1,is_disable:0}),A={pid:[{required:!0,message:"请选择父级菜单",trigger:["blur","change"]}],name:[{required:!0,message:"请输入菜单名称",trigger:"blur"}],paths:[{required:!0,message:"请输入路由地址",trigger:"blur"}],component:[{required:!0,message:"请输入组件地址",trigger:"blur"}]},k=U([]),B=async()=>{const u=await X({page_type:0}),e={id:0,name:"顶级",children:[]};e.children=oe(te(u.lists).filter(n=>n.type!=r.BUTTON)),k.value.push(e)},q=async()=>{var u,e;await((u=g.value)==null?void 0:u.validate()),b.value=="edit"?await Y(o):await Z(o),(e=y.value)==null||e.close(),c("success")},M=(u="add")=>{var e;b.value=u,(e=y.value)==null||e.open()},E=u=>{for(const e in o)u[e]!=null&&u[e]!=null&&(o[e]=u[e])},R=async u=>{const e=await h({id:u.id});E(e)},G=()=>{c("close")};return B(),x({open:M,setFormData:E,getDetail:R}),(u,e)=>{const n=K,V=J,p=H,I=P,_=W,L=Q,D=$,F=z,S=j;return i(),se("div",re,[t(ee,{ref_key:"popupRef",ref:y,title:l(C),async:!0,width:"550px",onConfirm:q,onClose:G},{default:a(()=>[t(S,{ref_key:"formRef",ref:g,model:l(o),"label-width":"80px",rules:A},{default:a(()=>[t(p,{label:"菜单类型",prop:"type",required:""},{default:a(()=>[t(V,{modelValue:l(o).type,"onUpdate:modelValue":e[0]||(e[0]=s=>l(o).type=s)},{default:a(()=>[t(n,{value:l(r).CATALOGUE},{default:a(()=>[...e[13]||(e[13]=[m("目录",-1)])]),_:1},8,["value"]),t(n,{value:l(r).MENU},{default:a(()=>[...e[14]||(e[14]=[m("菜单",-1)])]),_:1},8,["value"]),t(n,{value:l(r).BUTTON},{default:a(()=>[...e[15]||(e[15]=[m("按钮",-1)])]),_:1},8,["value"])]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"父级菜单",prop:"pid"},{default:a(()=>[t(I,{class:"flex-1",modelValue:l(o).pid,"onUpdate:modelValue":e[1]||(e[1]=s=>l(o).pid=s),data:l(k),clearable:"","node-key":"id",props:{label:"name"},"default-expand-all":!0,placeholder:"请选择父级菜单","check-strictly":""},null,8,["modelValue","data"])]),_:1}),t(p,{label:"菜单名称",prop:"name"},{default:a(()=>[t(_,{modelValue:l(o).name,"onUpdate:modelValue":e[2]||(e[2]=s=>l(o).name=s),placeholder:"请输入菜单名称",clearable:""},null,8,["modelValue"])]),_:1}),l(o).type!=l(r).BUTTON?(i(),f(p,{key:0,label:"菜单图标",prop:"icon"},{default:a(()=>[t(L,{class:"flex-1",modelValue:l(o).icon,"onUpdate:modelValue":e[3]||(e[3]=s=>l(o).icon=s)},null,8,["modelValue"])]),_:1})):v("",!0),l(o).type!=l(r).BUTTON?(i(),f(p,{key:1,label:"路由路径",prop:"paths"},{default:a(()=>[d("div",ne,[t(_,{modelValue:l(o).paths,"onUpdate:modelValue":e[4]||(e[4]=s=>l(o).paths=s),placeholder:"请输入路由路径",clearable:""},null,8,["modelValue"]),e[16]||(e[16]=d("div",{class:"form-tips"}," 访问的路由地址,如:`user`,如外网地址需内链访问则以`http(s)://`开头 ",-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:2,label:"组件路径",prop:"component"},{default:a(()=>[d("div",pe,[t(D,{class:"w-full",modelValue:l(o).component,"onUpdate:modelValue":e[5]||(e[5]=s=>l(o).component=s),"fetch-suggestions":O,clearable:"",placeholder:"请输入组件路径"},null,8,["modelValue"]),e[17]||(e[17]=d("div",{class:"form-tips"}," 访问的组件路径,如:`user/setting`,默认在`views`目录下 ",-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:3,label:"选中菜单",prop:"selected"},{default:a(()=>[d("div",ie,[t(_,{modelValue:l(o).selected,"onUpdate:modelValue":e[6]||(e[6]=s=>l(o).selected=s),placeholder:"请输入路由路径",clearable:""},null,8,["modelValue"]),e[18]||(e[18]=d("div",{class:"form-tips"}," 访问详情页面,编辑页面时,菜单高亮显示,如`/consumer/lists` ",-1))])]),_:1})):v("",!0),l(o).type!=l(r).CATALOGUE?(i(),f(p,{key:4,label:"权限字符",prop:"perms"},{default:a(()=>[d("div",me,[t(_,{modelValue:l(o).perms,"onUpdate:modelValue":e[7]||(e[7]=s=>l(o).perms=s),placeholder:"请输入权限字符",clearable:""},null,8,["modelValue"]),e[19]||(e[19]=d("div",{class:"form-tips"}," 将作为server端API验权使用,如`auth.admin/user`,请谨慎修改 ",-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:5,label:"路由参数",prop:"params"},{default:a(()=>[d("div",null,[d("div",fe,[t(_,{modelValue:l(o).params,"onUpdate:modelValue":e[8]||(e[8]=s=>l(o).params=s),placeholder:"请输入路由参数",clearable:""},null,8,["modelValue"])]),e[20]||(e[20]=d("div",{class:"form-tips"},' 访问路由的默认传递参数,如:`{"id": 1, "name": "admin"}`或`id=1&name=admin` ',-1))])]),_:1})):v("",!0),l(o).type==l(r).MENU?(i(),f(p,{key:6,label:"是否缓存",prop:"is_cache",required:""},{default:a(()=>[d("div",null,[t(V,{modelValue:l(o).is_cache,"onUpdate:modelValue":e[9]||(e[9]=s=>l(o).is_cache=s)},{default:a(()=>[t(n,{value:1},{default:a(()=>[...e[21]||(e[21]=[m("缓存",-1)])]),_:1}),t(n,{value:0},{default:a(()=>[...e[22]||(e[22]=[m("不缓存",-1)])]),_:1})]),_:1},8,["modelValue"]),e[23]||(e[23]=d("div",{class:"form-tips"},"选择缓存则会被`keep-alive`缓存",-1))])]),_:1})):v("",!0),l(o).type!=l(r).BUTTON?(i(),f(p,{key:7,label:"是否显示",prop:"is_show",required:""},{default:a(()=>[d("div",null,[t(V,{modelValue:l(o).is_show,"onUpdate:modelValue":e[10]||(e[10]=s=>l(o).is_show=s)},{default:a(()=>[t(n,{value:1},{default:a(()=>[...e[24]||(e[24]=[m("显示",-1)])]),_:1}),t(n,{value:0},{default:a(()=>[...e[25]||(e[25]=[m("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"]),e[26]||(e[26]=d("div",{class:"form-tips"}," 选择隐藏则路由将不会出现在侧边栏,但仍然可以访问 ",-1))])]),_:1})):v("",!0),l(o).type!=l(r).BUTTON?(i(),f(p,{key:8,label:"菜单状态",prop:"is_disable",required:""},{default:a(()=>[d("div",null,[t(V,{modelValue:l(o).is_disable,"onUpdate:modelValue":e[11]||(e[11]=s=>l(o).is_disable=s)},{default:a(()=>[t(n,{value:0},{default:a(()=>[...e[27]||(e[27]=[m("正常",-1)])]),_:1}),t(n,{value:1},{default:a(()=>[...e[28]||(e[28]=[m("停用",-1)])]),_:1})]),_:1},8,["modelValue"]),e[29]||(e[29]=d("div",{class:"form-tips"},"选择停用则路由将不会出现在侧边栏,也不能被访问",-1))])]),_:1})):v("",!0),t(p,{label:"菜单排序",prop:"sort"},{default:a(()=>[d("div",null,[t(F,{modelValue:l(o).sort,"onUpdate:modelValue":e[12]||(e[12]=s=>l(o).sort=s),min:0,max:9999},null,8,["modelValue"]),e[30]||(e[30]=d("div",{class:"form-tips"},"数值越大越排前",-1))])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{Te as _}; diff --git a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-B1Ws5Kwo.js b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js similarity index 93% rename from server/public/admin/assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-B1Ws5Kwo.js rename to server/public/admin/assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js index ba21b565..1eb1456a 100644 --- a/server/public/admin/assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-B1Ws5Kwo.js +++ b/server/public/admin/assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js @@ -1 +1 @@ -import{D,B,C as I,h as N,g as F}from"./element-plus-DFTWCWyi.js";import{d as U,e as q,f as A}from"./article-nZc1fauP.js";import{_ as S}from"./index-BQY2-_X1.js";import{f,ak as J,I as T,a,aN as n,J as c,A as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as _,r as z,n as G}from"./@vue/reactivity-DiY1c2vO.js";const H={class:"edit-popup"},K=f({name:"articleColumnEdit"}),X=f({...K,emits:["success","close"],setup(L,{expose:v,emit:w}){const u=w,d=_(),r=_(),i=G("add"),V=j(()=>i.value=="edit"?"编辑栏目":"新增栏目"),o=z({id:"",name:"",sort:0,is_show:1}),C={name:[{required:!0,message:"请输入栏目名称",trigger:["blur"]}]},b=async()=>{var t,e;await((t=d.value)==null?void 0:t.validate()),i.value=="edit"?await U(o):await q(o),(e=r.value)==null||e.close(),u("success")},h=(t="add")=>{var e;i.value=t,(e=r.value)==null||e.open()},p=t=>{for(const e in o)t[e]!=null&&t[e]!=null&&(o[e]=t[e])},E=async t=>{const e=await A({id:t.id});p(e)},x=()=>{u("close")};return v({open:h,setFormData:p,getDetail:E}),(t,e)=>{const y=I,m=B,g=N,k=F,R=D;return J(),T("div",H,[a(S,{ref_key:"popupRef",ref:r,title:l(V),async:!0,width:"550px",onConfirm:b,onClose:x},{default:n(()=>[a(R,{ref_key:"formRef",ref:d,model:l(o),"label-width":"84px",rules:C},{default:n(()=>[a(m,{label:"栏目名称",prop:"name"},{default:n(()=>[a(y,{modelValue:l(o).name,"onUpdate:modelValue":e[0]||(e[0]=s=>l(o).name=s),placeholder:"请输入栏目名称",clearable:""},null,8,["modelValue"])]),_:1}),a(m,{label:"排序",prop:"sort"},{default:n(()=>[c("div",null,[a(g,{modelValue:l(o).sort,"onUpdate:modelValue":e[1]||(e[1]=s=>l(o).sort=s),min:0,max:9999},null,8,["modelValue"]),e[3]||(e[3]=c("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),a(m,{label:"状态",prop:"is_show"},{default:n(()=>[a(k,{modelValue:l(o).is_show,"onUpdate:modelValue":e[2]||(e[2]=s=>l(o).is_show=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{X as _}; +import{D,B,C as I,h as N,g as F}from"./element-plus-DFTWCWyi.js";import{d as U,e as q,f as A}from"./article-CrrySQF9.js";import{_ as S}from"./index-SocYjCJ1.js";import{f,ak as J,I as T,a,aN as n,J as c,A as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as _,r as z,n as G}from"./@vue/reactivity-DiY1c2vO.js";const H={class:"edit-popup"},K=f({name:"articleColumnEdit"}),X=f({...K,emits:["success","close"],setup(L,{expose:v,emit:w}){const u=w,d=_(),r=_(),i=G("add"),V=j(()=>i.value=="edit"?"编辑栏目":"新增栏目"),o=z({id:"",name:"",sort:0,is_show:1}),C={name:[{required:!0,message:"请输入栏目名称",trigger:["blur"]}]},b=async()=>{var t,e;await((t=d.value)==null?void 0:t.validate()),i.value=="edit"?await U(o):await q(o),(e=r.value)==null||e.close(),u("success")},h=(t="add")=>{var e;i.value=t,(e=r.value)==null||e.open()},p=t=>{for(const e in o)t[e]!=null&&t[e]!=null&&(o[e]=t[e])},E=async t=>{const e=await A({id:t.id});p(e)},x=()=>{u("close")};return v({open:h,setFormData:p,getDetail:E}),(t,e)=>{const y=I,m=B,g=N,k=F,R=D;return J(),T("div",H,[a(S,{ref_key:"popupRef",ref:r,title:l(V),async:!0,width:"550px",onConfirm:b,onClose:x},{default:n(()=>[a(R,{ref_key:"formRef",ref:d,model:l(o),"label-width":"84px",rules:C},{default:n(()=>[a(m,{label:"栏目名称",prop:"name"},{default:n(()=>[a(y,{modelValue:l(o).name,"onUpdate:modelValue":e[0]||(e[0]=s=>l(o).name=s),placeholder:"请输入栏目名称",clearable:""},null,8,["modelValue"])]),_:1}),a(m,{label:"排序",prop:"sort"},{default:n(()=>[c("div",null,[a(g,{modelValue:l(o).sort,"onUpdate:modelValue":e[1]||(e[1]=s=>l(o).sort=s),min:0,max:9999},null,8,["modelValue"]),e[3]||(e[3]=c("div",{class:"form-tips"},"默认为0, 数值越大越排前",-1))])]),_:1}),a(m,{label:"状态",prop:"is_show"},{default:n(()=>[a(k,{modelValue:l(o).is_show,"onUpdate:modelValue":e[2]||(e[2]=s=>l(o).is_show=s),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{X as _}; diff --git a/server/public/admin/assets/environment-8DsK4TTM.js b/server/public/admin/assets/environment-BUW8BqoD.js similarity index 97% rename from server/public/admin/assets/environment-8DsK4TTM.js rename to server/public/admin/assets/environment-BUW8BqoD.js index 538ac2b4..d7dcb4ec 100644 --- a/server/public/admin/assets/environment-8DsK4TTM.js +++ b/server/public/admin/assets/environment-BUW8BqoD.js @@ -1 +1 @@ -import{c as v,D as b}from"./index-Nt5zMHcc.js";import{M as k,N as h,J as y}from"./element-plus-DFTWCWyi.js";import{f as u,b as x,ak as l,I as w,a as t,aN as o,J as s,G as i}from"./@vue/runtime-core-C6bnekPw.js";import{y as _,r as B}from"./@vue/reactivity-DiY1c2vO.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./@vue/shared-mAAVTE9n.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const C={class:"system-environment"},E={class:"mt-4"},N={class:"mt-4"},g={class:"mt-4"},I=u({name:"environment"}),_t=u({...I,setup(S){const r=B({server:[],env:[],auth:[]}),f=()=>{b().then(n=>{r.server=n.server,r.env=n.env,r.auth=n.auth})};return x(()=>{f()}),(n,a)=>{const e=h,p=k,d=y,m=v;return l(),w("div",C,[t(d,{class:"!border-none",shadow:"never"},{default:o(()=>[a[0]||(a[0]=s("div",null,"服务器信息",-1)),s("div",E,[t(p,{data:_(r).server},{default:o(()=>[t(e,{prop:"param",label:"参数"}),t(e,{prop:"value",label:"值"})]),_:1},8,["data"])])]),_:1}),t(d,{shadow:"never",class:"!border-none mt-4"},{default:o(()=>[a[1]||(a[1]=s("div",null,"PHP环境要求",-1)),s("div",N,[t(p,{data:_(r).env},{default:o(()=>[t(e,{prop:"option",label:"选项"}),t(e,{prop:"require",label:"要求"}),t(e,{label:"状态"},{default:o(c=>[c.row.status?(l(),i(m,{key:0,name:"el-icon-Select",class:"text-success"})):(l(),i(m,{key:1,name:"el-icon-CloseBold",class:"text-danger"}))]),_:1}),t(e,{prop:"remark",label:"说明及帮助"})]),_:1},8,["data"])])]),_:1}),t(d,{shadow:"never",class:"!border-none mt-4"},{default:o(()=>[a[2]||(a[2]=s("div",null,"目录权限",-1)),s("div",g,[t(p,{data:_(r).auth},{default:o(()=>[t(e,{prop:"dir",label:"选项"}),t(e,{prop:"require",label:"要求"}),t(e,{label:"状态"},{default:o(c=>[c.row.status?(l(),i(m,{key:0,name:"el-icon-Select",class:"text-success"})):(l(),i(m,{key:1,name:"el-icon-CloseBold",class:"text-danger"}))]),_:1}),t(e,{prop:"remark",label:"说明及帮助"})]),_:1},8,["data"])])]),_:1})])}}});export{_t as default}; +import{c as v,D as b}from"./index--WnM67ZH.js";import{M as k,N as h,J as y}from"./element-plus-DFTWCWyi.js";import{f as u,b as x,ak as l,I as w,a as t,aN as o,J as s,G as i}from"./@vue/runtime-core-C6bnekPw.js";import{y as _,r as B}from"./@vue/reactivity-DiY1c2vO.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./@vue/shared-mAAVTE9n.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const C={class:"system-environment"},E={class:"mt-4"},N={class:"mt-4"},g={class:"mt-4"},I=u({name:"environment"}),_t=u({...I,setup(S){const r=B({server:[],env:[],auth:[]}),f=()=>{b().then(n=>{r.server=n.server,r.env=n.env,r.auth=n.auth})};return x(()=>{f()}),(n,a)=>{const e=h,p=k,d=y,m=v;return l(),w("div",C,[t(d,{class:"!border-none",shadow:"never"},{default:o(()=>[a[0]||(a[0]=s("div",null,"服务器信息",-1)),s("div",E,[t(p,{data:_(r).server},{default:o(()=>[t(e,{prop:"param",label:"参数"}),t(e,{prop:"value",label:"值"})]),_:1},8,["data"])])]),_:1}),t(d,{shadow:"never",class:"!border-none mt-4"},{default:o(()=>[a[1]||(a[1]=s("div",null,"PHP环境要求",-1)),s("div",N,[t(p,{data:_(r).env},{default:o(()=>[t(e,{prop:"option",label:"选项"}),t(e,{prop:"require",label:"要求"}),t(e,{label:"状态"},{default:o(c=>[c.row.status?(l(),i(m,{key:0,name:"el-icon-Select",class:"text-success"})):(l(),i(m,{key:1,name:"el-icon-CloseBold",class:"text-danger"}))]),_:1}),t(e,{prop:"remark",label:"说明及帮助"})]),_:1},8,["data"])])]),_:1}),t(d,{shadow:"never",class:"!border-none mt-4"},{default:o(()=>[a[2]||(a[2]=s("div",null,"目录权限",-1)),s("div",g,[t(p,{data:_(r).auth},{default:o(()=>[t(e,{prop:"dir",label:"选项"}),t(e,{prop:"require",label:"要求"}),t(e,{label:"状态"},{default:o(c=>[c.row.status?(l(),i(m,{key:0,name:"el-icon-Select",class:"text-success"})):(l(),i(m,{key:1,name:"el-icon-CloseBold",class:"text-danger"}))]),_:1}),t(e,{prop:"remark",label:"说明及帮助"})]),_:1},8,["data"])])]),_:1})])}}});export{_t as default}; diff --git a/server/public/admin/assets/error-Hr3a1e0I.js b/server/public/admin/assets/error-BqZT2_OW.js similarity index 96% rename from server/public/admin/assets/error-Hr3a1e0I.js rename to server/public/admin/assets/error-BqZT2_OW.js index 8ac5bb57..e1630b81 100644 --- a/server/public/admin/assets/error-Hr3a1e0I.js +++ b/server/public/admin/assets/error-BqZT2_OW.js @@ -1 +1 @@ -import{i as c}from"./element-plus-DFTWCWyi.js";import{a as d}from"./vue-router-QlpZ4wdW.js";import{f as u,d as f,ak as a,I as v,J as e,aq as _,G as B,aN as x,O as y,H as g}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{y as h,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{_ as I}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const w={class:"error"},C={class:"error-code"},N={class:"text-lg text-tx-secondary mt-7 mb-7"},S=u({__name:"error",props:{code:String,title:String,showBtn:{type:Boolean,default:!0}},setup(t){const n=t;let o=null;const r=k(5),m=d();return n.showBtn&&(o=setInterval(()=>{r.value===0?(clearInterval(o),m.go(-1)):r.value--},1e3)),f(()=>{o&&clearInterval(o)}),(p,s)=>{const l=c;return a(),v("div",w,[e("div",null,[_(p.$slots,"content",{},()=>[e("div",C,i(t.code),1)],!0),e("div",N,i(t.title),1),t.showBtn?(a(),B(l,{key:0,type:"primary",onClick:s[0]||(s[0]=E=>h(m).go(-1))},{default:x(()=>[y(i(r.value)+" 秒后返回上一页 ",1)]),_:1})):g("",!0)])])}}}),dt=I(S,[["__scopeId","data-v-0154c8e6"]]);export{dt as default}; +import{i as c}from"./element-plus-DFTWCWyi.js";import{a as d}from"./vue-router-QlpZ4wdW.js";import{f as u,d as f,ak as a,I as v,J as e,aq as _,G as B,aN as x,O as y,H as g}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i}from"./@vue/shared-mAAVTE9n.js";import{y as h,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{_ as I}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const w={class:"error"},C={class:"error-code"},N={class:"text-lg text-tx-secondary mt-7 mb-7"},S=u({__name:"error",props:{code:String,title:String,showBtn:{type:Boolean,default:!0}},setup(t){const n=t;let o=null;const r=k(5),m=d();return n.showBtn&&(o=setInterval(()=>{r.value===0?(clearInterval(o),m.go(-1)):r.value--},1e3)),f(()=>{o&&clearInterval(o)}),(p,s)=>{const l=c;return a(),v("div",w,[e("div",null,[_(p.$slots,"content",{},()=>[e("div",C,i(t.code),1)],!0),e("div",N,i(t.title),1),t.showBtn?(a(),B(l,{key:0,type:"primary",onClick:s[0]||(s[0]=E=>h(m).go(-1))},{default:x(()=>[y(i(r.value)+" 秒后返回上一页 ",1)]),_:1})):g("",!0)])])}}}),dt=I(S,[["__scopeId","data-v-0154c8e6"]]);export{dt as default}; diff --git a/server/public/admin/assets/fans-DpM3qtuW.js b/server/public/admin/assets/fans-CmdPlHB_.js similarity index 89% rename from server/public/admin/assets/fans-DpM3qtuW.js rename to server/public/admin/assets/fans-CmdPlHB_.js index c5c1b1a5..87c31df3 100644 --- a/server/public/admin/assets/fans-DpM3qtuW.js +++ b/server/public/admin/assets/fans-CmdPlHB_.js @@ -1 +1 @@ -import{r as n}from"./index-Nt5zMHcc.js";function e(t){return n.get({url:"/fan/lists",params:t})}function i(t){return n.post({url:"/fan/add",params:t})}function s(t){return n.post({url:"/fan/edit",params:t})}function a(t){return n.post({url:"/fan/delete",params:t})}function f(t){return n.get({url:"/fan/visitRecordLists",params:t})}function o(t){return n.post({url:"/fan/addVisitRecord",params:t})}function u(t){return n.post({url:"/fan/editVisitRecord",params:t})}function d(t){return n.post({url:"/fan/deleteVisitRecord",params:t})}export{i as a,s as b,o as c,u as d,d as e,e as f,f as g,a as h}; +import{r as n}from"./index--WnM67ZH.js";function e(t){return n.get({url:"/fan/lists",params:t})}function i(t){return n.post({url:"/fan/add",params:t})}function s(t){return n.post({url:"/fan/edit",params:t})}function a(t){return n.post({url:"/fan/delete",params:t})}function f(t){return n.get({url:"/fan/visitRecordLists",params:t})}function o(t){return n.post({url:"/fan/addVisitRecord",params:t})}function u(t){return n.post({url:"/fan/editVisitRecord",params:t})}function d(t){return n.post({url:"/fan/deleteVisitRecord",params:t})}export{i as a,s as b,o as c,u as d,d as e,e as f,f as g,a as h}; diff --git a/server/public/admin/assets/file-dC1LMm1W.js b/server/public/admin/assets/file-B0kKUfF_.js similarity index 95% rename from server/public/admin/assets/file-dC1LMm1W.js rename to server/public/admin/assets/file-B0kKUfF_.js index 00cfa270..6475ada2 100644 --- a/server/public/admin/assets/file-dC1LMm1W.js +++ b/server/public/admin/assets/file-B0kKUfF_.js @@ -1 +1 @@ -import{e as f,q as a,g as c,R as p,r as t}from"./index-Nt5zMHcc.js";async function i(e,n="image",o=0){const l=f(),r=new FormData;r.append("file",e),r.append("cid",String(o));const u=`${a.baseUrl}${a.urlPrefix}/upload/${n}`,s=await(await fetch(u,{method:"POST",headers:{token:c()||"",version:l.config.version||""},body:r})).json();if(s.code!==p.SUCCESS)throw new Error(s.msg||"上传失败");return s.data}async function m(e,n="screenshot.jpg"){const o=e instanceof File?e:new File([e],n,{type:e.type||"image/jpeg"});return i(o,"image",0)}async function C(e,n="recording.webm"){const o=e instanceof File?e:new File([e],n,{type:e.type||"video/webm"});return i(o,"video",0)}function b(e){return t.post({url:"/file/addCate",params:e})}function w(e){return t.post({url:"/file/editCate",params:e})}function y(e){return t.post({url:"/file/delCate",params:e})}function j(e){return t.get({url:"/file/listCate",params:e})}function S(e){return t.get({url:"/file/lists",params:e},{ignoreCancelToken:!0,isOpenRetry:!1})}function h(e){return t.post({url:"/file/delete",params:e})}function v(e){return t.post({url:"/file/move",params:e})}function F(e){return t.post({url:"/file/rename",params:e})}function O(e){return t.post({url:"/upload/ossCredentials",params:e})}function k(e){return t.post({url:"/upload/ossConfirm",params:e})}export{i as a,y as b,w as c,b as d,F as e,j as f,v as g,h,S as i,O as j,k,C as l,m as u}; +import{e as f,q as a,g as c,R as p,r as t}from"./index--WnM67ZH.js";async function i(e,n="image",o=0){const l=f(),r=new FormData;r.append("file",e),r.append("cid",String(o));const u=`${a.baseUrl}${a.urlPrefix}/upload/${n}`,s=await(await fetch(u,{method:"POST",headers:{token:c()||"",version:l.config.version||""},body:r})).json();if(s.code!==p.SUCCESS)throw new Error(s.msg||"上传失败");return s.data}async function m(e,n="screenshot.jpg"){const o=e instanceof File?e:new File([e],n,{type:e.type||"image/jpeg"});return i(o,"image",0)}async function C(e,n="recording.webm"){const o=e instanceof File?e:new File([e],n,{type:e.type||"video/webm"});return i(o,"video",0)}function b(e){return t.post({url:"/file/addCate",params:e})}function w(e){return t.post({url:"/file/editCate",params:e})}function y(e){return t.post({url:"/file/delCate",params:e})}function j(e){return t.get({url:"/file/listCate",params:e})}function S(e){return t.get({url:"/file/lists",params:e},{ignoreCancelToken:!0,isOpenRetry:!1})}function h(e){return t.post({url:"/file/delete",params:e})}function v(e){return t.post({url:"/file/move",params:e})}function F(e){return t.post({url:"/file/rename",params:e})}function O(e){return t.post({url:"/upload/ossCredentials",params:e})}function k(e){return t.post({url:"/upload/ossConfirm",params:e})}export{i as a,y as b,w as c,b as d,F as e,j as f,v as g,h,S as i,O as j,k,C as l,m as u}; diff --git a/server/public/admin/assets/file-BLRQstYf.js b/server/public/admin/assets/file-TV1Qmc9P.js similarity index 90% rename from server/public/admin/assets/file-BLRQstYf.js rename to server/public/admin/assets/file-TV1Qmc9P.js index e777cc1c..cc2952b4 100644 --- a/server/public/admin/assets/file-BLRQstYf.js +++ b/server/public/admin/assets/file-TV1Qmc9P.js @@ -1 +1 @@ -import{J as n,i as u,C as v}from"./element-plus-DFTWCWyi.js";import{_ as f}from"./picker-cSgp8cEl.js";import{f as x,ak as V,I as _,a as i,aN as r,J as l,O as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,r as U}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const k={class:"flex flex-wrap"},B={class:"flex m-4"},C={class:"flex m-4"},E={class:"flex flex-1 m-4"},N={class:"flex-1"},b={class:"flex flex-wrap"},y={class:"flex m-4"},I={class:"flex m-4"},J={class:"flex m-4"},c={class:"flex m-4 items-center"},g={class:"flex m-4 items-center"},Oo=x({__name:"file",setup(z){const e=U({value1:"",value2:[],value3:"",value4:"",value5:"",value6:""});return(O,o)=>{const s=f,a=n,p=u,d=v;return V(),_("div",null,[i(a,{header:"基础使用",shadow:"never",class:"!border-none"},{default:r(()=>[l("div",k,[l("div",B,[o[6]||(o[6]=l("div",{class:"mr-4"},"选择图片:",-1)),i(s,{modelValue:t(e).value1,"onUpdate:modelValue":o[0]||(o[0]=m=>t(e).value1=m)},null,8,["modelValue"])]),l("div",C,[o[7]||(o[7]=l("div",{class:"mr-4"},"选择视频:",-1)),i(s,{type:"video",modelValue:t(e).value3,"onUpdate:modelValue":o[1]||(o[1]=m=>t(e).value3=m)},null,8,["modelValue"])]),l("div",E,[o[8]||(o[8]=l("div",{class:"mr-4"},"多张图片:",-1)),l("div",N,[i(s,{limit:4,modelValue:t(e).value2,"onUpdate:modelValue":o[2]||(o[2]=m=>t(e).value2=m)},null,8,["modelValue"])])])])]),_:1}),i(a,{header:"进阶用法",shadow:"never",class:"!border-none mt-4"},{default:r(()=>[l("div",b,[l("div",y,[o[9]||(o[9]=l("div",{class:"mr-4"},"自定义选择器大小:",-1)),i(s,{size:"60px",modelValue:t(e).value4,"onUpdate:modelValue":o[3]||(o[3]=m=>t(e).value4=m)},null,8,["modelValue"])]),l("div",I,[o[11]||(o[11]=l("div",{class:"mr-4"},"使用插槽:",-1)),i(s,{modelValue:t(e).value5,"onUpdate:modelValue":o[4]||(o[4]=m=>t(e).value5=m)},{upload:r(()=>[i(p,null,{default:r(()=>[...o[10]||(o[10]=[w("选择文件",-1)])]),_:1})]),_:1},8,["modelValue"])]),l("div",J,[o[12]||(o[12]=l("div",{class:"mr-4"},"选出地址不带域名:",-1)),i(s,{"exclude-domain":!0,modelValue:t(e).value6,"onUpdate:modelValue":o[5]||(o[5]=m=>t(e).value6=m)},null,8,["modelValue"])])]),l("div",null,[l("div",c,[o[13]||(o[13]=l("div",{class:"w-20 flex-none"},"带域名:",-1)),i(d,{class:"w-[500px]","model-value":t(e).value5},null,8,["model-value"])]),l("div",g,[o[14]||(o[14]=l("div",{class:"w-20 flex-none"},"不带域名:",-1)),i(d,{class:"w-[500px]","model-value":t(e).value6},null,8,["model-value"])])])]),_:1})])}}});export{Oo as default}; +import{J as n,i as u,C as v}from"./element-plus-DFTWCWyi.js";import{_ as f}from"./picker-DzCeqD7m.js";import{f as x,ak as V,I as _,a as i,aN as r,J as l,O as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,r as U}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const k={class:"flex flex-wrap"},B={class:"flex m-4"},C={class:"flex m-4"},E={class:"flex flex-1 m-4"},N={class:"flex-1"},b={class:"flex flex-wrap"},y={class:"flex m-4"},I={class:"flex m-4"},J={class:"flex m-4"},c={class:"flex m-4 items-center"},g={class:"flex m-4 items-center"},Oo=x({__name:"file",setup(z){const e=U({value1:"",value2:[],value3:"",value4:"",value5:"",value6:""});return(O,o)=>{const s=f,a=n,p=u,d=v;return V(),_("div",null,[i(a,{header:"基础使用",shadow:"never",class:"!border-none"},{default:r(()=>[l("div",k,[l("div",B,[o[6]||(o[6]=l("div",{class:"mr-4"},"选择图片:",-1)),i(s,{modelValue:t(e).value1,"onUpdate:modelValue":o[0]||(o[0]=m=>t(e).value1=m)},null,8,["modelValue"])]),l("div",C,[o[7]||(o[7]=l("div",{class:"mr-4"},"选择视频:",-1)),i(s,{type:"video",modelValue:t(e).value3,"onUpdate:modelValue":o[1]||(o[1]=m=>t(e).value3=m)},null,8,["modelValue"])]),l("div",E,[o[8]||(o[8]=l("div",{class:"mr-4"},"多张图片:",-1)),l("div",N,[i(s,{limit:4,modelValue:t(e).value2,"onUpdate:modelValue":o[2]||(o[2]=m=>t(e).value2=m)},null,8,["modelValue"])])])])]),_:1}),i(a,{header:"进阶用法",shadow:"never",class:"!border-none mt-4"},{default:r(()=>[l("div",b,[l("div",y,[o[9]||(o[9]=l("div",{class:"mr-4"},"自定义选择器大小:",-1)),i(s,{size:"60px",modelValue:t(e).value4,"onUpdate:modelValue":o[3]||(o[3]=m=>t(e).value4=m)},null,8,["modelValue"])]),l("div",I,[o[11]||(o[11]=l("div",{class:"mr-4"},"使用插槽:",-1)),i(s,{modelValue:t(e).value5,"onUpdate:modelValue":o[4]||(o[4]=m=>t(e).value5=m)},{upload:r(()=>[i(p,null,{default:r(()=>[...o[10]||(o[10]=[w("选择文件",-1)])]),_:1})]),_:1},8,["modelValue"])]),l("div",J,[o[12]||(o[12]=l("div",{class:"mr-4"},"选出地址不带域名:",-1)),i(s,{"exclude-domain":!0,modelValue:t(e).value6,"onUpdate:modelValue":o[5]||(o[5]=m=>t(e).value6=m)},null,8,["modelValue"])])]),l("div",null,[l("div",c,[o[13]||(o[13]=l("div",{class:"w-20 flex-none"},"带域名:",-1)),i(d,{class:"w-[500px]","model-value":t(e).value5},null,8,["model-value"])]),l("div",g,[o[14]||(o[14]=l("div",{class:"w-20 flex-none"},"不带域名:",-1)),i(d,{class:"w-[500px]","model-value":t(e).value6},null,8,["model-value"])])])]),_:1})])}}});export{Oo as default}; diff --git a/server/public/admin/assets/filing-D7ZQBdrZ.js b/server/public/admin/assets/filing-BobnA8KA.js similarity index 94% rename from server/public/admin/assets/filing-D7ZQBdrZ.js rename to server/public/admin/assets/filing-BobnA8KA.js index dc9e0afb..3bcb54e9 100644 --- a/server/public/admin/assets/filing-D7ZQBdrZ.js +++ b/server/public/admin/assets/filing-BobnA8KA.js @@ -1 +1 @@ -import{_ as F}from"./index-DbiC_Mh1.js";import{D as x,B as N,C as U,i as I,J}from"./element-plus-DFTWCWyi.js";import{c as P,i as $}from"./index-Nt5zMHcc.js";import{_ as A}from"./index-D18gAY1e.js";import{g as G,s as L}from"./website-D92RBx7y.js";import{f as w,as as O,ak as i,I as u,a as o,aN as e,J as l,F as S,ap as T,G as f,O as v,aP as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as g,n as q}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const z={class:"website-filing"},H={class:"py-4 bg-fill-lighter"},K={class:"w-80"},M={class:"w-80"},Q=w({name:"webFilling"}),Go=w({...Q,setup(R){const r=q([{key:"",value:""}]),p=async()=>{const n=await G();n.length&&(r.value=n)},h=()=>{r.value.push({key:"",value:""})},b=n=>{if(r.value.length<=1)return $.msgError("至少保留一个");r.value.splice(n,1)},y=async()=>{await L({config:r.value}),p()};return p(),(n,t)=>{const m=U,_=N,k=A,C=P,c=I,V=x,E=J,B=F,D=O("perms");return i(),u("div",z,[o(E,{shadow:"never",class:"!border-none"},{default:e(()=>[t[2]||(t[2]=l("div",{class:"mb-5"},"站点底部版权备案信息设置",-1)),o(V,{ref:"form",class:"ls-form","label-width":"100px"},{default:e(()=>[(i(!0),u(S,null,T(g(r),(a,d)=>(i(),f(k,{class:"mb-4",key:d,"show-close":g(r).length>1,onClose:s=>b(d)},{default:e(()=>[l("div",H,[o(_,{label:"显示名称",prop:"icp_link"},{default:e(()=>[l("div",K,[l("div",null,[o(m,{modelValue:a.key,"onUpdate:modelValue":s=>a.key=s,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])])])]),_:2},1024),o(_,{label:"跳转链接",prop:"icp_link"},{default:e(()=>[l("div",M,[l("div",null,[o(m,{modelValue:a.value,"onUpdate:modelValue":s=>a.value=s,placeholder:"请输入链接,例如:http://www.beian.gov.cn"},null,8,["modelValue","onUpdate:modelValue"])]),t[0]||(t[0]=l("div",{class:"form-tips"},"跳转链接不设置,则不跳转",-1))])]),_:2},1024)])]),_:2},1032,["show-close","onClose"]))),128)),l("div",null,[o(c,{type:"primary",onClick:h},{default:e(()=>[o(C,{name:"el-icon-Plus"}),t[1]||(t[1]=v(" 添加 ",-1))]),_:1})])]),_:1},512)]),_:1}),j((i(),f(B,null,{default:e(()=>[o(c,{type:"primary",onClick:y},{default:e(()=>[...t[3]||(t[3]=[v("保存",-1)])]),_:1})]),_:1})),[[D,["setting.web.web_setting/setCopyright"]]])])}}});export{Go as default}; +import{_ as F}from"./index-j275bAO5.js";import{D as x,B as N,C as U,i as I,J}from"./element-plus-DFTWCWyi.js";import{c as P,i as $}from"./index--WnM67ZH.js";import{_ as A}from"./index-BtiRSS_3.js";import{g as G,s as L}from"./website-HcLkfBpP.js";import{f as w,as as O,ak as i,I as u,a as o,aN as e,J as l,F as S,ap as T,G as f,O as v,aP as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as g,n as q}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const z={class:"website-filing"},H={class:"py-4 bg-fill-lighter"},K={class:"w-80"},M={class:"w-80"},Q=w({name:"webFilling"}),Go=w({...Q,setup(R){const r=q([{key:"",value:""}]),p=async()=>{const n=await G();n.length&&(r.value=n)},h=()=>{r.value.push({key:"",value:""})},b=n=>{if(r.value.length<=1)return $.msgError("至少保留一个");r.value.splice(n,1)},y=async()=>{await L({config:r.value}),p()};return p(),(n,t)=>{const m=U,_=N,k=A,C=P,c=I,V=x,E=J,B=F,D=O("perms");return i(),u("div",z,[o(E,{shadow:"never",class:"!border-none"},{default:e(()=>[t[2]||(t[2]=l("div",{class:"mb-5"},"站点底部版权备案信息设置",-1)),o(V,{ref:"form",class:"ls-form","label-width":"100px"},{default:e(()=>[(i(!0),u(S,null,T(g(r),(a,d)=>(i(),f(k,{class:"mb-4",key:d,"show-close":g(r).length>1,onClose:s=>b(d)},{default:e(()=>[l("div",H,[o(_,{label:"显示名称",prop:"icp_link"},{default:e(()=>[l("div",K,[l("div",null,[o(m,{modelValue:a.key,"onUpdate:modelValue":s=>a.key=s,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])])])]),_:2},1024),o(_,{label:"跳转链接",prop:"icp_link"},{default:e(()=>[l("div",M,[l("div",null,[o(m,{modelValue:a.value,"onUpdate:modelValue":s=>a.value=s,placeholder:"请输入链接,例如:http://www.beian.gov.cn"},null,8,["modelValue","onUpdate:modelValue"])]),t[0]||(t[0]=l("div",{class:"form-tips"},"跳转链接不设置,则不跳转",-1))])]),_:2},1024)])]),_:2},1032,["show-close","onClose"]))),128)),l("div",null,[o(c,{type:"primary",onClick:h},{default:e(()=>[o(C,{name:"el-icon-Plus"}),t[1]||(t[1]=v(" 添加 ",-1))]),_:1})])]),_:1},512)]),_:1}),j((i(),f(B,null,{default:e(()=>[o(c,{type:"primary",onClick:y},{default:e(()=>[...t[3]||(t[3]=[v("保存",-1)])]),_:1})]),_:1})),[[D,["setting.web.web_setting/setCopyright"]]])])}}});export{Go as default}; diff --git a/server/public/admin/assets/finance-L1-WPbJt.js b/server/public/admin/assets/finance-CuL8jhJS.js similarity index 95% rename from server/public/admin/assets/finance-L1-WPbJt.js rename to server/public/admin/assets/finance-CuL8jhJS.js index 1911c54e..1392cb0c 100644 --- a/server/public/admin/assets/finance-L1-WPbJt.js +++ b/server/public/admin/assets/finance-CuL8jhJS.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function r(n){return t.get({url:"/finance.account_log/lists",params:n})}function c(n){return t.get({url:"/recharge.recharge/lists",params:n},{ignoreCancelToken:!0})}function a(n){return t.get({url:"/finance.account_log/getUmChangeType",params:n})}function u(n){return t.post({url:"/recharge.recharge/refund",params:n})}function o(n){return t.post({url:"/recharge.recharge/refundAgain",params:n})}function s(n){return t.get({url:"/finance.refund/record",params:n})}function f(n){return t.get({url:"/finance.refund/log",params:n})}function i(n){return t.get({url:"/finance.refund/stat",params:n})}function g(n){return t.get({url:"/finance.account_cost/lists",params:n})}function l(n){return t.post({url:"/finance.account_cost/add",params:n})}function d(n){return t.post({url:"/finance.account_cost/edit",params:n})}function p(n){return t.get({url:"/finance.account_cost/detail",params:n})}function h(n){return t.post({url:"/finance.account_cost/delete",params:n})}function _(n){return t.get({url:"/finance.dept_performance_target/monthMatrix",params:n})}function m(n){return t.post({url:"/finance.dept_performance_target/batchSave",params:n})}export{d as a,l as b,p as c,_ as d,g as e,h as f,r as g,a as h,m as i,c as j,u as k,s as l,o as m,i as n,f as r}; +import{r as t}from"./index--WnM67ZH.js";function r(n){return t.get({url:"/finance.account_log/lists",params:n})}function c(n){return t.get({url:"/recharge.recharge/lists",params:n},{ignoreCancelToken:!0})}function a(n){return t.get({url:"/finance.account_log/getUmChangeType",params:n})}function u(n){return t.post({url:"/recharge.recharge/refund",params:n})}function o(n){return t.post({url:"/recharge.recharge/refundAgain",params:n})}function s(n){return t.get({url:"/finance.refund/record",params:n})}function f(n){return t.get({url:"/finance.refund/log",params:n})}function i(n){return t.get({url:"/finance.refund/stat",params:n})}function g(n){return t.get({url:"/finance.account_cost/lists",params:n})}function l(n){return t.post({url:"/finance.account_cost/add",params:n})}function d(n){return t.post({url:"/finance.account_cost/edit",params:n})}function p(n){return t.get({url:"/finance.account_cost/detail",params:n})}function h(n){return t.post({url:"/finance.account_cost/delete",params:n})}function _(n){return t.get({url:"/finance.dept_performance_target/monthMatrix",params:n})}function m(n){return t.post({url:"/finance.dept_performance_target/batchSave",params:n})}export{d as a,l as b,p as c,_ as d,g as e,h as f,r as g,a as h,m as i,c as j,u as k,s as l,o as m,i as n,f as r}; diff --git a/server/public/admin/assets/follow_reply-DnBCK_Nn.js b/server/public/admin/assets/follow_reply-BpsbGJKg.js similarity index 93% rename from server/public/admin/assets/follow_reply-DnBCK_Nn.js rename to server/public/admin/assets/follow_reply-BpsbGJKg.js index c68bb04f..35556cff 100644 --- a/server/public/admin/assets/follow_reply-DnBCK_Nn.js +++ b/server/public/admin/assets/follow_reply-BpsbGJKg.js @@ -1 +1 @@ -import{K as S,J as B,i as D,M as T,N as L,g as A,L as O}from"./element-plus-DFTWCWyi.js";import{_ as P}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as U,i as J}from"./index-Nt5zMHcc.js";import{d as j,o as q,e as z}from"./wx_oa-BOc4Brkk.js";import{u as F}from"./usePaging-VsbTxSU0.js";import{_ as G}from"./edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js";import{f as H,ak as f,I,a as e,aN as n,J as y,O as u,aP as K,G as g,H as M,A as Q,n as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as W,q as X,n as Y}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Z}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const tt={class:"flex justify-end mt-4"},Gt=H({__name:"follow_reply",setup(et){const m=X(),p=Y(!1),h=Q(()=>a=>{switch(a){case 1:return"文本"}}),{pager:r,getLists:l}=F({fetchFun:j,params:{reply_type:1}}),b=async()=>{var a;p.value=!0,await w(),(a=m.value)==null||a.open("add",1)},C=async a=>{var t,d;p.value=!0,await w(),(t=m.value)==null||t.open("edit",1),(d=m.value)==null||d.getDetail(a)},k=async a=>{await J.confirm("确定要删除?"),await q({id:a}),l()},V=async a=>{try{await z({id:a}),l()}catch{l()}};return l(),(a,t)=>{const d=S,v=B,E=U,_=D,s=L,$=A,x=T,R=P,N=O;return f(),I("div",null,[e(v,{class:"!border-none",shadow:"never"},{default:n(()=>[e(d,{type:"warning",title:"温馨提示:1.粉丝关注公众号时,会自动发送启用的关注回复;2.同时只能启用一个关注回复。",closable:!1,"show-icon":""})]),_:1}),e(v,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[y("div",null,[e(_,{class:"mb-4",type:"primary",onClick:t[0]||(t[0]=o=>b())},{icon:n(()=>[e(E,{name:"el-icon-Plus"})]),default:n(()=>[t[3]||(t[3]=u(" 新增 ",-1))]),_:1})]),K((f(),g(x,{size:"large",data:i(r).lists},{default:n(()=>[e(s,{label:"规则名称",prop:"name","min-width":"120"}),e(s,{label:"回复类型","min-width":"120"},{default:n(({row:o})=>[u(Z(i(h)(o.content_type)),1)]),_:1}),e(s,{label:"回复内容",prop:"content","min-width":"120"}),e(s,{label:"状态","min-width":"120"},{default:n(({row:o})=>[e($,{modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0,onChange:c=>V(o.id)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),e(s,{label:"排序",prop:"sort","min-width":"120"}),e(s,{label:"操作",width:"120",fixed:"right"},{default:n(({row:o})=>[e(_,{type:"primary",link:"",onClick:c=>C(o)},{default:n(()=>[...t[4]||(t[4]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"]),e(_,{type:"danger",link:"",onClick:c=>k(o.id)},{default:n(()=>[...t[5]||(t[5]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[N,i(r).loading]]),y("div",tt,[e(R,{modelValue:i(r),"onUpdate:modelValue":t[1]||(t[1]=o=>W(r)?r.value=o:null),onChange:i(l)},null,8,["modelValue","onChange"])])]),_:1}),i(p)?(f(),g(G,{key:0,ref_key:"editRef",ref:m,onSuccess:i(l),onClose:t[2]||(t[2]=o=>p.value=!1)},null,8,["onSuccess"])):M("",!0)])}}});export{Gt as default}; +import{K as S,J as B,i as D,M as T,N as L,g as A,L as O}from"./element-plus-DFTWCWyi.js";import{_ as P}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as U,i as J}from"./index--WnM67ZH.js";import{d as j,o as q,e as z}from"./wx_oa-CN0ZaZdj.js";import{u as F}from"./usePaging-VsbTxSU0.js";import{_ as G}from"./edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js";import{f as H,ak as f,I,a as e,aN as n,J as y,O as u,aP as K,G as g,H as M,A as Q,n as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as W,q as X,n as Y}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Z}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const tt={class:"flex justify-end mt-4"},Gt=H({__name:"follow_reply",setup(et){const m=X(),p=Y(!1),h=Q(()=>a=>{switch(a){case 1:return"文本"}}),{pager:r,getLists:l}=F({fetchFun:j,params:{reply_type:1}}),b=async()=>{var a;p.value=!0,await w(),(a=m.value)==null||a.open("add",1)},C=async a=>{var t,d;p.value=!0,await w(),(t=m.value)==null||t.open("edit",1),(d=m.value)==null||d.getDetail(a)},k=async a=>{await J.confirm("确定要删除?"),await q({id:a}),l()},V=async a=>{try{await z({id:a}),l()}catch{l()}};return l(),(a,t)=>{const d=S,v=B,E=U,_=D,s=L,$=A,x=T,R=P,N=O;return f(),I("div",null,[e(v,{class:"!border-none",shadow:"never"},{default:n(()=>[e(d,{type:"warning",title:"温馨提示:1.粉丝关注公众号时,会自动发送启用的关注回复;2.同时只能启用一个关注回复。",closable:!1,"show-icon":""})]),_:1}),e(v,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[y("div",null,[e(_,{class:"mb-4",type:"primary",onClick:t[0]||(t[0]=o=>b())},{icon:n(()=>[e(E,{name:"el-icon-Plus"})]),default:n(()=>[t[3]||(t[3]=u(" 新增 ",-1))]),_:1})]),K((f(),g(x,{size:"large",data:i(r).lists},{default:n(()=>[e(s,{label:"规则名称",prop:"name","min-width":"120"}),e(s,{label:"回复类型","min-width":"120"},{default:n(({row:o})=>[u(Z(i(h)(o.content_type)),1)]),_:1}),e(s,{label:"回复内容",prop:"content","min-width":"120"}),e(s,{label:"状态","min-width":"120"},{default:n(({row:o})=>[e($,{modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0,onChange:c=>V(o.id)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),e(s,{label:"排序",prop:"sort","min-width":"120"}),e(s,{label:"操作",width:"120",fixed:"right"},{default:n(({row:o})=>[e(_,{type:"primary",link:"",onClick:c=>C(o)},{default:n(()=>[...t[4]||(t[4]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"]),e(_,{type:"danger",link:"",onClick:c=>k(o.id)},{default:n(()=>[...t[5]||(t[5]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[N,i(r).loading]]),y("div",tt,[e(R,{modelValue:i(r),"onUpdate:modelValue":t[1]||(t[1]=o=>W(r)?r.value=o:null),onChange:i(l)},null,8,["modelValue","onChange"])])]),_:1}),i(p)?(f(),g(G,{key:0,ref_key:"editRef",ref:m,onSuccess:i(l),onClose:t[2]||(t[2]=o=>p.value=!1)},null,8,["onSuccess"])):M("",!0)])}}});export{Gt as default}; diff --git a/server/public/admin/assets/footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js b/server/public/admin/assets/footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js similarity index 89% rename from server/public/admin/assets/footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js rename to server/public/admin/assets/footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js index bf8bb2ae..ef71026d 100644 --- a/server/public/admin/assets/footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js +++ b/server/public/admin/assets/footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js @@ -1 +1 @@ -import{e as a}from"./index-Nt5zMHcc.js";import{f as n,ak as t,I as o,J as c,F as p,ap as _,A as i}from"./@vue/runtime-core-C6bnekPw.js";import{y as f}from"./@vue/reactivity-DiY1c2vO.js";import{Q as m}from"./@vue/shared-mAAVTE9n.js";const l={class:"layout-footer"},u={class:"text-center p-2 text-xs text-tx-secondary max-w-[900px] mx-auto"},x=["href"],S=n({__name:"footer",setup(d){const r=a(),s=i(()=>r.config.copyright_config||[]);return(h,y)=>(t(),o("footer",l,[c("div",u,[(t(!0),o(p,null,_(f(s),e=>(t(),o("a",{class:"mx-1 hover:underline",href:e.value,target:"_blank",key:e.key},m(e.key),9,x))),128))])]))}});export{S as _}; +import{e as a}from"./index--WnM67ZH.js";import{f as n,ak as t,I as o,J as c,F as p,ap as _,A as i}from"./@vue/runtime-core-C6bnekPw.js";import{y as f}from"./@vue/reactivity-DiY1c2vO.js";import{Q as m}from"./@vue/shared-mAAVTE9n.js";const l={class:"layout-footer"},u={class:"text-center p-2 text-xs text-tx-secondary max-w-[900px] mx-auto"},x=["href"],S=n({__name:"footer",setup(d){const r=a(),s=i(()=>r.config.copyright_config||[]);return(h,y)=>(t(),o("footer",l,[c("div",u,[(t(!0),o(p,null,_(f(s),e=>(t(),o("a",{class:"mx-1 hover:underline",href:e.value,target:"_blank",key:e.key},m(e.key),9,x))),128))])]))}});export{S as _}; diff --git a/server/public/admin/assets/guahao-BQbGoXDp.js b/server/public/admin/assets/guahao-BYsrTfrt.js similarity index 98% rename from server/public/admin/assets/guahao-BQbGoXDp.js rename to server/public/admin/assets/guahao-BYsrTfrt.js index 234fe3d9..505258d0 100644 --- a/server/public/admin/assets/guahao-BQbGoXDp.js +++ b/server/public/admin/assets/guahao-BYsrTfrt.js @@ -1 +1 @@ -import{D as Se,B as ke,C as Ce,P as xe,Q as Ee,i as Ue,J as Ne,M as De,N as Be,T as Te,L as qe,a2 as Fe,a3 as He,G as Pe,F as Ae,V as Ie}from"./element-plus-DFTWCWyi.js";import{_ as Re}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{s as Le,w as J}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as Me}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{i as v,m as $e}from"./index-Nt5zMHcc.js";import{a as Oe,b as Ge,c as Ke}from"./doctor-B7qEhSpt.js";import{a as Qe}from"./tcm-DCW3HTOw.js";import{u as Ye}from"./usePaging-VsbTxSU0.js";import{f as W,b as je,ac as ze,as as Je,ak as d,I as S,a as l,aN as o,F as N,ap as D,G as g,O as c,J as b,aP as L,H as F,A as H}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,a as M,r as $,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as f}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const We={class:"guahao-list"},Xe={class:"flex flex-wrap items-center gap-3 mb-4"},Ze={key:0,class:"text-sm text-gray-500"},et={class:"text-sm"},tt={class:"font-medium"},lt={class:"text-gray-500"},at={class:"text-xs text-gray-400"},nt={class:"text-gray-500"},ot={class:"text-sm"},it={key:0,class:"text-xs text-gray-400 truncate"},st={class:"flex justify-end mt-4"},rt={class:"text-sm text-gray-600 mb-4"},ut=W({name:"consumerPrescriptionGuahao"}),el=W({...ut,setup(dt){const m=$({start_date:"",end_date:"",patient_name:"",doctor_name:"",assistant_id:void 0,status:"",channel_source:""}),X={start_date:"",end_date:"",patient_name:"",doctor_name:"",assistant_id:void 0,status:"",channel_source:""},{pager:E,getLists:U,resetPage:B}=Ye({fetchFun:Oe,params:m}),T=k([]),O=k(null),h=k([]);function Z(i){h.value=i}const ee=new Set(["自媒体4H","自媒体3Q","自媒体3H","自媒体2H","自媒体2Q"]);function q(i){return ee.has(String(i??"").trim())}const y=k([]),te=H(()=>{const i=n.channel_source;if(i===""||i==null)return"";const e=y.value.find(s=>String(s.value)===String(i));return e?String(e.name??"").trim():""}),G=H(()=>q(te.value)),le=H(()=>{const i=p.channel_source;if(i===""||i==null)return"";const e=y.value.find(s=>String(s.value)===String(i));return e?String(e.name??"").trim():""}),K=H(()=>q(le.value));function ae(i){const e=y.value.find(u=>String(u.value)===String(i)),s=e?String(e.name??"").trim():"";q(s)||(p.channel_source_detail="")}const C=k(!1),P=k(!1),p=$({channel_source:"",channel_source_detail:""});function ne(){if(h.value.length===0){v.msgWarning("请先勾选挂号记录");return}p.channel_source="",p.channel_source_detail="",C.value=!0}function oe(){p.channel_source="",p.channel_source_detail=""}async function ie(){var i,e;if(h.value.length===0){v.msgWarning("请先勾选挂号记录");return}if(!p.channel_source){v.msgError("请选择渠道来源");return}if(K.value&&!p.channel_source_detail.trim()){v.msgError("请填写自媒体补充说明");return}P.value=!0;try{const s=h.value.map(u=>Number(u.id));await Ge({ids:s,channel_source:p.channel_source,channel_source_detail:p.channel_source_detail.trim()}),v.msgSuccess("批量修改成功"),C.value=!1,(e=(i=O.value)==null?void 0:i.clearSelection)==null||e.call(i),h.value=[],U()}finally{P.value=!1}}function se(i){const e=y.value.find(u=>String(u.value)===String(i)),s=e?String(e.name??"").trim():"";q(s)||(n.channel_source_detail="")}const x=k(!1),A=k(!1),n=$({id:0,appointment_date:"",appointment_time:"",period:"morning",appointment_type:"video",status:1,remark:"",assistant_id:void 0,channel_source:"",channel_source_detail:""});function re(i){const e=String(i||"");return e.length>=11?e.slice(0,3)+"****"+e.slice(-4):e||"—"}function Q(i){const e=String(i||"");return e.length>=5?e.slice(0,5):e||"—"}function ue(){Object.assign(m,X),B()}function de(i){const e=String(i.period??i.type??"morning");return e==="afternoon"||e==="all"?e:"morning"}async function me(){try{const i=await Qe();T.value=(i==null?void 0:i.lists)??i??[]}catch{T.value=[]}}async function pe(){try{const i=await $e({type:"channels"}),e=((i==null?void 0:i.channels)||[]).filter(s=>s.status!==0);e.sort((s,u)=>{const r=Number((u==null?void 0:u.sort)??0)-Number((s==null?void 0:s.sort)??0);return r!==0?r:Number((u==null?void 0:u.id)??0)-Number((s==null?void 0:s.id)??0)}),y.value=e}catch{y.value=[]}}function ce(i){n.id=Number(i.id),n.appointment_date=String(i.appointment_date||""),n.appointment_time=Q(String(i.appointment_time||"")),n.period=de(i),n.appointment_type=String(i.appointment_type||"video"),n.status=Number(i.status),n.remark=String(i.remark||"");const e=i.appointment_assistant_id;n.assistant_id=e!=null&&e!==""?Number(e):void 0,n.channel_source=String(i.channel_source??i.channels??""),n.channel_source_detail=String(i.channel_source_detail??""),x.value=!0}function _e(){n.id=0,n.appointment_date="",n.appointment_time="",n.period="morning",n.appointment_type="video",n.status=1,n.remark="",n.assistant_id=void 0,n.channel_source="",n.channel_source_detail=""}async function fe(){if(!n.appointment_date){v.msgError("请选择预约日期");return}if(!n.appointment_time){v.msgError("请选择预约时间");return}if(!n.channel_source){v.msgError("请选择渠道来源");return}if(G.value&&!n.channel_source_detail.trim()){v.msgError("请填写自媒体补充说明");return}A.value=!0;try{const i={id:n.id,appointment_date:n.appointment_date,appointment_time:n.appointment_time,period:n.period,appointment_type:n.appointment_type,status:n.status,remark:n.remark,assistant_id:n.assistant_id??"",channel_source:n.channel_source,channel_source_detail:n.channel_source_detail.trim()};await Ke(i),v.msgSuccess("保存成功"),x.value=!1,U()}finally{A.value=!1}}return je(()=>{me(),pe()}),ze(()=>{U()}),U(),(i,e)=>{const s=ke,u=Ce,r=Ee,V=xe,w=Ue,I=Se,Y=Ne,_=Be,ve=Te,ge=De,be=Re,he=Fe,ye=He,R=Ae,Ve=Pe,j=Ie,z=Je("perms"),we=qe;return d(),S("div",We,[l(Y,{class:"!border-none",shadow:"never"},{default:o(()=>[l(I,{class:"mb-[-16px]",model:a(m),inline:!0,onSubmit:e[7]||(e[7]=Le(()=>{},["prevent"]))},{default:o(()=>[l(s,{label:"预约日期"},{default:o(()=>[l(Me,{startTime:a(m).start_date,"onUpdate:startTime":e[0]||(e[0]=t=>a(m).start_date=t),endTime:a(m).end_date,"onUpdate:endTime":e[1]||(e[1]=t=>a(m).end_date=t)},null,8,["startTime","endTime"])]),_:1}),l(s,{label:"患者姓名"},{default:o(()=>[l(u,{modelValue:a(m).patient_name,"onUpdate:modelValue":e[2]||(e[2]=t=>a(m).patient_name=t),placeholder:"模糊搜索",clearable:"",class:"!w-[160px]",onKeyup:J(a(B),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(s,{label:"医生"},{default:o(()=>[l(u,{modelValue:a(m).doctor_name,"onUpdate:modelValue":e[3]||(e[3]=t=>a(m).doctor_name=t),placeholder:"模糊搜索",clearable:"",class:"!w-[140px]",onKeyup:J(a(B),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(s,{label:"医助"},{default:o(()=>[l(V,{modelValue:a(m).assistant_id,"onUpdate:modelValue":e[4]||(e[4]=t=>a(m).assistant_id=t),placeholder:"全部",clearable:"",filterable:"",class:"!w-[180px]"},{default:o(()=>[(d(!0),S(N,null,D(a(T),t=>(d(),g(r,{key:t.id,label:t.name+(t.account?` (${t.account})`:""),value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"状态"},{default:o(()=>[l(V,{modelValue:a(m).status,"onUpdate:modelValue":e[5]||(e[5]=t=>a(m).status=t),placeholder:"全部",clearable:"",class:"!w-[130px]"},{default:o(()=>[l(r,{label:"已预约",value:1}),l(r,{label:"已取消",value:2}),l(r,{label:"已完成",value:3}),l(r,{label:"已过号",value:4})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"渠道"},{default:o(()=>[l(V,{modelValue:a(m).channel_source,"onUpdate:modelValue":e[6]||(e[6]=t=>a(m).channel_source=t),placeholder:"全部",clearable:"",filterable:"",class:"!w-[200px]"},{default:o(()=>[(d(!0),S(N,null,D(a(y),t=>(d(),g(r,{key:String(t.value),label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(s,null,{default:o(()=>[l(w,{type:"primary",onClick:a(B)},{default:o(()=>[...e[24]||(e[24]=[c("查询",-1)])]),_:1},8,["onClick"]),l(w,{onClick:ue},{default:o(()=>[...e[25]||(e[25]=[c("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),l(Y,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[b("div",Xe,[L((d(),g(w,{type:"primary",disabled:a(h).length===0,onClick:ne},{default:o(()=>[...e[26]||(e[26]=[c(" 批量修改渠道 ",-1)])]),_:1},8,["disabled"])),[[z,["doctor.appointment/edit"]]]),a(h).length>0?(d(),S("span",Ze," 已选 "+f(a(h).length)+" 条 ",1)):F("",!0)]),L((d(),g(ge,{ref_key:"tableRef",ref:O,"row-key":"id",data:a(E).lists,size:"large",stripe:"",onSelectionChange:Z},{default:o(()=>[l(_,{type:"selection",width:"48",align:"center","reserve-selection":""}),l(_,{label:"ID",prop:"id",width:"72",align:"center"}),l(_,{label:"诊单/患者","min-width":"140"},{default:o(({row:t})=>[b("div",et,[b("div",tt,f(t.patient_name||"—"),1),b("div",lt,f(re(t.patient_phone)),1),b("div",at,"诊单 #"+f(t.diagnosis_id??t.patient_id),1)])]),_:1}),l(_,{label:"医生",prop:"doctor_name",width:"100","show-overflow-tooltip":""}),l(_,{label:"医助",prop:"assistant_name",width:"100","show-overflow-tooltip":""}),l(_,{label:"预约时间","min-width":"128"},{default:o(({row:t})=>[b("div",null,f(t.appointment_date),1),b("div",nt,f(Q(t.appointment_time))+" · "+f(t.period_desc),1)]),_:1}),l(_,{label:"类型",prop:"appointment_type_desc",width:"100"}),l(_,{label:"渠道","min-width":"130","show-overflow-tooltip":""},{default:o(({row:t})=>[b("div",ot,f(t.channel_source_desc||"—"),1),t.channel_source_detail?(d(),S("div",it,f(t.channel_source_detail),1)):F("",!0)]),_:1}),l(_,{label:"状态",width:"96",align:"center"},{default:o(({row:t})=>[l(ve,{type:t.status===1?"success":t.status===2?"info":t.status===3?"primary":"danger",size:"small",effect:"light"},{default:o(()=>[c(f(t.status_desc),1)]),_:2},1032,["type"])]),_:1}),l(_,{label:"备注",prop:"remark","min-width":"120","show-overflow-tooltip":""}),l(_,{label:"操作",width:"100",fixed:"right",align:"center"},{default:o(({row:t})=>[L((d(),g(w,{type:"primary",link:"",onClick:mt=>ce(t)},{default:o(()=>[...e[27]||(e[27]=[c(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[z,["doctor.appointment/edit"]]])]),_:1})]),_:1},8,["data"])),[[we,a(E).loading]]),b("div",st,[l(be,{modelValue:a(E),"onUpdate:modelValue":e[8]||(e[8]=t=>M(E)?E.value=t:null),onChange:a(U)},null,8,["modelValue","onChange"])])]),_:1}),l(j,{modelValue:a(x),"onUpdate:modelValue":e[19]||(e[19]=t=>M(x)?x.value=t:null),title:"编辑挂号",width:"560px","destroy-on-close":"",onClosed:_e},{footer:o(()=>[l(w,{onClick:e[18]||(e[18]=t=>x.value=!1)},{default:o(()=>[...e[31]||(e[31]=[c("取消",-1)])]),_:1}),l(w,{type:"primary",loading:a(A),onClick:fe},{default:o(()=>[...e[32]||(e[32]=[c("保存",-1)])]),_:1},8,["loading"])]),default:o(()=>[l(I,{model:a(n),"label-width":"96px"},{default:o(()=>[l(s,{label:"预约日期",required:""},{default:o(()=>[l(he,{modelValue:a(n).appointment_date,"onUpdate:modelValue":e[9]||(e[9]=t=>a(n).appointment_date=t),type:"date","value-format":"YYYY-MM-DD",placeholder:"选择日期",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(s,{label:"预约时间",required:""},{default:o(()=>[l(ye,{modelValue:a(n).appointment_time,"onUpdate:modelValue":e[10]||(e[10]=t=>a(n).appointment_time=t),format:"HH:mm","value-format":"HH:mm",placeholder:"时间",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(s,{label:"时段",required:""},{default:o(()=>[l(Ve,{modelValue:a(n).period,"onUpdate:modelValue":e[11]||(e[11]=t=>a(n).period=t)},{default:o(()=>[l(R,{label:"morning"},{default:o(()=>[...e[28]||(e[28]=[c("上午",-1)])]),_:1}),l(R,{label:"afternoon"},{default:o(()=>[...e[29]||(e[29]=[c("下午",-1)])]),_:1}),l(R,{label:"all"},{default:o(()=>[...e[30]||(e[30]=[c("全天",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"问诊类型",required:""},{default:o(()=>[l(V,{modelValue:a(n).appointment_type,"onUpdate:modelValue":e[12]||(e[12]=t=>a(n).appointment_type=t),class:"!w-full"},{default:o(()=>[l(r,{label:"视频问诊",value:"video"}),l(r,{label:"图文问诊",value:"text"}),l(r,{label:"电话问诊",value:"phone"})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"渠道来源",required:""},{default:o(()=>[l(V,{modelValue:a(n).channel_source,"onUpdate:modelValue":e[13]||(e[13]=t=>a(n).channel_source=t),placeholder:"请选择渠道来源",filterable:"",class:"!w-full",onChange:se},{default:o(()=>[(d(!0),S(N,null,D(a(y),t=>(d(),g(r,{key:String(t.value),label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(G)?(d(),g(s,{key:0,label:"自媒体补充",required:""},{default:o(()=>[l(u,{modelValue:a(n).channel_source_detail,"onUpdate:modelValue":e[14]||(e[14]=t=>a(n).channel_source_detail=t),maxlength:"128","show-word-limit":"",placeholder:"请输入自媒体相关补充内容",clearable:"",class:"!w-full"},null,8,["modelValue"])]),_:1})):F("",!0),l(s,{label:"状态",required:""},{default:o(()=>[l(V,{modelValue:a(n).status,"onUpdate:modelValue":e[15]||(e[15]=t=>a(n).status=t),class:"!w-full"},{default:o(()=>[l(r,{label:"已预约",value:1}),l(r,{label:"已取消",value:2}),l(r,{label:"已完成",value:3}),l(r,{label:"已过号",value:4})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"挂号医助"},{default:o(()=>[l(V,{modelValue:a(n).assistant_id,"onUpdate:modelValue":e[16]||(e[16]=t=>a(n).assistant_id=t),placeholder:"不修改可留空",clearable:"",filterable:"",class:"!w-full"},{default:o(()=>[(d(!0),S(N,null,D(a(T),t=>(d(),g(r,{key:t.id,label:t.name+(t.account?` (${t.account})`:""),value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"备注"},{default:o(()=>[l(u,{modelValue:a(n).remark,"onUpdate:modelValue":e[17]||(e[17]=t=>a(n).remark=t),type:"textarea",rows:3,maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(j,{modelValue:a(C),"onUpdate:modelValue":e[23]||(e[23]=t=>M(C)?C.value=t:null),title:"批量修改渠道",width:"520px","destroy-on-close":"",onClosed:oe},{footer:o(()=>[l(w,{onClick:e[22]||(e[22]=t=>C.value=!1)},{default:o(()=>[...e[33]||(e[33]=[c("取消",-1)])]),_:1}),l(w,{type:"primary",loading:a(P),onClick:ie},{default:o(()=>[...e[34]||(e[34]=[c("确定",-1)])]),_:1},8,["loading"])]),default:o(()=>[b("p",rt,"将对已选 "+f(a(h).length)+" 条挂号写入同一渠道来源(仅改渠道,不改其它字段)。",1),l(I,{model:a(p),"label-width":"96px"},{default:o(()=>[l(s,{label:"渠道来源",required:""},{default:o(()=>[l(V,{modelValue:a(p).channel_source,"onUpdate:modelValue":e[20]||(e[20]=t=>a(p).channel_source=t),placeholder:"请选择渠道来源",filterable:"",class:"!w-full",onChange:ae},{default:o(()=>[(d(!0),S(N,null,D(a(y),t=>(d(),g(r,{key:String(t.value),label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(K)?(d(),g(s,{key:0,label:"自媒体补充",required:""},{default:o(()=>[l(u,{modelValue:a(p).channel_source_detail,"onUpdate:modelValue":e[21]||(e[21]=t=>a(p).channel_source_detail=t),maxlength:"128","show-word-limit":"",placeholder:"请输入自媒体相关补充内容",clearable:"",class:"!w-full"},null,8,["modelValue"])]),_:1})):F("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}});export{el as default}; +import{D as Se,B as ke,C as Ce,P as xe,Q as Ee,i as Ue,J as Ne,M as De,N as Be,T as Te,L as qe,a2 as Fe,a3 as He,G as Pe,F as Ae,V as Ie}from"./element-plus-DFTWCWyi.js";import{_ as Re}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{s as Le,w as J}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as Me}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{i as v,m as $e}from"./index--WnM67ZH.js";import{a as Oe,b as Ge,c as Ke}from"./doctor-BlvK2TEo.js";import{a as Qe}from"./tcm-DzAQc_oE.js";import{u as Ye}from"./usePaging-VsbTxSU0.js";import{f as W,b as je,ac as ze,as as Je,ak as d,I as S,a as l,aN as o,F as N,ap as D,G as g,O as c,J as b,aP as L,H as F,A as H}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,a as M,r as $,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as f}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const We={class:"guahao-list"},Xe={class:"flex flex-wrap items-center gap-3 mb-4"},Ze={key:0,class:"text-sm text-gray-500"},et={class:"text-sm"},tt={class:"font-medium"},lt={class:"text-gray-500"},at={class:"text-xs text-gray-400"},nt={class:"text-gray-500"},ot={class:"text-sm"},it={key:0,class:"text-xs text-gray-400 truncate"},st={class:"flex justify-end mt-4"},rt={class:"text-sm text-gray-600 mb-4"},ut=W({name:"consumerPrescriptionGuahao"}),el=W({...ut,setup(dt){const m=$({start_date:"",end_date:"",patient_name:"",doctor_name:"",assistant_id:void 0,status:"",channel_source:""}),X={start_date:"",end_date:"",patient_name:"",doctor_name:"",assistant_id:void 0,status:"",channel_source:""},{pager:E,getLists:U,resetPage:B}=Ye({fetchFun:Oe,params:m}),T=k([]),O=k(null),h=k([]);function Z(i){h.value=i}const ee=new Set(["自媒体4H","自媒体3Q","自媒体3H","自媒体2H","自媒体2Q"]);function q(i){return ee.has(String(i??"").trim())}const y=k([]),te=H(()=>{const i=n.channel_source;if(i===""||i==null)return"";const e=y.value.find(s=>String(s.value)===String(i));return e?String(e.name??"").trim():""}),G=H(()=>q(te.value)),le=H(()=>{const i=p.channel_source;if(i===""||i==null)return"";const e=y.value.find(s=>String(s.value)===String(i));return e?String(e.name??"").trim():""}),K=H(()=>q(le.value));function ae(i){const e=y.value.find(u=>String(u.value)===String(i)),s=e?String(e.name??"").trim():"";q(s)||(p.channel_source_detail="")}const C=k(!1),P=k(!1),p=$({channel_source:"",channel_source_detail:""});function ne(){if(h.value.length===0){v.msgWarning("请先勾选挂号记录");return}p.channel_source="",p.channel_source_detail="",C.value=!0}function oe(){p.channel_source="",p.channel_source_detail=""}async function ie(){var i,e;if(h.value.length===0){v.msgWarning("请先勾选挂号记录");return}if(!p.channel_source){v.msgError("请选择渠道来源");return}if(K.value&&!p.channel_source_detail.trim()){v.msgError("请填写自媒体补充说明");return}P.value=!0;try{const s=h.value.map(u=>Number(u.id));await Ge({ids:s,channel_source:p.channel_source,channel_source_detail:p.channel_source_detail.trim()}),v.msgSuccess("批量修改成功"),C.value=!1,(e=(i=O.value)==null?void 0:i.clearSelection)==null||e.call(i),h.value=[],U()}finally{P.value=!1}}function se(i){const e=y.value.find(u=>String(u.value)===String(i)),s=e?String(e.name??"").trim():"";q(s)||(n.channel_source_detail="")}const x=k(!1),A=k(!1),n=$({id:0,appointment_date:"",appointment_time:"",period:"morning",appointment_type:"video",status:1,remark:"",assistant_id:void 0,channel_source:"",channel_source_detail:""});function re(i){const e=String(i||"");return e.length>=11?e.slice(0,3)+"****"+e.slice(-4):e||"—"}function Q(i){const e=String(i||"");return e.length>=5?e.slice(0,5):e||"—"}function ue(){Object.assign(m,X),B()}function de(i){const e=String(i.period??i.type??"morning");return e==="afternoon"||e==="all"?e:"morning"}async function me(){try{const i=await Qe();T.value=(i==null?void 0:i.lists)??i??[]}catch{T.value=[]}}async function pe(){try{const i=await $e({type:"channels"}),e=((i==null?void 0:i.channels)||[]).filter(s=>s.status!==0);e.sort((s,u)=>{const r=Number((u==null?void 0:u.sort)??0)-Number((s==null?void 0:s.sort)??0);return r!==0?r:Number((u==null?void 0:u.id)??0)-Number((s==null?void 0:s.id)??0)}),y.value=e}catch{y.value=[]}}function ce(i){n.id=Number(i.id),n.appointment_date=String(i.appointment_date||""),n.appointment_time=Q(String(i.appointment_time||"")),n.period=de(i),n.appointment_type=String(i.appointment_type||"video"),n.status=Number(i.status),n.remark=String(i.remark||"");const e=i.appointment_assistant_id;n.assistant_id=e!=null&&e!==""?Number(e):void 0,n.channel_source=String(i.channel_source??i.channels??""),n.channel_source_detail=String(i.channel_source_detail??""),x.value=!0}function _e(){n.id=0,n.appointment_date="",n.appointment_time="",n.period="morning",n.appointment_type="video",n.status=1,n.remark="",n.assistant_id=void 0,n.channel_source="",n.channel_source_detail=""}async function fe(){if(!n.appointment_date){v.msgError("请选择预约日期");return}if(!n.appointment_time){v.msgError("请选择预约时间");return}if(!n.channel_source){v.msgError("请选择渠道来源");return}if(G.value&&!n.channel_source_detail.trim()){v.msgError("请填写自媒体补充说明");return}A.value=!0;try{const i={id:n.id,appointment_date:n.appointment_date,appointment_time:n.appointment_time,period:n.period,appointment_type:n.appointment_type,status:n.status,remark:n.remark,assistant_id:n.assistant_id??"",channel_source:n.channel_source,channel_source_detail:n.channel_source_detail.trim()};await Ke(i),v.msgSuccess("保存成功"),x.value=!1,U()}finally{A.value=!1}}return je(()=>{me(),pe()}),ze(()=>{U()}),U(),(i,e)=>{const s=ke,u=Ce,r=Ee,V=xe,w=Ue,I=Se,Y=Ne,_=Be,ve=Te,ge=De,be=Re,he=Fe,ye=He,R=Ae,Ve=Pe,j=Ie,z=Je("perms"),we=qe;return d(),S("div",We,[l(Y,{class:"!border-none",shadow:"never"},{default:o(()=>[l(I,{class:"mb-[-16px]",model:a(m),inline:!0,onSubmit:e[7]||(e[7]=Le(()=>{},["prevent"]))},{default:o(()=>[l(s,{label:"预约日期"},{default:o(()=>[l(Me,{startTime:a(m).start_date,"onUpdate:startTime":e[0]||(e[0]=t=>a(m).start_date=t),endTime:a(m).end_date,"onUpdate:endTime":e[1]||(e[1]=t=>a(m).end_date=t)},null,8,["startTime","endTime"])]),_:1}),l(s,{label:"患者姓名"},{default:o(()=>[l(u,{modelValue:a(m).patient_name,"onUpdate:modelValue":e[2]||(e[2]=t=>a(m).patient_name=t),placeholder:"模糊搜索",clearable:"",class:"!w-[160px]",onKeyup:J(a(B),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(s,{label:"医生"},{default:o(()=>[l(u,{modelValue:a(m).doctor_name,"onUpdate:modelValue":e[3]||(e[3]=t=>a(m).doctor_name=t),placeholder:"模糊搜索",clearable:"",class:"!w-[140px]",onKeyup:J(a(B),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(s,{label:"医助"},{default:o(()=>[l(V,{modelValue:a(m).assistant_id,"onUpdate:modelValue":e[4]||(e[4]=t=>a(m).assistant_id=t),placeholder:"全部",clearable:"",filterable:"",class:"!w-[180px]"},{default:o(()=>[(d(!0),S(N,null,D(a(T),t=>(d(),g(r,{key:t.id,label:t.name+(t.account?` (${t.account})`:""),value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"状态"},{default:o(()=>[l(V,{modelValue:a(m).status,"onUpdate:modelValue":e[5]||(e[5]=t=>a(m).status=t),placeholder:"全部",clearable:"",class:"!w-[130px]"},{default:o(()=>[l(r,{label:"已预约",value:1}),l(r,{label:"已取消",value:2}),l(r,{label:"已完成",value:3}),l(r,{label:"已过号",value:4})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"渠道"},{default:o(()=>[l(V,{modelValue:a(m).channel_source,"onUpdate:modelValue":e[6]||(e[6]=t=>a(m).channel_source=t),placeholder:"全部",clearable:"",filterable:"",class:"!w-[200px]"},{default:o(()=>[(d(!0),S(N,null,D(a(y),t=>(d(),g(r,{key:String(t.value),label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(s,null,{default:o(()=>[l(w,{type:"primary",onClick:a(B)},{default:o(()=>[...e[24]||(e[24]=[c("查询",-1)])]),_:1},8,["onClick"]),l(w,{onClick:ue},{default:o(()=>[...e[25]||(e[25]=[c("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),l(Y,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[b("div",Xe,[L((d(),g(w,{type:"primary",disabled:a(h).length===0,onClick:ne},{default:o(()=>[...e[26]||(e[26]=[c(" 批量修改渠道 ",-1)])]),_:1},8,["disabled"])),[[z,["doctor.appointment/edit"]]]),a(h).length>0?(d(),S("span",Ze," 已选 "+f(a(h).length)+" 条 ",1)):F("",!0)]),L((d(),g(ge,{ref_key:"tableRef",ref:O,"row-key":"id",data:a(E).lists,size:"large",stripe:"",onSelectionChange:Z},{default:o(()=>[l(_,{type:"selection",width:"48",align:"center","reserve-selection":""}),l(_,{label:"ID",prop:"id",width:"72",align:"center"}),l(_,{label:"诊单/患者","min-width":"140"},{default:o(({row:t})=>[b("div",et,[b("div",tt,f(t.patient_name||"—"),1),b("div",lt,f(re(t.patient_phone)),1),b("div",at,"诊单 #"+f(t.diagnosis_id??t.patient_id),1)])]),_:1}),l(_,{label:"医生",prop:"doctor_name",width:"100","show-overflow-tooltip":""}),l(_,{label:"医助",prop:"assistant_name",width:"100","show-overflow-tooltip":""}),l(_,{label:"预约时间","min-width":"128"},{default:o(({row:t})=>[b("div",null,f(t.appointment_date),1),b("div",nt,f(Q(t.appointment_time))+" · "+f(t.period_desc),1)]),_:1}),l(_,{label:"类型",prop:"appointment_type_desc",width:"100"}),l(_,{label:"渠道","min-width":"130","show-overflow-tooltip":""},{default:o(({row:t})=>[b("div",ot,f(t.channel_source_desc||"—"),1),t.channel_source_detail?(d(),S("div",it,f(t.channel_source_detail),1)):F("",!0)]),_:1}),l(_,{label:"状态",width:"96",align:"center"},{default:o(({row:t})=>[l(ve,{type:t.status===1?"success":t.status===2?"info":t.status===3?"primary":"danger",size:"small",effect:"light"},{default:o(()=>[c(f(t.status_desc),1)]),_:2},1032,["type"])]),_:1}),l(_,{label:"备注",prop:"remark","min-width":"120","show-overflow-tooltip":""}),l(_,{label:"操作",width:"100",fixed:"right",align:"center"},{default:o(({row:t})=>[L((d(),g(w,{type:"primary",link:"",onClick:mt=>ce(t)},{default:o(()=>[...e[27]||(e[27]=[c(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[z,["doctor.appointment/edit"]]])]),_:1})]),_:1},8,["data"])),[[we,a(E).loading]]),b("div",st,[l(be,{modelValue:a(E),"onUpdate:modelValue":e[8]||(e[8]=t=>M(E)?E.value=t:null),onChange:a(U)},null,8,["modelValue","onChange"])])]),_:1}),l(j,{modelValue:a(x),"onUpdate:modelValue":e[19]||(e[19]=t=>M(x)?x.value=t:null),title:"编辑挂号",width:"560px","destroy-on-close":"",onClosed:_e},{footer:o(()=>[l(w,{onClick:e[18]||(e[18]=t=>x.value=!1)},{default:o(()=>[...e[31]||(e[31]=[c("取消",-1)])]),_:1}),l(w,{type:"primary",loading:a(A),onClick:fe},{default:o(()=>[...e[32]||(e[32]=[c("保存",-1)])]),_:1},8,["loading"])]),default:o(()=>[l(I,{model:a(n),"label-width":"96px"},{default:o(()=>[l(s,{label:"预约日期",required:""},{default:o(()=>[l(he,{modelValue:a(n).appointment_date,"onUpdate:modelValue":e[9]||(e[9]=t=>a(n).appointment_date=t),type:"date","value-format":"YYYY-MM-DD",placeholder:"选择日期",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(s,{label:"预约时间",required:""},{default:o(()=>[l(ye,{modelValue:a(n).appointment_time,"onUpdate:modelValue":e[10]||(e[10]=t=>a(n).appointment_time=t),format:"HH:mm","value-format":"HH:mm",placeholder:"时间",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(s,{label:"时段",required:""},{default:o(()=>[l(Ve,{modelValue:a(n).period,"onUpdate:modelValue":e[11]||(e[11]=t=>a(n).period=t)},{default:o(()=>[l(R,{label:"morning"},{default:o(()=>[...e[28]||(e[28]=[c("上午",-1)])]),_:1}),l(R,{label:"afternoon"},{default:o(()=>[...e[29]||(e[29]=[c("下午",-1)])]),_:1}),l(R,{label:"all"},{default:o(()=>[...e[30]||(e[30]=[c("全天",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"问诊类型",required:""},{default:o(()=>[l(V,{modelValue:a(n).appointment_type,"onUpdate:modelValue":e[12]||(e[12]=t=>a(n).appointment_type=t),class:"!w-full"},{default:o(()=>[l(r,{label:"视频问诊",value:"video"}),l(r,{label:"图文问诊",value:"text"}),l(r,{label:"电话问诊",value:"phone"})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"渠道来源",required:""},{default:o(()=>[l(V,{modelValue:a(n).channel_source,"onUpdate:modelValue":e[13]||(e[13]=t=>a(n).channel_source=t),placeholder:"请选择渠道来源",filterable:"",class:"!w-full",onChange:se},{default:o(()=>[(d(!0),S(N,null,D(a(y),t=>(d(),g(r,{key:String(t.value),label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(G)?(d(),g(s,{key:0,label:"自媒体补充",required:""},{default:o(()=>[l(u,{modelValue:a(n).channel_source_detail,"onUpdate:modelValue":e[14]||(e[14]=t=>a(n).channel_source_detail=t),maxlength:"128","show-word-limit":"",placeholder:"请输入自媒体相关补充内容",clearable:"",class:"!w-full"},null,8,["modelValue"])]),_:1})):F("",!0),l(s,{label:"状态",required:""},{default:o(()=>[l(V,{modelValue:a(n).status,"onUpdate:modelValue":e[15]||(e[15]=t=>a(n).status=t),class:"!w-full"},{default:o(()=>[l(r,{label:"已预约",value:1}),l(r,{label:"已取消",value:2}),l(r,{label:"已完成",value:3}),l(r,{label:"已过号",value:4})]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"挂号医助"},{default:o(()=>[l(V,{modelValue:a(n).assistant_id,"onUpdate:modelValue":e[16]||(e[16]=t=>a(n).assistant_id=t),placeholder:"不修改可留空",clearable:"",filterable:"",class:"!w-full"},{default:o(()=>[(d(!0),S(N,null,D(a(T),t=>(d(),g(r,{key:t.id,label:t.name+(t.account?` (${t.account})`:""),value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(s,{label:"备注"},{default:o(()=>[l(u,{modelValue:a(n).remark,"onUpdate:modelValue":e[17]||(e[17]=t=>a(n).remark=t),type:"textarea",rows:3,maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(j,{modelValue:a(C),"onUpdate:modelValue":e[23]||(e[23]=t=>M(C)?C.value=t:null),title:"批量修改渠道",width:"520px","destroy-on-close":"",onClosed:oe},{footer:o(()=>[l(w,{onClick:e[22]||(e[22]=t=>C.value=!1)},{default:o(()=>[...e[33]||(e[33]=[c("取消",-1)])]),_:1}),l(w,{type:"primary",loading:a(P),onClick:ie},{default:o(()=>[...e[34]||(e[34]=[c("确定",-1)])]),_:1},8,["loading"])]),default:o(()=>[b("p",rt,"将对已选 "+f(a(h).length)+" 条挂号写入同一渠道来源(仅改渠道,不改其它字段)。",1),l(I,{model:a(p),"label-width":"96px"},{default:o(()=>[l(s,{label:"渠道来源",required:""},{default:o(()=>[l(V,{modelValue:a(p).channel_source,"onUpdate:modelValue":e[20]||(e[20]=t=>a(p).channel_source=t),placeholder:"请选择渠道来源",filterable:"",class:"!w-full",onChange:ae},{default:o(()=>[(d(!0),S(N,null,D(a(y),t=>(d(),g(r,{key:String(t.value),label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(K)?(d(),g(s,{key:0,label:"自媒体补充",required:""},{default:o(()=>[l(u,{modelValue:a(p).channel_source_detail,"onUpdate:modelValue":e[21]||(e[21]=t=>a(p).channel_source_detail=t),maxlength:"128","show-word-limit":"",placeholder:"请输入自媒体相关补充内容",clearable:"",class:"!w-full"},null,8,["modelValue"])]),_:1})):F("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}});export{el as default}; diff --git a/server/public/admin/assets/h5-lML7Vln5.js b/server/public/admin/assets/h5-CmvmpHND.js similarity index 99% rename from server/public/admin/assets/h5-lML7Vln5.js rename to server/public/admin/assets/h5-CmvmpHND.js index 3ee4c200..f95b0c0c 100644 --- a/server/public/admin/assets/h5-lML7Vln5.js +++ b/server/public/admin/assets/h5-CmvmpHND.js @@ -1 +1 @@ -import{C as De,Q as Fe,P as Ue,i as $e,L as Ye,R as Le,d as Se,D as Me,B as He,h as Ne,G as Te,I as Ie,g as qe,e as Ae,T as Be,F as Pe,a2 as Ge}from"./element-plus-DFTWCWyi.js";import{w as Ke}from"./@vue/runtime-dom-DDAG46FW.js";import{f as Oe,a as Qe,b as je,c as Je,d as Xe,e as We,g as Ze,h as et}from"./fans-DpM3qtuW.js";import{i as ae,_ as tt}from"./index-Nt5zMHcc.js";import{d as lt}from"./dayjs-DG77mNTn.js";import{A as at}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as ne,ak as r,I as u,J as i,a as l,aN as s,O as n,aP as se,H as g,F as oe,ap as ie,A as st}from"./@vue/runtime-core-C6bnekPw.js";import{a as H,y as a,n as d}from"./@vue/reactivity-DiY1c2vO.js";import{Q as v}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ot={class:"fans-h5"},it={class:"h5-header"},nt={class:"h5-search"},dt={class:"h5-filter-row"},rt={class:"h5-list"},ut={key:0,class:"h5-empty"},mt={class:"h5-card-header"},pt={class:"h5-card-name"},vt={class:"name"},_t={key:0,class:"age"},ct={class:"h5-card-body"},ft={class:"info-line"},gt={class:"value"},yt={class:"info-line"},Vt={class:"value"},kt={key:0,class:"info-line"},bt={class:"value remark"},ht={class:"h5-card-footer"},xt={class:"footer-left"},Ct={class:"visit-info"},Rt={class:"visit-count"},wt={key:0,class:"creator-info"},Et={class:"actions"},zt={key:0},Dt={key:1},Ft={key:2,class:"h5-no-more"},Ut={class:"h5-form-row"},$t={class:"h5-visit-header"},Yt={class:"h5-visit-list"},Lt={key:0,class:"h5-empty"},St={class:"visit-card-header"},Mt={class:"visit-card-tags"},Ht={class:"visit-time"},Nt={class:"visit-card-actions"},Tt={class:"visit-card-content"},It={key:0,class:"visit-card-result"},qt={class:"visit-card-meta"},At={key:0,class:"next-visit"},Bt={key:1,class:"operator"},Pt=ne({name:"fansH5"}),Gt=ne({...Pt,setup(Kt){const y=d(""),C=d({name:"",phone:"",gender:"",status:""}),k=d([]),E=d(!1),z=d(!1),N=d(1),de=15,K=d(0),O=st(()=>k.value.length{o?z.value=!0:E.value=!0;try{const e={page_no:N.value,page_size:de,...C.value};y.value&&(/^\d+$/.test(y.value)?e.phone=y.value:e.name=y.value);const f=await Oe(e);o?k.value=[...k.value,...f.lists||[]]:k.value=f.lists||[],K.value=f.count||0}catch(e){console.error(e)}finally{E.value=!1,z.value=!1}},V=()=>{N.value=1,T()},re=()=>{y.value="",C.value={name:"",phone:"",gender:"",status:""},V()},ue=()=>{z.value||(N.value++,T(!0))},b=d(!1),D=d("add"),I=d(),q=d(!1),m=d({id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""}),me={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"手机号格式不正确",trigger:"blur"}],id_card:[{pattern:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:"身份证号格式不正确",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}]},pe=()=>{D.value="add",b.value=!0},ve=o=>{D.value="edit",m.value={id:o.id,name:o.name,phone:o.phone,id_card:o.id_card,age:o.age,gender:o.gender,status:o.status,remark:o.remark},b.value=!0},_e=()=>{var o;m.value={id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""},(o=I.value)==null||o.resetFields()},ce=async()=>{var o;await((o=I.value)==null?void 0:o.validate()),q.value=!0;try{D.value==="add"?await Qe(m.value):await je(m.value),b.value=!1,V()}catch{}finally{q.value=!1}},fe=async o=>{await ae.confirm(`确定删除粉丝「${o.name}」吗?`);try{await et({id:o.id}),V()}catch{}},F=d(!1),U=d(null),h=d([]),$=d(!1),Q=d(0),R=d(1),ge={1:"",2:"success",3:"info",4:"warning",5:"danger"},ye=o=>{U.value=o,F.value=!0,R.value=1,h.value=[],Y()},Y=async()=>{$.value=!0;try{const o=await Ze({fan_id:U.value.id,page_no:R.value,page_size:15});R.value===1?h.value=o.lists||[]:h.value=[...h.value,...o.lists||[]],Q.value=o.count||0}catch(o){console.error(o)}finally{$.value=!1}},Ve=()=>{R.value++,Y()},x=d(!1),L=d("add"),A=d(),B=d(!1),p=d({id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""}),ke={visit_type:[{required:!0,message:"请选择回访类型",trigger:"change"}],visit_time:[{required:!0,message:"请选择回访时间",trigger:"change"}],content:[{required:!0,message:"请输入回访内容",trigger:"blur"}]},be=()=>{L.value="add",p.value={id:0,fan_id:U.value.id,visit_type:1,visit_time:lt().format("YYYY-MM-DD HH:mm:ss"),content:"",result:"",next_visit_time:""},x.value=!0},he=o=>{L.value="edit",p.value={id:o.id,fan_id:o.fan_id,visit_type:o.visit_type,visit_time:o.visit_time_text||"",content:o.content||"",result:o.result||"",next_visit_time:o.next_visit_time_text||""},x.value=!0},xe=()=>{var o;p.value={id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""},(o=A.value)==null||o.resetFields()},Ce=async()=>{var o;await((o=A.value)==null?void 0:o.validate()),B.value=!0;try{L.value==="add"?await Je(p.value):await Xe(p.value),x.value=!1,R.value=1,Y()}catch{}finally{B.value=!1}},Re=async o=>{await ae.confirm("确定删除该回访记录吗?");try{await We({id:o}),R.value=1,Y()}catch{}};return T(),(o,e)=>{var le;const f=De,S=Fe,j=Ue,_=$e,J=Le,P=Be,we=Se,c=He,Ee=Ne,X=Ie,W=Te,ze=qe,Z=Me,G=Ae,w=Pe,ee=Ge,te=Ye;return r(),u("div",ot,[i("div",it,[i("div",nt,[l(f,{modelValue:a(y),"onUpdate:modelValue":e[0]||(e[0]=t=>H(y)?y.value=t:null),placeholder:"搜索姓名 / 手机号",clearable:"","prefix-icon":"Search",onKeyup:Ke(V,["enter"]),onClear:V},null,8,["modelValue"])]),i("div",dt,[l(j,{modelValue:a(C).gender,"onUpdate:modelValue":e[1]||(e[1]=t=>a(C).gender=t),placeholder:"性别",clearable:"",size:"small",onChange:V},{default:s(()=>[l(S,{label:"男",value:1}),l(S,{label:"女",value:2})]),_:1},8,["modelValue"]),l(j,{modelValue:a(C).status,"onUpdate:modelValue":e[2]||(e[2]=t=>a(C).status=t),placeholder:"状态",clearable:"",size:"small",onChange:V},{default:s(()=>[l(S,{label:"启用",value:1}),l(S,{label:"禁用",value:0})]),_:1},8,["modelValue"]),l(_,{type:"primary",size:"small",onClick:V},{default:s(()=>[...e[20]||(e[20]=[n("查询",-1)])]),_:1}),l(_,{size:"small",onClick:re},{default:s(()=>[...e[21]||(e[21]=[n("重置",-1)])]),_:1})])]),se((r(),u("div",rt,[a(k).length===0&&!a(E)?(r(),u("div",ut,[l(J,{description:"暂无粉丝数据"})])):g("",!0),(r(!0),u(oe,null,ie(a(k),t=>(r(),u("div",{key:t.id,class:"h5-card"},[i("div",mt,[i("div",pt,[i("span",vt,v(t.name),1),l(P,{size:"small",type:t.gender===1?"":t.gender===2?"danger":"info",effect:"plain"},{default:s(()=>[n(v(t.gender_desc),1)]),_:2},1032,["type"]),t.age?(r(),u("span",_t,v(t.age)+"岁",1)):g("",!0)]),l(P,{size:"small",type:t.status==1?"success":"danger"},{default:s(()=>[n(v(t.status==1?"启用":"禁用"),1)]),_:2},1032,["type"])]),i("div",ct,[i("div",ft,[e[22]||(e[22]=i("span",{class:"label"},"手机",-1)),i("span",gt,v(t.phone||"-"),1)]),i("div",yt,[e[23]||(e[23]=i("span",{class:"label"},"身份证",-1)),i("span",Vt,v(t.id_card||"-"),1)]),t.remark?(r(),u("div",kt,[e[24]||(e[24]=i("span",{class:"label"},"备注",-1)),i("span",bt,v(t.remark),1)])):g("",!0)]),i("div",ht,[i("div",xt,[i("div",Ct,[e[25]||(e[25]=n(" 回访 ",-1)),i("span",Rt,v(t.visit_count||0),1),e[26]||(e[26]=n(" 次 ",-1))]),t.creator_name?(r(),u("div",wt," 登记人:"+v(t.creator_name),1)):g("",!0)]),i("div",Et,[l(_,{type:"primary",text:"",size:"small",onClick:M=>ve(t)},{default:s(()=>[...e[27]||(e[27]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(_,{type:"success",text:"",size:"small",onClick:M=>ye(t)},{default:s(()=>[...e[28]||(e[28]=[n("回访",-1)])]),_:1},8,["onClick"]),l(_,{type:"danger",text:"",size:"small",onClick:M=>fe(t)},{default:s(()=>[...e[29]||(e[29]=[n("删除",-1)])]),_:1},8,["onClick"])])])]))),128)),a(O)?(r(),u("div",{key:1,class:"h5-load-more",onClick:ue},[a(z)?(r(),u("span",Dt,"加载中...")):(r(),u("span",zt,"加载更多"))])):g("",!0),!a(O)&&a(k).length>0?(r(),u("div",Ft,"没有更多了")):g("",!0)])),[[te,a(E)]]),i("div",{class:"h5-fab",onClick:pe},[l(we,{size:24},{default:s(()=>[l(a(at))]),_:1})]),l(G,{modelValue:a(b),"onUpdate:modelValue":e[11]||(e[11]=t=>H(b)?b.value=t:null),title:a(D)==="add"?"新增粉丝":"编辑粉丝",direction:"btt",size:"85%","close-on-click-modal":!1,onClosed:_e},{footer:s(()=>[l(_,{class:"flex-1",onClick:e[10]||(e[10]=t=>b.value=!1)},{default:s(()=>[...e[32]||(e[32]=[n("取消",-1)])]),_:1}),l(_,{class:"flex-1",type:"primary",loading:a(q),onClick:ce},{default:s(()=>[...e[33]||(e[33]=[n("确定",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(Z,{ref_key:"fanFormRef",ref:I,model:a(m),rules:me,"label-position":"top",class:"h5-form"},{default:s(()=>[l(c,{label:"姓名",prop:"name"},{default:s(()=>[l(f,{modelValue:a(m).name,"onUpdate:modelValue":e[3]||(e[3]=t=>a(m).name=t),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),l(c,{label:"手机号",prop:"phone"},{default:s(()=>[l(f,{modelValue:a(m).phone,"onUpdate:modelValue":e[4]||(e[4]=t=>a(m).phone=t),placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"])]),_:1}),l(c,{label:"身份证号",prop:"id_card"},{default:s(()=>[l(f,{modelValue:a(m).id_card,"onUpdate:modelValue":e[5]||(e[5]=t=>a(m).id_card=t),placeholder:"请输入身份证号码",maxlength:"18"},null,8,["modelValue"])]),_:1}),i("div",Ut,[l(c,{label:"年龄",prop:"age",class:"flex-1"},{default:s(()=>[l(Ee,{modelValue:a(m).age,"onUpdate:modelValue":e[6]||(e[6]=t=>a(m).age=t),min:0,max:150,"controls-position":"right",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(c,{label:"性别",prop:"gender",class:"flex-1"},{default:s(()=>[l(W,{modelValue:a(m).gender,"onUpdate:modelValue":e[7]||(e[7]=t=>a(m).gender=t)},{default:s(()=>[l(X,{label:1},{default:s(()=>[...e[30]||(e[30]=[n("男",-1)])]),_:1}),l(X,{label:2},{default:s(()=>[...e[31]||(e[31]=[n("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),l(c,{label:"状态"},{default:s(()=>[l(ze,{modelValue:a(m).status,"onUpdate:modelValue":e[8]||(e[8]=t=>a(m).status=t),"active-value":1,"inactive-value":0,"active-text":"启用","inactive-text":"禁用"},null,8,["modelValue"])]),_:1}),l(c,{label:"备注"},{default:s(()=>[l(f,{modelValue:a(m).remark,"onUpdate:modelValue":e[9]||(e[9]=t=>a(m).remark=t),type:"textarea",rows:3,placeholder:"请输入备注",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(G,{modelValue:a(F),"onUpdate:modelValue":e[12]||(e[12]=t=>H(F)?F.value=t:null),title:`回访记录 - ${((le=a(U))==null?void 0:le.name)||""}`,direction:"rtl",size:"100%","close-on-click-modal":!1},{default:s(()=>[i("div",$t,[l(_,{type:"primary",size:"small",onClick:be},{default:s(()=>[...e[34]||(e[34]=[n("+ 新增回访",-1)])]),_:1})]),se((r(),u("div",Yt,[a(h).length===0&&!a($)?(r(),u("div",Lt,[l(J,{description:"暂无回访记录","image-size":80})])):g("",!0),(r(!0),u(oe,null,ie(a(h),t=>(r(),u("div",{key:t.id,class:"h5-visit-card"},[i("div",St,[i("div",Mt,[l(P,{size:"small",type:ge[t.visit_type]},{default:s(()=>[n(v(t.visit_type_desc),1)]),_:2},1032,["type"]),i("span",Ht,v(t.visit_time_text),1)]),i("div",Nt,[l(_,{type:"primary",text:"",size:"small",onClick:M=>he(t)},{default:s(()=>[...e[35]||(e[35]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(_,{type:"danger",text:"",size:"small",onClick:M=>Re(t.id)},{default:s(()=>[...e[36]||(e[36]=[n("删除",-1)])]),_:1},8,["onClick"])])]),i("div",Tt,v(t.content),1),t.result?(r(),u("div",It,[e[37]||(e[37]=i("span",{class:"label"},"结果:",-1)),n(v(t.result),1)])):g("",!0),i("div",qt,[t.next_visit_time_text?(r(),u("span",At,"下次回访:"+v(t.next_visit_time_text),1)):g("",!0),t.operator_name?(r(),u("span",Bt,v(t.operator_name),1)):g("",!0)])]))),128)),a(Q)>a(h).length?(r(),u("div",{key:1,class:"h5-load-more",onClick:Ve}," 加载更多 ")):g("",!0)])),[[te,a($)]])]),_:1},8,["modelValue","title"]),l(G,{modelValue:a(x),"onUpdate:modelValue":e[19]||(e[19]=t=>H(x)?x.value=t:null),title:a(L)==="add"?"新增回访记录":"编辑回访记录",direction:"btt",size:"80%","close-on-click-modal":!1,onClosed:xe},{footer:s(()=>[l(_,{class:"flex-1",onClick:e[18]||(e[18]=t=>x.value=!1)},{default:s(()=>[...e[43]||(e[43]=[n("取消",-1)])]),_:1}),l(_,{class:"flex-1",type:"primary",loading:a(B),onClick:Ce},{default:s(()=>[...e[44]||(e[44]=[n("确定",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(Z,{ref_key:"visitFormRef",ref:A,model:a(p),rules:ke,"label-position":"top",class:"h5-form"},{default:s(()=>[l(c,{label:"回访类型",prop:"visit_type"},{default:s(()=>[l(W,{modelValue:a(p).visit_type,"onUpdate:modelValue":e[13]||(e[13]=t=>a(p).visit_type=t),class:"h5-radio-group"},{default:s(()=>[l(w,{label:1},{default:s(()=>[...e[38]||(e[38]=[n("电话",-1)])]),_:1}),l(w,{label:2},{default:s(()=>[...e[39]||(e[39]=[n("微信",-1)])]),_:1}),l(w,{label:3},{default:s(()=>[...e[40]||(e[40]=[n("短信",-1)])]),_:1}),l(w,{label:4},{default:s(()=>[...e[41]||(e[41]=[n("上门",-1)])]),_:1}),l(w,{label:5},{default:s(()=>[...e[42]||(e[42]=[n("其他",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(c,{label:"回访时间",prop:"visit_time"},{default:s(()=>[l(ee,{modelValue:a(p).visit_time,"onUpdate:modelValue":e[14]||(e[14]=t=>a(p).visit_time=t),type:"datetime",placeholder:"请选择回访时间","value-format":"YYYY-MM-DD HH:mm:ss",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(c,{label:"回访内容",prop:"content"},{default:s(()=>[l(f,{modelValue:a(p).content,"onUpdate:modelValue":e[15]||(e[15]=t=>a(p).content=t),type:"textarea",rows:4,placeholder:"请输入回访内容"},null,8,["modelValue"])]),_:1}),l(c,{label:"回访结果"},{default:s(()=>[l(f,{modelValue:a(p).result,"onUpdate:modelValue":e[16]||(e[16]=t=>a(p).result=t),type:"textarea",rows:3,placeholder:"请输入回访结果"},null,8,["modelValue"])]),_:1}),l(c,{label:"下次回访时间"},{default:s(()=>[l(ee,{modelValue:a(p).next_visit_time,"onUpdate:modelValue":e[17]||(e[17]=t=>a(p).next_visit_time=t),type:"datetime",placeholder:"请选择下次回访时间","value-format":"YYYY-MM-DD HH:mm:ss",class:"!w-full"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ul=tt(Gt,[["__scopeId","data-v-004381f4"]]);export{Ul as default}; +import{C as De,Q as Fe,P as Ue,i as $e,L as Ye,R as Le,d as Se,D as Me,B as He,h as Ne,G as Te,I as Ie,g as qe,e as Ae,T as Be,F as Pe,a2 as Ge}from"./element-plus-DFTWCWyi.js";import{w as Ke}from"./@vue/runtime-dom-DDAG46FW.js";import{f as Oe,a as Qe,b as je,c as Je,d as Xe,e as We,g as Ze,h as et}from"./fans-CmdPlHB_.js";import{i as ae,_ as tt}from"./index--WnM67ZH.js";import{d as lt}from"./dayjs-DG77mNTn.js";import{A as at}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as ne,ak as r,I as u,J as i,a as l,aN as s,O as n,aP as se,H as g,F as oe,ap as ie,A as st}from"./@vue/runtime-core-C6bnekPw.js";import{a as H,y as a,n as d}from"./@vue/reactivity-DiY1c2vO.js";import{Q as v}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ot={class:"fans-h5"},it={class:"h5-header"},nt={class:"h5-search"},dt={class:"h5-filter-row"},rt={class:"h5-list"},ut={key:0,class:"h5-empty"},mt={class:"h5-card-header"},pt={class:"h5-card-name"},vt={class:"name"},_t={key:0,class:"age"},ct={class:"h5-card-body"},ft={class:"info-line"},gt={class:"value"},yt={class:"info-line"},Vt={class:"value"},kt={key:0,class:"info-line"},bt={class:"value remark"},ht={class:"h5-card-footer"},xt={class:"footer-left"},Ct={class:"visit-info"},Rt={class:"visit-count"},wt={key:0,class:"creator-info"},Et={class:"actions"},zt={key:0},Dt={key:1},Ft={key:2,class:"h5-no-more"},Ut={class:"h5-form-row"},$t={class:"h5-visit-header"},Yt={class:"h5-visit-list"},Lt={key:0,class:"h5-empty"},St={class:"visit-card-header"},Mt={class:"visit-card-tags"},Ht={class:"visit-time"},Nt={class:"visit-card-actions"},Tt={class:"visit-card-content"},It={key:0,class:"visit-card-result"},qt={class:"visit-card-meta"},At={key:0,class:"next-visit"},Bt={key:1,class:"operator"},Pt=ne({name:"fansH5"}),Gt=ne({...Pt,setup(Kt){const y=d(""),C=d({name:"",phone:"",gender:"",status:""}),k=d([]),E=d(!1),z=d(!1),N=d(1),de=15,K=d(0),O=st(()=>k.value.length{o?z.value=!0:E.value=!0;try{const e={page_no:N.value,page_size:de,...C.value};y.value&&(/^\d+$/.test(y.value)?e.phone=y.value:e.name=y.value);const f=await Oe(e);o?k.value=[...k.value,...f.lists||[]]:k.value=f.lists||[],K.value=f.count||0}catch(e){console.error(e)}finally{E.value=!1,z.value=!1}},V=()=>{N.value=1,T()},re=()=>{y.value="",C.value={name:"",phone:"",gender:"",status:""},V()},ue=()=>{z.value||(N.value++,T(!0))},b=d(!1),D=d("add"),I=d(),q=d(!1),m=d({id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""}),me={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"手机号格式不正确",trigger:"blur"}],id_card:[{pattern:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:"身份证号格式不正确",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}]},pe=()=>{D.value="add",b.value=!0},ve=o=>{D.value="edit",m.value={id:o.id,name:o.name,phone:o.phone,id_card:o.id_card,age:o.age,gender:o.gender,status:o.status,remark:o.remark},b.value=!0},_e=()=>{var o;m.value={id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""},(o=I.value)==null||o.resetFields()},ce=async()=>{var o;await((o=I.value)==null?void 0:o.validate()),q.value=!0;try{D.value==="add"?await Qe(m.value):await je(m.value),b.value=!1,V()}catch{}finally{q.value=!1}},fe=async o=>{await ae.confirm(`确定删除粉丝「${o.name}」吗?`);try{await et({id:o.id}),V()}catch{}},F=d(!1),U=d(null),h=d([]),$=d(!1),Q=d(0),R=d(1),ge={1:"",2:"success",3:"info",4:"warning",5:"danger"},ye=o=>{U.value=o,F.value=!0,R.value=1,h.value=[],Y()},Y=async()=>{$.value=!0;try{const o=await Ze({fan_id:U.value.id,page_no:R.value,page_size:15});R.value===1?h.value=o.lists||[]:h.value=[...h.value,...o.lists||[]],Q.value=o.count||0}catch(o){console.error(o)}finally{$.value=!1}},Ve=()=>{R.value++,Y()},x=d(!1),L=d("add"),A=d(),B=d(!1),p=d({id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""}),ke={visit_type:[{required:!0,message:"请选择回访类型",trigger:"change"}],visit_time:[{required:!0,message:"请选择回访时间",trigger:"change"}],content:[{required:!0,message:"请输入回访内容",trigger:"blur"}]},be=()=>{L.value="add",p.value={id:0,fan_id:U.value.id,visit_type:1,visit_time:lt().format("YYYY-MM-DD HH:mm:ss"),content:"",result:"",next_visit_time:""},x.value=!0},he=o=>{L.value="edit",p.value={id:o.id,fan_id:o.fan_id,visit_type:o.visit_type,visit_time:o.visit_time_text||"",content:o.content||"",result:o.result||"",next_visit_time:o.next_visit_time_text||""},x.value=!0},xe=()=>{var o;p.value={id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""},(o=A.value)==null||o.resetFields()},Ce=async()=>{var o;await((o=A.value)==null?void 0:o.validate()),B.value=!0;try{L.value==="add"?await Je(p.value):await Xe(p.value),x.value=!1,R.value=1,Y()}catch{}finally{B.value=!1}},Re=async o=>{await ae.confirm("确定删除该回访记录吗?");try{await We({id:o}),R.value=1,Y()}catch{}};return T(),(o,e)=>{var le;const f=De,S=Fe,j=Ue,_=$e,J=Le,P=Be,we=Se,c=He,Ee=Ne,X=Ie,W=Te,ze=qe,Z=Me,G=Ae,w=Pe,ee=Ge,te=Ye;return r(),u("div",ot,[i("div",it,[i("div",nt,[l(f,{modelValue:a(y),"onUpdate:modelValue":e[0]||(e[0]=t=>H(y)?y.value=t:null),placeholder:"搜索姓名 / 手机号",clearable:"","prefix-icon":"Search",onKeyup:Ke(V,["enter"]),onClear:V},null,8,["modelValue"])]),i("div",dt,[l(j,{modelValue:a(C).gender,"onUpdate:modelValue":e[1]||(e[1]=t=>a(C).gender=t),placeholder:"性别",clearable:"",size:"small",onChange:V},{default:s(()=>[l(S,{label:"男",value:1}),l(S,{label:"女",value:2})]),_:1},8,["modelValue"]),l(j,{modelValue:a(C).status,"onUpdate:modelValue":e[2]||(e[2]=t=>a(C).status=t),placeholder:"状态",clearable:"",size:"small",onChange:V},{default:s(()=>[l(S,{label:"启用",value:1}),l(S,{label:"禁用",value:0})]),_:1},8,["modelValue"]),l(_,{type:"primary",size:"small",onClick:V},{default:s(()=>[...e[20]||(e[20]=[n("查询",-1)])]),_:1}),l(_,{size:"small",onClick:re},{default:s(()=>[...e[21]||(e[21]=[n("重置",-1)])]),_:1})])]),se((r(),u("div",rt,[a(k).length===0&&!a(E)?(r(),u("div",ut,[l(J,{description:"暂无粉丝数据"})])):g("",!0),(r(!0),u(oe,null,ie(a(k),t=>(r(),u("div",{key:t.id,class:"h5-card"},[i("div",mt,[i("div",pt,[i("span",vt,v(t.name),1),l(P,{size:"small",type:t.gender===1?"":t.gender===2?"danger":"info",effect:"plain"},{default:s(()=>[n(v(t.gender_desc),1)]),_:2},1032,["type"]),t.age?(r(),u("span",_t,v(t.age)+"岁",1)):g("",!0)]),l(P,{size:"small",type:t.status==1?"success":"danger"},{default:s(()=>[n(v(t.status==1?"启用":"禁用"),1)]),_:2},1032,["type"])]),i("div",ct,[i("div",ft,[e[22]||(e[22]=i("span",{class:"label"},"手机",-1)),i("span",gt,v(t.phone||"-"),1)]),i("div",yt,[e[23]||(e[23]=i("span",{class:"label"},"身份证",-1)),i("span",Vt,v(t.id_card||"-"),1)]),t.remark?(r(),u("div",kt,[e[24]||(e[24]=i("span",{class:"label"},"备注",-1)),i("span",bt,v(t.remark),1)])):g("",!0)]),i("div",ht,[i("div",xt,[i("div",Ct,[e[25]||(e[25]=n(" 回访 ",-1)),i("span",Rt,v(t.visit_count||0),1),e[26]||(e[26]=n(" 次 ",-1))]),t.creator_name?(r(),u("div",wt," 登记人:"+v(t.creator_name),1)):g("",!0)]),i("div",Et,[l(_,{type:"primary",text:"",size:"small",onClick:M=>ve(t)},{default:s(()=>[...e[27]||(e[27]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(_,{type:"success",text:"",size:"small",onClick:M=>ye(t)},{default:s(()=>[...e[28]||(e[28]=[n("回访",-1)])]),_:1},8,["onClick"]),l(_,{type:"danger",text:"",size:"small",onClick:M=>fe(t)},{default:s(()=>[...e[29]||(e[29]=[n("删除",-1)])]),_:1},8,["onClick"])])])]))),128)),a(O)?(r(),u("div",{key:1,class:"h5-load-more",onClick:ue},[a(z)?(r(),u("span",Dt,"加载中...")):(r(),u("span",zt,"加载更多"))])):g("",!0),!a(O)&&a(k).length>0?(r(),u("div",Ft,"没有更多了")):g("",!0)])),[[te,a(E)]]),i("div",{class:"h5-fab",onClick:pe},[l(we,{size:24},{default:s(()=>[l(a(at))]),_:1})]),l(G,{modelValue:a(b),"onUpdate:modelValue":e[11]||(e[11]=t=>H(b)?b.value=t:null),title:a(D)==="add"?"新增粉丝":"编辑粉丝",direction:"btt",size:"85%","close-on-click-modal":!1,onClosed:_e},{footer:s(()=>[l(_,{class:"flex-1",onClick:e[10]||(e[10]=t=>b.value=!1)},{default:s(()=>[...e[32]||(e[32]=[n("取消",-1)])]),_:1}),l(_,{class:"flex-1",type:"primary",loading:a(q),onClick:ce},{default:s(()=>[...e[33]||(e[33]=[n("确定",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(Z,{ref_key:"fanFormRef",ref:I,model:a(m),rules:me,"label-position":"top",class:"h5-form"},{default:s(()=>[l(c,{label:"姓名",prop:"name"},{default:s(()=>[l(f,{modelValue:a(m).name,"onUpdate:modelValue":e[3]||(e[3]=t=>a(m).name=t),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),l(c,{label:"手机号",prop:"phone"},{default:s(()=>[l(f,{modelValue:a(m).phone,"onUpdate:modelValue":e[4]||(e[4]=t=>a(m).phone=t),placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"])]),_:1}),l(c,{label:"身份证号",prop:"id_card"},{default:s(()=>[l(f,{modelValue:a(m).id_card,"onUpdate:modelValue":e[5]||(e[5]=t=>a(m).id_card=t),placeholder:"请输入身份证号码",maxlength:"18"},null,8,["modelValue"])]),_:1}),i("div",Ut,[l(c,{label:"年龄",prop:"age",class:"flex-1"},{default:s(()=>[l(Ee,{modelValue:a(m).age,"onUpdate:modelValue":e[6]||(e[6]=t=>a(m).age=t),min:0,max:150,"controls-position":"right",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(c,{label:"性别",prop:"gender",class:"flex-1"},{default:s(()=>[l(W,{modelValue:a(m).gender,"onUpdate:modelValue":e[7]||(e[7]=t=>a(m).gender=t)},{default:s(()=>[l(X,{label:1},{default:s(()=>[...e[30]||(e[30]=[n("男",-1)])]),_:1}),l(X,{label:2},{default:s(()=>[...e[31]||(e[31]=[n("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),l(c,{label:"状态"},{default:s(()=>[l(ze,{modelValue:a(m).status,"onUpdate:modelValue":e[8]||(e[8]=t=>a(m).status=t),"active-value":1,"inactive-value":0,"active-text":"启用","inactive-text":"禁用"},null,8,["modelValue"])]),_:1}),l(c,{label:"备注"},{default:s(()=>[l(f,{modelValue:a(m).remark,"onUpdate:modelValue":e[9]||(e[9]=t=>a(m).remark=t),type:"textarea",rows:3,placeholder:"请输入备注",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(G,{modelValue:a(F),"onUpdate:modelValue":e[12]||(e[12]=t=>H(F)?F.value=t:null),title:`回访记录 - ${((le=a(U))==null?void 0:le.name)||""}`,direction:"rtl",size:"100%","close-on-click-modal":!1},{default:s(()=>[i("div",$t,[l(_,{type:"primary",size:"small",onClick:be},{default:s(()=>[...e[34]||(e[34]=[n("+ 新增回访",-1)])]),_:1})]),se((r(),u("div",Yt,[a(h).length===0&&!a($)?(r(),u("div",Lt,[l(J,{description:"暂无回访记录","image-size":80})])):g("",!0),(r(!0),u(oe,null,ie(a(h),t=>(r(),u("div",{key:t.id,class:"h5-visit-card"},[i("div",St,[i("div",Mt,[l(P,{size:"small",type:ge[t.visit_type]},{default:s(()=>[n(v(t.visit_type_desc),1)]),_:2},1032,["type"]),i("span",Ht,v(t.visit_time_text),1)]),i("div",Nt,[l(_,{type:"primary",text:"",size:"small",onClick:M=>he(t)},{default:s(()=>[...e[35]||(e[35]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(_,{type:"danger",text:"",size:"small",onClick:M=>Re(t.id)},{default:s(()=>[...e[36]||(e[36]=[n("删除",-1)])]),_:1},8,["onClick"])])]),i("div",Tt,v(t.content),1),t.result?(r(),u("div",It,[e[37]||(e[37]=i("span",{class:"label"},"结果:",-1)),n(v(t.result),1)])):g("",!0),i("div",qt,[t.next_visit_time_text?(r(),u("span",At,"下次回访:"+v(t.next_visit_time_text),1)):g("",!0),t.operator_name?(r(),u("span",Bt,v(t.operator_name),1)):g("",!0)])]))),128)),a(Q)>a(h).length?(r(),u("div",{key:1,class:"h5-load-more",onClick:Ve}," 加载更多 ")):g("",!0)])),[[te,a($)]])]),_:1},8,["modelValue","title"]),l(G,{modelValue:a(x),"onUpdate:modelValue":e[19]||(e[19]=t=>H(x)?x.value=t:null),title:a(L)==="add"?"新增回访记录":"编辑回访记录",direction:"btt",size:"80%","close-on-click-modal":!1,onClosed:xe},{footer:s(()=>[l(_,{class:"flex-1",onClick:e[18]||(e[18]=t=>x.value=!1)},{default:s(()=>[...e[43]||(e[43]=[n("取消",-1)])]),_:1}),l(_,{class:"flex-1",type:"primary",loading:a(B),onClick:Ce},{default:s(()=>[...e[44]||(e[44]=[n("确定",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(Z,{ref_key:"visitFormRef",ref:A,model:a(p),rules:ke,"label-position":"top",class:"h5-form"},{default:s(()=>[l(c,{label:"回访类型",prop:"visit_type"},{default:s(()=>[l(W,{modelValue:a(p).visit_type,"onUpdate:modelValue":e[13]||(e[13]=t=>a(p).visit_type=t),class:"h5-radio-group"},{default:s(()=>[l(w,{label:1},{default:s(()=>[...e[38]||(e[38]=[n("电话",-1)])]),_:1}),l(w,{label:2},{default:s(()=>[...e[39]||(e[39]=[n("微信",-1)])]),_:1}),l(w,{label:3},{default:s(()=>[...e[40]||(e[40]=[n("短信",-1)])]),_:1}),l(w,{label:4},{default:s(()=>[...e[41]||(e[41]=[n("上门",-1)])]),_:1}),l(w,{label:5},{default:s(()=>[...e[42]||(e[42]=[n("其他",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(c,{label:"回访时间",prop:"visit_time"},{default:s(()=>[l(ee,{modelValue:a(p).visit_time,"onUpdate:modelValue":e[14]||(e[14]=t=>a(p).visit_time=t),type:"datetime",placeholder:"请选择回访时间","value-format":"YYYY-MM-DD HH:mm:ss",class:"!w-full"},null,8,["modelValue"])]),_:1}),l(c,{label:"回访内容",prop:"content"},{default:s(()=>[l(f,{modelValue:a(p).content,"onUpdate:modelValue":e[15]||(e[15]=t=>a(p).content=t),type:"textarea",rows:4,placeholder:"请输入回访内容"},null,8,["modelValue"])]),_:1}),l(c,{label:"回访结果"},{default:s(()=>[l(f,{modelValue:a(p).result,"onUpdate:modelValue":e[16]||(e[16]=t=>a(p).result=t),type:"textarea",rows:3,placeholder:"请输入回访结果"},null,8,["modelValue"])]),_:1}),l(c,{label:"下次回访时间"},{default:s(()=>[l(ee,{modelValue:a(p).next_visit_time,"onUpdate:modelValue":e[17]||(e[17]=t=>a(p).next_visit_time=t),type:"datetime",placeholder:"请选择下次回访时间","value-format":"YYYY-MM-DD HH:mm:ss",class:"!w-full"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ul=tt(Gt,[["__scopeId","data-v-004381f4"]]);export{Ul as default}; diff --git a/server/public/admin/assets/h5-D9iauX-p.js b/server/public/admin/assets/h5-Cnu0poEu.js similarity index 96% rename from server/public/admin/assets/h5-D9iauX-p.js rename to server/public/admin/assets/h5-Cnu0poEu.js index 9640ccc9..38a70149 100644 --- a/server/public/admin/assets/h5-D9iauX-p.js +++ b/server/public/admin/assets/h5-Cnu0poEu.js @@ -1 +1 @@ -import{_ as H}from"./index-DbiC_Mh1.js";import{K as I,J as G,D as R,B as U,G as q,I as F,C as J,i as S}from"./element-plus-DFTWCWyi.js";import{r as V}from"./index-Nt5zMHcc.js";import{f as C,as as w,ak as p,I as A,a as o,aN as e,J as m,O as l,G as u,H as K,aP as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as O}from"./@vue/reactivity-DiY1c2vO.js";import{Q as P}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function Q(_){return V.post({url:"/channel.web_page_setting/setConfig",params:_})}function T(){return V.get({url:"/channel.web_page_setting/getConfig"})}const j={class:"w-80"},z={class:"flex-1 min-w-0 break-words"},L=C({name:"h5Config"}),Gt=C({...L,setup(_){const r=O({status:0,page_status:0,page_url:"",url:""}),d=async()=>{const f=await T();for(const t in r)r[t]=f[t]},y=async()=>{await Q(r),d()};return d(),(f,t)=>{const E=I,g=G,n=F,c=q,i=U,k=J,v=S,x=R,B=H,D=w("copy"),N=w("perms");return p(),A("div",null,[o(g,{class:"!border-none",shadow:"never"},{default:e(()=>[o(E,{type:"warning",title:"温馨提示:H5设置",closable:!1,"show-icon":""})]),_:1}),o(g,{class:"!border-none mt-4",shadow:"never"},{default:e(()=>[o(x,{ref:"formRef",model:a(r),"label-width":"120px"},{default:e(()=>[o(i,{label:"渠道状态",required:"",prop:"status"},{default:e(()=>[m("div",null,[o(c,{modelValue:a(r).status,"onUpdate:modelValue":t[0]||(t[0]=s=>a(r).status=s)},{default:e(()=>[o(n,{value:1},{default:e(()=>[...t[3]||(t[3]=[l("开启",-1)])]),_:1}),o(n,{value:0},{default:e(()=>[...t[4]||(t[4]=[l("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),t[5]||(t[5]=m("div",{class:"form-tips"},"状态为关闭时,将不对外提供服务,请谨慎操作",-1))])]),_:1}),o(i,{label:"关闭后访问页面",prop:"page_status"},{default:e(()=>[o(c,{modelValue:a(r).page_status,"onUpdate:modelValue":t[1]||(t[1]=s=>a(r).page_status=s)},{default:e(()=>[o(n,{value:0},{default:e(()=>[...t[6]||(t[6]=[l("空页面",-1)])]),_:1}),o(n,{value:1},{default:e(()=>[...t[7]||(t[7]=[l("自定义链接",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(r).page_status==1?(p(),u(i,{key:0,label:"",prop:"page_url"},{default:e(()=>[m("div",j,[o(k,{modelValue:a(r).page_url,"onUpdate:modelValue":t[2]||(t[2]=s=>a(r).page_url=s),placeholder:"请输入完整的url"},null,8,["modelValue"])])]),_:1})):K("",!0),o(i,{label:"访问链接"},{default:e(()=>[m("div",z,[l(P(a(r).url)+" ",1),b((p(),u(v,null,{default:e(()=>[...t[8]||(t[8]=[l("复制",-1)])]),_:1})),[[D,a(r).url]])])]),_:1})]),_:1},8,["model"])]),_:1}),b((p(),u(B,null,{default:e(()=>[o(v,{type:"primary",onClick:y},{default:e(()=>[...t[9]||(t[9]=[l("保存",-1)])]),_:1})]),_:1})),[[N,["channel.web_page_setting/setConfig"]]])])}}});export{Gt as default}; +import{_ as H}from"./index-j275bAO5.js";import{K as I,J as G,D as R,B as U,G as q,I as F,C as J,i as S}from"./element-plus-DFTWCWyi.js";import{r as V}from"./index--WnM67ZH.js";import{f as C,as as w,ak as p,I as A,a as o,aN as e,J as m,O as l,G as u,H as K,aP as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,r as O}from"./@vue/reactivity-DiY1c2vO.js";import{Q as P}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function Q(_){return V.post({url:"/channel.web_page_setting/setConfig",params:_})}function T(){return V.get({url:"/channel.web_page_setting/getConfig"})}const j={class:"w-80"},z={class:"flex-1 min-w-0 break-words"},L=C({name:"h5Config"}),Gt=C({...L,setup(_){const r=O({status:0,page_status:0,page_url:"",url:""}),d=async()=>{const f=await T();for(const t in r)r[t]=f[t]},y=async()=>{await Q(r),d()};return d(),(f,t)=>{const E=I,g=G,n=F,c=q,i=U,k=J,v=S,x=R,B=H,D=w("copy"),N=w("perms");return p(),A("div",null,[o(g,{class:"!border-none",shadow:"never"},{default:e(()=>[o(E,{type:"warning",title:"温馨提示:H5设置",closable:!1,"show-icon":""})]),_:1}),o(g,{class:"!border-none mt-4",shadow:"never"},{default:e(()=>[o(x,{ref:"formRef",model:a(r),"label-width":"120px"},{default:e(()=>[o(i,{label:"渠道状态",required:"",prop:"status"},{default:e(()=>[m("div",null,[o(c,{modelValue:a(r).status,"onUpdate:modelValue":t[0]||(t[0]=s=>a(r).status=s)},{default:e(()=>[o(n,{value:1},{default:e(()=>[...t[3]||(t[3]=[l("开启",-1)])]),_:1}),o(n,{value:0},{default:e(()=>[...t[4]||(t[4]=[l("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),t[5]||(t[5]=m("div",{class:"form-tips"},"状态为关闭时,将不对外提供服务,请谨慎操作",-1))])]),_:1}),o(i,{label:"关闭后访问页面",prop:"page_status"},{default:e(()=>[o(c,{modelValue:a(r).page_status,"onUpdate:modelValue":t[1]||(t[1]=s=>a(r).page_status=s)},{default:e(()=>[o(n,{value:0},{default:e(()=>[...t[6]||(t[6]=[l("空页面",-1)])]),_:1}),o(n,{value:1},{default:e(()=>[...t[7]||(t[7]=[l("自定义链接",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(r).page_status==1?(p(),u(i,{key:0,label:"",prop:"page_url"},{default:e(()=>[m("div",j,[o(k,{modelValue:a(r).page_url,"onUpdate:modelValue":t[2]||(t[2]=s=>a(r).page_url=s),placeholder:"请输入完整的url"},null,8,["modelValue"])])]),_:1})):K("",!0),o(i,{label:"访问链接"},{default:e(()=>[m("div",z,[l(P(a(r).url)+" ",1),b((p(),u(v,null,{default:e(()=>[...t[8]||(t[8]=[l("复制",-1)])]),_:1})),[[D,a(r).url]])])]),_:1})]),_:1},8,["model"])]),_:1}),b((p(),u(B,null,{default:e(()=>[o(v,{type:"primary",onClick:y},{default:e(()=>[...t[9]||(t[9]=[l("保存",-1)])]),_:1})]),_:1})),[[N,["channel.web_page_setting/setConfig"]]])])}}});export{Gt as default}; diff --git a/server/public/admin/assets/icon-D8Ev5pEr.js b/server/public/admin/assets/icon-B9pYwGq6.js similarity index 96% rename from server/public/admin/assets/icon-D8Ev5pEr.js rename to server/public/admin/assets/icon-B9pYwGq6.js index 53342f7b..16674508 100644 --- a/server/public/admin/assets/icon-D8Ev5pEr.js +++ b/server/public/admin/assets/icon-B9pYwGq6.js @@ -1 +1 @@ -import{J as z,i as x}from"./element-plus-DFTWCWyi.js";import{_ as w}from"./picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js";import{c as s,y,z as b}from"./index-Nt5zMHcc.js";import{f as k,as as g,ak as a,I as r,a as e,aN as t,J as i,F as _,ap as u,aP as f,G as v}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,r as B}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const N={class:"flex items-center"},V={class:"flex items-center"},E={class:"flex items-center"},C={class:"flex items-center"},F={class:"flex flex-wrap"},I={class:"flex items-center"},P={class:"flex flex-wrap"},xe=k({__name:"icon",setup(S){const m=B({value:""});return(D,c)=>{const n=z,h=w,p=x,d=g("copy");return a(),r("div",null,[e(n,{header:"element-plus图标",shadow:"never",class:"!border-none"},{default:t(()=>[i("div",N,[e(s,{class:"m-4",size:24,name:"el-icon-Search"}),e(s,{class:"m-4",size:24,name:"el-icon-Plus"}),e(s,{class:"m-4",size:24,name:"el-icon-FullScreen"}),e(s,{class:"m-4",size:24,name:"el-icon-Setting"}),e(s,{class:"m-4",size:24,name:"el-icon-Warning"})])]),_:1}),e(n,{header:"本地图标",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",V,[e(s,{class:"m-4",size:24,name:"local-icon-baoxian"}),e(s,{class:"m-4",size:24,name:"local-icon-youhui"}),e(s,{class:"m-4",size:24,name:"local-icon-daiyunying"}),e(s,{class:"m-4",size:24,name:"local-icon-diancanshezhi"}),e(s,{class:"m-4",size:24,name:"local-icon-dianzifapiao"})])]),_:1}),e(n,{header:"图标选择器",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",E,[e(h,{modelValue:l(m).value,"onUpdate:modelValue":c[0]||(c[0]=o=>l(m).value=o)},null,8,["modelValue"])])]),_:1}),e(n,{header:"element-plus图标库大全(点击复制图标名称)",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",C,[i("div",F,[(a(!0),r(_,null,u(l(y)(),o=>(a(),r("div",{key:o,class:"m-1"},[f((a(),v(p,null,{default:t(()=>[e(s,{name:o,size:20},null,8,["name"])]),_:2},1024)),[[d,o]])]))),128))])])]),_:1}),e(n,{header:"本地图标库大全(点击复制图标名称)",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",I,[i("div",P,[(a(!0),r(_,null,u(l(b)(),o=>(a(),r("div",{key:o,class:"m-1"},[f((a(),v(p,null,{default:t(()=>[e(s,{name:o,size:20},null,8,["name"])]),_:2},1024)),[[d,o]])]))),128))])])]),_:1})])}}});export{xe as default}; +import{J as z,i as x}from"./element-plus-DFTWCWyi.js";import{_ as w}from"./picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js";import{c as s,y,z as b}from"./index--WnM67ZH.js";import{f as k,as as g,ak as a,I as r,a as e,aN as t,J as i,F as _,ap as u,aP as f,G as v}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,r as B}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const N={class:"flex items-center"},V={class:"flex items-center"},E={class:"flex items-center"},C={class:"flex items-center"},F={class:"flex flex-wrap"},I={class:"flex items-center"},P={class:"flex flex-wrap"},xe=k({__name:"icon",setup(S){const m=B({value:""});return(D,c)=>{const n=z,h=w,p=x,d=g("copy");return a(),r("div",null,[e(n,{header:"element-plus图标",shadow:"never",class:"!border-none"},{default:t(()=>[i("div",N,[e(s,{class:"m-4",size:24,name:"el-icon-Search"}),e(s,{class:"m-4",size:24,name:"el-icon-Plus"}),e(s,{class:"m-4",size:24,name:"el-icon-FullScreen"}),e(s,{class:"m-4",size:24,name:"el-icon-Setting"}),e(s,{class:"m-4",size:24,name:"el-icon-Warning"})])]),_:1}),e(n,{header:"本地图标",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",V,[e(s,{class:"m-4",size:24,name:"local-icon-baoxian"}),e(s,{class:"m-4",size:24,name:"local-icon-youhui"}),e(s,{class:"m-4",size:24,name:"local-icon-daiyunying"}),e(s,{class:"m-4",size:24,name:"local-icon-diancanshezhi"}),e(s,{class:"m-4",size:24,name:"local-icon-dianzifapiao"})])]),_:1}),e(n,{header:"图标选择器",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",E,[e(h,{modelValue:l(m).value,"onUpdate:modelValue":c[0]||(c[0]=o=>l(m).value=o)},null,8,["modelValue"])])]),_:1}),e(n,{header:"element-plus图标库大全(点击复制图标名称)",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",C,[i("div",F,[(a(!0),r(_,null,u(l(y)(),o=>(a(),r("div",{key:o,class:"m-1"},[f((a(),v(p,null,{default:t(()=>[e(s,{name:o,size:20},null,8,["name"])]),_:2},1024)),[[d,o]])]))),128))])])]),_:1}),e(n,{header:"本地图标库大全(点击复制图标名称)",shadow:"never",class:"!border-none mt-4"},{default:t(()=>[i("div",I,[i("div",P,[(a(!0),r(_,null,u(l(b)(),o=>(a(),r("div",{key:o,class:"m-1"},[f((a(),v(p,null,{default:t(()=>[e(s,{name:o,size:20},null,8,["name"])]),_:2},1024)),[[d,o]])]))),128))])])]),_:1})])}}});export{xe as default}; diff --git a/server/public/admin/assets/index-Nt5zMHcc.js b/server/public/admin/assets/index--WnM67ZH.js similarity index 91% rename from server/public/admin/assets/index-Nt5zMHcc.js rename to server/public/admin/assets/index--WnM67ZH.js index cac713c3..0f4b63ca 100644 --- a/server/public/admin/assets/index-Nt5zMHcc.js +++ b/server/public/admin/assets/index--WnM67ZH.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/404-C0UR64jA.js","assets/error-Hr3a1e0I.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/vue-router-QlpZ4wdW.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/error-Cz3CexuM.css","assets/403-CZfStq7K.js","assets/login-Caw1ZFnq.js","assets/useLockFn-X4Qce5KO.js","assets/footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js","assets/login-Bt4SvQsz.css","assets/change-password-BqhHJD7K.js","assets/change-password-DRfsLJ26.css","assets/bind-work-wechat-D0G125SZ.js","assets/wecomOauthPostMessage-C_e6VGrO.js","assets/bind-work-wechat-BX1gqwq1.css","assets/setting-BPZ7dWvp.js","assets/index-DbiC_Mh1.js","assets/index-DoFDMZdP.css","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/setting-CxqqGetv.css","assets/progress-DiEvcC7c.js","assets/doctor-B7qEhSpt.js","assets/progress-CQXIT7YT.css","assets/pc_details-NldMsGZ1.js","assets/decoration-XX4ow94I.js","assets/preview-pc-CFpdKBXT.js","assets/index-CHZQEiCU.js","assets/attr-C9CZlLYE.js","assets/picker-W7EVmvPL.js","assets/article-nZc1fauP.js","assets/picker-JBYDNsl5.css","assets/attr-lNortPsv.css","assets/content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js","assets/decoration-img-A6h02C6l.js","assets/decoration-img-C5XvHl9_.css","assets/attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js","assets/content-DSbMIogU.js","assets/content-DXAsZ7EV.css","assets/attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js","assets/content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js","assets/attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js","assets/add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js","assets/content-Bq2N97AM.js","assets/content-Dy_alH9u.css","assets/attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js","assets/content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js","assets/attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js","assets/content-RKc8NsXf.js","assets/content-Cl-9UIip.css","assets/attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js","assets/index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js","assets/content-BvpTtLa-.js","assets/content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js","assets/attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js","assets/content-_IxwYLuN.js","assets/content-Bd3rHJ5J.css","assets/attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js","assets/content.vue_vue_type_script_setup_true_lang-BPonashY.js","assets/attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js","assets/content-DPq40ncB.js","assets/content-DxNvUNZR.css","assets/preview-pc-BRQDo0AR.css","assets/pc_details-nlJo1_D0.css","assets/h5-lML7Vln5.js","assets/fans-DpM3qtuW.js","assets/h5-BSFcFSny.css","assets/index_h5-CK75hzdW.js","assets/tcm-DCW3HTOw.js","assets/order-6mkZv6ss.js","assets/weapp-BTxqP8mz.js","assets/perm-DkIPMPyD.js","assets/index_h5-B4VTGZps.css","assets/readonly-CR0ge2o6.js","assets/patient-BKtZKzsB.js","assets/diag-display-DCz_VAqj.js","assets/PatientInfoCard-QbPK3em5.js","assets/PatientInfoCard-BrBnXtc9.css","assets/PatientCaseCard-D3V_iWVf.js","assets/blood-thresholds-CJ1fqMjh.js","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/PatientCaseCard-De53cbHo.css","assets/DailyMatrix-j3uF_86P.js","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/DailyMatrix-BODQibyb.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/NoteTimeline-BrIUegAJ.js","assets/NoteTimeline-CCWIpEBQ.css","assets/readonly-CdP3eZN0.css","assets/index-r0I7TYnB.js","assets/edit-Dd1FB-QR.js","assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-B1Ws5Kwo.js","assets/index-0_hM_7FR.js","assets/edit-CBTeizmE.js","assets/index.vue_vue_type_style_index_0_lang-BHpNHC57.js","assets/@wangeditor/editor-Cyf37SuL.js","assets/@wangeditor/editor-nHDhGvq6.css","assets/@wangeditor/editor-for-vue-D1vSph3l.js","assets/index-DX96drV3.css","assets/useDictOptions-CT8hbU1b.js","assets/index-BLZ4p99f.js","assets/h5-D9iauX-p.js","assets/open_setting-BvP5LkON.js","assets/weapp-Df3yaGBN.js","assets/config-CKYP7IWW.js","assets/wx_oa-BOc4Brkk.js","assets/menu-BNilEyUZ.js","assets/oa-attr-DRhy74HO.js","assets/oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js","assets/useMenuOa-pZ-sxT1M.js","assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js","assets/oa-phone-CwkrkTuR.js","assets/oa-phone-CctIyraX.css","assets/oa-menu-form-edit-D78PgDzI.js","assets/oa-menu-form-CRceKfGE.js","assets/default_reply-Cpi-HWLu.js","assets/edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js","assets/edit-Ch21x6RV.js","assets/follow_reply-DnBCK_Nn.js","assets/keyword_reply-CFhQ_k7m.js","assets/MessageBubble-BalN4H2y.js","assets/MessageBubble-BwtdPM6K.css","assets/SendPanel-BlCCqkH6.js","assets/SendPanel-DaGPWlQG.css","assets/index-gTDcOAp2.js","assets/index-CMsGEvq_.css","assets/edit-3qCytcox.js","assets/admin-BAFPFiwc.js","assets/department-CSUh_x-a.js","assets/post-CjhbCF7F.js","assets/edit-CObVTcPU.css","assets/index-nT7Z051Q.js","assets/index-CjSHFu-R.css","assets/account-adjust-DuN8Obq4.js","assets/account-adjust.vue_vue_type_script_setup_true_lang-Be9YVff0.js","assets/edit-D4acFfZD.js","assets/edit-D-D8bVPM.css","assets/index-SaLZEAlp.js","assets/index-Oppei429.css","assets/paiban-Bg121yd-.js","assets/paiban-CXjt7GKw.css","assets/detail-D-NJ8OpW.js","assets/consumer-CKmJdevC.js","assets/index-BO7ItocT.js","assets/index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js","assets/index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js","assets/guahao-BQbGoXDp.js","assets/index-BBnPZgeu.js","assets/medicine-D4btWglq.js","assets/role-Dce31LXP.js","assets/index-afeGV-gc.js","assets/index-tfEElgYq.css","assets/html2canvas-QH1iLAAe.js","assets/index-CKfpPOH6.css","assets/list-BtS9kEfd.js","assets/list-BK2ISTzB.css","assets/order_list-DMkGC0-h.js","assets/order_list-CSc9yEYW.css","assets/order_list_h5-C8MQ7JcZ.js","assets/order_list_h5-TyQ1kut8.css","assets/add-nav-iIsXnC4M.js","assets/attr-setting-lWLo6dqZ.js","assets/attr-setting.vue_vue_type_script_setup_true_lang-De0qg73C.js","assets/menu-DdD-PeZU.js","assets/menu-DYFusokT.css","assets/preview-Bxm-pT3K.js","assets/preview-C7oaKmYo.css","assets/attr-sqjT04Ci.js","assets/attr.vue_vue_type_script_setup_true_lang-Bh0NQXfx.js","assets/content-CJ-9B74m.js","assets/content-DaxRy47P.css","assets/attr-B5zKWZg2.js","assets/menu-set.vue_vue_type_script_setup_true_lang-QbiHfNG8.js","assets/content-DLHgc5xG.js","assets/content-sMbqkta2.css","assets/menu-set-Cn6nqNTs.js","assets/content-qcqJQjtP.js","assets/attr-CWjhF9MF.js","assets/attr-BUt3xtc0.js","assets/content-dDIhxzWA.js","assets/attr-Ddn-kMdm.js","assets/attr-DOvELnbs.js","assets/content-CsKOm_p9.js","assets/attr-Db6EuK6T.js","assets/attr-BMp9OJ_7.js","assets/content-BFX6n9yY.js","assets/attr-BS21VV6Q.js","assets/attr-Di5MGlZL.js","assets/content-GmXNQpk1.js","assets/attr-gr_OE7on.js","assets/index-By_gWTUA.js","assets/index-57RdOFNo.css","assets/pc-CWZHJXwU.js","assets/mobile-style-DMyb-tD1.js","assets/mobile-style.vue_vue_type_script_setup_true_lang-CvaVjBKl.js","assets/theme-picker-BmoSb7ra.js","assets/theme-picker-BsELUxM9.css","assets/style--mOAeHu_.js","assets/tabbar-CJ50lDht.js","assets/tabbar-DJsOahKR.css","assets/edit-lUrEdFe-.js","assets/menu-Dcx2e7zx.js","assets/dict-BN4CTMA_.js","assets/code-C9qHBHs_.js","assets/relations-add.vue_vue_type_script_setup_true_lang-Dd5lfrrN.js","assets/edit-CAJZpU7c.css","assets/index-Bde7244p.js","assets/code-preview.vue_vue_type_script_setup_true_lang-Dpbw1DAf.js","assets/data-table.vue_vue_type_script_setup_true_lang-BF_waQWh.js","assets/code-preview-C7eIy808.js","assets/data-table-D0gd6MAn.js","assets/relations-add-QP6EItjc.js","assets/dept-tongji-C7zhtC-v.js","assets/dept-tongji-ky7rOYoi.css","assets/medicine-9zqpvZKs.js","assets/medicine-DO6x6zrS.css","assets/roster-U-rezV1y.js","assets/roster-rVaxg-O6.css","assets/tongji-B6VJLvKp.js","assets/tongji-C0VnzFxy.css","assets/commission-settlement-DLiQO_Wt.js","assets/stats-BCrGkFwR.js","assets/commission-settlement-Ddhkz5ks.css","assets/index-CtbZopo2.js","assets/qywx-D1l8A6TI.js","assets/qywx-BzfLWvoO.css","assets/yeji-4vqdUkps.js","assets/finance-L1-WPbJt.js","assets/yeji-68hw5EWU.css","assets/edit-DUXbzElE.js","assets/edit-D4atl_7z.css","assets/index-CWwxxnGy.js","assets/index-DXnmNy5C.css","assets/balance_details-yWq_SgOS.js","assets/refund-log-Cq6vU47n.js","assets/refund-log.vue_vue_type_script_setup_true_lang-DNk4F4v6.js","assets/mubiao-dept-card-A7mXprh1.js","assets/mubiao-dept-card-naMqyghz.css","assets/mubiao-dept-node-CdPbyfnv.js","assets/mubiao-dept-node-CANQUVWv.css","assets/mubiao-BtoeHWr-.js","assets/mubiao-B6IOi2bJ.css","assets/recharge_record-B_1vUb_E.js","assets/refund_record-C_Z4S92m.js","assets/index-CQ2KSFsf.js","assets/index-DhR2yeiO.css","assets/edit-CYXDKzEl.js","assets/message-DMZbcMZ3.js","assets/index-C4_15yk8.js","assets/edit-BUOSeNnT.js","assets/edit.vue_vue_type_script_setup_true_lang-DXBj1QMo.js","assets/index-BUOQPh2G.js","assets/index-CEGMPJ75.js","assets/index-DYTH4Nwn.css","assets/edit-D0pt24OW.js","assets/edit.vue_vue_type_script_setup_true_lang-CitHzUnN.js","assets/index-Cu3QQu7Q.js","assets/edit-CLcIiMBx.js","assets/edit.vue_vue_type_script_setup_true_lang-Csv2cIsH.js","assets/index-BdMgSRB8.js","assets/index-DmXb6F6C.js","assets/index-Bqs56mLH.css","assets/edit-Csi7FS4G.js","assets/edit.vue_vue_type_script_setup_true_lang-V9yb54Tt.js","assets/index-D8ldWVxH.js","assets/edit-8GAClaG6.js","assets/edit.vue_vue_type_script_setup_true_lang-CCRvmlU6.js","assets/picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js","assets/index-Do_lL19E.js","assets/auth-DoW7pu27.js","assets/auth.vue_vue_type_script_setup_true_lang-DiRwQHdy.js","assets/edit-CABP8P7N.js","assets/edit.vue_vue_type_script_setup_true_lang-mezlrvEI.js","assets/index-tRldup3E.js","assets/edit-BeTgW91N.js","assets/edit.vue_vue_type_script_setup_true_lang-CeopjxTy.js","assets/index-CKfzECuY.js","assets/edit-Bx3YhV3D.js","assets/edit.vue_vue_type_script_setup_true_lang-D0_v-7QH.js","assets/index-B1LIHnDq.js","assets/edit-Cti94u-p.js","assets/pay-BdcLIgLH.js","assets/getExposeType-MUpmx9zy.js","assets/edit-C1NtFi7N.css","assets/index-LfmReHw1.js","assets/index-3-XRg3iQ.js","assets/index-C7ThElWL.js","assets/index-BzrSkGWL.css","assets/edit-C1B46Nw-.js","assets/edit.vue_vue_type_script_setup_true_lang-C66WHFUi.js","assets/index-Dg2D7IT3.js","assets/cache-DE9um1gH.js","assets/environment-8DsK4TTM.js","assets/journal-COBt03jH.js","assets/edit-C976a8DV.js","assets/index-B81hG-qX.js","assets/login_register-aQkOmHjq.js","assets/user-BJIsEXJM.js","assets/setup-BM_sBJNd.js","assets/filing-D7ZQBdrZ.js","assets/website-D92RBx7y.js","assets/information-CItsuNNR.js","assets/protocol-54IflrUs.js","assets/statistics-CKJuOq2I.js","assets/index-C_rFbfoa.js","assets/index-Bidrbn2Z.css","assets/index-CcVG7h8J.js","assets/index-DRKXaI9h.css","assets/MediaSourceSelect-BPfd1tNV.js","assets/MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js","assets/account_cost-81Vk4hme.js","assets/self_input_stats-DMYot1WP.js","assets/cost-edit.vue_vue_type_script_setup_true_lang-Dqx_6dkh.js","assets/useMediaSourceOptions-6f8jf4SK.js","assets/account_cost-7v-jP9Su.css","assets/cost-edit-DGomcZem.js","assets/index-COkWbhdj.js","assets/yeji-edit.vue_vue_type_script_setup_true_lang-jHpHbOvC.js","assets/index-Dm7HB_rk.css","assets/yeji-edit-DxTLAHjt.js","assets/prescription-drawer-BfdBV89J.js","assets/prescription-drawer-_wsVAGl0.css","assets/list-VIYlBs2m.js","assets/list-D5ZA4Hyd.css","assets/add-DWErONbW.js","assets/add-GuwNtREU.css","assets/appointment-BiJAofxT.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-D7UD5Dzu.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css","assets/BloodRecordList-CmZGbTEw.js","assets/BloodRecordList-DhVK-Y_e.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/DietRecordList-BLgHlUXr.js","assets/DietRecordList-Cc-xUr2B.css","assets/ExerciseRecordList-BNnQ9qPN.js","assets/ExerciseRecordList-DGtgtzou.css","assets/TrackingMatrix-CwF2zsXr.js","assets/TrackingMatrix-zyxtXYPb.css","assets/TrackingNoteTimeline-CnwjkDH5.js","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-D9Zbpq2C.js","assets/edit-CsfWrQHN.js","assets/index-5vSbbrqK.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/index-CPlRrjKY.js","assets/index-D6Ao7YNW.css","assets/index-B4O8X2AF.js","assets/index-BqqzElnH.css","assets/file-BLRQstYf.js","assets/icon-D8Ev5pEr.js","assets/link-BT-af6Iu.js","assets/overflow-Cd0bVY6j.js","assets/popover_input-BPLcgSyk.js","assets/rich_text-DCadQVqu.js","assets/upload-3f7pufJE.js","assets/patient-call-DK0sKUyA.js","assets/@tencentcloud/call-uikit-vue-DB7vt9Ht.js","assets/@tencentcloud/call-engine-js-BX2W9Lhf.js","assets/@tencentcloud/chat-AC2Y2r2A.js","assets/rtc-detect-Chu-fZvE.js","assets/@tencentcloud/tui-core-8M7p1XHw.js","assets/tim-upload-plugin-HO4N4AW9.js","assets/tim-profanity-filter-plugin-Dn_Cf-mP.js","assets/patient-call-k8V9hV2G.css","assets/index-DZEYWGUh.js","assets/index-DtDaTXOB.css"])))=>i.map(i=>d[i]); -var E1=Object.defineProperty;var H1=(a,o,e)=>o in a?E1(a,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[o]=e;var U=(a,o,e)=>H1(a,typeof o!="symbol"?o+"":o,e);import{_ as i}from"./jspdf-BsthCvR5.js";import{u as V3,a as n3,c as T1,b as O1,R as I3}from"./vue-router-QlpZ4wdW.js";import{d as L3,c as I1}from"./pinia-B8cvXbiZ.js";import{a as J3,A as p3}from"./axios-C80V62Fs.js";import{l as C}from"./lodash-D3kF6u-c.js";import{y as m,a as k,n as c3,q as R1}from"./@vue/reactivity-DiY1c2vO.js";import{E as u3,a as Z,b as d3,c as P1,d as Q3,e as a1,f as D1,g as B1,h as C1,i as S1,j as k1,k as j1,l as N1,m as q1,n as o1,o as e1,p as t1,q as W1,r as i1,s as l1,u as G1,t as $1,v as U1,w as F1,x as Y1,y as Z1,z as X1,A as K1}from"./element-plus-DFTWCWyi.js";import{u as c1,a as n1,b as J1,c as Q1}from"./@vueuse/core-1S4fJlii.js";import{n as a0,f as V,A as b,ak as h,I as g,J as d,a as u,ar as s3,i as o0,aN as z,F as D,ap as K,O as I,G as A,H as B,w as s1,K as e0,at as r1,ab as j3,aP as m1,Z as t0,aq as i0,b as u1,d as l0,T as c0}from"./@vue/runtime-core-C6bnekPw.js";import{a as d1,p as r3,Q as R,o as b3,P as n0}from"./@vue/shared-mAAVTE9n.js";import{c as s0}from"./css-color-function-DI01JAaZ.js";import{I as h1,J as r0,d as m0,K as u0,c as d0}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as h0,h as v0}from"./@vueuse/shared-Cl3lVqjz.js";import{T as _0,q as v1,s as p0,a as z0,c as b0}from"./@vue/runtime-dom-DDAG46FW.js";import{u as y0}from"./vue-clipboard3-DByT_rEQ.js";import{u as g0,a as w0,b as f0,c as A0,d as V0,e as L0,f as M0,g as x0,h as E0,j as H0,k as T0,l as O0,m as I0,n as R0,o as P0,p as D0,q as B0,r as C0,s as S0,v as k0,w as j0,x as N0,y as q0,z as W0,A as G0,B as $0}from"./echarts-CNLwa9wG.js";import{a as U0}from"./highlight.js-Bxt7hFFy.js";import{o as F0}from"./@highlightjs/vue-plugin-C4onkBvW.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./clipboard-CHgxszqY.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";(function(){const o=document.createElement("link").relList;if(o&&o.supports&&o.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))t(l);new MutationObserver(l=>{for(const c of l)if(c.type==="childList")for(const n of c.addedNodes)n.tagName==="LINK"&&n.rel==="modulepreload"&&t(n)}).observe(document,{childList:!0,subtree:!0});function e(l){const c={};return l.integrity&&(c.integrity=l.integrity),l.referrerPolicy&&(c.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?c.credentials="include":l.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function t(l){if(l.ep)return;l.ep=!0;const c=e(l);fetch(l.href,c)}})();const N={terminal:1,title:"后台管理系统",version:"1.9.4",baseUrl:"https://admin.zhenyangtang.com.cn//",urlPrefix:"adminapi",timeout:6e4};var T=(a=>(a.LOGIN="/login",a.ERROR_403="/403",a.INDEX="/",a))(T||{}),_1=(a=>(a.LIGHT="light",a.DARK="dark",a))(_1||{}),y3=(a=>(a.CATALOGUE="M",a.MENU="C",a.BUTTON="A",a))(y3||{}),R3=(a=>(a[a.SM=640]="SM",a[a.MD=768]="MD",a[a.LG=1024]="LG",a[a.XL=1280]="XL",a[a["2XL"]=1536]="2XL",a))(R3||{});const n7={1:"微信小程序",2:"微信公众号",3:"手机H5",4:"电脑PC",5:"苹果APP",6:"安卓APP"};var p1=(a=>(a.JSON="application/json;charset=UTF-8",a.FORM_DATA="multipart/form-data;charset=UTF-8",a))(p1||{}),e3=(a=>(a.GET="GET",a.POST="POST",a))(e3||{}),F=(a=>(a[a.NOT_INSTALL=-2]="NOT_INSTALL",a[a.LOGIN_FAILURE=-1]="LOGIN_FAILURE",a[a.FAIL=0]="FAIL",a[a.SUCCESS=1]="SUCCESS",a[a.OPEN_NEW_PAGE=2]="OPEN_NEW_PAGE",a[a.NEED_BIND_WORK_WECHAT=10]="NEED_BIND_WORK_WECHAT",a))(F||{});const g3="token",s7="account",w3="setting";function J(a){return/^(https?:|mailto:|tel:)/.test(a)}const Y0=(a,o)=>o.findIndex(e=>e.fullPath==a),N3=a=>a.name==null||a.name===""?"":`${String(a.name)}::${a.path}`,Z0=(a,o)=>{const{path:e,meta:t,name:l}=a;return!!(!e||J(e)||t!=null&&t.hideTab||!o.hasRoute(l)||[T.LOGIN,T.ERROR_403].includes(e))},X0=(a,o)=>o.findIndex(e=>e.fullPath===a),E3=a=>{var o,e,t;return(t=(e=(o=a.matched.at(-1))==null?void 0:o.components)==null?void 0:e.default)==null?void 0:t.name},z1=a=>{const{params:o,path:e,query:t}=a;return{params:o||{},path:e,query:t||{}}},m3=L3({id:"tabs",state:()=>({cacheTabList:new Set,tabList:[],tasMap:{},indexRouteName:""}),getters:{getTabList(){return this.tabList},getCacheTabList(){return Array.from(this.cacheTabList)}},actions:{setRouteName(a){this.indexRouteName=a},addCache(a){a&&this.cacheTabList.add(a)},removeCache(a){a&&this.cacheTabList.has(a)&&this.cacheTabList.delete(a)},clearCache(){this.cacheTabList.clear()},resetState(){this.cacheTabList=new Set,this.tabList=[],this.tasMap={},this.indexRouteName=""},addTab(a){const o=m(a.currentRoute),{name:e,query:t,meta:l,params:c,fullPath:n,path:r}=o;if(Z0(o,a))return;const s=Y0(n,this.tabList),_=E3(o),p={name:e,path:r,fullPath:n,title:l==null?void 0:l.title,query:t,params:c};if(l!=null&&l.keepAlive&&this.addCache(_),s!==-1){this.tabList[s]=p,this.tasMap[n]=p;return}const v=N3(p);if(v){const w=[];if(this.tabList.forEach((O,M)=>{N3(O)===v&&w.push(M)}),w.length>0){const O=w[0];for(let E=w.length-1;E>=1;E--){const f=w[E];delete this.tasMap[this.tabList[f].fullPath],this.tabList.splice(f,1)}const M=this.tabList[O];M.fullPath!==n&&delete this.tasMap[M.fullPath],this.tabList[O]=p,this.tasMap[n]=p;return}}this.tasMap[n]=p,this.tabList.push(p)},removeTab(a,o){const{currentRoute:e,push:t}=o,l=X0(a,this.tabList);this.tabList.length>1&&l!==-1&&this.tabList.splice(l,1);const c=E3(e.value);if(this.removeCache(c),a!==e.value.fullPath)return;let n=null;l===0?n=this.tabList[l]:n=this.tabList[l-1];const r=z1(n);t(r)},removeOtherTab(a){this.tabList=this.tabList.filter(e=>e.fullPath==a.fullPath);const o=E3(a);this.cacheTabList.forEach(e=>{o!==e&&this.removeCache(e)})},removeAllTab(a){const{push:o,currentRoute:e}=a,{name:t}=m(e);if(t==this.indexRouteName){this.removeOtherTab(e.value);return}this.tabList=[],this.clearCache(),o(T.INDEX)}}}),q={key:"like_admin_",set(a,o,e){a=this.getKey(a);let t={expire:e?this.time()+e:"",value:o};typeof t=="object"&&(t=JSON.stringify(t));try{window.localStorage.setItem(a,t)}catch{return null}},get(a){a=this.getKey(a);try{const o=window.localStorage.getItem(a);if(!o)return null;const{value:e,expire:t}=JSON.parse(o);return t&&t{a3.has(e)||a3.set(e,t)})}remove(o){if(a3.has(o)){const e=a3.get(o);e&&e(o),a3.delete(o)}}};U(A3,"instance");let D3=A3;const q3=D3.createInstance();class J0{constructor(o){U(this,"axiosInstance");U(this,"config");U(this,"options");this.config=o,this.options=o.requestOptions,this.axiosInstance=J3.create(o),this.setupInterceptors()}getAxiosInstance(){return this.axiosInstance}setupInterceptors(){if(!this.config.axiosHooks)return;const{requestInterceptorsHook:o,requestInterceptorsCatchHook:e,responseInterceptorsHook:t,responseInterceptorsCatchHook:l}=this.config.axiosHooks;this.axiosInstance.interceptors.request.use(c=>(this.addCancelToken(c),C.isFunction(o)&&(c=o(c)),c),c=>(C.isFunction(e)&&e(c),c)),this.axiosInstance.interceptors.response.use(c=>(this.removeCancelToken(c.config.url),C.isFunction(t)&&(c=t(c)),c),c=>{var n;return C.isFunction(l)&&l(c),c.code!=p3.ERR_CANCELED&&this.removeCancelToken((n=c.config)==null?void 0:n.url),c.code==p3.ECONNABORTED||c.code==p3.ERR_NETWORK?new Promise(r=>setTimeout(r,500)).then(()=>this.retryRequest(c)):Promise.reject(c)})}addCancelToken(o){const{ignoreCancelToken:e}=o.requestOptions;!e&&q3.add(o)}removeCancelToken(o){q3.remove(o)}retryRequest(o){var c;const e=o.config,{retryCount:t,isOpenRetry:l}=e.requestOptions;return!l||((c=e.method)==null?void 0:c.toUpperCase())==e3.POST||(e.retryCount=e.retryCount??0,e.retryCount>=t)?Promise.reject(o):(e.retryCount++,this.axiosInstance.request(e))}get(o,e){return this.request({...o,method:e3.GET},e)}post(o,e){return this.request({...o,method:e3.POST},e)}request(o,e){const t=C.merge({},this.options,e),l={...C.cloneDeep(o),requestOptions:t},{urlPrefix:c}=t;return c&&(l.url=`${c}${o.url}`),new Promise((n,r)=>{this.axiosInstance.request(l).then(s=>{n(s)}).catch(s=>{r(s)})})}}function Q0(){if(typeof window>"u")return!1;const{pathname:a,search:o}=window.location;return a.includes("bind-work-wechat")?/(?:^|[?&])code=/.test(o):!1}const W3="/bind-work-wechat";let G3=0;const a2={requestInterceptorsHook(a){var c;const{withToken:o,isParamsToData:e}=a.requestOptions,t=a.params||{},l=a.headers||{};if(o){const n=b1();l.token=n}return e&&!Reflect.has(a,"data")&&((c=a.method)==null?void 0:c.toUpperCase())===e3.POST&&(a.data=t,a.params={}),a.headers=l,a},requestInterceptorsCatchHook(a){return a},async responseInterceptorsHook(a){const{isTransformResponse:o,isReturnDefaultResponse:e}=a.config.requestOptions;if(e)return a;if(!o)return a.data;const{code:t,data:l,show:c,msg:n}=a.data;switch(t){case F.SUCCESS:return c&&n&&X.msgSuccess(n),l;case F.FAIL:return c&&n&&X.msgError(n),Promise.reject(l);case F.LOGIN_FAILURE:return t3(),H.push(T.LOGIN),Promise.reject();case F.NEED_BIND_WORK_WECHAT:if(H.currentRoute.value.path===W3||Q0())return Promise.reject(l);{const r=Date.now();r-G3>400&&(G3=r,H.replace(W3).catch(()=>{}))}return Promise.reject(l);case F.OPEN_NEW_PAGE:return window.location.href=l.url,l;case F.NOT_INSTALL:window.location.replace("/install/install.php");break;default:return l}},responseInterceptorsCatchHook(a){return a.code!==p3.ERR_CANCELED&&a.message&&X.msgError(a.message),Promise.reject(a)}},o2={timeout:N.timeout,baseURL:N.baseUrl,headers:{"Content-Type":p1.JSON,version:N.version},axiosHooks:a2,requestOptions:{isParamsToData:!0,isReturnDefaultResponse:!1,isTransformResponse:!0,urlPrefix:N.urlPrefix,ignoreCancelToken:!1,withToken:!0,isOpenRetry:!0,retryCount:2}};function e2(a){return new J0(C.merge(o2,{}))}const L=e2();function t2(a){return L.post({url:"/login/account",params:{...a,terminal:N.terminal}})}function i2(){return L.post({url:"/login/logout"})}function l2(){return L.get({url:"/auth.admin/mySelf"})}function r7(a){return L.post({url:"/auth.admin/editSelf",params:a})}function m7(){return L.get({url:"/login/workWechatConfig"})}function c2(a){return L.post({url:"/login/workWechatLogin",params:{...a,terminal:N.terminal}})}function u7(a){return L.post({url:"/auth.admin/bindWorkWechat",params:a})}function d7(){return L.post({url:"/auth.admin/unbindWorkWechat"})}function h7(a){return L.post({url:"/login/changeFirstPassword",params:a})}const Y=L3({id:"user",state:()=>({token:b1()||"",userInfo:{},routes:[],perms:[],isPaw:1}),getters:{},actions:{resetState(){this.token="",this.userInfo={},this.perms=[],this.isPaw=1},login(a){const{account:o,password:e}=a;return new Promise((t,l)=>{t2({account:o.trim(),password:e}).then(c=>{this.token=c.token,this.isPaw=c.is_paw??1,q.set(g3,c.token),t(c)}).catch(c=>{l(c)})})},logout(){return new Promise((a,o)=>{i2().then(async e=>{this.token="",await H.push(T.LOGIN),t3(),a(e)}).catch(e=>{o(e)})})},workWechatLogin(a){return new Promise((o,e)=>{c2({code:a}).then(t=>{this.token=t.token,this.isPaw=t.is_paw??1,q.set(g3,t.token),o(t)}).catch(t=>{e(t)})})},getUserInfo(){return new Promise((a,o)=>{l2().then(e=>{this.userInfo=e.user,this.perms=e.permissions,this.routes=f1(e.menu),this.isPaw=e.user.is_paw??1,a(e)}).catch(e=>{o(e)})})}}});function y1(){return L.get({url:"/config/getConfig"})}function v7(){return L.get({url:"/workbench/index"})}function _7(a){return L.get({url:"/config/dict",params:a})}const S=L3({id:"app",state:()=>({config:{},configFetchAttempted:!1,isMobile:!0,isCollapsed:!1,isRouteShow:!0}),actions:{getImageUrl(a){if(!a||typeof a!="string")return"";if(a.startsWith("http://")||a.startsWith("https://"))return a;const o=a.startsWith("/")?a:"/"+a,e=String(this.config.oss_domain||"").replace(/\/$/,"");if(e)return`${e}${o}`;const t=String(N.baseUrl||"/").replace(/\/+$/,"");if(t.startsWith("http://")||t.startsWith("https://"))try{return new URL(o,`${t}/`).href}catch{return`${t}${o}`}const l=typeof window<"u"?window.location.origin:"";return l?`${l}${o}`:o},getConfig(){return new Promise((a,o)=>{y1().then(e=>{this.config=e,a(e)}).catch(e=>{o(e)})})},setMobile(a){this.isMobile=a},toggleCollapsed(a){this.isCollapsed=a??!this.isCollapsed},refreshView(){this.isRouteShow=!1,a0(()=>{this.isRouteShow=!0})}}}),z3={showCrumb:!0,showLogo:!1,isUniqueOpened:!0,sideWidth:183,sideTheme:"dark",sideDarkColor:"#1d2124",openMultipleTabs:!0,theme:"#4A5DFF",successTheme:"#67c23a",warningTheme:"#e6a23c",dangerTheme:"#f56c6c",errorTheme:"#f56c6c",infoTheme:"#909399"},j=1,n2={1:["sideTheme","sideDarkColor"]},s2={"dark-2":"shade(20%)","light-3":"tint(30%)","light-5":"tint(50%)","light-7":"tint(70%)","light-8":"tint(80%)","light-9":"tint(90%)"},r2={"light-3":"shade(20%)","light-5":"shade(30%)","light-7":"shade(50%)","light-8":"shade(60%)","light-9":"shade(70%)","dark-2":"tint(20%)"},$3="theme-vars",m2=(a,o="primary",e=!1)=>{const t={[`--el-color-${o}`]:a},l=e?r2:s2;for(const c in l)t[`--el-color-${o}-${c}`]=`color(${a} ${l[c]})`;return t},u2=(a,o=!1)=>{const e=Object.keys(a).reduce((c,n)=>Object.assign(c,m2(a[n],n,o)),{});let t=Object.keys(e).reduce((c,n)=>{const r=s0.convert(e[n]);return`${c}${n}:${r};`},"");t=`:root{${t}}`;let l=document.getElementById($3);if(l){l.innerHTML=t;return}l=document.createElement("style"),l.setAttribute("type","text/css"),l.setAttribute("id",$3),l.innerHTML=t,document.head.append(l)},h3=q.get(w3);function d2(a,o){if(o>=j)return;for(let l=o+1;l<=j;l++){const c=n2[l];if(c)for(const n of c)a[n]=z3[n]}a._settingSchemaVersion=j;const{showDrawer:e,...t}=a;q.set(w3,t)}const W=L3({id:"setting",state:()=>{const a={showDrawer:!1,...z3};let o=j;return d1(h3)&&(o=typeof h3._settingSchemaVersion=="number"?h3._settingSchemaVersion:0,Object.assign(a,h3),oObject.is(Number(a),NaN)?a:`${a}${o}`,U3=a=>a==null&&typeof a>"u",b7=(a,o={children:"children"})=>{a=C.cloneDeep(a);const{children:e}=o,t=[],l=[];for(a.forEach(c=>l.push(c));l.length;){const c=l.shift();c[e]&&(c[e].forEach(n=>l.push(n)),delete c[e]),t.push(c)}return t},y7=(a,o={id:"id",parentId:"pid",children:"children"})=>{a=C.cloneDeep(a);const{id:e,parentId:t,children:l}=o,c=[],n=new Map;return a.forEach(r=>{n.set(r[e],r);const s=n.get(r[t]);s?(s[l]=s[l]??[],s[l].push(r)):c.push(r)}),c};function _2(a){if(a.length===0||!a||a=="undefined")return a;const o=a.replace("//","/"),e=o.length;return o[e-1]==="/"?o.slice(0,e-1):o}function p2(a){let o="";for(const e of Object.keys(a)){const t=a[e],l=encodeURIComponent(e)+"=";if(!U3(t))if(d1(t)){for(const c of Object.keys(t))if(!U3(t[c])){const n=e+"["+c+"]",r=encodeURIComponent(n)+"=";o+=r+encodeURIComponent(t[c])+"&"}}else o+=l+encodeURIComponent(t)+"&"}return o.slice(0,-1)}const g7=(a,o="yyyy-mm-dd")=>{a||(a=Number(new Date)),a.toString().length==10&&(a*=1e3);const e=new Date(a);let t;const l={"y+":e.getFullYear().toString(),"m+":(e.getMonth()+1).toString(),"d+":e.getDate().toString(),"h+":e.getHours().toString(),"M+":e.getMinutes().toString(),"s+":e.getSeconds().toString()};for(const c in l)t=new RegExp("("+c+")").exec(o),t&&(o=o.replace(t[1],t[1].length==1?l[c]:l[c].padStart(t[1].length,"0")));return o},w7=(a=8)=>{let o=Date.now().toString(36);return o+=Math.random().toString(36).substring(3,a),o},f7=(a,o)=>{o=Math.min(1,Math.max(0,o));const e=/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,t=/^rgb\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*\)$/,l=/^rgba\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*,\s*[0-9.]+\s*\)$/;let c=0,n=0,r=0;if(e.test(a)){const s=a.slice(1),_=s.length===3?s.split("").map(p=>p+p).join(""):s;c=parseInt(_.substring(0,2),16),n=parseInt(_.substring(2,4),16),r=parseInt(_.substring(4,6),16)}else if(t.test(a)){const s=a.match(/\d+/g);s&&(c=parseInt(s[0]),n=parseInt(s[1]),r=parseInt(s[2]))}else if(l.test(a)){const s=a.match(/\d+(\.\d+)?/g);s&&(c=parseInt(s[0]),n=parseInt(s[1]),r=parseInt(s[2]))}else throw new Error("Unsupported color format");return`rgba(${c}, ${n}, ${r}, ${o})`},z2=V({props:{name:{type:String,required:!0},size:{type:[Number,String],default:16},color:{type:String,default:"inherit"}},setup(a){const o=b(()=>`#${a.name}`),e=b(()=>({width:i3(a.size),height:i3(a.size),color:a.color}));return{symbolId:o,styles:e}}}),P=(a,o)=>{const e=a.__vccOpts||a;for(const[t,l]of o)e[t]=l;return e},b2=["xlink:href"];function y2(a,o,e,t,l,c){return h(),g("svg",{"aria-hidden":"true",style:r3(a.styles)},[d("use",{"xlink:href":a.symbolId,fill:"currentColor"},null,8,b2)],4)}const g2=P(z2,[["render",y2]]),G=V({name:"Icon",props:{name:{type:String,required:!0},size:{type:[String,Number],default:"14px"},color:{type:String,default:"inherit"}},setup(a){return()=>a.name.indexOf(B3)===0?u(Q3,{size:a.size,color:a.color},{default:()=>u(s3(a.name.replace(B3,"")))}):a.name.indexOf(v2)===0?o0("i",{class:["local-icon"]},u(g2,{...a})):null}}),w2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALcAAACHCAYAAABUFMgyAAAABHNCSVQICAgIfAhkiAAACbtJREFUeF7tm39olVUYx++92wo0ZiL0V2v/SKMcVMzUtMTyjzL/KUpwWCpuzbZVxpikIWQLBIMUnLiMSWXYJhSYsiA1dNaQCSqkadGGOQdj/dpubM79uPf2nts9l7Oz8/66976/nvsdXO6v957zPM/53A/Pe967cAh/qADRCoSJ5oW0UIEQ4AYEZCsAuMkuLRJzC2635sGKBqcCCadDzRV0uRrH6XwxfnAqkDX8uYLSaJxczRGcZUGkVitgBLCncMvQGj0H4FaXO3+OE+GVQTZ7bqlKdqFTHc9fE9/Te2wpKByUNxXQA9wO+LrFyhZu9nkRbhXobHK78+TN6uZxonp2Zq/z9+R7Vi7L7Yod6GRwZaiToLe0fP5wJBJu/HsounhqcrLQjcV7fNFj/65YvmTYjbkwR+YVCIfDKjAnx8fHu3p6er6oqKi4lYKXA64HuSXArcCtajG4sdOA72s+dPK7k+eW37jRZ2XMzCuk+GR93YZQXe2GnI6JwdyvQDweH79z587h2bNnvyHZW4TcqGWZFrQVEFXGTsPd2npkSdf5S6e6uy/d5X45/p+xrnZ9qL5uo1fTY94cVyAWiw329vY+W1ZWdl0yOW9LVO3KjCjM4DYCO3LgwGdfHWk7tnpoKGo2To7Tnz4c4Ha0vJ4Mnkgk4iMjI7uLi4vfTwEeN7C5MkYzKJV9tTZSRLuFN25qiF64cNkzY/OMALcn/Dk+6dTU1F9FRUUlEtx6/XhW5magJ6Fm93v2Hvyh9VD7QscztDAB4LZQpIAeMjY2dnTWrFms5+Tm1jN4RnCLJ48c8Miq1a+O3rzZb2Z+V0oKuF0psyeTaO3JRCQSuTcFNwdbtLfuzokZnCLYaWvv39+6qOXgl2e1ic0+70pBALcrZfZqksTFixcXan/XFPY2PLE0glNpbNaStHx8+JPm/Z+u8ypbeV7A7ZeVcCaO4eHhprlz5+4W7C0bnE08w+B6cMsnkmlrM7ibPth7vf3o8QecScX+qIDbfs2C9Amt7/5R67ufk+AWAc8Y7mlgp+C+BriDhEewY9WBm/fdDPKs4GaAp2+auX8G3MEGJkjRp+B+Xos5pmhNbMEtX26fBrY2eIEG91XAHSQ8gh2rADcDWQSc2ZvDPcPeqp5bfE1uSQpSbQngDjYvgYr+9u3bXdrvTVYJ1uaAZww33y0RAWdwa+beo8F9gl058sUfTih9sQyOBZGCW2xLGNwcbNVPZJOxGJlbhFtsTQC3Y8uIgVUVUMDNWhG9K5bpITKBu3Db9l1dx0+cWuCXpYC5/bISzsSRgnt1qt9W9dzKizl24U62JW+9vePk6dNdi5xJxf6ogNt+zYL0CVfhrq3f1tHZ2b3MLwUC3H5ZCWfikOAWd0zEvptNPu0qZUbmBtzOLCJGVVcAcOM/cch+NwA34AbcaEvIMkA2MZgb5gbcFM29uWZdaHPNK2QXN98TGx0dbZ83b97rqX3u/Notqa5aG6quqsx3BsjmPzQ09GFpaekuwE12ifM3McANc5OlH3ADbsBN8YQSPTdZrpOJwdwwN1nCATfgBtxoS8gyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmzhe4Y1qi8dQtIdyz/Nnz9F9YURH+Grtnt4h0K6yt39bR2dm9zC/VrK5aG6oG3H5ZjpzHIZnbUbgLNLi/Bdw5X0MMqFOBaDS6u6SkZJf2tgg2s3dOzM0NXqANWLD1naatHR1ndvhlNWBuv6yEM3H09fW9XF5efkqAm0Eugs3bEcttCYuUtSRia5KEu66uofzsuctdzqRif1TAbb9mQfpEe3t7WU1NzYAWM++1ucEZzPzGUrIFt9xzM7iTPfjSJ1/4Z3g4yh57/ge4PV8CxwJIJBJ/zJkz50EF2GJbwuc3hZsdKJ5UivZOmpvBXf/mu1+fOXN+pWNZ2RgYcNsoVsAO1U4mm0pLS/ek4GbGlq3NIJ9hbRFiOWU9uPnOSUFxcXHhiqdfutnT+/s9XtcLcHu9As7MPz4+3jl//vwXtRNKEWpxG5D33RnDzVsTufeObNmy/anz3Ve+GRkZ9bQ9AdzOwOXlqPF4fLi1tfWJxsZGsdfmYMuAZwW3ar87afH1mzY/NDEWOfbTlV/u86oYgNuryjsz79jY2PctLS11O3fu/FNoQ/TAVu6UGLUlct+tsne6RWE9ekPDex9dvfZbZX//wN3OpKw/6mvVlaGqTWvdnhbz5bgCk5OTvw4MDOzTtv2OpnpsBrTYY1vaAuRhqa5QiiHzq5TivXzFctp24Zo1G+/XNtwrJyZji2OxWBEfLBFKmM2VcakefWRB/8pnlt7KeAB80NUKhMPh9K6G9nhicHDwSltb24Xm5uaoFgjvo2VTy62IvA04Iwcz4DjU3OTyvjd/LrYt4heBf85sHleLi8l8UQF5f1qEVf7tiNFvSaZt/8lmNspU/p2J+HsTsVWRH8tfCsDtC558FYQZ3Px9+TK74YWbTOAWDSwDrnouG1uEG6D7ijFXgxEtK54Iyo850LLNVa1IxuZWnViqQBfNDbBd5SVwk2UDOEtW93K7XAkrFpWtK7cqcj8ufiGMHgduVRBwTiqggptDy++5uVUw633e9gmlqoUR4VZZXAYagOeECRKDmIEtwqwytO6etqo6Vsyt16PrQW4GN4lVQhJZV8AIdBliy7bWg9VKtPKXQQYcYFupIo7hFZBPBlVm1jvGtIp2zc0H1INcBbfea6bB4QDSFVDtcui1Hbo7IkYVyhRueUyjcXI1B+mVzuPk9MDNCOhs2hK9NQDAeUynQ6n7Bm6z/AC/WYXy7/2s4TUrGaAzqxDeD2wFAHdglw6Bm1UAcJtVCO8HtgKAO7BLh8DNKvAfR+rWAIVxGVEAAAAASUVORK5CYII=",f2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALcAAACHCAYAAABUFMgyAAAABHNCSVQICAgIfAhkiAAACbZJREFUeF7t201oXFUUB/DMRyJNpE0JuJqYTWtQs2pLqxSzcWGiK8FNceOqiLiMOxe1i0IFXdhFIXSli6agoJS6aBEM2o2QlbXFfkBNhRBNbRIyTTOTzHjv8O5wc3Pf55x578y7/0LI1+S8c8/95eTMfdNCH/6hAjmtQCGn68KyUIE+4AaC3FYAuHO7tVhYWrjTug52tHcq0Ox2qlToqOJ0e72I3zsV6Bg/FcqgOFTX6J1tQaZRKxAEOFPcJtqgzwE86na78zgdrwk57PNIVYqLzvZ49TX9e34fR0oKD3KmAn7A48D3LVanuOXP67ht0OXF417Hmd11eKF+3Vl+XX3PfC/LFXlciYPOhGuibkG/d+/eK5VKZWZgYOBEs9ksp7F5Ozs7641GYzWNa+EayStQKBRsMOtbW1s379+//83Ro0cfeXgVcD/kkYBHwW0bMVTHbgOv1WrXy+XypFhAlJjJK4SfzG0FRIPaevbs2ddDQ0MfG91bRx40suyqTRSIto7dxr24uPia6NQ3hOmB3FYdC0u1AuIv8fKDBw/eGh8fv2N0cjWW2MaVPTmG4Q6CXRR/Tr4V48c7mKlT3XsnLiZG2sbGxsb5/fv3f+YBbwR0c2tN4uDWR5GiBC3+jKyhYzthLZNFbm9vr/T3948auP3m8Y46t8TdQi3f1+v1X8SMfSyTVeOizlRgc3PzyuDg4Adiwapz+3XwRLj1jq2AF8WfjSrGEWeMZbZQ4axWLBaHPdwKtt69fU9OoowlCne7a9+9e/f44cOHfwbuzPbcpQs3FxYWjol/ty3dO/CJZRBua8eWI8nTp09n9+3b975LFcZas6vA6urq2YMHD57XurfZwWVyezq4H27zBk27a0vcYtC/UyqVXsxuubiySxUQc/evYu6eMnDrwBPj3gXbw30buF3ile1afXCruVsi7wi3BN5+E537D+DOdsNdurqH+22x5h3LaBILt3m7fRdsEbwkcN8Cbpd4ZbtWDbeErAOX3Vvh3tO9bTO3/jVzJCl5YwlwZ7vfTl1dHGDcFK83mda6tgKeGPeeI0DZteWbeJHULe/OkVNFxmKzqYCHWx9LJG4F2/YS2VaiQZ1bx62PJsCdzR47e1ULbjmK+N2xbNcpCe6yfP2teMHUq85WGwtPtQIebvkCPdmxbTO39WZOXNytsURc7Lq4iXM81RXiYs5WIFXc1Wr1mjhUP+lstbHwVCtg4NZPTPS5O9ZpiW3mbnVu4E51b52/GHA7TyC/BQDu/O6t8ysDbucJ5LcAwJ3fvXV+ZU7jFv9buk+83sV5BHktgDjAmBsZGflQO+M2b7/TnXNzOy0RLwfoEzeW8rq3zq/ryZMnn4+NjZ0Dbucp5K8AwI3OnT/V3oqAG7iB2/h/lIleW4KZO7eOWC4MnRudmyVMiqSAG7gpHLGMAdzAzRImRVLADdwUjljGAG7gZgmTIingBm4KRyxjADdws4RJkRRwAzeFI5YxgBu4WcKkSAq4gZvCEcsYwA3cLGFSJAXcwE3hiGUM4AZuljApkgJu4KZwxDIGcAM3S5gUSQE3cFM4YhkDuIGbJUyKpIAbuCkcsYwB3MDNEiZFUsAN3BSOWMYAbuBmCZMiKeAGbgpHLGMAN3CzhEmRFHADN4UjljGAG7hZwqRICriBm8IRyxjADdwsYVIkBdzATeGIZQzgBm6WMCmSAm7gpnDEMgZwAzdLmBRJATdwUzhiGQO4gZslTIqkgBu4KRyxjAHcwM0SJkVSwA3cFI5YxgBu4GYJkyIp4AZuCkcsYwA3cLOESZEUcAM3hSOWMYAbuFnCpEgKuIGbwhHLGMAN3CxhUiQF3MBN4YhlDOAGbpYwKZICbuCmcMQyBnADN0uYFEkBN3BTOGIZA7iBmyVMiqSAG7gpHLGMAdzAzRImRVLADdwUjljGAG7gZgmTIingBm4KRyxjADdws4RJkRRwAzeFI5YxgBu4WcKkSAq4gZvCEcsYwA3cLGFSJAXcwE3hiGUM4AZuljApkgJu4KZwxDIGcAM3S5gUSQE3cFM4YhkDuIGbJUyKpIAbuCkcsYwB3MDNEiZFUsAN3BSOWMYwcO+IJBveW1N7L3OXn7f/FSyrUV+T7+Vb0XgrV6vVa4ODgye5VKJWq/VtATeX7SDPI03cJYH7R+Am30ME9KnA2tra+dHR0XPi23rXlt2bpHOrDl4SAUsrKyufjIyMfMplN9C5uexEd/JYXFx8b2Ji4oaGWyLXYatxJPJYIjOVI4k+mrRwz8/PT0xOTt7szlLiRwXu+DXrpZ+Ym5sbP3369JLIWc3aqoNLzOpNLikWbnPmlrhbM3ij0fivUCjIjzP/B9yZb0HXEmg2m/8cOHDgJQtsfSxR1w/FLR+oP6nUu3erc0vcGxsb3w0NDb3ZtVXFCAzcMYrVYw8VTybPjo2Nfenhlh3b7NoS+Z6urSM2l+yHW52clCqVSvnhw4d/lUql57OuF3BnvQPdub44AZs/dOjQu+IJpY5aPwZUc3di3Go0MWfv4sLCwhtHjhz5wRtVurPCCFGBO0KReuwhYuxdvXTp0uszMzP6rK1gm8A7wm0772518atXr748NTX1fblcfiGr+gF3VpXvznU3Nzd/unjx4kdnzpz5VxtD/GBbT0qCxhJz7rZ17/aIImf0x48ffzE8PHyqWCw+150l+0cF7rQr3p3r1ev1P5eWlr4Sx35XvBlbgtZn7EhHgCo72x1KPXN1l1J/b96x3HVcODs7W5menj4loJ8QgfpVMPGsN+xaiSsmftP/Xl9ff5Q4AH4w1QqIU7b2qYb4uLa8vPz75cuXf7tw4cKaSETN0WanNkcR8xhwzxrCwCnUqpOb597qc31s0X8R1M+FXSfV4uJiLCpgnk/rWM3XjgS9lmTX8Z/ZmYNWar7ORH+9iT6qmB+bvxTAzcITqyTCcKvvm7fZA2/cJMGtd2ATuO1zs2PruAGdlbFUk9G7rP5E0PxYgTa7uW0USdy5bU8sbdD1zg3YqXrpuYt1Alwu1vd2u1mJKF3U7LrmqGLO4/ovRNDHPbcrSJikAjbcCq16rzq3DbPfz8d+QmkbYXTcti5uggZwEhO5CBIGW8ds69C+Z9q26kTp3H4zuh/yMNy52CUsouMKBEE3EUfu1n5Yo2Rr/jKYwAE7ShXxGFUB88mgrTP7PSa0inE7twroh9yG2+9rocnhAbmugO2Uw2/s8D0RCapQUtxmzKA4VNfI9U47vDg/uIlAdzKW+O0BADuss0tLZ4M7bH3AH1Yh977fMd6wkgFdWIXw/Z6tAHD37NYh8bAKAHdYhfD9nq0AcPfs1iHxsAr8D7xvfQ8bZ0PpAAAAAElFTkSuQmCC",A2={class:"setting-drawer"},V2={class:"h-full flex flex-col"},L2={class:"setting-item mb-5"},M2={class:"flex mt-4 cursor-pointer"},x2=["onClick"],E2=["src"],H2={class:"setting-item mb-5 flex justify-between items-center"},T2={class:"setting-item mb-5 flex justify-between items-center"},O2={class:"setting-item mb-5 flex justify-between items-center"},I2={class:"setting-item mb-5 flex justify-between items-center"},R2={class:"setting-item mb-5 flex justify-between items-center"},P2={class:"setting-item mb-5 flex justify-between items-center"},D2={class:"setting-item mb-5 flex justify-between items-center"},B2={class:"setting-item flex justify-between items-center mt-auto"},C2=V({__name:"drawer",setup(a){const o=W(),e=c3(["#409EFF","#28C76F","#EA5455","#FF9F43","#01CFE8","#4A5DFF"]),t=[{type:"dark",image:w2},{type:"light",image:f2}],l=b({get(){return o.sideTheme},set(f){o.setSetting({key:"sideTheme",value:f})}}),c=b({get(){return o.openMultipleTabs},set(f){o.setSetting({key:"openMultipleTabs",value:f})}}),n=b({get(){return o.isUniqueOpened},set(f){o.setSetting({key:"isUniqueOpened",value:f})}}),r=b({get(){return o.sideWidth},set(f){o.setSetting({key:"sideWidth",value:f})}}),s=b({get(){return o.showDrawer},set(f){o.setSetting({key:"showDrawer",value:f})}}),_=b({get(){return o.theme},set(f){o.setSetting({key:"theme",value:f}),O()}}),p=b({get(){return o.showLogo},set(f){o.setSetting({key:"showLogo",value:f})}}),v=b({get(){return o.showCrumb},set(f){o.setSetting({key:"showCrumb",value:f})}}),w=c1(),O=()=>{o.setTheme(w.value)},M=()=>{h0(w)(),O()},E=()=>{w.value=!1,o.resetTheme(),O()};return(f,y)=>{const x3=G,$=D1,Q=B1,L1=C1,M1=S1,x1=a1;return h(),g("div",A2,[u(x1,{modelValue:m(s),"onUpdate:modelValue":y[6]||(y[6]=x=>k(s)?s.value=x:null),"append-to-body":"",direction:"rtl",size:"250px",title:"主题设置"},{default:z(()=>[d("div",V2,[d("div",L2,[y[7]||(y[7]=d("span",{class:"text-tx-secondary"},"风格设置",-1)),d("div",M2,[(h(),g(D,null,K(t,x=>d("div",{class:"mr-4 flex relative text-primary",key:x.type,onClick:A4=>l.value=x.type},[d("img",{src:x.image,width:"52",height:"36"},null,8,E2),m(l)==x.type?(h(),A(x3,{key:0,class:"icon-select",name:"el-icon-Select"})):B("",!0)],8,x2)),64))])]),d("div",H2,[y[8]||(y[8]=d("span",{class:"text-tx-secondary"},"主题颜色",-1)),d("div",null,[u($,{modelValue:m(_),"onUpdate:modelValue":y[0]||(y[0]=x=>k(_)?_.value=x:null),predefine:m(e)},null,8,["modelValue","predefine"])])]),d("div",T2,[y[9]||(y[9]=d("span",{class:"text-tx-secondary"},"开启黑暗模式",-1)),d("div",null,[u(Q,{"model-value":m(w),onChange:M},null,8,["model-value"])])]),d("div",O2,[y[10]||(y[10]=d("span",{class:"text-tx-secondary"},"开启多页签栏",-1)),d("div",null,[u(Q,{modelValue:m(c),"onUpdate:modelValue":y[1]||(y[1]=x=>k(c)?c.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",I2,[y[11]||(y[11]=d("span",{class:"text-tx-secondary"},"只展开一个一级菜单",-1)),d("div",null,[u(Q,{modelValue:m(n),"onUpdate:modelValue":y[2]||(y[2]=x=>k(n)?n.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",R2,[y[12]||(y[12]=d("div",{class:"text-tx-secondary flex-none mr-3"},"菜单栏宽度",-1)),d("div",null,[u(L1,{modelValue:m(r),"onUpdate:modelValue":y[3]||(y[3]=x=>k(r)?r.value=x:null),min:180,max:250},null,8,["modelValue"])])]),d("div",P2,[y[13]||(y[13]=d("div",{class:"text-tx-secondary flex-none mr-3"},"显示LOGO",-1)),d("div",null,[u(Q,{modelValue:m(p),"onUpdate:modelValue":y[4]||(y[4]=x=>k(p)?p.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",D2,[y[14]||(y[14]=d("div",{class:"text-tx-secondary flex-none mr-3"},"显示面包屑",-1)),d("div",null,[u(Q,{modelValue:m(v),"onUpdate:modelValue":y[5]||(y[5]=x=>k(v)?v.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",B2,[u(M1,{onClick:E,class:"w-full"},{default:z(()=>[...y[15]||(y[15]=[I("重置主题",-1)])]),_:1})])])]),_:1},8,["modelValue"])])}}}),S2=P(C2,[["__scopeId","data-v-352f3746"]]),k2=V({__name:"index",setup(a){const o=W(),e=()=>{o.setSetting({key:"showDrawer",value:!0})};return(t,l)=>{const c=G;return h(),g("div",{class:"setting flex cursor-pointer h-full items-center px-2",onClick:e},[u(c,{size:16,name:"el-icon-Setting"}),u(S2)])}}});function w1(a){const o=V3();return s1(o,()=>{a(o)},{immediate:!0}),{route:o}}const j2=V({__name:"breadcrumb",setup(a){const o=c3([]),e=t=>{const l=t.matched.filter(c=>c.meta&&c.meta.title);o.value=l};return w1(t=>{e(t)}),(t,l)=>{const c=k1,n=j1;return h(),A(n,{class:"app-breadcrumb"},{default:z(()=>[(h(!0),g(D,null,K(m(o),r=>(h(),A(c,{key:r.path},{default:z(()=>[I(R(r.meta.title),1)]),_:2},1024))),128))]),_:1})}}}),N2=P(j2,[["__scopeId","data-v-94d84829"]]),q2=V({__name:"fold",setup(a){const o=S(),e=b(()=>o.isCollapsed),t=()=>{o.toggleCollapsed()};return(l,c)=>{const n=G;return h(),g("div",{class:"fold h-full cursor-pointer flex items-center px-2",onClick:t},[u(n,{name:`local-icon-${m(e)?"expand":"collapse"}`,size:18},null,8,["name"])])}}}),W2=V({__name:"full-screen",setup(a){const{toggle:o,isFullscreen:e}=n1();return(t,l)=>{const c=G;return h(),g("div",{class:"full-screen h-full cursor-pointer flex items-center px-2",onClick:l[0]||(l[0]=(...n)=>m(o)&&m(o)(...n))},[u(c,{size:16,name:`local-icon-${m(e)?"fullscreen-exit":"fullscreen"}`},null,8,["name"])])}}});function G2(){const a=n3(),o=V3(),e=m3(),t=W(),l=b(()=>e.getTabList),c=b(()=>o.fullPath);return{tabsLists:l,currentTab:c,addTab:()=>{t.openMultipleTabs&&e.addTab(a)},removeTab:p=>{t.openMultipleTabs&&(p=p??o.fullPath,e.removeTab(p,a))},removeOtherTab:()=>{t.openMultipleTabs&&e.removeOtherTab(o)},removeAllTab:()=>{t.openMultipleTabs&&e.removeAllTab(a)}}}const $2={class:"app-tabs pl-4 flex bg-body"},U2={class:"flex-1 min-w-0"},F2={class:"flex items-center px-3"},Y2=V({__name:"multiple-tabs",setup(a){const o=n3(),e=m3(),{removeOtherTab:t,addTab:l,removeAllTab:c,removeTab:n,tabsLists:r,currentTab:s}=G2();w1(()=>{l()});const _=v=>{const w=e.tasMap[v];o.push(z1(w))},p=v=>{switch(v){case"closeCurrent":n();break;case"closeOther":t();break;case"closeAll":c();break}};return(v,w)=>{const O=N1,M=q1,E=G,f=e1,y=o1,x3=t1;return h(),g("div",$2,[d("div",U2,[u(M,{"model-value":m(s),closable:m(r).length>1,onTabChange:_,onTabRemove:w[0]||(w[0]=$=>m(n)($))},{default:z(()=>[(h(!0),g(D,null,K(m(r),$=>(h(),A(O,{key:$.fullPath,label:$.title,name:$.fullPath},null,8,["label","name"]))),128))]),_:1},8,["model-value","closable"])]),u(x3,{onCommand:p},{dropdown:z(()=>[u(y,null,{default:z(()=>[u(f,{command:"closeCurrent"},{default:z(()=>[...w[1]||(w[1]=[I(" 关闭当前 ",-1)])]),_:1}),u(f,{command:"closeOther"},{default:z(()=>[...w[2]||(w[2]=[I(" 关闭其他 ",-1)])]),_:1}),u(f,{command:"closeAll"},{default:z(()=>[...w[3]||(w[3]=[I(" 关闭全部 ",-1)])]),_:1})]),_:1})]),default:z(()=>[d("span",F2,[u(E,{size:16,name:"el-icon-arrow-down"})])]),_:1})])}}}),Z2=P(Y2,[["__scopeId","data-v-414a904e"]]),X2=V({__name:"refresh",setup(a){const o=S(),e=()=>{o.refreshView()};return(t,l)=>{const c=G;return h(),g("div",{class:"refresh cursor-pointer h-full flex items-center px-2",onClick:e},[u(c,{name:"el-icon-RefreshRight",size:18})])}}});function A7(){return L.get({url:"/setting.system.system/info"})}function V7(a){return L.get({url:"/setting.system.log/lists",params:a},{ignoreCancelToken:!0})}function K2(){return L.post({url:"/setting.system.cache/clear"})}function L7(a){return L.get({url:"/crontab.crontab/lists",params:a})}function M7(a){return L.post({url:"/crontab.crontab/add",params:a})}function x7(a){return L.get({url:"/crontab.crontab/detail",params:a})}function E7(a){return L.post({url:"/crontab.crontab/edit",params:a})}function H7(a){return L.post({url:"/crontab.crontab/delete",params:a})}function T7(a){return L.get({url:"/crontab.crontab/expression",params:a})}const J2={class:"flex items-center"},Q2={class:"ml-3 mr-1"},a6=V({__name:"user-drop-down",setup(a){const o=Y(),e=b(()=>o.userInfo),t=async l=>{switch(l){case"logout":await X.confirm("确定退出登录吗?"),o.logout();break;case"cache":await K2(),window.location.reload();break}};return(l,c)=>{const n=W1,r=G,s=e1,_=s3("router-link"),p=o1,v=t1;return h(),A(v,{class:"px-2",onCommand:t},{dropdown:z(()=>[u(p,null,{default:z(()=>[u(_,{to:"/user/setting"},{default:z(()=>[u(s,null,{default:z(()=>[...c[0]||(c[0]=[I("个人设置",-1)])]),_:1})]),_:1}),u(s,{command:"cache"},{default:z(()=>[...c[1]||(c[1]=[I("清除缓存",-1)])]),_:1}),u(s,{command:"logout"},{default:z(()=>[...c[2]||(c[2]=[I("退出登录",-1)])]),_:1})]),_:1})]),default:z(()=>[d("div",J2,[u(n,{size:34,src:m(e).avatar},null,8,["src"]),d("div",Q2,R(m(e).name),1),u(r,{name:"el-icon-ArrowDown"})])]),_:1})}}}),o6={class:"header"},e6={class:"navbar"},t6={class:"flex-1 flex"},i6={class:"navbar-item"},l6={class:"navbar-item"},c6={key:0,class:"flex items-center px-2"},n6={class:"flex"},s6={key:0,class:"navbar-item"},r6={class:"navbar-item"},m6={class:"navbar-item"},u6=V({__name:"index",setup(a){const o=S(),e=b(()=>o.isMobile),t=b(()=>o.isCollapsed),l=W(),{isFullscreen:c}=n1();return(n,r)=>{const s=i1;return h(),g("header",o6,[d("div",e6,[d("div",t6,[d("div",i6,[u(s,{class:"box-item",effect:"dark",content:m(t)?"展开菜单":"收起菜单",placement:"bottom"},{default:z(()=>[u(q2)]),_:1},8,["content"])]),d("div",l6,[u(s,{class:"box-item",effect:"dark",content:"刷新",placement:"bottom"},{default:z(()=>[u(X2)]),_:1})]),!m(e)&&m(l).showCrumb?(h(),g("div",c6,[u(N2)])):B("",!0)]),d("div",n6,[m(e)?B("",!0):(h(),g("div",s6,[u(s,{class:"box-item",effect:"dark",content:m(c)?"退出全屏":"全屏模式",placement:"bottom"},{default:z(()=>[u(W2)]),_:1},8,["content"])])),d("div",r6,[u(a6)]),d("div",m6,[u(s,{class:"box-item",effect:"dark",content:"主题设置",placement:"bottom"},{default:z(()=>[u(k2)]),_:1})])])]),m(l).openMultipleTabs?(h(),A(Z2,{key:0})):B("",!0)])}}}),d6={class:"main-wrap h-full bg-page"},h6={class:"px-2 py-4"},v6=V({__name:"main",setup(a){const o=S(),e=m3(),t=W(),l=b(()=>o.isRouteShow),c=b(()=>t.openMultipleTabs?e.getCacheTabList:[]);return(n,r)=>{const s=s3("router-view"),_=l1;return h(),g("main",d6,[u(_,null,{default:z(()=>[d("div",h6,[m(l)?(h(),A(s,{key:0},{default:z(({Component:p,route:v})=>[(h(),A(e0,{include:m(c),max:20},[(h(),A(r1(p),{key:v.fullPath}))],1032,["include"]))]),_:1})):B("",!0)])]),_:1})])}}}),_6=V({__name:"index",props:{...G1,teleported:{type:Boolean,default:!1},placement:{type:String,default:"top"},overfloType:{type:String,default:"ellipsis"}},setup(a){const o=a,e=R1(),t=c3(!1);return J1(e,"mouseenter",()=>{var l,c;((l=e.value)==null?void 0:l.scrollWidth)>((c=e.value)==null?void 0:c.offsetWidth)?t.value=!1:t.value=!0}),(l,c)=>{const n=i1;return h(),g("div",null,[u(n,j3(o,{disabled:m(t)}),{default:z(()=>[d("div",{ref_key:"textRef",ref:e,class:"overflow-text truncate",style:r3({textOverflow:a.overfloType})},R(l.content),5)]),_:1},16,["disabled"])])}}}),p6=V({__name:"index",props:{width:{type:[String,Number],default:"auto"},height:{type:[String,Number],default:"auto"},radius:{type:[String,Number],default:0},...$1},setup(a){const o=a,e=b(()=>({width:i3(o.width),height:i3(o.height),borderRadius:i3(o.radius)}));return(t,l)=>{const c=U1;return h(),A(c,j3({style:e.value},o),null,16,["style"])}}}),z6=P(p6,[["__scopeId","data-v-275301c7"]]),b6=V({__name:"logo",props:{szie:{type:Number,default:34},title:{type:String},theme:{type:String},showTitle:{type:Boolean,default:!0}},setup(a){const o=S(),e=b(()=>o.config),t=n3(),l=()=>{t.push("/")};return(c,n)=>{const r=z6,s=_6;return h(),g("div",{class:"logo",onClick:l},[u(r,{width:a.szie,height:a.szie,src:m(e).web_logo},null,8,["width","height","src"]),u(_0,{name:"title-width"},{default:z(()=>[m1(d("div",{class:b3(["logo-title overflow-hidden whitespace-nowrap",{"text-white":a.theme==m(_1).DARK}]),style:r3({left:`${a.szie+16}px`})},[u(s,{content:a.title||m(e).web_name,teleported:!0,placement:"bottom","overflo-type":"unset"},null,8,["content"])],6),[[v1,a.showTitle]])]),_:1})])}}}),y6=P(b6,[["__scopeId","data-v-590d56e3"]]),g6=V({__name:"index",props:{to:{},replace:{type:Boolean}},setup(a){const o=a,e=b(()=>typeof o.to!="object"&&J(o.to)),t=b(()=>e.value?"a":"router-link"),l=b(()=>e.value?{href:o.to,target:"_blank"}:o);return(c,n)=>(h(),A(r1(m(t)),n0(t0(m(l))),{default:z(()=>[i0(c.$slots,"default")]),_:3},16))}}),w6=V({__name:"menu-item",props:{route:{},routePath:{},popperClass:{}},setup(a){const o=a,e=b(()=>!!(o.route.children??[]).filter(r=>{var s;return!((s=r.meta)!=null&&s.hidden)}).length),t=b(()=>o.route.meta),l=n=>J(n)?n:_2(`${o.routePath}/${n}`),c=b(()=>{var r;const n=(r=o.route.meta)==null?void 0:r.query;try{const s=JSON.parse(n);return p2(s)}catch{return n}});return(n,r)=>{var O;const s=G,_=F1,p=g6,v=s3("menu-item",!0),w=Y1;return(O=a.route.meta)!=null&&O.hidden?B("",!0):(h(),g(D,{key:0},[m(e)?(h(),A(w,{key:1,index:a.routePath,"popper-class":a.popperClass},{title:z(()=>{var M,E,f;return[(M=m(t))!=null&&M.icon?(h(),A(s,{key:0,class:"menu-item-icon",size:16,name:(E=m(t))==null?void 0:E.icon},null,8,["name"])):B("",!0),d("span",null,R((f=m(t))==null?void 0:f.title),1)]}),default:z(()=>{var M;return[(h(!0),g(D,null,K((M=a.route)==null?void 0:M.children,E=>(h(),A(v,{key:l(E.path),route:E,"route-path":l(E.path),"popper-class":a.popperClass},null,8,["route","route-path","popper-class"]))),128))]}),_:1},8,["index","popper-class"])):(h(),A(p,{key:0,to:`${a.routePath}?${m(c)}`},{default:z(()=>[u(_,{index:a.routePath},{title:z(()=>{var M;return[d("span",null,R((M=m(t))==null?void 0:M.title),1)]}),default:z(()=>{var M,E;return[(M=m(t))!=null&&M.icon?(h(),A(s,{key:0,class:"menu-item-icon",size:16,name:(E=m(t))==null?void 0:E.icon},null,8,["name"])):B("",!0)]}),_:1},8,["index"])]),_:1},8,["to"]))],64))}}}),f6=P(w6,[["__scopeId","data-v-65172b69"]]),A6=V({__name:"menu",props:{routes:{type:Object},config:{type:Object},uniqueOpened:{type:Boolean,default:!1},isCollapsed:{type:Boolean,default:!1},theme:{type:String},width:{type:Number,default:200}},emits:["select"],setup(a){const o=a,e=V3(),t=b(()=>{var c;return((c=e.meta)==null?void 0:c.activeMenu)||e.path}),l=b(()=>`theme-${o.theme}`);return(c,n)=>{const r=Z1,s=l1;return h(),g("div",{class:b3(["menu flex-1 min-h-0",m(l)]),style:r3(a.isCollapsed?"":`--aside-width: ${a.width}px`)},[u(s,null,{default:z(()=>[u(r,j3(a.config,{"default-active":m(t),collapse:a.isCollapsed,mode:"vertical","unique-opened":a.uniqueOpened,onSelect:n[0]||(n[0]=_=>c.$emit("select"))}),{default:z(()=>[(h(!0),g(D,null,K(a.routes,_=>(h(),A(f6,{key:_.path,route:_,"route-path":_.path,"popper-class":m(l)},null,8,["route","route-path","popper-class"]))),128))]),_:1},16,["default-active","collapse","unique-opened"])]),_:1})],6)}}}),V6=P(A6,[["__scopeId","data-v-6c529f19"]]),L6=V({__name:"side",setup(a){const o=S(),e=b(()=>o.isMobile?!1:o.isCollapsed),t=W(),l=b(()=>t.sideTheme),c=Y(),n=b(()=>c.routes),r=b(()=>l.value=="dark"?{"--side-dark-color":t.sideDarkColor}:""),s=b(()=>({backgroundColor:l.value=="dark"?t.sideDarkColor:"",textColor:l.value=="dark"?"var(--el-color-white)":"",activeTextColor:l.value=="dark"?"var(--el-color-white)":""})),_=()=>{o.isMobile&&o.toggleCollapsed(!0)};return(p,v)=>(h(),g("div",{class:"side",style:r3(m(r))},[m(t).showLogo?(h(),A(y6,{key:0,"show-title":!m(e),theme:m(l)},null,8,["show-title","theme"])):B("",!0),u(V6,{routes:m(n),"is-collapsed":m(e),width:m(t).sideWidth,"unique-opened":m(t).isUniqueOpened,config:m(s),theme:m(l),onSelect:_},null,8,["routes","is-collapsed","width","unique-opened","config","theme"])],4))}}),F3=P(L6,[["__scopeId","data-v-ed43753e"]]),M6={class:"sidebar h-full"},x6=V({__name:"index",setup(a){const o=S(),e=W(),t=b(()=>o.isMobile),l=b({get(){return!o.isCollapsed&&t.value},set(n){o.toggleCollapsed(!n)}}),c=b(()=>`${e.sideWidth+1}px`);return(n,r)=>{const s=a1;return h(),g("aside",M6,[u(s,{modelValue:m(l),"onUpdate:modelValue":r[0]||(r[0]=_=>k(l)?l.value=_:null),direction:"ltr",size:m(c),title:"主题设置","with-header":!1},{default:z(()=>[u(F3)]),_:1},8,["modelValue","size"]),m1(u(F3,null,null,512),[[v1,!m(t)]])])}}}),E6=P(x6,[["__scopeId","data-v-7243bf96"]]),H6={class:"layout-default flex h-screen w-full"},T6={class:"app-aside shrink-0"},O6={class:"flex-1 flex flex-col min-w-0"},I6={class:"app-header"},R6={class:"app-main flex-1 min-h-0"},P6=V({__name:"index",setup(a){return(o,e)=>(h(),g("div",H6,[d("div",T6,[u(E6)]),d("div",O6,[d("div",I6,[u(u6)]),d("div",R6,[u(v6)])])]))}}),l3=()=>Promise.resolve(P6),M3=Symbol(),D6=[{path:"/:pathMatch(.*)*",component:()=>i(()=>import("./404-C0UR64jA.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]))},{path:T.ERROR_403,component:()=>i(()=>import("./403-CZfStq7K.js"),__vite__mapDeps([41,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]))},{path:T.LOGIN,component:()=>i(()=>import("./login-Caw1ZFnq.js"),__vite__mapDeps([42,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,45]))},{path:"/change-password",component:()=>i(()=>import("./change-password-BqhHJD7K.js"),__vite__mapDeps([46,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,47]))},{path:"/bind-work-wechat",component:()=>i(()=>import("./bind-work-wechat-D0G125SZ.js"),__vite__mapDeps([48,2,3,4,5,6,7,8,9,10,11,12,13,14,15,44,49,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,50]))},{path:"/user",component:l3,children:[{path:"setting",component:()=>i(()=>import("./setting-BPZ7dWvp.js"),__vite__mapDeps([51,2,3,4,5,6,7,8,9,10,11,12,13,14,15,52,53,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,49,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,73])),name:Symbol(),meta:{title:"个人设置"}}]},{path:"/doctor",component:l3,children:[{path:"progress",component:()=>i(()=>import("./progress-DiEvcC7c.js"),__vite__mapDeps([74,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,75,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,76])),name:"doctorFaceProgress",meta:{title:"面诊进度"}}]},{path:"/decoration/pc_details",component:()=>i(()=>import("./pc_details-NldMsGZ1.js"),__vite__mapDeps([77,2,3,4,5,6,7,8,9,10,11,12,13,14,15,78,79,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116]))},{path:"/fans/h5",component:()=>i(()=>import("./h5-lML7Vln5.js"),__vite__mapDeps([117,2,3,4,5,6,7,8,9,10,11,12,13,14,15,118,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,119]))},{path:"/tcm/diagnosis/h5",component:()=>i(()=>import("./index_h5-CK75hzdW.js"),__vite__mapDeps([120,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,122,75,123,65,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,125]))},{path:"/tcm/diagnosis-readonly",component:l3,meta:{hidden:!0},children:[{path:"",component:()=>i(()=>import("./readonly-CR0ge2o6.js"),__vite__mapDeps([126,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,121,127,128,124,129,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,130,131,132,133,134,135,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,75,153,154,155,156,157,158])),name:"tcmDiagnosisReadonly",meta:{title:"患者信息详情",hidden:!0,activeMenu:"/tcm/diagnosis"}}]}],v3={path:T.INDEX,component:l3,name:M3},C3=Object.assign({"/src/views/account/bind-work-wechat.vue":()=>i(()=>import("./bind-work-wechat-D0G125SZ.js"),__vite__mapDeps([48,2,3,4,5,6,7,8,9,10,11,12,13,14,15,44,49,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,50])),"/src/views/account/change-password.vue":()=>i(()=>import("./change-password-BqhHJD7K.js"),__vite__mapDeps([46,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,47])),"/src/views/account/login.vue":()=>i(()=>import("./login-Caw1ZFnq.js"),__vite__mapDeps([42,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,45])),"/src/views/app/recharge/index.vue":()=>i(()=>import("./index-r0I7TYnB.js"),__vite__mapDeps([159,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/column/edit.vue":()=>i(()=>import("./edit-Dd1FB-QR.js"),__vite__mapDeps([160,161,2,3,4,5,6,7,8,9,10,11,12,13,14,15,83,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/column/index.vue":()=>i(()=>import("./index-0_hM_7FR.js"),__vite__mapDeps([162,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,83,65,161,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/lists/edit.vue":()=>i(()=>import("./edit-CBTeizmE.js"),__vite__mapDeps([163,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,164,165,166,167,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,168,83,169,16,17,18,19,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/lists/index.vue":()=>i(()=>import("./index-BLZ4p99f.js"),__vite__mapDeps([170,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,83,169,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/h5.vue":()=>i(()=>import("./h5-D9iauX-p.js"),__vite__mapDeps([171,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/open_setting.vue":()=>i(()=>import("./open_setting-BvP5LkON.js"),__vite__mapDeps([172,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/weapp.vue":()=>i(()=>import("./weapp-Df3yaGBN.js"),__vite__mapDeps([173,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,123,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/config.vue":()=>i(()=>import("./config-CKYP7IWW.js"),__vite__mapDeps([174,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,175,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu.vue":()=>i(()=>import("./menu-BNilEyUZ.js"),__vite__mapDeps([176,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,177,59,60,55,56,178,179,175,180,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,181,182])),"/src/views/channel/wx_oa/menu_com/oa-attr.vue":()=>i(()=>import("./oa-attr-DRhy74HO.js"),__vite__mapDeps([177,59,5,6,7,4,3,60,55,2,8,9,10,11,12,13,14,15,56,178,179,175,180,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu_com/oa-menu-form-edit.vue":()=>i(()=>import("./oa-menu-form-edit-D78PgDzI.js"),__vite__mapDeps([183,180,55,2,3,4,5,6,7,8,9,10,11,12,13,14,15,56,178,179,175,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu_com/oa-menu-form.vue":()=>i(()=>import("./oa-menu-form-CRceKfGE.js"),__vite__mapDeps([184,178,2,3,4,5,6,7,8,9,10,11,12,13,14,15,179,175,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu_com/oa-phone.vue":()=>i(()=>import("./oa-phone-CwkrkTuR.js"),__vite__mapDeps([181,2,3,4,5,6,7,8,9,10,11,12,13,14,15,179,175,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,182])),"/src/views/channel/wx_oa/reply/default_reply.vue":()=>i(()=>import("./default_reply-Cpi-HWLu.js"),__vite__mapDeps([185,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,175,65,186,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/reply/edit.vue":()=>i(()=>import("./edit-Ch21x6RV.js"),__vite__mapDeps([187,186,2,3,4,5,6,7,8,9,10,11,12,13,14,15,175,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/reply/follow_reply.vue":()=>i(()=>import("./follow_reply-DnBCK_Nn.js"),__vite__mapDeps([188,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,175,65,186,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/reply/keyword_reply.vue":()=>i(()=>import("./keyword_reply-CFhQ_k7m.js"),__vite__mapDeps([189,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,175,65,186,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/chat/components/MessageBubble.vue":()=>i(()=>import("./MessageBubble-BalN4H2y.js"),__vite__mapDeps([190,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,191])),"/src/views/chat/components/SendPanel.vue":()=>i(()=>import("./SendPanel-BlCCqkH6.js").then(a=>a.i),__vite__mapDeps([192,2,3,4,5,6,7,8,9,10,11,12,13,14,15,63,193])),"/src/views/chat/index.vue":()=>i(()=>import("./index-gTDcOAp2.js"),__vite__mapDeps([194,2,3,4,5,6,7,8,9,10,11,12,13,14,15,65,190,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,191,192,63,193,195])),"/src/views/consumer/assistant/edit.vue":()=>i(()=>import("./edit-3qCytcox.js"),__vite__mapDeps([196,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,197,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,200])),"/src/views/consumer/assistant/index.vue":()=>i(()=>import("./index-nT7Z051Q.js"),__vite__mapDeps([201,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,197,65,196,54,55,56,57,59,60,61,62,63,64,22,23,66,67,68,69,70,71,72,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,200,202])),"/src/views/consumer/components/account-adjust.vue":()=>i(()=>import("./account-adjust-DuN8Obq4.js"),__vite__mapDeps([203,204,2,3,4,5,6,7,8,9,10,11,12,13,14,15,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/doctor/edit.vue":()=>i(()=>import("./edit-D4acFfZD.js"),__vite__mapDeps([205,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,197,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,206])),"/src/views/consumer/doctor/index.vue":()=>i(()=>import("./index-SaLZEAlp.js"),__vite__mapDeps([207,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,197,65,205,54,55,56,57,59,60,61,62,63,64,22,23,66,67,68,69,70,71,72,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,206,208])),"/src/views/consumer/doctor/paiban.vue":()=>i(()=>import("./paiban-Bg121yd-.js"),__vite__mapDeps([209,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,210])),"/src/views/consumer/lists/detail.vue":()=>i(()=>import("./detail-D-NJ8OpW.js"),__vite__mapDeps([211,2,3,4,5,6,7,8,9,10,11,12,13,14,15,64,22,23,212,204,55,56,16,17,18,19,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/lists/index.vue":()=>i(()=>import("./index-BO7ItocT.js"),__vite__mapDeps([213,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,212,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/prescription/guahao.vue":()=>i(()=>import("./guahao-BQbGoXDp.js"),__vite__mapDeps([216,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,75,121,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/prescription/index.vue":()=>i(()=>import("./index-BBnPZgeu.js"),__vite__mapDeps([217,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,218,219,65,215,220,221,16,222,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,223])),"/src/views/consumer/prescription/list.vue":()=>i(()=>import("./list-BtS9kEfd.js"),__vite__mapDeps([224,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,65,220,218,221,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,225])),"/src/views/consumer/prescription/order_list.vue":()=>i(()=>import("./order_list-DMkGC0-h.js"),__vite__mapDeps([226,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,16,215,121,222,198,65,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,227])),"/src/views/consumer/prescription/order_list_h5.vue":()=>i(()=>import("./order_list_h5-C8MQ7JcZ.js"),__vite__mapDeps([228,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,121,222,198,65,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,229])),"/src/views/decoration/component/add-nav.vue":()=>i(()=>import("./add-nav-iIsXnC4M.js"),__vite__mapDeps([230,95,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/decoration-img.vue":()=>i(()=>import("./decoration-img-A6h02C6l.js"),__vite__mapDeps([87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/pages/attr-setting.vue":()=>i(()=>import("./attr-setting-lWLo6dqZ.js"),__vite__mapDeps([231,232,2,3,4,5,6,7,8,9,10,11,12,13,14,15,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,78,102,103,104,105,106,107,108,109,110,111,112,113,114])),"/src/views/decoration/component/pages/menu.vue":()=>i(()=>import("./menu-DdD-PeZU.js"),__vite__mapDeps([233,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,234])),"/src/views/decoration/component/pages/preview-pc.vue":()=>i(()=>import("./preview-pc-CFpdKBXT.js"),__vite__mapDeps([79,2,3,4,5,6,7,8,9,10,11,12,13,14,15,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,78,102,103,104,105,106,107,108,109,110,111,112,113,114,115])),"/src/views/decoration/component/pages/preview.vue":()=>i(()=>import("./preview-Bxm-pT3K.js"),__vite__mapDeps([235,2,3,4,5,6,7,8,9,10,11,12,13,14,15,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,78,102,103,104,105,106,107,108,109,110,111,112,113,114,236])),"/src/views/decoration/component/tabbar/mobile/attr.vue":()=>i(()=>import("./attr-sqjT04Ci.js"),__vite__mapDeps([237,238,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,104,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/tabbar/mobile/content.vue":()=>i(()=>import("./content-CJ-9B74m.js"),__vite__mapDeps([239,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,240])),"/src/views/decoration/component/tabbar/pc/attr.vue":()=>i(()=>import("./attr-B5zKWZg2.js"),__vite__mapDeps([241,2,3,4,5,6,7,8,9,10,11,12,13,14,15,242,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/tabbar/pc/content.vue":()=>i(()=>import("./content-DLHgc5xG.js"),__vite__mapDeps([243,2,3,4,5,6,7,8,9,10,11,12,13,14,15,87,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,244])),"/src/views/decoration/component/tabbar/pc/menu-set.vue":()=>i(()=>import("./menu-set-Cn6nqNTs.js"),__vite__mapDeps([245,242,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/banner/attr.vue":()=>i(()=>import("./attr-C9CZlLYE.js"),__vite__mapDeps([81,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85])),"/src/views/decoration/component/widgets/banner/content.vue":()=>i(()=>import("./content-qcqJQjtP.js"),__vite__mapDeps([246,86,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/customer-service/attr.vue":()=>i(()=>import("./attr-CWjhF9MF.js"),__vite__mapDeps([247,89,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/customer-service/content.vue":()=>i(()=>import("./content-DSbMIogU.js"),__vite__mapDeps([90,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,91])),"/src/views/decoration/component/widgets/middle-banner/attr.vue":()=>i(()=>import("./attr-BUt3xtc0.js"),__vite__mapDeps([248,92,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/middle-banner/content.vue":()=>i(()=>import("./content-dDIhxzWA.js"),__vite__mapDeps([249,93,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/my-service/attr.vue":()=>i(()=>import("./attr-Ddn-kMdm.js"),__vite__mapDeps([250,94,2,3,4,5,6,7,8,9,10,11,12,13,14,15,95,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/my-service/content.vue":()=>i(()=>import("./content-Bq2N97AM.js"),__vite__mapDeps([96,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,97])),"/src/views/decoration/component/widgets/nav/attr.vue":()=>i(()=>import("./attr-DOvELnbs.js"),__vite__mapDeps([251,98,2,3,4,5,6,7,8,9,10,11,12,13,14,15,95,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/nav/content.vue":()=>i(()=>import("./content-CsKOm_p9.js"),__vite__mapDeps([252,99,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/news/attr.vue":()=>i(()=>import("./attr-Db6EuK6T.js"),__vite__mapDeps([253,100,5,6,7,4])),"/src/views/decoration/component/widgets/news/content.vue":()=>i(()=>import("./content-RKc8NsXf.js"),__vite__mapDeps([101,78,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,102])),"/src/views/decoration/component/widgets/page-meta/attr.vue":()=>i(()=>import("./attr-BMp9OJ_7.js"),__vite__mapDeps([254,103,2,3,4,5,6,7,8,9,10,11,12,13,14,15,104,22,23,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/page-meta/content.vue":()=>i(()=>import("./content-BvpTtLa-.js"),__vite__mapDeps([105,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/pc-banner/content.vue":()=>i(()=>import("./content-BFX6n9yY.js"),__vite__mapDeps([255,106,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/search/attr.vue":()=>i(()=>import("./attr-BS21VV6Q.js"),__vite__mapDeps([256,107,5,6,7,4])),"/src/views/decoration/component/widgets/search/content.vue":()=>i(()=>import("./content-_IxwYLuN.js"),__vite__mapDeps([108,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,109])),"/src/views/decoration/component/widgets/user-banner/attr.vue":()=>i(()=>import("./attr-Di5MGlZL.js"),__vite__mapDeps([257,110,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/user-banner/content.vue":()=>i(()=>import("./content-GmXNQpk1.js"),__vite__mapDeps([258,111,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/user-info/attr.vue":()=>i(()=>import("./attr-gr_OE7on.js"),__vite__mapDeps([259,112,5,6,7,4])),"/src/views/decoration/component/widgets/user-info/content.vue":()=>i(()=>import("./content-DPq40ncB.js"),__vite__mapDeps([113,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,114])),"/src/views/decoration/pages/index.vue":()=>i(()=>import("./index-By_gWTUA.js"),__vite__mapDeps([260,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,78,232,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,233,234,235,236,261])),"/src/views/decoration/pc.vue":()=>i(()=>import("./pc-CWZHJXwU.js"),__vite__mapDeps([262,2,3,4,5,6,7,8,9,10,11,12,13,14,15,78,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/pc_details.vue":()=>i(()=>import("./pc_details-NldMsGZ1.js"),__vite__mapDeps([77,2,3,4,5,6,7,8,9,10,11,12,13,14,15,78,79,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116])),"/src/views/decoration/style/components/mobile-style.vue":()=>i(()=>import("./mobile-style-DMyb-tD1.js"),__vite__mapDeps([263,264,2,3,4,5,6,7,8,9,10,11,12,13,14,15,104,22,23,265,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,266])),"/src/views/decoration/style/components/theme-picker.vue":()=>i(()=>import("./theme-picker-BmoSb7ra.js"),__vite__mapDeps([265,22,23,6,7,4,5,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,266])),"/src/views/decoration/style/style.vue":()=>i(()=>import("./style--mOAeHu_.js"),__vite__mapDeps([267,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,78,264,104,22,23,265,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,266])),"/src/views/decoration/tabbar.vue":()=>i(()=>import("./tabbar-CJ50lDht.js"),__vite__mapDeps([268,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,78,233,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,234,238,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,66,67,68,69,70,71,72,104,239,87,88,240,269])),"/src/views/dev_tools/code/edit.vue":()=>i(()=>import("./edit-lUrEdFe-.js"),__vite__mapDeps([270,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,271,272,273,169,274,55,56,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,275])),"/src/views/dev_tools/code/index.vue":()=>i(()=>import("./index-Bde7244p.js"),__vite__mapDeps([276,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,273,65,277,32,33,278,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39])),"/src/views/dev_tools/components/code-preview.vue":()=>i(()=>import("./code-preview-C7eIy808.js"),__vite__mapDeps([279,277,2,3,4,5,6,7,8,9,10,11,12,13,14,15,32,33,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39])),"/src/views/dev_tools/components/data-table.vue":()=>i(()=>import("./data-table-D0gd6MAn.js"),__vite__mapDeps([280,278,2,3,4,5,6,7,8,9,10,11,12,13,14,15,273,58,55,56,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/dev_tools/components/relations-add.vue":()=>i(()=>import("./relations-add-QP6EItjc.js"),__vite__mapDeps([281,274,2,3,4,5,6,7,8,9,10,11,12,13,14,15,273,55,56,169,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/doctor/dept-tongji.vue":()=>i(()=>import("./dept-tongji-C7zhtC-v.js"),__vite__mapDeps([282,2,3,4,5,6,7,8,9,10,11,12,13,14,15,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,283])),"/src/views/doctor/medicine.vue":()=>i(()=>import("./medicine-9zqpvZKs.js"),__vite__mapDeps([284,2,3,4,5,6,7,8,9,10,11,12,13,14,15,218,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,285])),"/src/views/doctor/progress.vue":()=>i(()=>import("./progress-DiEvcC7c.js"),__vite__mapDeps([74,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,75,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,76])),"/src/views/doctor/roster.vue":()=>i(()=>import("./roster-U-rezV1y.js"),__vite__mapDeps([286,2,3,4,5,6,7,8,9,10,11,12,13,14,15,197,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,287])),"/src/views/doctor/tongji.vue":()=>i(()=>import("./tongji-B6VJLvKp.js"),__vite__mapDeps([288,2,3,4,5,6,7,8,9,10,11,12,13,14,15,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,289])),"/src/views/error/403.vue":()=>i(()=>import("./403-CZfStq7K.js"),__vite__mapDeps([41,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),"/src/views/error/404.vue":()=>i(()=>import("./404-C0UR64jA.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),"/src/views/error/components/error.vue":()=>i(()=>import("./error-Hr3a1e0I.js"),__vite__mapDeps([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),"/src/views/fans/commission-settlement.vue":()=>i(()=>import("./commission-settlement-DLiQO_Wt.js"),__vite__mapDeps([290,2,3,4,5,6,7,8,9,10,11,12,13,14,15,291,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,292])),"/src/views/fans/h5.vue":()=>i(()=>import("./h5-lML7Vln5.js"),__vite__mapDeps([117,2,3,4,5,6,7,8,9,10,11,12,13,14,15,118,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,119])),"/src/views/fans/index.vue":()=>i(()=>import("./index-CtbZopo2.js"),__vite__mapDeps([293,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,118,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/fans/qywx.vue":()=>i(()=>import("./qywx-D1l8A6TI.js"),__vite__mapDeps([294,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,295])),"/src/views/fans/yeji.vue":()=>i(()=>import("./yeji-4vqdUkps.js"),__vite__mapDeps([296,2,3,4,5,6,7,8,9,10,11,12,13,14,15,21,136,137,34,35,36,291,297,121,124,17,18,19,16,20,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,298])),"/src/views/finance/account_cost/edit.vue":()=>i(()=>import("./edit-DUXbzElE.js"),__vite__mapDeps([299,2,3,4,5,6,7,8,9,10,11,12,13,14,15,297,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,300])),"/src/views/finance/account_cost/index.vue":()=>i(()=>import("./index-CWwxxnGy.js"),__vite__mapDeps([301,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,297,65,299,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,300,302])),"/src/views/finance/balance_details.vue":()=>i(()=>import("./balance_details-yWq_SgOS.js"),__vite__mapDeps([303,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,297,169,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/finance/component/refund-log.vue":()=>i(()=>import("./refund-log-Cq6vU47n.js"),__vite__mapDeps([304,305,2,3,4,5,6,7,8,9,10,11,12,13,14,15,297,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/finance/mubiao-dept-card.vue":()=>i(()=>import("./mubiao-dept-card-A7mXprh1.js"),__vite__mapDeps([306,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,307])),"/src/views/finance/mubiao-dept-node.vue":()=>i(()=>import("./mubiao-dept-node-CdPbyfnv.js"),__vite__mapDeps([308,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,309])),"/src/views/finance/mubiao.vue":()=>i(()=>import("./mubiao-BtoeHWr-.js"),__vite__mapDeps([310,2,3,4,5,6,7,8,9,10,11,12,13,14,15,306,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,307,297,311])),"/src/views/finance/recharge_record.vue":()=>i(()=>import("./recharge_record-B_1vUb_E.js"),__vite__mapDeps([312,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,297,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/finance/refund_record.vue":()=>i(()=>import("./refund_record-C_Z4S92m.js"),__vite__mapDeps([313,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,297,65,305,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/material/index.vue":()=>i(()=>import("./index-CQ2KSFsf.js"),__vite__mapDeps([314,2,3,4,5,6,7,8,9,10,11,12,13,14,15,57,58,59,60,55,56,61,62,63,64,22,23,65,66,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,315])),"/src/views/message/notice/edit.vue":()=>i(()=>import("./edit-CYXDKzEl.js"),__vite__mapDeps([316,2,3,4,5,6,7,8,9,10,11,12,13,14,15,52,53,317,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/message/notice/index.vue":()=>i(()=>import("./index-C4_15yk8.js"),__vite__mapDeps([318,2,3,4,5,6,7,8,9,10,11,12,13,14,15,317,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/message/short_letter/edit.vue":()=>i(()=>import("./edit-BUOSeNnT.js"),__vite__mapDeps([319,320,2,3,4,5,6,7,8,9,10,11,12,13,14,15,317,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/message/short_letter/index.vue":()=>i(()=>import("./index-BUOQPh2G.js"),__vite__mapDeps([321,2,3,4,5,6,7,8,9,10,11,12,13,14,15,317,320,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/order/index.vue":()=>i(()=>import("./index-CEGMPJ75.js"),__vite__mapDeps([322,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,65,122,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,323])),"/src/views/organization/department/edit.vue":()=>i(()=>import("./edit-D0pt24OW.js"),__vite__mapDeps([324,325,2,3,4,5,6,7,8,9,10,11,12,13,14,15,198,55,56,169,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/organization/department/index.vue":()=>i(()=>import("./index-Cu3QQu7Q.js"),__vite__mapDeps([326,2,3,4,5,6,7,8,9,10,11,12,13,14,15,198,325,55,56,169,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/organization/post/edit.vue":()=>i(()=>import("./edit-CLcIiMBx.js"),__vite__mapDeps([327,328,2,3,4,5,6,7,8,9,10,11,12,13,14,15,199,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/organization/post/index.vue":()=>i(()=>import("./index-BdMgSRB8.js"),__vite__mapDeps([329,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,199,65,328,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/patient/reception/components/NoteTimeline.vue":()=>i(()=>import("./NoteTimeline-BrIUegAJ.js"),__vite__mapDeps([156,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,127,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,157])),"/src/views/patient/reception/index.vue":()=>i(()=>import("./index-DmXb6F6C.js"),__vite__mapDeps([330,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,127,156,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,157,129,128,130,131,132,133,134,135,136,137,138,121,124,139,140,75,331])),"/src/views/permission/admin/edit.vue":()=>i(()=>import("./edit-Csi7FS4G.js"),__vite__mapDeps([332,333,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,198,199,197,219,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/admin/index.vue":()=>i(()=>import("./index-D8ldWVxH.js"),__vite__mapDeps([334,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,197,219,169,65,333,54,57,59,60,61,62,63,64,22,23,66,67,68,69,70,71,72,198,199,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/menu/edit.vue":()=>i(()=>import("./edit-8GAClaG6.js"),__vite__mapDeps([335,336,2,3,4,5,6,7,8,9,10,11,12,13,14,15,337,22,23,271,55,56,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/menu/index.vue":()=>i(()=>import("./index-Do_lL19E.js"),__vite__mapDeps([338,2,3,4,5,6,7,8,9,10,11,12,13,14,15,271,65,336,337,22,23,55,56,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/role/auth.vue":()=>i(()=>import("./auth-DoW7pu27.js"),__vite__mapDeps([339,340,2,3,4,5,6,7,8,9,10,11,12,13,14,15,271,219,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/role/edit.vue":()=>i(()=>import("./edit-CABP8P7N.js"),__vite__mapDeps([341,342,2,3,4,5,6,7,8,9,10,11,12,13,14,15,219,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/role/index.vue":()=>i(()=>import("./index-tRldup3E.js"),__vite__mapDeps([343,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,219,65,340,271,55,56,342,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/data/edit.vue":()=>i(()=>import("./edit-BeTgW91N.js"),__vite__mapDeps([344,345,2,3,4,5,6,7,8,9,10,11,12,13,14,15,272,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/data/index.vue":()=>i(()=>import("./index-CKfzECuY.js"),__vite__mapDeps([346,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,272,65,345,55,56,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/type/edit.vue":()=>i(()=>import("./edit-Bx3YhV3D.js"),__vite__mapDeps([347,348,2,3,4,5,6,7,8,9,10,11,12,13,14,15,272,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/type/index.vue":()=>i(()=>import("./index-B1LIHnDq.js"),__vite__mapDeps([349,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,272,65,348,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/pay/config/edit.vue":()=>i(()=>import("./edit-Cti94u-p.js"),__vite__mapDeps([350,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,351,43,352,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,353])),"/src/views/setting/pay/config/index.vue":()=>i(()=>import("./index-LfmReHw1.js"),__vite__mapDeps([354,2,3,4,5,6,7,8,9,10,11,12,13,14,15,351,352,350,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,43,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,353])),"/src/views/setting/pay/method/index.vue":()=>i(()=>import("./index-3-XRg3iQ.js"),__vite__mapDeps([355,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,351,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/search/index.vue":()=>i(()=>import("./index-C7ThElWL.js"),__vite__mapDeps([356,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,357])),"/src/views/setting/storage/edit.vue":()=>i(()=>import("./edit-C1B46Nw-.js"),__vite__mapDeps([358,359,2,3,4,5,6,7,8,9,10,11,12,13,14,15,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/storage/index.vue":()=>i(()=>import("./index-Dg2D7IT3.js"),__vite__mapDeps([360,2,3,4,5,6,7,8,9,10,11,12,13,14,15,359,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/cache.vue":()=>i(()=>import("./cache-DE9um1gH.js"),__vite__mapDeps([361,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/environment.vue":()=>i(()=>import("./environment-8DsK4TTM.js"),__vite__mapDeps([362,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/journal.vue":()=>i(()=>import("./journal-COBt03jH.js"),__vite__mapDeps([363,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/scheduled_task/edit.vue":()=>i(()=>import("./edit-C976a8DV.js"),__vite__mapDeps([364,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/scheduled_task/index.vue":()=>i(()=>import("./index-B81hG-qX.js"),__vite__mapDeps([365,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/user/login_register.vue":()=>i(()=>import("./login_register-aQkOmHjq.js"),__vite__mapDeps([366,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,367,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/user/setup.vue":()=>i(()=>import("./setup-BM_sBJNd.js"),__vite__mapDeps([368,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,367,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/filing.vue":()=>i(()=>import("./filing-D7ZQBdrZ.js"),__vite__mapDeps([369,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,59,60,370,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/information.vue":()=>i(()=>import("./information-CItsuNNR.js"),__vite__mapDeps([371,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,370,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/protocol.vue":()=>i(()=>import("./protocol-54IflrUs.js"),__vite__mapDeps([372,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,164,165,166,167,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,168,370,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/statistics.vue":()=>i(()=>import("./statistics-CKJuOq2I.js"),__vite__mapDeps([373,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,370,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/stats/assistant-performance/index.vue":()=>i(()=>import("./index-C_rFbfoa.js"),__vite__mapDeps([374,2,3,4,5,6,7,8,9,10,11,12,13,14,15,136,137,34,35,36,291,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,375])),"/src/views/stats/conversion/index.vue":()=>i(()=>import("./index-CcVG7h8J.js"),__vite__mapDeps([376,58,2,3,4,5,6,7,8,9,10,11,12,13,14,15,136,137,34,35,36,291,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,377])),"/src/views/stats/self_input/MediaSourceSelect.vue":()=>i(()=>import("./MediaSourceSelect-BPfd1tNV.js"),__vite__mapDeps([378,379,2,3,4,5,6,7,8,9,10,11,12,13,14,15])),"/src/views/stats/self_input/account_cost.vue":()=>i(()=>import("./account_cost-81Vk4hme.js"),__vite__mapDeps([380,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,381,198,65,382,55,56,379,383,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,384])),"/src/views/stats/self_input/cost-edit.vue":()=>i(()=>import("./cost-edit-DGomcZem.js"),__vite__mapDeps([385,382,2,3,4,5,6,7,8,9,10,11,12,13,14,15,381,55,56,379,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/stats/self_input/index.vue":()=>i(()=>import("./index-COkWbhdj.js"),__vite__mapDeps([386,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,381,198,65,379,387,55,56,383,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,388])),"/src/views/stats/self_input/yeji-edit.vue":()=>i(()=>import("./yeji-edit-DxTLAHjt.js"),__vite__mapDeps([389,387,2,3,4,5,6,7,8,9,10,11,12,13,14,15,381,55,56,379,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/tcm/appointment/components/prescription-drawer.vue":()=>i(()=>import("./prescription-drawer-BfdBV89J.js"),__vite__mapDeps([390,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,220,218,221,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,391])),"/src/views/tcm/appointment/list.vue":()=>i(()=>import("./list-VIYlBs2m.js"),__vite__mapDeps([392,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,65,75,121,133,123,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,393])),"/src/views/tcm/diagnosis/add.vue":()=>i(()=>import("./add-DWErONbW.js"),__vite__mapDeps([394,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,395])),"/src/views/tcm/diagnosis/appointment.vue":()=>i(()=>import("./appointment-BiJAofxT.js"),__vite__mapDeps([396,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,397])),"/src/views/tcm/diagnosis/components/AppointmentRecordPanel.vue":()=>i(()=>import("./AppointmentRecordPanel-CHr1S2Xh.js"),__vite__mapDeps([152,2,3,4,5,6,7,8,9,10,11,12,13,14,15,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,153])),"/src/views/tcm/diagnosis/components/AssignLogPanel.vue":()=>i(()=>import("./AssignLogPanel-B1IM06sV.js"),__vite__mapDeps([150,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,151])),"/src/views/tcm/diagnosis/components/AssistantWatchCallDialog.vue":()=>i(()=>import("./AssistantWatchCallDialog-D7UD5Dzu.js"),__vite__mapDeps([398,2,3,4,5,6,7,8,9,10,11,12,13,14,15,399,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,400])),"/src/views/tcm/diagnosis/components/BloodRecordList.vue":()=>i(()=>import("./BloodRecordList-CmZGbTEw.js"),__vite__mapDeps([401,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,34,35,36,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,402])),"/src/views/tcm/diagnosis/components/CallRecordPanel.vue":()=>i(()=>import("./CallRecordPanel-DvHFqqux.js"),__vite__mapDeps([141,2,3,4,5,6,7,8,9,10,11,12,13,14,15,142,143,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,144,145,61,62,63,121,146])),"/src/views/tcm/diagnosis/components/CaseRecordList.vue":()=>i(()=>import("./CaseRecordList-Bo5qAgx7.js"),__vite__mapDeps([403,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,404])),"/src/views/tcm/diagnosis/components/DailyMatrix.vue":()=>i(()=>import("./DailyMatrix-j3uF_86P.js"),__vite__mapDeps([135,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,136,137,34,35,36,138,121,124,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,37,38,39,139,132,140])),"/src/views/tcm/diagnosis/components/DiagnosisTodoList.vue":()=>i(()=>import("./DiagnosisTodoList-BFQuq0si.js"),__vite__mapDeps([138,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,124,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,139])),"/src/views/tcm/diagnosis/components/DietRecordList.vue":()=>i(()=>import("./DietRecordList-BLgHlUXr.js"),__vite__mapDeps([405,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,121,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,406])),"/src/views/tcm/diagnosis/components/ExerciseRecordList.vue":()=>i(()=>import("./ExerciseRecordList-BNnQ9qPN.js"),__vite__mapDeps([407,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,121,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,408])),"/src/views/tcm/diagnosis/components/ImChatRecordPanel.vue":()=>i(()=>import("./ImChatRecordPanel-DpRXSwhQ.js"),__vite__mapDeps([147,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,148,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,149])),"/src/views/tcm/diagnosis/components/PatientCaseCard.vue":()=>i(()=>import("./PatientCaseCard-D3V_iWVf.js"),__vite__mapDeps([131,132,128,133,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,134])),"/src/views/tcm/diagnosis/components/PatientInfoCard.vue":()=>i(()=>import("./PatientInfoCard-QbPK3em5.js"),__vite__mapDeps([129,128,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,130])),"/src/views/tcm/diagnosis/components/PatientOrderList.vue":()=>i(()=>import("./PatientOrderList-MM0hhqMY.js"),__vite__mapDeps([154,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,65,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,155])),"/src/views/tcm/diagnosis/components/RecordingPlaybackBlock.vue":()=>i(()=>import("./RecordingPlaybackBlock-39655xEj.js"),__vite__mapDeps([142,2,3,4,5,6,7,8,9,10,11,12,13,14,15,143,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,144,145])),"/src/views/tcm/diagnosis/components/RecordingVideoPlayer.vue":()=>i(()=>import("./RecordingVideoPlayer-CRxrgEoO.js"),__vite__mapDeps([143,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,144])),"/src/views/tcm/diagnosis/components/TrackingMatrix.vue":()=>i(()=>import("./TrackingMatrix-CwF2zsXr.js"),__vite__mapDeps([409,2,3,4,5,6,7,8,9,10,11,12,13,14,15,132,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,410])),"/src/views/tcm/diagnosis/components/TrackingNoteTimeline.vue":()=>i(()=>import("./TrackingNoteTimeline-CnwjkDH5.js"),__vite__mapDeps([411,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,412])),"/src/views/tcm/diagnosis/detail.vue":()=>i(()=>import("./detail-D9Zbpq2C.js"),__vite__mapDeps([413,55,2,3,4,5,6,7,8,9,10,11,12,13,14,15,56,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/tcm/diagnosis/edit.vue":()=>i(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([414,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,124,135,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,136,137,34,35,36,138,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,37,38,39,139,132,140,403,404,141,142,143,144,145,146,147,148,149,150,151,152,75,153,156,127,157,154,155,415,220,218,221,133,222,416,417,412])),"/src/views/tcm/diagnosis/index.vue":()=>i(()=>import("./index-CPlRrjKY.js"),__vite__mapDeps([418,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,122,75,65,123,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,419])),"/src/views/tcm/diagnosis/index_h5.vue":()=>i(()=>import("./index_h5-CK75hzdW.js"),__vite__mapDeps([120,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,122,75,123,65,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,125])),"/src/views/tcm/diagnosis/readonly.vue":()=>i(()=>import("./readonly-CR0ge2o6.js"),__vite__mapDeps([126,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,121,127,128,124,129,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,130,131,132,133,134,135,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,75,153,154,155,156,157,158])),"/src/views/tcm/follow/index.vue":()=>i(()=>import("./index-B4O8X2AF.js"),__vite__mapDeps([420,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,198,122,75,65,123,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,421])),"/src/views/template/component/file.vue":()=>i(()=>import("./file-BLRQstYf.js"),__vite__mapDeps([422,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/icon.vue":()=>i(()=>import("./icon-D8Ev5pEr.js"),__vite__mapDeps([423,2,3,4,5,6,7,8,9,10,11,12,13,14,15,337,22,23,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/link.vue":()=>i(()=>import("./link-BT-af6Iu.js"),__vite__mapDeps([424,2,3,4,5,6,7,8,9,10,11,12,13,14,15,82,55,56,58,83,65,84,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/overflow.vue":()=>i(()=>import("./overflow-Cd0bVY6j.js"),__vite__mapDeps([425,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/popover_input.vue":()=>i(()=>import("./popover_input-BPLcgSyk.js"),__vite__mapDeps([426,2,3,4,5,6,7,8,9,10,11,12,13,14,15,64,22,23])),"/src/views/template/component/rich_text.vue":()=>i(()=>import("./rich_text-DCadQVqu.js"),__vite__mapDeps([427,2,3,4,5,6,7,8,9,10,11,12,13,14,15,164,165,166,167,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,168,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/upload.vue":()=>i(()=>import("./upload-3f7pufJE.js"),__vite__mapDeps([428,2,3,4,5,6,7,8,9,10,11,12,13,14,15,61,62,63,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/test/patient-call.vue":()=>i(()=>import("./patient-call-DK0sKUyA.js"),__vite__mapDeps([429,2,3,4,5,6,7,8,9,10,11,12,13,14,15,430,431,432,433,434,435,436,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,437])),"/src/views/user/setting.vue":()=>i(()=>import("./setting-BPZ7dWvp.js"),__vite__mapDeps([51,2,3,4,5,6,7,8,9,10,11,12,13,14,15,52,53,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,49,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,73])),"/src/views/workbench/index.vue":()=>i(()=>import("./index-DZEYWGUh.js"),__vite__mapDeps([438,2,3,4,5,6,7,8,9,10,11,12,13,14,15,136,137,34,35,36,121,122,352,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,439]))});function O7(){return Object.keys(C3).map(a=>a.replace("/src/views/","").replace(".vue",""))}function f1(a,o=!0){return a.map(e=>{const t=B6(e,o);return e.children!=null&&e.children&&e.children.length&&(t.children=f1(e.children,!1)),t})}function B6(a,o){const e=A1(a.paths),t={path:J(a.paths)?a.paths:o?`/${e}`:e,name:Symbol(a.paths),meta:{hidden:!a.is_show,keepAlive:!!a.is_cache,title:a.name,perms:a.perms,query:a.params,icon:a.icon,type:a.type,activeMenu:a.selected}};switch(a.type){case y3.CATALOGUE:t.component=o?l3:I3,a.children||(t.component=I3);break;case y3.MENU:t.component=C6(a.component);break}return t}function C6(a){try{const o=A1(a),e=Object.keys(C3).find(t=>t.includes(`/${o}.vue`));if(e)return C3[e];throw Error(`找不到组件${a},请确保组件路径正确`)}catch(o){return console.error(o),I3}}function A1(a){return String(a||"").replace(/^\/+/,"").replace(/\/+$/,"")}function S3(a){var o,e;for(const t of a){if(((o=t.meta)==null?void 0:o.type)==y3.MENU&&!((e=t.meta)!=null&&e.hidden)&&!J(t.path))return t.name;if(t.children){const l=S3(t.children);if(l)return l}}}function I7(a){var e;return((e=(n3()||H).getRoutes().find(t=>{var l;return((l=t.meta)==null?void 0:l.perms)==a}))==null?void 0:e.path)||""}function S6(){H.removeRoute(M3);const{routes:a}=Y();a.forEach(o=>{const e=o.name;e&&H.hasRoute(e)&&H.removeRoute(e)})}const H=T1({history:O1("/admin/"),routes:D6});function H3(a){if(a==null)return"";if(Array.isArray(a)){const o=a[0];return o==null?"":String(o).trim()}return String(a).trim()}function Y3(a){if(!H3(a.query.code))return!1;const e=H3(a.query.state);return e==="bind_wxwork"||e==="admin_bind_wx"?!0:H3(a.query.bind_wxwork)==="1"}const k3=(a,o="")=>{try{a.forEach(e=>{if(J(e.path))return;const t=o+e.path,l={...e,path:t,name:e.name||t.replace(/\//g,"_").replace("_","")};e.children?H.addRoute(l):H.addRoute(M3,l),e.children&&e.children.length>0&&k3(e.children,t+"/")})}catch(e){console.error("Error adding routes:",e)}},o3=T.LOGIN,k6=T.INDEX,T3="/change-password",_3="/bind-work-wechat",j6=[T.LOGIN,T.ERROR_403];H.beforeEach(async(a,o,e)=>{var c,n,r,s;document.title=a.meta.title??N.title;const t=Y(),l=m3();if(a.path===_3){if(!t.token){e({path:o3});return}e();return}if(a.path===T3){if(!t.token){e({path:o3});return}e();return}if(j6.includes(a.path))e();else if(t.token)if(Object.keys(t.userInfo).length!==0){if(t.isPaw===0){e({path:T3});return}if((c=t.userInfo)!=null&&c.need_bind_work_wechat&&a.path!==_3){if(Y3(a)){e();return}e({path:_3});return}if(!((n=t.userInfo)!=null&&n.need_bind_work_wechat)&&((r=t.routes)==null?void 0:r.length)>0&&!H.hasRoute(M3)){const p=S3(t.routes);if(!p){t3(),e(T.ERROR_403);return}l.setRouteName(p),v3.redirect={name:p},H.addRoute(v3),k3(t.routes),e({...a,replace:!0});return}a.path===o3?e({path:k6}):e()}else try{if(await t.getUserInfo(),t.isPaw===0){e({path:T3});return}if((s=t.userInfo)!=null&&s.need_bind_work_wechat){if(Y3(a)){e({...a,replace:!0});return}e({path:_3});return}const p=t.routes,v=S3(p);if(!v){t3(),e(T.ERROR_403);return}l.setRouteName(v),v3.redirect={name:v},H.addRoute(v3),k3(p),e({...a,replace:!0})}catch{t3(),e({path:o3,query:{redirect:a.fullPath}})}else e({path:o3,query:{redirect:a.fullPath}})});if(typeof window<"u"){let a=function(){var o=document.body,e=document.getElementById("__svg__icons__dom__");e||(e=document.createElementNS("http://www.w3.org/2000/svg","svg"),e.style.position="absolute",e.style.width="0",e.style.height="0",e.id="__svg__icons__dom__",e.setAttribute("xmlns","http://www.w3.org/2000/svg"),e.setAttribute("xmlns:link","http://www.w3.org/1999/xlink")),e.innerHTML='',o.insertBefore(e,o.lastChild)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",a):a()}function N6(){return L.get({url:"/chat/notifications"})}const q6=["onClick"],W6={class:"chat-notify-body"},G6={class:"chat-notify-title"},$6={class:"chat-notify-desc"},U6={class:"patient-name"},F6={class:"doctor-name"},Y6={class:"patient-name"},Z6={class:"patient-name"},X6={class:"chat-notify-time"},K6=["onClick"],J6=5e3,Q6=V({__name:"index",setup(a){const o=n3(),e=c3([]),t=c3(null);function l(s){if(!s)return"";const _=new Date(s*1e3),v=new Date().getTime()-_.getTime();return v<6e4?"刚刚":v<36e5?`${Math.floor(v/6e4)} 分钟前`:v<864e5?`${Math.floor(v/36e5)} 小时前`:_.toLocaleDateString("zh-CN",{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}function c(s){e.value=e.value.filter(_=>_.id!==s)}function n(s){c(s.id),s.type==="consultation_complete"&&s.diagnosis_id&&o.push({path:"/tcm/diagnosis",query:{id:s.diagnosis_id}})}async function r(){try{const s=await N6();Array.isArray(s)&&s.length>0&&(e.value=[...s,...e.value].slice(0,10))}catch{}}return u1(()=>{r(),t.value=setInterval(r,J6)}),l0(()=>{t.value&&clearInterval(t.value)}),(s,_)=>{const p=Q3;return h(),A(c0,{to:"body"},[u(z0,{name:"chat-notify-slide",tag:"div",class:"chat-notify-container"},{default:z(()=>[(h(!0),g(D,null,K(e.value,v=>(h(),g("div",{key:v.id,class:b3(["chat-notify-card",{"chat-notify-card-complete":v.type==="consultation_complete","chat-notify-card-left":v.type==="patient_left_chat"}]),onClick:w=>n(v)},[d("div",{class:b3(["chat-notify-icon",{"chat-notify-icon-complete":v.type==="consultation_complete","chat-notify-icon-left":v.type==="patient_left_chat"}])},[u(p,{size:22},{default:z(()=>[v.type!=="consultation_complete"&&v.type!=="patient_left_chat"?(h(),A(m(r0),{key:0})):v.type==="consultation_complete"?(h(),A(m(m0),{key:1})):(h(),A(m(u0),{key:2}))]),_:2},1024)],2),d("div",W6,[d("div",G6,R(v.type==="consultation_complete"?"面诊结束":v.type==="patient_left_chat"?"患者离开会话":"患者打开会话"),1),d("div",$6,[v.type==="consultation_complete"?(h(),g(D,{key:0},[d("span",U6,R(v.patient_name||"患者"),1),_[0]||(_[0]=I(" 的面诊已由 ",-1)),d("span",F6,R(v.doctor_name||"医生"),1),_[1]||(_[1]=I(" 完成,请及时跟进 ",-1))],64)):v.type==="patient_left_chat"?(h(),g(D,{key:1},[d("span",Y6,R(v.patient_name||"患者"),1),_[2]||(_[2]=I(" 已离开问诊会话页面 ",-1))],64)):(h(),g(D,{key:2},[d("span",Z6,R(v.patient_name||"患者"),1),_[3]||(_[3]=I(" 已打开与您的会话,请及时查看 ",-1))],64))]),d("div",X6,R(l(v.created_at)),1)]),d("button",{class:"chat-notify-close",onClick:p0(w=>c(v.id),["stop"]),"aria-label":"关闭"},[u(p,{size:14},{default:z(()=>[u(m(d0))]),_:1})],8,K6)],10,q6))),128))]),_:1})])}}}),a4=P(Q6,[["__scopeId","data-v-9276baf6"]]),o4=V({__name:"App",setup(a){const o=S(),e=W(),t=Y(),l=V3(),c=b(()=>{var _;return!!t.token&&l.path!=="/bind-work-wechat"&&!((_=t.userInfo)!=null&&_.need_bind_work_wechat)}),n={zIndex:2e3,locale:K1},r=c1();u1(async()=>{console.log("主题颜色",r.value),e.setTheme(r.value)});const{width:s}=Q1();return s1(s,v0(_=>{_>R3.SM?(o.setMobile(!1),o.toggleCollapsed(!1)):(o.setMobile(!0),o.toggleCollapsed(!0)),_{const v=s3("router-view"),w=X1;return h(),A(w,{locale:n.locale,"z-index":n.zIndex},{default:z(()=>[u(v),c.value?(h(),A(a4,{key:0})):B("",!0)]),_:1},8,["locale","z-index"])}}}),O3="data-clipboard-text",e4={mounted:(a,o)=>{a.setAttribute(O3,o.value);const{toClipboard:e}=y0();a.onclick=()=>{e(a.getAttribute(O3)).then(()=>{X.msgSuccess("复制成功")}).catch(()=>{X.msgError("复制失败")})}},updated:(a,o)=>{a.setAttribute(O3,o.value)}},t4=Object.freeze(Object.defineProperty({__proto__:null,default:e4},Symbol.toStringTag,{value:"Module"}));function Z3(a,o){const{value:e}=o,l=Y().perms||[],c="*";if(!Array.isArray(e))throw new Error(`like v-perms="['auth.menu/edit']"`);if(e.length===0){a.style.removeProperty("display");return}l.some(r=>c==r||e.includes(r))?a.style.removeProperty("display"):a.style.display="none"}const i4={mounted:(a,o)=>{Z3(a,o)},updated:(a,o)=>{Z3(a,o)}},l4=Object.freeze(Object.defineProperty({__proto__:null,default:i4},Symbol.toStringTag,{value:"Module"}));g0([w0,f0,A0,V0,L0,M0,x0,E0,H0,T0,O0,I0,R0,P0,D0,B0,C0,S0,k0,j0,N0,q0,W0,G0,$0]);const c4=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),n4=a=>{for(const[o,e]of Object.entries(h1))a.component(o,e)},s4=Object.freeze(Object.defineProperty({__proto__:null,default:n4},Symbol.toStringTag,{value:"Module"}));console.log(U0);const r4=a=>{a.use(F0)},m4=Object.freeze(Object.defineProperty({__proto__:null,default:r4},Symbol.toStringTag,{value:"Module"})),u4=I1(),d4=a=>{a.use(u4)},h4=Object.freeze(Object.defineProperty({__proto__:null,default:d4},Symbol.toStringTag,{value:"Module"}));function v4(a){a.beforeEach(async()=>{const o=S();if(!o.configFetchAttempted){o.$patch({configFetchAttempted:!0});try{const e=await o.getConfig();let t=document.querySelector('link[rel="icon"]');t&&(e!=null&&e.web_favicon)&&(t.href=e.web_favicon),e!=null&&e.web_favicon&&(t=document.createElement("link"),t.rel="icon",t.href=e.web_favicon,document.head.appendChild(t))}catch{}}})}const _4=Object.freeze(Object.defineProperty({__proto__:null,default:v4},Symbol.toStringTag,{value:"Module"})),X3=Object.assign({"./init.ts":_4});function p4(a){Object.keys(X3).forEach(o=>{const e=X3[o].default;typeof e=="function"&&e(a)})}const z4=a=>{p4(H),a.use(H)},b4=Object.freeze(Object.defineProperty({__proto__:null,default:z4},Symbol.toStringTag,{value:"Module"}));function y4(a){typeof window<"u"&&(window.__TUIKIT_INITIALIZED__=!0)}const g4=Object.freeze(Object.defineProperty({__proto__:null,default:y4},Symbol.toStringTag,{value:"Module"})),K3=Object.assign({"./directives/copy.ts":t4,"./directives/perms.ts":l4,"./plugins/echart.ts":c4,"./plugins/element.ts":s4,"./plugins/hljs.ts":m4,"./plugins/pinia.ts":h4,"./plugins/router.ts":b4,"./plugins/tuikit.ts":g4});function w4(a){Object.keys(K3).forEach(o=>{const e=o.replace(/(.*\/)*([^.]+).*/gi,"$2"),t=o.replace(/^\.\/([\w-]+).*/gi,"$1"),l=K3[o];if(l.default)switch(t){case"directives":a.directive(e,l.default);break;case"plugins":typeof l.default=="function"&&l.default(a);break}})}const f4={install:w4},V1=b0(o4);V1.use(f4);V1.mount("#app");y1().then(a=>{console.log(`%c likeadmin %c v${a.version} `,"padding: 4px 1px; border-radius: 3px 0 0 3px; color: #fff; background: #bbb; font-weight: bold;","padding: 4px 1px; border-radius: 0 3px 3px 0; color: #fff; background: #4A5DFF; font-weight: bold;")});export{s7 as A,K2 as B,n7 as C,A7 as D,V7 as E,x7 as F,T7 as G,E7 as H,M7 as I,L7 as J,H7 as K,d7 as L,y3 as M,r7 as N,f7 as O,T as P,v7 as Q,F as R,P as _,m7 as a,u7 as b,G as c,h7 as d,S as e,q as f,b1 as g,z6 as h,X as i,G2 as j,I7 as k,W as l,_7 as m,U3 as n,i3 as o,_6 as p,N as q,L as r,w7 as s,g7 as t,Y as u,O7 as v,y7 as w,b7 as x,p7 as y,z7 as z}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/404-DopFFIyJ.js","assets/error-BqZT2_OW.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/vue-router-QlpZ4wdW.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/error-Cz3CexuM.css","assets/403-CYtFk05Q.js","assets/login-BK5Sfx9J.js","assets/useLockFn-X4Qce5KO.js","assets/footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js","assets/login-Bt4SvQsz.css","assets/change-password-CmlJDDIV.js","assets/change-password-DRfsLJ26.css","assets/bind-work-wechat-BJictqnk.js","assets/wecomOauthPostMessage-C_e6VGrO.js","assets/bind-work-wechat-BX1gqwq1.css","assets/setting-I73bbSku.js","assets/index-j275bAO5.js","assets/index-DoFDMZdP.css","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/setting-CxqqGetv.css","assets/progress-Dk3GB0SN.js","assets/doctor-BlvK2TEo.js","assets/progress-CQXIT7YT.css","assets/pc_details-CR93pqsw.js","assets/decoration-BA17WVMJ.js","assets/preview-pc-C8bP-zog.js","assets/index-2TepIesZ.js","assets/attr-LeDws8D5.js","assets/picker-Btcf59sz.js","assets/article-CrrySQF9.js","assets/picker-JBYDNsl5.css","assets/attr-lNortPsv.css","assets/content.vue_vue_type_script_setup_true_lang-D3j4saYE.js","assets/decoration-img-Bn25X5JS.js","assets/decoration-img-C5XvHl9_.css","assets/attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js","assets/content-DeSOYKs_.js","assets/content-DXAsZ7EV.css","assets/attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js","assets/content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js","assets/attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js","assets/add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js","assets/content-BRFykSo7.js","assets/content-Dy_alH9u.css","assets/attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js","assets/content.vue_vue_type_script_setup_true_lang-jnpmExki.js","assets/attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js","assets/content-TNbubsqc.js","assets/content-Cl-9UIip.css","assets/attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js","assets/index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js","assets/content-DDJw1TZH.js","assets/content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js","assets/attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js","assets/content-By25GabM.js","assets/content-Bd3rHJ5J.css","assets/attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js","assets/content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js","assets/attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js","assets/content-BLxl9Qo-.js","assets/content-DxNvUNZR.css","assets/preview-pc-BRQDo0AR.css","assets/pc_details-nlJo1_D0.css","assets/h5-CmvmpHND.js","assets/fans-CmdPlHB_.js","assets/h5-BSFcFSny.css","assets/index_h5-CXWkZooV.js","assets/tcm-DzAQc_oE.js","assets/order-BqE0MdhI.js","assets/weapp-zf27P1tb.js","assets/perm-CLhA0PJe.js","assets/index_h5-B4VTGZps.css","assets/readonly-hz28EqXX.js","assets/patient-BNjmKCvA.js","assets/diag-display-DCz_VAqj.js","assets/PatientInfoCard-D7xW7q4X.js","assets/PatientInfoCard-BrBnXtc9.css","assets/PatientCaseCard-MkaTBq87.js","assets/blood-thresholds-CJ1fqMjh.js","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/PatientCaseCard-De53cbHo.css","assets/DailyMatrix-DyqovtVx.js","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/DailyMatrix-BODQibyb.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/NoteTimeline-Vt4S5dzs.js","assets/NoteTimeline-CCWIpEBQ.css","assets/readonly-CdP3eZN0.css","assets/index-DOn0iTI1.js","assets/edit-ASLpBzXk.js","assets/edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js","assets/index-CazqMJ8f.js","assets/edit-Bj7qxXPN.js","assets/index.vue_vue_type_style_index_0_lang-Dbv7WGME.js","assets/@wangeditor/editor-Cyf37SuL.js","assets/@wangeditor/editor-nHDhGvq6.css","assets/@wangeditor/editor-for-vue-D1vSph3l.js","assets/index-DX96drV3.css","assets/useDictOptions-lSbSoycG.js","assets/index-anE0XvOM.js","assets/h5-Cnu0poEu.js","assets/open_setting-CLvZN6m0.js","assets/weapp-CSekzxlI.js","assets/config-C_Ur91ii.js","assets/wx_oa-CN0ZaZdj.js","assets/menu-BtDKpBI_.js","assets/oa-attr-Ct9DaDF9.js","assets/oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js","assets/useMenuOa-_Y0P7idX.js","assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js","assets/oa-phone-Bv_M1dC8.js","assets/oa-phone-CctIyraX.css","assets/oa-menu-form-edit-PrVRlCrB.js","assets/oa-menu-form-BVjP1ZgE.js","assets/default_reply-B3C3UH9r.js","assets/edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js","assets/edit-CWxEoG6s.js","assets/follow_reply-BpsbGJKg.js","assets/keyword_reply-BLQGh5QI.js","assets/MessageBubble-CApbg15I.js","assets/MessageBubble-BwtdPM6K.css","assets/SendPanel-Dz5Tcn_r.js","assets/SendPanel-DaGPWlQG.css","assets/index-C11LcA3l.js","assets/index-CMsGEvq_.css","assets/edit-BS5dUZ6W.js","assets/admin-CGNFdyXh.js","assets/department-D5OVad_r.js","assets/post-D694zeqo.js","assets/edit-CObVTcPU.css","assets/index-C3w0jYsZ.js","assets/index-CjSHFu-R.css","assets/account-adjust-CCxpv-Lh.js","assets/account-adjust.vue_vue_type_script_setup_true_lang-Dsb1cfJV.js","assets/edit-BowxPaau.js","assets/edit-D-D8bVPM.css","assets/index-Dq58HRUS.js","assets/index-Oppei429.css","assets/paiban-BEVhjp7u.js","assets/paiban-CXjt7GKw.css","assets/detail-BHArlIAw.js","assets/consumer-CMvrcBkD.js","assets/index-D2g_xmnm.js","assets/index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js","assets/index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js","assets/guahao-BYsrTfrt.js","assets/index-BV_bClbl.js","assets/medicine-KRcHi5G1.js","assets/role-BvkAFvOK.js","assets/index-DgkrquIz.js","assets/index-tfEElgYq.css","assets/html2canvas-QH1iLAAe.js","assets/index-CKfpPOH6.css","assets/list-ClE78U4n.js","assets/list-BK2ISTzB.css","assets/order_list-BN8dBg8z.js","assets/order_list-CSc9yEYW.css","assets/order_list_h5-Cw3qXm8_.js","assets/order_list_h5-TyQ1kut8.css","assets/add-nav-gQxFxSGY.js","assets/attr-setting-BOx1YrNf.js","assets/attr-setting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js","assets/menu-DAbI419p.js","assets/menu-DYFusokT.css","assets/preview-gBcw24wE.js","assets/preview-C7oaKmYo.css","assets/attr-CX-O-xtp.js","assets/attr.vue_vue_type_script_setup_true_lang-CtlICasq.js","assets/content-C08_uobP.js","assets/content-DaxRy47P.css","assets/attr-DTDA9wc-.js","assets/menu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js","assets/content-T4Jkt9D0.js","assets/content-sMbqkta2.css","assets/menu-set-H0F6w48t.js","assets/content-B7Rh7c78.js","assets/attr-CE0o2vlh.js","assets/attr-CO38y5Gg.js","assets/content-DKdIp2AF.js","assets/attr-DDEaRP1C.js","assets/attr-so5YA3Dq.js","assets/content-CllbtYBr.js","assets/attr-Db6EuK6T.js","assets/attr-Byjux4Bs.js","assets/content-B7hHbbXh.js","assets/attr-BS21VV6Q.js","assets/attr-B4x0BxoO.js","assets/content-bXaLxCis.js","assets/attr-gr_OE7on.js","assets/index-B64L9SAA.js","assets/index-57RdOFNo.css","assets/pc-DCi3Nq16.js","assets/mobile-style-4_UCVEqX.js","assets/mobile-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js","assets/theme-picker-6MJIe8r7.js","assets/theme-picker-BsELUxM9.css","assets/style-C7rdSz_0.js","assets/tabbar-BCvE1VW6.js","assets/tabbar-DJsOahKR.css","assets/edit-mXenLf8p.js","assets/menu-Da1RBBpC.js","assets/dict-DnKASfBm.js","assets/code-CrOutkes.js","assets/relations-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js","assets/edit-CAJZpU7c.css","assets/index-FUMZSHyo.js","assets/code-preview.vue_vue_type_script_setup_true_lang-BqShuPMm.js","assets/data-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js","assets/code-preview-DrK3tprG.js","assets/data-table-Ba_q4X-N.js","assets/relations-add-DIyG8vSg.js","assets/dept-tongji-DTpWoRQ0.js","assets/dept-tongji-ky7rOYoi.css","assets/medicine-CEyDY1rx.js","assets/medicine-DO6x6zrS.css","assets/roster-Clo3lqg1.js","assets/roster-rVaxg-O6.css","assets/tongji-C0pqWBk3.js","assets/tongji-C0VnzFxy.css","assets/commission-settlement-Dtr52e_y.js","assets/stats-CxdEJGSN.js","assets/commission-settlement-Ddhkz5ks.css","assets/index--WxeEniq.js","assets/qywx-CDt9a_vU.js","assets/qywx-BzfLWvoO.css","assets/yeji-Wv5859YQ.js","assets/finance-CuL8jhJS.js","assets/yeji-BVbYWtU4.css","assets/edit-BJAaLgsl.js","assets/edit-D4atl_7z.css","assets/index-DV0DYErj.js","assets/index-DXnmNy5C.css","assets/balance_details-BV6ycfYV.js","assets/refund-log-DeGBbgar.js","assets/refund-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js","assets/mubiao-dept-card-CbtPJAzl.js","assets/mubiao-dept-card-naMqyghz.css","assets/mubiao-dept-node-B-dTX5VO.js","assets/mubiao-dept-node-CANQUVWv.css","assets/mubiao-KkfmSA0m.js","assets/mubiao-B6IOi2bJ.css","assets/recharge_record-mWDEyCxs.js","assets/refund_record-3X79bN9_.js","assets/index-CBm-WmPc.js","assets/index-DhR2yeiO.css","assets/edit-C__1lqOK.js","assets/message-E3FypG9J.js","assets/index-DN0U2fnj.js","assets/edit-BT12nby0.js","assets/edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js","assets/index-BHiaYJeM.js","assets/index-Cj72c8kg.js","assets/index-DYTH4Nwn.css","assets/edit-BVcM1H4r.js","assets/edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js","assets/index-DzLSMUVP.js","assets/edit-D_EVoHF9.js","assets/edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js","assets/index-BgP7VahB.js","assets/index-3Xy1OQb4.js","assets/index-Bqs56mLH.css","assets/edit-q_Bxd75_.js","assets/edit.vue_vue_type_script_setup_true_lang-ChNKntck.js","assets/index-BFc25KGY.js","assets/edit-lTigZ_qg.js","assets/edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js","assets/picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js","assets/index-mMzAJGGu.js","assets/auth-T9dg0X60.js","assets/auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js","assets/edit-uu_5ibVr.js","assets/edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js","assets/index-He0eWbxD.js","assets/edit-D6VzjpSE.js","assets/edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js","assets/index-clkQE9Cl.js","assets/edit-ZxXJUj0T.js","assets/edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js","assets/index-BilNp2wo.js","assets/edit-B6nlFjfE.js","assets/pay-hWrQY7o1.js","assets/getExposeType-MUpmx9zy.js","assets/edit-C1NtFi7N.css","assets/index-IlWlPkOx.js","assets/index-GlwehVLz.js","assets/index-D1BQ-z9J.js","assets/index-BzrSkGWL.css","assets/edit-BcZRFQne.js","assets/edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js","assets/index-DPG02AxB.js","assets/cache-Dcdk6Ai4.js","assets/environment-BUW8BqoD.js","assets/journal-B6J_9bs1.js","assets/edit-B612o9OQ.js","assets/index-DIRz-m-f.js","assets/login_register-FZoA6yWr.js","assets/user-sO2W9aq7.js","assets/setup-BJisEyDs.js","assets/filing-BobnA8KA.js","assets/website-HcLkfBpP.js","assets/information-Dz_HQSyz.js","assets/protocol-BloD-dLt.js","assets/statistics-CCqrf9HY.js","assets/index-DnJy5Y47.js","assets/index-Bidrbn2Z.css","assets/index-Cc-ZnmoQ.js","assets/index-DRKXaI9h.css","assets/MediaSourceSelect-BPfd1tNV.js","assets/MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js","assets/account_cost-CeAkSL4u.js","assets/self_input_stats-C4Lr_Fd7.js","assets/cost-edit.vue_vue_type_script_setup_true_lang-CroYZ91M.js","assets/useMediaSourceOptions-D92lCyJY.js","assets/account_cost-7v-jP9Su.css","assets/cost-edit-DOI5rSqz.js","assets/index-CSxkUFTY.js","assets/yeji-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js","assets/index-Dm7HB_rk.css","assets/yeji-edit-D6URky3V.js","assets/prescription-drawer-CemRD-dp.js","assets/prescription-drawer-_wsVAGl0.css","assets/list-Xx7Iy3U_.js","assets/list-D5ZA4Hyd.css","assets/add-DdKFZhja.js","assets/add-GuwNtREU.css","assets/appointment-CmXNV-jm.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-4k1wpmUn.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css","assets/BloodRecordList-D8lZsyog.js","assets/BloodRecordList-DhVK-Y_e.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/DietRecordList-B-dv93xh.js","assets/DietRecordList-Cc-xUr2B.css","assets/ExerciseRecordList-CLofvORP.js","assets/ExerciseRecordList-DGtgtzou.css","assets/TrackingMatrix-CMAfdIxG.js","assets/TrackingMatrix-zyxtXYPb.css","assets/TrackingNoteTimeline-B1cc6OKF.js","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-BIA4i862.js","assets/edit-DiacXhqZ.js","assets/index-C5tKSXIA.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/index-CEfu2Pd8.js","assets/index-D6Ao7YNW.css","assets/index-DIUEBs-A.js","assets/index-BqqzElnH.css","assets/file-TV1Qmc9P.js","assets/icon-B9pYwGq6.js","assets/link-CF-Ql-TB.js","assets/overflow-Do8O2bq9.js","assets/popover_input-BPLcgSyk.js","assets/rich_text-BnBjFfGI.js","assets/upload-E1VfHXnC.js","assets/patient-call-B5zRPl8O.js","assets/@tencentcloud/call-uikit-vue-DB7vt9Ht.js","assets/@tencentcloud/call-engine-js-BX2W9Lhf.js","assets/@tencentcloud/chat-AC2Y2r2A.js","assets/rtc-detect-Chu-fZvE.js","assets/@tencentcloud/tui-core-8M7p1XHw.js","assets/tim-upload-plugin-HO4N4AW9.js","assets/tim-profanity-filter-plugin-Dn_Cf-mP.js","assets/patient-call-k8V9hV2G.css","assets/index-Ci3dXrw6.js","assets/index-DtDaTXOB.css"])))=>i.map(i=>d[i]); +var E1=Object.defineProperty;var H1=(a,o,e)=>o in a?E1(a,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[o]=e;var U=(a,o,e)=>H1(a,typeof o!="symbol"?o+"":o,e);import{_ as i}from"./jspdf-BsthCvR5.js";import{u as V3,a as n3,c as T1,b as O1,R as I3}from"./vue-router-QlpZ4wdW.js";import{d as L3,c as I1}from"./pinia-B8cvXbiZ.js";import{a as J3,A as p3}from"./axios-C80V62Fs.js";import{l as C}from"./lodash-D3kF6u-c.js";import{y as m,a as k,n as c3,q as R1}from"./@vue/reactivity-DiY1c2vO.js";import{E as u3,a as Z,b as d3,c as P1,d as Q3,e as a1,f as D1,g as B1,h as C1,i as S1,j as k1,k as j1,l as N1,m as q1,n as o1,o as e1,p as t1,q as W1,r as i1,s as l1,u as G1,t as $1,v as U1,w as F1,x as Y1,y as Z1,z as X1,A as K1}from"./element-plus-DFTWCWyi.js";import{u as c1,a as n1,b as J1,c as Q1}from"./@vueuse/core-1S4fJlii.js";import{n as a0,f as V,A as b,ak as h,I as g,J as d,a as u,ar as s3,i as o0,aN as z,F as D,ap as K,O as I,G as A,H as B,w as s1,K as e0,at as r1,ab as j3,aP as m1,Z as t0,aq as i0,b as u1,d as l0,T as c0}from"./@vue/runtime-core-C6bnekPw.js";import{a as d1,p as r3,Q as R,o as b3,P as n0}from"./@vue/shared-mAAVTE9n.js";import{c as s0}from"./css-color-function-DI01JAaZ.js";import{I as h1,J as r0,d as m0,K as u0,c as d0}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as h0,h as v0}from"./@vueuse/shared-Cl3lVqjz.js";import{T as _0,q as v1,s as p0,a as z0,c as b0}from"./@vue/runtime-dom-DDAG46FW.js";import{u as y0}from"./vue-clipboard3-DByT_rEQ.js";import{u as g0,a as w0,b as f0,c as A0,d as V0,e as L0,f as M0,g as x0,h as E0,j as H0,k as T0,l as O0,m as I0,n as R0,o as P0,p as D0,q as B0,r as C0,s as S0,v as k0,w as j0,x as N0,y as q0,z as W0,A as G0,B as $0}from"./echarts-CNLwa9wG.js";import{a as U0}from"./highlight.js-Bxt7hFFy.js";import{o as F0}from"./@highlightjs/vue-plugin-C4onkBvW.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./clipboard-CHgxszqY.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";(function(){const o=document.createElement("link").relList;if(o&&o.supports&&o.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))t(l);new MutationObserver(l=>{for(const c of l)if(c.type==="childList")for(const n of c.addedNodes)n.tagName==="LINK"&&n.rel==="modulepreload"&&t(n)}).observe(document,{childList:!0,subtree:!0});function e(l){const c={};return l.integrity&&(c.integrity=l.integrity),l.referrerPolicy&&(c.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?c.credentials="include":l.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function t(l){if(l.ep)return;l.ep=!0;const c=e(l);fetch(l.href,c)}})();const N={terminal:1,title:"后台管理系统",version:"1.9.4",baseUrl:"https://admin.zhenyangtang.com.cn//",urlPrefix:"adminapi",timeout:6e4};var T=(a=>(a.LOGIN="/login",a.ERROR_403="/403",a.INDEX="/",a))(T||{}),_1=(a=>(a.LIGHT="light",a.DARK="dark",a))(_1||{}),y3=(a=>(a.CATALOGUE="M",a.MENU="C",a.BUTTON="A",a))(y3||{}),R3=(a=>(a[a.SM=640]="SM",a[a.MD=768]="MD",a[a.LG=1024]="LG",a[a.XL=1280]="XL",a[a["2XL"]=1536]="2XL",a))(R3||{});const n7={1:"微信小程序",2:"微信公众号",3:"手机H5",4:"电脑PC",5:"苹果APP",6:"安卓APP"};var p1=(a=>(a.JSON="application/json;charset=UTF-8",a.FORM_DATA="multipart/form-data;charset=UTF-8",a))(p1||{}),e3=(a=>(a.GET="GET",a.POST="POST",a))(e3||{}),F=(a=>(a[a.NOT_INSTALL=-2]="NOT_INSTALL",a[a.LOGIN_FAILURE=-1]="LOGIN_FAILURE",a[a.FAIL=0]="FAIL",a[a.SUCCESS=1]="SUCCESS",a[a.OPEN_NEW_PAGE=2]="OPEN_NEW_PAGE",a[a.NEED_BIND_WORK_WECHAT=10]="NEED_BIND_WORK_WECHAT",a))(F||{});const g3="token",s7="account",w3="setting";function J(a){return/^(https?:|mailto:|tel:)/.test(a)}const Y0=(a,o)=>o.findIndex(e=>e.fullPath==a),N3=a=>a.name==null||a.name===""?"":`${String(a.name)}::${a.path}`,Z0=(a,o)=>{const{path:e,meta:t,name:l}=a;return!!(!e||J(e)||t!=null&&t.hideTab||!o.hasRoute(l)||[T.LOGIN,T.ERROR_403].includes(e))},X0=(a,o)=>o.findIndex(e=>e.fullPath===a),E3=a=>{var o,e,t;return(t=(e=(o=a.matched.at(-1))==null?void 0:o.components)==null?void 0:e.default)==null?void 0:t.name},z1=a=>{const{params:o,path:e,query:t}=a;return{params:o||{},path:e,query:t||{}}},m3=L3({id:"tabs",state:()=>({cacheTabList:new Set,tabList:[],tasMap:{},indexRouteName:""}),getters:{getTabList(){return this.tabList},getCacheTabList(){return Array.from(this.cacheTabList)}},actions:{setRouteName(a){this.indexRouteName=a},addCache(a){a&&this.cacheTabList.add(a)},removeCache(a){a&&this.cacheTabList.has(a)&&this.cacheTabList.delete(a)},clearCache(){this.cacheTabList.clear()},resetState(){this.cacheTabList=new Set,this.tabList=[],this.tasMap={},this.indexRouteName=""},addTab(a){const o=m(a.currentRoute),{name:e,query:t,meta:l,params:c,fullPath:n,path:r}=o;if(Z0(o,a))return;const s=Y0(n,this.tabList),_=E3(o),p={name:e,path:r,fullPath:n,title:l==null?void 0:l.title,query:t,params:c};if(l!=null&&l.keepAlive&&this.addCache(_),s!==-1){this.tabList[s]=p,this.tasMap[n]=p;return}const v=N3(p);if(v){const w=[];if(this.tabList.forEach((O,M)=>{N3(O)===v&&w.push(M)}),w.length>0){const O=w[0];for(let E=w.length-1;E>=1;E--){const f=w[E];delete this.tasMap[this.tabList[f].fullPath],this.tabList.splice(f,1)}const M=this.tabList[O];M.fullPath!==n&&delete this.tasMap[M.fullPath],this.tabList[O]=p,this.tasMap[n]=p;return}}this.tasMap[n]=p,this.tabList.push(p)},removeTab(a,o){const{currentRoute:e,push:t}=o,l=X0(a,this.tabList);this.tabList.length>1&&l!==-1&&this.tabList.splice(l,1);const c=E3(e.value);if(this.removeCache(c),a!==e.value.fullPath)return;let n=null;l===0?n=this.tabList[l]:n=this.tabList[l-1];const r=z1(n);t(r)},removeOtherTab(a){this.tabList=this.tabList.filter(e=>e.fullPath==a.fullPath);const o=E3(a);this.cacheTabList.forEach(e=>{o!==e&&this.removeCache(e)})},removeAllTab(a){const{push:o,currentRoute:e}=a,{name:t}=m(e);if(t==this.indexRouteName){this.removeOtherTab(e.value);return}this.tabList=[],this.clearCache(),o(T.INDEX)}}}),q={key:"like_admin_",set(a,o,e){a=this.getKey(a);let t={expire:e?this.time()+e:"",value:o};typeof t=="object"&&(t=JSON.stringify(t));try{window.localStorage.setItem(a,t)}catch{return null}},get(a){a=this.getKey(a);try{const o=window.localStorage.getItem(a);if(!o)return null;const{value:e,expire:t}=JSON.parse(o);return t&&t{a3.has(e)||a3.set(e,t)})}remove(o){if(a3.has(o)){const e=a3.get(o);e&&e(o),a3.delete(o)}}};U(A3,"instance");let D3=A3;const q3=D3.createInstance();class J0{constructor(o){U(this,"axiosInstance");U(this,"config");U(this,"options");this.config=o,this.options=o.requestOptions,this.axiosInstance=J3.create(o),this.setupInterceptors()}getAxiosInstance(){return this.axiosInstance}setupInterceptors(){if(!this.config.axiosHooks)return;const{requestInterceptorsHook:o,requestInterceptorsCatchHook:e,responseInterceptorsHook:t,responseInterceptorsCatchHook:l}=this.config.axiosHooks;this.axiosInstance.interceptors.request.use(c=>(this.addCancelToken(c),C.isFunction(o)&&(c=o(c)),c),c=>(C.isFunction(e)&&e(c),c)),this.axiosInstance.interceptors.response.use(c=>(this.removeCancelToken(c.config.url),C.isFunction(t)&&(c=t(c)),c),c=>{var n;return C.isFunction(l)&&l(c),c.code!=p3.ERR_CANCELED&&this.removeCancelToken((n=c.config)==null?void 0:n.url),c.code==p3.ECONNABORTED||c.code==p3.ERR_NETWORK?new Promise(r=>setTimeout(r,500)).then(()=>this.retryRequest(c)):Promise.reject(c)})}addCancelToken(o){const{ignoreCancelToken:e}=o.requestOptions;!e&&q3.add(o)}removeCancelToken(o){q3.remove(o)}retryRequest(o){var c;const e=o.config,{retryCount:t,isOpenRetry:l}=e.requestOptions;return!l||((c=e.method)==null?void 0:c.toUpperCase())==e3.POST||(e.retryCount=e.retryCount??0,e.retryCount>=t)?Promise.reject(o):(e.retryCount++,this.axiosInstance.request(e))}get(o,e){return this.request({...o,method:e3.GET},e)}post(o,e){return this.request({...o,method:e3.POST},e)}request(o,e){const t=C.merge({},this.options,e),l={...C.cloneDeep(o),requestOptions:t},{urlPrefix:c}=t;return c&&(l.url=`${c}${o.url}`),new Promise((n,r)=>{this.axiosInstance.request(l).then(s=>{n(s)}).catch(s=>{r(s)})})}}function Q0(){if(typeof window>"u")return!1;const{pathname:a,search:o}=window.location;return a.includes("bind-work-wechat")?/(?:^|[?&])code=/.test(o):!1}const W3="/bind-work-wechat";let G3=0;const a2={requestInterceptorsHook(a){var c;const{withToken:o,isParamsToData:e}=a.requestOptions,t=a.params||{},l=a.headers||{};if(o){const n=b1();l.token=n}return e&&!Reflect.has(a,"data")&&((c=a.method)==null?void 0:c.toUpperCase())===e3.POST&&(a.data=t,a.params={}),a.headers=l,a},requestInterceptorsCatchHook(a){return a},async responseInterceptorsHook(a){const{isTransformResponse:o,isReturnDefaultResponse:e}=a.config.requestOptions;if(e)return a;if(!o)return a.data;const{code:t,data:l,show:c,msg:n}=a.data;switch(t){case F.SUCCESS:return c&&n&&X.msgSuccess(n),l;case F.FAIL:return c&&n&&X.msgError(n),Promise.reject(l);case F.LOGIN_FAILURE:return t3(),H.push(T.LOGIN),Promise.reject();case F.NEED_BIND_WORK_WECHAT:if(H.currentRoute.value.path===W3||Q0())return Promise.reject(l);{const r=Date.now();r-G3>400&&(G3=r,H.replace(W3).catch(()=>{}))}return Promise.reject(l);case F.OPEN_NEW_PAGE:return window.location.href=l.url,l;case F.NOT_INSTALL:window.location.replace("/install/install.php");break;default:return l}},responseInterceptorsCatchHook(a){return a.code!==p3.ERR_CANCELED&&a.message&&X.msgError(a.message),Promise.reject(a)}},o2={timeout:N.timeout,baseURL:N.baseUrl,headers:{"Content-Type":p1.JSON,version:N.version},axiosHooks:a2,requestOptions:{isParamsToData:!0,isReturnDefaultResponse:!1,isTransformResponse:!0,urlPrefix:N.urlPrefix,ignoreCancelToken:!1,withToken:!0,isOpenRetry:!0,retryCount:2}};function e2(a){return new J0(C.merge(o2,{}))}const L=e2();function t2(a){return L.post({url:"/login/account",params:{...a,terminal:N.terminal}})}function i2(){return L.post({url:"/login/logout"})}function l2(){return L.get({url:"/auth.admin/mySelf"})}function r7(a){return L.post({url:"/auth.admin/editSelf",params:a})}function m7(){return L.get({url:"/login/workWechatConfig"})}function c2(a){return L.post({url:"/login/workWechatLogin",params:{...a,terminal:N.terminal}})}function u7(a){return L.post({url:"/auth.admin/bindWorkWechat",params:a})}function d7(){return L.post({url:"/auth.admin/unbindWorkWechat"})}function h7(a){return L.post({url:"/login/changeFirstPassword",params:a})}const Y=L3({id:"user",state:()=>({token:b1()||"",userInfo:{},routes:[],perms:[],isPaw:1}),getters:{},actions:{resetState(){this.token="",this.userInfo={},this.perms=[],this.isPaw=1},login(a){const{account:o,password:e}=a;return new Promise((t,l)=>{t2({account:o.trim(),password:e}).then(c=>{this.token=c.token,this.isPaw=c.is_paw??1,q.set(g3,c.token),t(c)}).catch(c=>{l(c)})})},logout(){return new Promise((a,o)=>{i2().then(async e=>{this.token="",await H.push(T.LOGIN),t3(),a(e)}).catch(e=>{o(e)})})},workWechatLogin(a){return new Promise((o,e)=>{c2({code:a}).then(t=>{this.token=t.token,this.isPaw=t.is_paw??1,q.set(g3,t.token),o(t)}).catch(t=>{e(t)})})},getUserInfo(){return new Promise((a,o)=>{l2().then(e=>{this.userInfo=e.user,this.perms=e.permissions,this.routes=f1(e.menu),this.isPaw=e.user.is_paw??1,a(e)}).catch(e=>{o(e)})})}}});function y1(){return L.get({url:"/config/getConfig"})}function v7(){return L.get({url:"/workbench/index"})}function _7(a){return L.get({url:"/config/dict",params:a})}const S=L3({id:"app",state:()=>({config:{},configFetchAttempted:!1,isMobile:!0,isCollapsed:!1,isRouteShow:!0}),actions:{getImageUrl(a){if(!a||typeof a!="string")return"";if(a.startsWith("http://")||a.startsWith("https://"))return a;const o=a.startsWith("/")?a:"/"+a,e=String(this.config.oss_domain||"").replace(/\/$/,"");if(e)return`${e}${o}`;const t=String(N.baseUrl||"/").replace(/\/+$/,"");if(t.startsWith("http://")||t.startsWith("https://"))try{return new URL(o,`${t}/`).href}catch{return`${t}${o}`}const l=typeof window<"u"?window.location.origin:"";return l?`${l}${o}`:o},getConfig(){return new Promise((a,o)=>{y1().then(e=>{this.config=e,a(e)}).catch(e=>{o(e)})})},setMobile(a){this.isMobile=a},toggleCollapsed(a){this.isCollapsed=a??!this.isCollapsed},refreshView(){this.isRouteShow=!1,a0(()=>{this.isRouteShow=!0})}}}),z3={showCrumb:!0,showLogo:!1,isUniqueOpened:!0,sideWidth:183,sideTheme:"dark",sideDarkColor:"#1d2124",openMultipleTabs:!0,theme:"#4A5DFF",successTheme:"#67c23a",warningTheme:"#e6a23c",dangerTheme:"#f56c6c",errorTheme:"#f56c6c",infoTheme:"#909399"},j=1,n2={1:["sideTheme","sideDarkColor"]},s2={"dark-2":"shade(20%)","light-3":"tint(30%)","light-5":"tint(50%)","light-7":"tint(70%)","light-8":"tint(80%)","light-9":"tint(90%)"},r2={"light-3":"shade(20%)","light-5":"shade(30%)","light-7":"shade(50%)","light-8":"shade(60%)","light-9":"shade(70%)","dark-2":"tint(20%)"},$3="theme-vars",m2=(a,o="primary",e=!1)=>{const t={[`--el-color-${o}`]:a},l=e?r2:s2;for(const c in l)t[`--el-color-${o}-${c}`]=`color(${a} ${l[c]})`;return t},u2=(a,o=!1)=>{const e=Object.keys(a).reduce((c,n)=>Object.assign(c,m2(a[n],n,o)),{});let t=Object.keys(e).reduce((c,n)=>{const r=s0.convert(e[n]);return`${c}${n}:${r};`},"");t=`:root{${t}}`;let l=document.getElementById($3);if(l){l.innerHTML=t;return}l=document.createElement("style"),l.setAttribute("type","text/css"),l.setAttribute("id",$3),l.innerHTML=t,document.head.append(l)},h3=q.get(w3);function d2(a,o){if(o>=j)return;for(let l=o+1;l<=j;l++){const c=n2[l];if(c)for(const n of c)a[n]=z3[n]}a._settingSchemaVersion=j;const{showDrawer:e,...t}=a;q.set(w3,t)}const W=L3({id:"setting",state:()=>{const a={showDrawer:!1,...z3};let o=j;return d1(h3)&&(o=typeof h3._settingSchemaVersion=="number"?h3._settingSchemaVersion:0,Object.assign(a,h3),oObject.is(Number(a),NaN)?a:`${a}${o}`,U3=a=>a==null&&typeof a>"u",b7=(a,o={children:"children"})=>{a=C.cloneDeep(a);const{children:e}=o,t=[],l=[];for(a.forEach(c=>l.push(c));l.length;){const c=l.shift();c[e]&&(c[e].forEach(n=>l.push(n)),delete c[e]),t.push(c)}return t},y7=(a,o={id:"id",parentId:"pid",children:"children"})=>{a=C.cloneDeep(a);const{id:e,parentId:t,children:l}=o,c=[],n=new Map;return a.forEach(r=>{n.set(r[e],r);const s=n.get(r[t]);s?(s[l]=s[l]??[],s[l].push(r)):c.push(r)}),c};function _2(a){if(a.length===0||!a||a=="undefined")return a;const o=a.replace("//","/"),e=o.length;return o[e-1]==="/"?o.slice(0,e-1):o}function p2(a){let o="";for(const e of Object.keys(a)){const t=a[e],l=encodeURIComponent(e)+"=";if(!U3(t))if(d1(t)){for(const c of Object.keys(t))if(!U3(t[c])){const n=e+"["+c+"]",r=encodeURIComponent(n)+"=";o+=r+encodeURIComponent(t[c])+"&"}}else o+=l+encodeURIComponent(t)+"&"}return o.slice(0,-1)}const g7=(a,o="yyyy-mm-dd")=>{a||(a=Number(new Date)),a.toString().length==10&&(a*=1e3);const e=new Date(a);let t;const l={"y+":e.getFullYear().toString(),"m+":(e.getMonth()+1).toString(),"d+":e.getDate().toString(),"h+":e.getHours().toString(),"M+":e.getMinutes().toString(),"s+":e.getSeconds().toString()};for(const c in l)t=new RegExp("("+c+")").exec(o),t&&(o=o.replace(t[1],t[1].length==1?l[c]:l[c].padStart(t[1].length,"0")));return o},w7=(a=8)=>{let o=Date.now().toString(36);return o+=Math.random().toString(36).substring(3,a),o},f7=(a,o)=>{o=Math.min(1,Math.max(0,o));const e=/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,t=/^rgb\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*\)$/,l=/^rgba\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*,\s*[0-9.]+\s*\)$/;let c=0,n=0,r=0;if(e.test(a)){const s=a.slice(1),_=s.length===3?s.split("").map(p=>p+p).join(""):s;c=parseInt(_.substring(0,2),16),n=parseInt(_.substring(2,4),16),r=parseInt(_.substring(4,6),16)}else if(t.test(a)){const s=a.match(/\d+/g);s&&(c=parseInt(s[0]),n=parseInt(s[1]),r=parseInt(s[2]))}else if(l.test(a)){const s=a.match(/\d+(\.\d+)?/g);s&&(c=parseInt(s[0]),n=parseInt(s[1]),r=parseInt(s[2]))}else throw new Error("Unsupported color format");return`rgba(${c}, ${n}, ${r}, ${o})`},z2=V({props:{name:{type:String,required:!0},size:{type:[Number,String],default:16},color:{type:String,default:"inherit"}},setup(a){const o=b(()=>`#${a.name}`),e=b(()=>({width:i3(a.size),height:i3(a.size),color:a.color}));return{symbolId:o,styles:e}}}),P=(a,o)=>{const e=a.__vccOpts||a;for(const[t,l]of o)e[t]=l;return e},b2=["xlink:href"];function y2(a,o,e,t,l,c){return h(),g("svg",{"aria-hidden":"true",style:r3(a.styles)},[d("use",{"xlink:href":a.symbolId,fill:"currentColor"},null,8,b2)],4)}const g2=P(z2,[["render",y2]]),G=V({name:"Icon",props:{name:{type:String,required:!0},size:{type:[String,Number],default:"14px"},color:{type:String,default:"inherit"}},setup(a){return()=>a.name.indexOf(B3)===0?u(Q3,{size:a.size,color:a.color},{default:()=>u(s3(a.name.replace(B3,"")))}):a.name.indexOf(v2)===0?o0("i",{class:["local-icon"]},u(g2,{...a})):null}}),w2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALcAAACHCAYAAABUFMgyAAAABHNCSVQICAgIfAhkiAAACbtJREFUeF7tm39olVUYx++92wo0ZiL0V2v/SKMcVMzUtMTyjzL/KUpwWCpuzbZVxpikIWQLBIMUnLiMSWXYJhSYsiA1dNaQCSqkadGGOQdj/dpubM79uPf2nts9l7Oz8/66976/nvsdXO6v957zPM/53A/Pe967cAh/qADRCoSJ5oW0UIEQ4AYEZCsAuMkuLRJzC2635sGKBqcCCadDzRV0uRrH6XwxfnAqkDX8uYLSaJxczRGcZUGkVitgBLCncMvQGj0H4FaXO3+OE+GVQTZ7bqlKdqFTHc9fE9/Te2wpKByUNxXQA9wO+LrFyhZu9nkRbhXobHK78+TN6uZxonp2Zq/z9+R7Vi7L7Yod6GRwZaiToLe0fP5wJBJu/HsounhqcrLQjcV7fNFj/65YvmTYjbkwR+YVCIfDKjAnx8fHu3p6er6oqKi4lYKXA64HuSXArcCtajG4sdOA72s+dPK7k+eW37jRZ2XMzCuk+GR93YZQXe2GnI6JwdyvQDweH79z587h2bNnvyHZW4TcqGWZFrQVEFXGTsPd2npkSdf5S6e6uy/d5X45/p+xrnZ9qL5uo1fTY94cVyAWiw329vY+W1ZWdl0yOW9LVO3KjCjM4DYCO3LgwGdfHWk7tnpoKGo2To7Tnz4c4Ha0vJ4Mnkgk4iMjI7uLi4vfTwEeN7C5MkYzKJV9tTZSRLuFN25qiF64cNkzY/OMALcn/Dk+6dTU1F9FRUUlEtx6/XhW5magJ6Fm93v2Hvyh9VD7QscztDAB4LZQpIAeMjY2dnTWrFms5+Tm1jN4RnCLJ48c8Miq1a+O3rzZb2Z+V0oKuF0psyeTaO3JRCQSuTcFNwdbtLfuzokZnCLYaWvv39+6qOXgl2e1ic0+70pBALcrZfZqksTFixcXan/XFPY2PLE0glNpbNaStHx8+JPm/Z+u8ypbeV7A7ZeVcCaO4eHhprlz5+4W7C0bnE08w+B6cMsnkmlrM7ibPth7vf3o8QecScX+qIDbfs2C9Amt7/5R67ufk+AWAc8Y7mlgp+C+BriDhEewY9WBm/fdDPKs4GaAp2+auX8G3MEGJkjRp+B+Xos5pmhNbMEtX26fBrY2eIEG91XAHSQ8gh2rADcDWQSc2ZvDPcPeqp5bfE1uSQpSbQngDjYvgYr+9u3bXdrvTVYJ1uaAZww33y0RAWdwa+beo8F9gl058sUfTih9sQyOBZGCW2xLGNwcbNVPZJOxGJlbhFtsTQC3Y8uIgVUVUMDNWhG9K5bpITKBu3Db9l1dx0+cWuCXpYC5/bISzsSRgnt1qt9W9dzKizl24U62JW+9vePk6dNdi5xJxf6ogNt+zYL0CVfhrq3f1tHZ2b3MLwUC3H5ZCWfikOAWd0zEvptNPu0qZUbmBtzOLCJGVVcAcOM/cch+NwA34AbcaEvIMkA2MZgb5gbcFM29uWZdaHPNK2QXN98TGx0dbZ83b97rqX3u/Notqa5aG6quqsx3BsjmPzQ09GFpaekuwE12ifM3McANc5OlH3ADbsBN8YQSPTdZrpOJwdwwN1nCATfgBtxoS8gyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmzhe4Y1qi8dQtIdyz/Nnz9F9YURH+Grtnt4h0K6yt39bR2dm9zC/VrK5aG6oG3H5ZjpzHIZnbUbgLNLi/Bdw5X0MMqFOBaDS6u6SkZJf2tgg2s3dOzM0NXqANWLD1naatHR1ndvhlNWBuv6yEM3H09fW9XF5efkqAm0Eugs3bEcttCYuUtSRia5KEu66uofzsuctdzqRif1TAbb9mQfpEe3t7WU1NzYAWM++1ucEZzPzGUrIFt9xzM7iTPfjSJ1/4Z3g4yh57/ge4PV8CxwJIJBJ/zJkz50EF2GJbwuc3hZsdKJ5UivZOmpvBXf/mu1+fOXN+pWNZ2RgYcNsoVsAO1U4mm0pLS/ek4GbGlq3NIJ9hbRFiOWU9uPnOSUFxcXHhiqdfutnT+/s9XtcLcHu9As7MPz4+3jl//vwXtRNKEWpxG5D33RnDzVsTufeObNmy/anz3Ve+GRkZ9bQ9AdzOwOXlqPF4fLi1tfWJxsZGsdfmYMuAZwW3ar87afH1mzY/NDEWOfbTlV/u86oYgNuryjsz79jY2PctLS11O3fu/FNoQ/TAVu6UGLUlct+tsne6RWE9ekPDex9dvfZbZX//wN3OpKw/6mvVlaGqTWvdnhbz5bgCk5OTvw4MDOzTtv2OpnpsBrTYY1vaAuRhqa5QiiHzq5TivXzFctp24Zo1G+/XNtwrJyZji2OxWBEfLBFKmM2VcakefWRB/8pnlt7KeAB80NUKhMPh9K6G9nhicHDwSltb24Xm5uaoFgjvo2VTy62IvA04Iwcz4DjU3OTyvjd/LrYt4heBf85sHleLi8l8UQF5f1qEVf7tiNFvSaZt/8lmNspU/p2J+HsTsVWRH8tfCsDtC558FYQZ3Px9+TK74YWbTOAWDSwDrnouG1uEG6D7ijFXgxEtK54Iyo850LLNVa1IxuZWnViqQBfNDbBd5SVwk2UDOEtW93K7XAkrFpWtK7cqcj8ufiGMHgduVRBwTiqggptDy++5uVUw633e9gmlqoUR4VZZXAYagOeECRKDmIEtwqwytO6etqo6Vsyt16PrQW4GN4lVQhJZV8AIdBliy7bWg9VKtPKXQQYcYFupIo7hFZBPBlVm1jvGtIp2zc0H1INcBbfea6bB4QDSFVDtcui1Hbo7IkYVyhRueUyjcXI1B+mVzuPk9MDNCOhs2hK9NQDAeUynQ6n7Bm6z/AC/WYXy7/2s4TUrGaAzqxDeD2wFAHdglw6Bm1UAcJtVCO8HtgKAO7BLh8DNKvAfR+rWAIVxGVEAAAAASUVORK5CYII=",f2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALcAAACHCAYAAABUFMgyAAAABHNCSVQICAgIfAhkiAAACbZJREFUeF7t201oXFUUB/DMRyJNpE0JuJqYTWtQs2pLqxSzcWGiK8FNceOqiLiMOxe1i0IFXdhFIXSli6agoJS6aBEM2o2QlbXFfkBNhRBNbRIyTTOTzHjv8O5wc3Pf55x578y7/0LI1+S8c8/95eTMfdNCH/6hAjmtQCGn68KyUIE+4AaC3FYAuHO7tVhYWrjTug52tHcq0Ox2qlToqOJ0e72I3zsV6Bg/FcqgOFTX6J1tQaZRKxAEOFPcJtqgzwE86na78zgdrwk57PNIVYqLzvZ49TX9e34fR0oKD3KmAn7A48D3LVanuOXP67ht0OXF417Hmd11eKF+3Vl+XX3PfC/LFXlciYPOhGuibkG/d+/eK5VKZWZgYOBEs9ksp7F5Ozs7641GYzWNa+EayStQKBRsMOtbW1s379+//83Ro0cfeXgVcD/kkYBHwW0bMVTHbgOv1WrXy+XypFhAlJjJK4SfzG0FRIPaevbs2ddDQ0MfG91bRx40suyqTRSIto7dxr24uPia6NQ3hOmB3FYdC0u1AuIv8fKDBw/eGh8fv2N0cjWW2MaVPTmG4Q6CXRR/Tr4V48c7mKlT3XsnLiZG2sbGxsb5/fv3f+YBbwR0c2tN4uDWR5GiBC3+jKyhYzthLZNFbm9vr/T3948auP3m8Y46t8TdQi3f1+v1X8SMfSyTVeOizlRgc3PzyuDg4Adiwapz+3XwRLj1jq2AF8WfjSrGEWeMZbZQ4axWLBaHPdwKtt69fU9OoowlCne7a9+9e/f44cOHfwbuzPbcpQs3FxYWjol/ty3dO/CJZRBua8eWI8nTp09n9+3b975LFcZas6vA6urq2YMHD57XurfZwWVyezq4H27zBk27a0vcYtC/UyqVXsxuubiySxUQc/evYu6eMnDrwBPj3gXbw30buF3ile1afXCruVsi7wi3BN5+E537D+DOdsNdurqH+22x5h3LaBILt3m7fRdsEbwkcN8Cbpd4ZbtWDbeErAOX3Vvh3tO9bTO3/jVzJCl5YwlwZ7vfTl1dHGDcFK83mda6tgKeGPeeI0DZteWbeJHULe/OkVNFxmKzqYCHWx9LJG4F2/YS2VaiQZ1bx62PJsCdzR47e1ULbjmK+N2xbNcpCe6yfP2teMHUq85WGwtPtQIebvkCPdmxbTO39WZOXNytsURc7Lq4iXM81RXiYs5WIFXc1Wr1mjhUP+lstbHwVCtg4NZPTPS5O9ZpiW3mbnVu4E51b52/GHA7TyC/BQDu/O6t8ysDbucJ5LcAwJ3fvXV+ZU7jFv9buk+83sV5BHktgDjAmBsZGflQO+M2b7/TnXNzOy0RLwfoEzeW8rq3zq/ryZMnn4+NjZ0Dbucp5K8AwI3OnT/V3oqAG7iB2/h/lIleW4KZO7eOWC4MnRudmyVMiqSAG7gpHLGMAdzAzRImRVLADdwUjljGAG7gZgmTIingBm4KRyxjADdws4RJkRRwAzeFI5YxgBu4WcKkSAq4gZvCEcsYwA3cLGFSJAXcwE3hiGUM4AZuljApkgJu4KZwxDIGcAM3S5gUSQE3cFM4YhkDuIGbJUyKpIAbuCkcsYwB3MDNEiZFUsAN3BSOWMYAbuBmCZMiKeAGbgpHLGMAN3CzhEmRFHADN4UjljGAG7hZwqRICriBm8IRyxjADdwsYVIkBdzATeGIZQzgBm6WMCmSAm7gpnDEMgZwAzdLmBRJATdwUzhiGQO4gZslTIqkgBu4KRyxjAHcwM0SJkVSwA3cFI5YxgBu4GYJkyIp4AZuCkcsYwA3cLOESZEUcAM3hSOWMYAbuFnCpEgKuIGbwhHLGMAN3CxhUiQF3MBN4YhlDOAGbpYwKZICbuCmcMQyBnADN0uYFEkBN3BTOGIZA7iBmyVMiqSAG7gpHLGMAdzAzRImRVLADdwUjljGAG7gZgmTIingBm4KRyxjADdws4RJkRRwAzeFI5YxgBu4WcKkSAq4gZvCEcsYwA3cLGFSJAXcwE3hiGUM4AZuljApkgJu4KZwxDIGcAM3S5gUSQE3cFM4YhkDuIGbJUyKpIAbuCkcsYwB3MDNEiZFUsAN3BSOWMYwcO+IJBveW1N7L3OXn7f/FSyrUV+T7+Vb0XgrV6vVa4ODgye5VKJWq/VtATeX7SDPI03cJYH7R+Am30ME9KnA2tra+dHR0XPi23rXlt2bpHOrDl4SAUsrKyufjIyMfMplN9C5uexEd/JYXFx8b2Ji4oaGWyLXYatxJPJYIjOVI4k+mrRwz8/PT0xOTt7szlLiRwXu+DXrpZ+Ym5sbP3369JLIWc3aqoNLzOpNLikWbnPmlrhbM3ij0fivUCjIjzP/B9yZb0HXEmg2m/8cOHDgJQtsfSxR1w/FLR+oP6nUu3erc0vcGxsb3w0NDb3ZtVXFCAzcMYrVYw8VTybPjo2Nfenhlh3b7NoS+Z6urSM2l+yHW52clCqVSvnhw4d/lUql57OuF3BnvQPdub44AZs/dOjQu+IJpY5aPwZUc3di3Go0MWfv4sLCwhtHjhz5wRtVurPCCFGBO0KReuwhYuxdvXTp0uszMzP6rK1gm8A7wm0772518atXr748NTX1fblcfiGr+gF3VpXvznU3Nzd/unjx4kdnzpz5VxtD/GBbT0qCxhJz7rZ17/aIImf0x48ffzE8PHyqWCw+150l+0cF7rQr3p3r1ev1P5eWlr4Sx35XvBlbgtZn7EhHgCo72x1KPXN1l1J/b96x3HVcODs7W5menj4loJ8QgfpVMPGsN+xaiSsmftP/Xl9ff5Q4AH4w1QqIU7b2qYb4uLa8vPz75cuXf7tw4cKaSETN0WanNkcR8xhwzxrCwCnUqpOb597qc31s0X8R1M+FXSfV4uJiLCpgnk/rWM3XjgS9lmTX8Z/ZmYNWar7ORH+9iT6qmB+bvxTAzcITqyTCcKvvm7fZA2/cJMGtd2ATuO1zs2PruAGdlbFUk9G7rP5E0PxYgTa7uW0USdy5bU8sbdD1zg3YqXrpuYt1Alwu1vd2u1mJKF3U7LrmqGLO4/ovRNDHPbcrSJikAjbcCq16rzq3DbPfz8d+QmkbYXTcti5uggZwEhO5CBIGW8ds69C+Z9q26kTp3H4zuh/yMNy52CUsouMKBEE3EUfu1n5Yo2Rr/jKYwAE7ShXxGFUB88mgrTP7PSa0inE7twroh9yG2+9rocnhAbmugO2Uw2/s8D0RCapQUtxmzKA4VNfI9U47vDg/uIlAdzKW+O0BADuss0tLZ4M7bH3AH1Yh977fMd6wkgFdWIXw/Z6tAHD37NYh8bAKAHdYhfD9nq0AcPfs1iHxsAr8D7xvfQ8bZ0PpAAAAAElFTkSuQmCC",A2={class:"setting-drawer"},V2={class:"h-full flex flex-col"},L2={class:"setting-item mb-5"},M2={class:"flex mt-4 cursor-pointer"},x2=["onClick"],E2=["src"],H2={class:"setting-item mb-5 flex justify-between items-center"},T2={class:"setting-item mb-5 flex justify-between items-center"},O2={class:"setting-item mb-5 flex justify-between items-center"},I2={class:"setting-item mb-5 flex justify-between items-center"},R2={class:"setting-item mb-5 flex justify-between items-center"},P2={class:"setting-item mb-5 flex justify-between items-center"},D2={class:"setting-item mb-5 flex justify-between items-center"},B2={class:"setting-item flex justify-between items-center mt-auto"},C2=V({__name:"drawer",setup(a){const o=W(),e=c3(["#409EFF","#28C76F","#EA5455","#FF9F43","#01CFE8","#4A5DFF"]),t=[{type:"dark",image:w2},{type:"light",image:f2}],l=b({get(){return o.sideTheme},set(f){o.setSetting({key:"sideTheme",value:f})}}),c=b({get(){return o.openMultipleTabs},set(f){o.setSetting({key:"openMultipleTabs",value:f})}}),n=b({get(){return o.isUniqueOpened},set(f){o.setSetting({key:"isUniqueOpened",value:f})}}),r=b({get(){return o.sideWidth},set(f){o.setSetting({key:"sideWidth",value:f})}}),s=b({get(){return o.showDrawer},set(f){o.setSetting({key:"showDrawer",value:f})}}),_=b({get(){return o.theme},set(f){o.setSetting({key:"theme",value:f}),O()}}),p=b({get(){return o.showLogo},set(f){o.setSetting({key:"showLogo",value:f})}}),v=b({get(){return o.showCrumb},set(f){o.setSetting({key:"showCrumb",value:f})}}),w=c1(),O=()=>{o.setTheme(w.value)},M=()=>{h0(w)(),O()},E=()=>{w.value=!1,o.resetTheme(),O()};return(f,y)=>{const x3=G,$=D1,Q=B1,L1=C1,M1=S1,x1=a1;return h(),g("div",A2,[u(x1,{modelValue:m(s),"onUpdate:modelValue":y[6]||(y[6]=x=>k(s)?s.value=x:null),"append-to-body":"",direction:"rtl",size:"250px",title:"主题设置"},{default:z(()=>[d("div",V2,[d("div",L2,[y[7]||(y[7]=d("span",{class:"text-tx-secondary"},"风格设置",-1)),d("div",M2,[(h(),g(D,null,K(t,x=>d("div",{class:"mr-4 flex relative text-primary",key:x.type,onClick:A4=>l.value=x.type},[d("img",{src:x.image,width:"52",height:"36"},null,8,E2),m(l)==x.type?(h(),A(x3,{key:0,class:"icon-select",name:"el-icon-Select"})):B("",!0)],8,x2)),64))])]),d("div",H2,[y[8]||(y[8]=d("span",{class:"text-tx-secondary"},"主题颜色",-1)),d("div",null,[u($,{modelValue:m(_),"onUpdate:modelValue":y[0]||(y[0]=x=>k(_)?_.value=x:null),predefine:m(e)},null,8,["modelValue","predefine"])])]),d("div",T2,[y[9]||(y[9]=d("span",{class:"text-tx-secondary"},"开启黑暗模式",-1)),d("div",null,[u(Q,{"model-value":m(w),onChange:M},null,8,["model-value"])])]),d("div",O2,[y[10]||(y[10]=d("span",{class:"text-tx-secondary"},"开启多页签栏",-1)),d("div",null,[u(Q,{modelValue:m(c),"onUpdate:modelValue":y[1]||(y[1]=x=>k(c)?c.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",I2,[y[11]||(y[11]=d("span",{class:"text-tx-secondary"},"只展开一个一级菜单",-1)),d("div",null,[u(Q,{modelValue:m(n),"onUpdate:modelValue":y[2]||(y[2]=x=>k(n)?n.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",R2,[y[12]||(y[12]=d("div",{class:"text-tx-secondary flex-none mr-3"},"菜单栏宽度",-1)),d("div",null,[u(L1,{modelValue:m(r),"onUpdate:modelValue":y[3]||(y[3]=x=>k(r)?r.value=x:null),min:180,max:250},null,8,["modelValue"])])]),d("div",P2,[y[13]||(y[13]=d("div",{class:"text-tx-secondary flex-none mr-3"},"显示LOGO",-1)),d("div",null,[u(Q,{modelValue:m(p),"onUpdate:modelValue":y[4]||(y[4]=x=>k(p)?p.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",D2,[y[14]||(y[14]=d("div",{class:"text-tx-secondary flex-none mr-3"},"显示面包屑",-1)),d("div",null,[u(Q,{modelValue:m(v),"onUpdate:modelValue":y[5]||(y[5]=x=>k(v)?v.value=x:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),d("div",B2,[u(M1,{onClick:E,class:"w-full"},{default:z(()=>[...y[15]||(y[15]=[I("重置主题",-1)])]),_:1})])])]),_:1},8,["modelValue"])])}}}),S2=P(C2,[["__scopeId","data-v-352f3746"]]),k2=V({__name:"index",setup(a){const o=W(),e=()=>{o.setSetting({key:"showDrawer",value:!0})};return(t,l)=>{const c=G;return h(),g("div",{class:"setting flex cursor-pointer h-full items-center px-2",onClick:e},[u(c,{size:16,name:"el-icon-Setting"}),u(S2)])}}});function w1(a){const o=V3();return s1(o,()=>{a(o)},{immediate:!0}),{route:o}}const j2=V({__name:"breadcrumb",setup(a){const o=c3([]),e=t=>{const l=t.matched.filter(c=>c.meta&&c.meta.title);o.value=l};return w1(t=>{e(t)}),(t,l)=>{const c=k1,n=j1;return h(),A(n,{class:"app-breadcrumb"},{default:z(()=>[(h(!0),g(D,null,K(m(o),r=>(h(),A(c,{key:r.path},{default:z(()=>[I(R(r.meta.title),1)]),_:2},1024))),128))]),_:1})}}}),N2=P(j2,[["__scopeId","data-v-94d84829"]]),q2=V({__name:"fold",setup(a){const o=S(),e=b(()=>o.isCollapsed),t=()=>{o.toggleCollapsed()};return(l,c)=>{const n=G;return h(),g("div",{class:"fold h-full cursor-pointer flex items-center px-2",onClick:t},[u(n,{name:`local-icon-${m(e)?"expand":"collapse"}`,size:18},null,8,["name"])])}}}),W2=V({__name:"full-screen",setup(a){const{toggle:o,isFullscreen:e}=n1();return(t,l)=>{const c=G;return h(),g("div",{class:"full-screen h-full cursor-pointer flex items-center px-2",onClick:l[0]||(l[0]=(...n)=>m(o)&&m(o)(...n))},[u(c,{size:16,name:`local-icon-${m(e)?"fullscreen-exit":"fullscreen"}`},null,8,["name"])])}}});function G2(){const a=n3(),o=V3(),e=m3(),t=W(),l=b(()=>e.getTabList),c=b(()=>o.fullPath);return{tabsLists:l,currentTab:c,addTab:()=>{t.openMultipleTabs&&e.addTab(a)},removeTab:p=>{t.openMultipleTabs&&(p=p??o.fullPath,e.removeTab(p,a))},removeOtherTab:()=>{t.openMultipleTabs&&e.removeOtherTab(o)},removeAllTab:()=>{t.openMultipleTabs&&e.removeAllTab(a)}}}const $2={class:"app-tabs pl-4 flex bg-body"},U2={class:"flex-1 min-w-0"},F2={class:"flex items-center px-3"},Y2=V({__name:"multiple-tabs",setup(a){const o=n3(),e=m3(),{removeOtherTab:t,addTab:l,removeAllTab:c,removeTab:n,tabsLists:r,currentTab:s}=G2();w1(()=>{l()});const _=v=>{const w=e.tasMap[v];o.push(z1(w))},p=v=>{switch(v){case"closeCurrent":n();break;case"closeOther":t();break;case"closeAll":c();break}};return(v,w)=>{const O=N1,M=q1,E=G,f=e1,y=o1,x3=t1;return h(),g("div",$2,[d("div",U2,[u(M,{"model-value":m(s),closable:m(r).length>1,onTabChange:_,onTabRemove:w[0]||(w[0]=$=>m(n)($))},{default:z(()=>[(h(!0),g(D,null,K(m(r),$=>(h(),A(O,{key:$.fullPath,label:$.title,name:$.fullPath},null,8,["label","name"]))),128))]),_:1},8,["model-value","closable"])]),u(x3,{onCommand:p},{dropdown:z(()=>[u(y,null,{default:z(()=>[u(f,{command:"closeCurrent"},{default:z(()=>[...w[1]||(w[1]=[I(" 关闭当前 ",-1)])]),_:1}),u(f,{command:"closeOther"},{default:z(()=>[...w[2]||(w[2]=[I(" 关闭其他 ",-1)])]),_:1}),u(f,{command:"closeAll"},{default:z(()=>[...w[3]||(w[3]=[I(" 关闭全部 ",-1)])]),_:1})]),_:1})]),default:z(()=>[d("span",F2,[u(E,{size:16,name:"el-icon-arrow-down"})])]),_:1})])}}}),Z2=P(Y2,[["__scopeId","data-v-414a904e"]]),X2=V({__name:"refresh",setup(a){const o=S(),e=()=>{o.refreshView()};return(t,l)=>{const c=G;return h(),g("div",{class:"refresh cursor-pointer h-full flex items-center px-2",onClick:e},[u(c,{name:"el-icon-RefreshRight",size:18})])}}});function A7(){return L.get({url:"/setting.system.system/info"})}function V7(a){return L.get({url:"/setting.system.log/lists",params:a},{ignoreCancelToken:!0})}function K2(){return L.post({url:"/setting.system.cache/clear"})}function L7(a){return L.get({url:"/crontab.crontab/lists",params:a})}function M7(a){return L.post({url:"/crontab.crontab/add",params:a})}function x7(a){return L.get({url:"/crontab.crontab/detail",params:a})}function E7(a){return L.post({url:"/crontab.crontab/edit",params:a})}function H7(a){return L.post({url:"/crontab.crontab/delete",params:a})}function T7(a){return L.get({url:"/crontab.crontab/expression",params:a})}const J2={class:"flex items-center"},Q2={class:"ml-3 mr-1"},a6=V({__name:"user-drop-down",setup(a){const o=Y(),e=b(()=>o.userInfo),t=async l=>{switch(l){case"logout":await X.confirm("确定退出登录吗?"),o.logout();break;case"cache":await K2(),window.location.reload();break}};return(l,c)=>{const n=W1,r=G,s=e1,_=s3("router-link"),p=o1,v=t1;return h(),A(v,{class:"px-2",onCommand:t},{dropdown:z(()=>[u(p,null,{default:z(()=>[u(_,{to:"/user/setting"},{default:z(()=>[u(s,null,{default:z(()=>[...c[0]||(c[0]=[I("个人设置",-1)])]),_:1})]),_:1}),u(s,{command:"cache"},{default:z(()=>[...c[1]||(c[1]=[I("清除缓存",-1)])]),_:1}),u(s,{command:"logout"},{default:z(()=>[...c[2]||(c[2]=[I("退出登录",-1)])]),_:1})]),_:1})]),default:z(()=>[d("div",J2,[u(n,{size:34,src:m(e).avatar},null,8,["src"]),d("div",Q2,R(m(e).name),1),u(r,{name:"el-icon-ArrowDown"})])]),_:1})}}}),o6={class:"header"},e6={class:"navbar"},t6={class:"flex-1 flex"},i6={class:"navbar-item"},l6={class:"navbar-item"},c6={key:0,class:"flex items-center px-2"},n6={class:"flex"},s6={key:0,class:"navbar-item"},r6={class:"navbar-item"},m6={class:"navbar-item"},u6=V({__name:"index",setup(a){const o=S(),e=b(()=>o.isMobile),t=b(()=>o.isCollapsed),l=W(),{isFullscreen:c}=n1();return(n,r)=>{const s=i1;return h(),g("header",o6,[d("div",e6,[d("div",t6,[d("div",i6,[u(s,{class:"box-item",effect:"dark",content:m(t)?"展开菜单":"收起菜单",placement:"bottom"},{default:z(()=>[u(q2)]),_:1},8,["content"])]),d("div",l6,[u(s,{class:"box-item",effect:"dark",content:"刷新",placement:"bottom"},{default:z(()=>[u(X2)]),_:1})]),!m(e)&&m(l).showCrumb?(h(),g("div",c6,[u(N2)])):B("",!0)]),d("div",n6,[m(e)?B("",!0):(h(),g("div",s6,[u(s,{class:"box-item",effect:"dark",content:m(c)?"退出全屏":"全屏模式",placement:"bottom"},{default:z(()=>[u(W2)]),_:1},8,["content"])])),d("div",r6,[u(a6)]),d("div",m6,[u(s,{class:"box-item",effect:"dark",content:"主题设置",placement:"bottom"},{default:z(()=>[u(k2)]),_:1})])])]),m(l).openMultipleTabs?(h(),A(Z2,{key:0})):B("",!0)])}}}),d6={class:"main-wrap h-full bg-page"},h6={class:"px-2 py-4"},v6=V({__name:"main",setup(a){const o=S(),e=m3(),t=W(),l=b(()=>o.isRouteShow),c=b(()=>t.openMultipleTabs?e.getCacheTabList:[]);return(n,r)=>{const s=s3("router-view"),_=l1;return h(),g("main",d6,[u(_,null,{default:z(()=>[d("div",h6,[m(l)?(h(),A(s,{key:0},{default:z(({Component:p,route:v})=>[(h(),A(e0,{include:m(c),max:20},[(h(),A(r1(p),{key:v.fullPath}))],1032,["include"]))]),_:1})):B("",!0)])]),_:1})])}}}),_6=V({__name:"index",props:{...G1,teleported:{type:Boolean,default:!1},placement:{type:String,default:"top"},overfloType:{type:String,default:"ellipsis"}},setup(a){const o=a,e=R1(),t=c3(!1);return J1(e,"mouseenter",()=>{var l,c;((l=e.value)==null?void 0:l.scrollWidth)>((c=e.value)==null?void 0:c.offsetWidth)?t.value=!1:t.value=!0}),(l,c)=>{const n=i1;return h(),g("div",null,[u(n,j3(o,{disabled:m(t)}),{default:z(()=>[d("div",{ref_key:"textRef",ref:e,class:"overflow-text truncate",style:r3({textOverflow:a.overfloType})},R(l.content),5)]),_:1},16,["disabled"])])}}}),p6=V({__name:"index",props:{width:{type:[String,Number],default:"auto"},height:{type:[String,Number],default:"auto"},radius:{type:[String,Number],default:0},...$1},setup(a){const o=a,e=b(()=>({width:i3(o.width),height:i3(o.height),borderRadius:i3(o.radius)}));return(t,l)=>{const c=U1;return h(),A(c,j3({style:e.value},o),null,16,["style"])}}}),z6=P(p6,[["__scopeId","data-v-275301c7"]]),b6=V({__name:"logo",props:{szie:{type:Number,default:34},title:{type:String},theme:{type:String},showTitle:{type:Boolean,default:!0}},setup(a){const o=S(),e=b(()=>o.config),t=n3(),l=()=>{t.push("/")};return(c,n)=>{const r=z6,s=_6;return h(),g("div",{class:"logo",onClick:l},[u(r,{width:a.szie,height:a.szie,src:m(e).web_logo},null,8,["width","height","src"]),u(_0,{name:"title-width"},{default:z(()=>[m1(d("div",{class:b3(["logo-title overflow-hidden whitespace-nowrap",{"text-white":a.theme==m(_1).DARK}]),style:r3({left:`${a.szie+16}px`})},[u(s,{content:a.title||m(e).web_name,teleported:!0,placement:"bottom","overflo-type":"unset"},null,8,["content"])],6),[[v1,a.showTitle]])]),_:1})])}}}),y6=P(b6,[["__scopeId","data-v-590d56e3"]]),g6=V({__name:"index",props:{to:{},replace:{type:Boolean}},setup(a){const o=a,e=b(()=>typeof o.to!="object"&&J(o.to)),t=b(()=>e.value?"a":"router-link"),l=b(()=>e.value?{href:o.to,target:"_blank"}:o);return(c,n)=>(h(),A(r1(m(t)),n0(t0(m(l))),{default:z(()=>[i0(c.$slots,"default")]),_:3},16))}}),w6=V({__name:"menu-item",props:{route:{},routePath:{},popperClass:{}},setup(a){const o=a,e=b(()=>!!(o.route.children??[]).filter(r=>{var s;return!((s=r.meta)!=null&&s.hidden)}).length),t=b(()=>o.route.meta),l=n=>J(n)?n:_2(`${o.routePath}/${n}`),c=b(()=>{var r;const n=(r=o.route.meta)==null?void 0:r.query;try{const s=JSON.parse(n);return p2(s)}catch{return n}});return(n,r)=>{var O;const s=G,_=F1,p=g6,v=s3("menu-item",!0),w=Y1;return(O=a.route.meta)!=null&&O.hidden?B("",!0):(h(),g(D,{key:0},[m(e)?(h(),A(w,{key:1,index:a.routePath,"popper-class":a.popperClass},{title:z(()=>{var M,E,f;return[(M=m(t))!=null&&M.icon?(h(),A(s,{key:0,class:"menu-item-icon",size:16,name:(E=m(t))==null?void 0:E.icon},null,8,["name"])):B("",!0),d("span",null,R((f=m(t))==null?void 0:f.title),1)]}),default:z(()=>{var M;return[(h(!0),g(D,null,K((M=a.route)==null?void 0:M.children,E=>(h(),A(v,{key:l(E.path),route:E,"route-path":l(E.path),"popper-class":a.popperClass},null,8,["route","route-path","popper-class"]))),128))]}),_:1},8,["index","popper-class"])):(h(),A(p,{key:0,to:`${a.routePath}?${m(c)}`},{default:z(()=>[u(_,{index:a.routePath},{title:z(()=>{var M;return[d("span",null,R((M=m(t))==null?void 0:M.title),1)]}),default:z(()=>{var M,E;return[(M=m(t))!=null&&M.icon?(h(),A(s,{key:0,class:"menu-item-icon",size:16,name:(E=m(t))==null?void 0:E.icon},null,8,["name"])):B("",!0)]}),_:1},8,["index"])]),_:1},8,["to"]))],64))}}}),f6=P(w6,[["__scopeId","data-v-65172b69"]]),A6=V({__name:"menu",props:{routes:{type:Object},config:{type:Object},uniqueOpened:{type:Boolean,default:!1},isCollapsed:{type:Boolean,default:!1},theme:{type:String},width:{type:Number,default:200}},emits:["select"],setup(a){const o=a,e=V3(),t=b(()=>{var c;return((c=e.meta)==null?void 0:c.activeMenu)||e.path}),l=b(()=>`theme-${o.theme}`);return(c,n)=>{const r=Z1,s=l1;return h(),g("div",{class:b3(["menu flex-1 min-h-0",m(l)]),style:r3(a.isCollapsed?"":`--aside-width: ${a.width}px`)},[u(s,null,{default:z(()=>[u(r,j3(a.config,{"default-active":m(t),collapse:a.isCollapsed,mode:"vertical","unique-opened":a.uniqueOpened,onSelect:n[0]||(n[0]=_=>c.$emit("select"))}),{default:z(()=>[(h(!0),g(D,null,K(a.routes,_=>(h(),A(f6,{key:_.path,route:_,"route-path":_.path,"popper-class":m(l)},null,8,["route","route-path","popper-class"]))),128))]),_:1},16,["default-active","collapse","unique-opened"])]),_:1})],6)}}}),V6=P(A6,[["__scopeId","data-v-6c529f19"]]),L6=V({__name:"side",setup(a){const o=S(),e=b(()=>o.isMobile?!1:o.isCollapsed),t=W(),l=b(()=>t.sideTheme),c=Y(),n=b(()=>c.routes),r=b(()=>l.value=="dark"?{"--side-dark-color":t.sideDarkColor}:""),s=b(()=>({backgroundColor:l.value=="dark"?t.sideDarkColor:"",textColor:l.value=="dark"?"var(--el-color-white)":"",activeTextColor:l.value=="dark"?"var(--el-color-white)":""})),_=()=>{o.isMobile&&o.toggleCollapsed(!0)};return(p,v)=>(h(),g("div",{class:"side",style:r3(m(r))},[m(t).showLogo?(h(),A(y6,{key:0,"show-title":!m(e),theme:m(l)},null,8,["show-title","theme"])):B("",!0),u(V6,{routes:m(n),"is-collapsed":m(e),width:m(t).sideWidth,"unique-opened":m(t).isUniqueOpened,config:m(s),theme:m(l),onSelect:_},null,8,["routes","is-collapsed","width","unique-opened","config","theme"])],4))}}),F3=P(L6,[["__scopeId","data-v-ed43753e"]]),M6={class:"sidebar h-full"},x6=V({__name:"index",setup(a){const o=S(),e=W(),t=b(()=>o.isMobile),l=b({get(){return!o.isCollapsed&&t.value},set(n){o.toggleCollapsed(!n)}}),c=b(()=>`${e.sideWidth+1}px`);return(n,r)=>{const s=a1;return h(),g("aside",M6,[u(s,{modelValue:m(l),"onUpdate:modelValue":r[0]||(r[0]=_=>k(l)?l.value=_:null),direction:"ltr",size:m(c),title:"主题设置","with-header":!1},{default:z(()=>[u(F3)]),_:1},8,["modelValue","size"]),m1(u(F3,null,null,512),[[v1,!m(t)]])])}}}),E6=P(x6,[["__scopeId","data-v-7243bf96"]]),H6={class:"layout-default flex h-screen w-full"},T6={class:"app-aside shrink-0"},O6={class:"flex-1 flex flex-col min-w-0"},I6={class:"app-header"},R6={class:"app-main flex-1 min-h-0"},P6=V({__name:"index",setup(a){return(o,e)=>(h(),g("div",H6,[d("div",T6,[u(E6)]),d("div",O6,[d("div",I6,[u(u6)]),d("div",R6,[u(v6)])])]))}}),l3=()=>Promise.resolve(P6),M3=Symbol(),D6=[{path:"/:pathMatch(.*)*",component:()=>i(()=>import("./404-DopFFIyJ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]))},{path:T.ERROR_403,component:()=>i(()=>import("./403-CYtFk05Q.js"),__vite__mapDeps([41,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]))},{path:T.LOGIN,component:()=>i(()=>import("./login-BK5Sfx9J.js"),__vite__mapDeps([42,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,45]))},{path:"/change-password",component:()=>i(()=>import("./change-password-CmlJDDIV.js"),__vite__mapDeps([46,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,47]))},{path:"/bind-work-wechat",component:()=>i(()=>import("./bind-work-wechat-BJictqnk.js"),__vite__mapDeps([48,2,3,4,5,6,7,8,9,10,11,12,13,14,15,44,49,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,50]))},{path:"/user",component:l3,children:[{path:"setting",component:()=>i(()=>import("./setting-I73bbSku.js"),__vite__mapDeps([51,2,3,4,5,6,7,8,9,10,11,12,13,14,15,52,53,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,49,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,73])),name:Symbol(),meta:{title:"个人设置"}}]},{path:"/doctor",component:l3,children:[{path:"progress",component:()=>i(()=>import("./progress-Dk3GB0SN.js"),__vite__mapDeps([74,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,75,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,76])),name:"doctorFaceProgress",meta:{title:"面诊进度"}}]},{path:"/decoration/pc_details",component:()=>i(()=>import("./pc_details-CR93pqsw.js"),__vite__mapDeps([77,2,3,4,5,6,7,8,9,10,11,12,13,14,15,78,79,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116]))},{path:"/fans/h5",component:()=>i(()=>import("./h5-CmvmpHND.js"),__vite__mapDeps([117,2,3,4,5,6,7,8,9,10,11,12,13,14,15,118,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,119]))},{path:"/tcm/diagnosis/h5",component:()=>i(()=>import("./index_h5-CXWkZooV.js"),__vite__mapDeps([120,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,122,75,123,65,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,125]))},{path:"/tcm/diagnosis-readonly",component:l3,meta:{hidden:!0},children:[{path:"",component:()=>i(()=>import("./readonly-hz28EqXX.js"),__vite__mapDeps([126,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,121,127,128,124,129,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,130,131,132,133,134,135,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,75,153,154,155,156,157,158])),name:"tcmDiagnosisReadonly",meta:{title:"患者信息详情",hidden:!0,activeMenu:"/tcm/diagnosis"}}]}],v3={path:T.INDEX,component:l3,name:M3},C3=Object.assign({"/src/views/account/bind-work-wechat.vue":()=>i(()=>import("./bind-work-wechat-BJictqnk.js"),__vite__mapDeps([48,2,3,4,5,6,7,8,9,10,11,12,13,14,15,44,49,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,50])),"/src/views/account/change-password.vue":()=>i(()=>import("./change-password-CmlJDDIV.js"),__vite__mapDeps([46,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,47])),"/src/views/account/login.vue":()=>i(()=>import("./login-BK5Sfx9J.js"),__vite__mapDeps([42,2,3,4,5,6,7,8,9,10,11,12,13,14,15,43,44,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,45])),"/src/views/app/recharge/index.vue":()=>i(()=>import("./index-DOn0iTI1.js"),__vite__mapDeps([159,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/column/edit.vue":()=>i(()=>import("./edit-ASLpBzXk.js"),__vite__mapDeps([160,161,2,3,4,5,6,7,8,9,10,11,12,13,14,15,83,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/column/index.vue":()=>i(()=>import("./index-CazqMJ8f.js"),__vite__mapDeps([162,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,83,65,161,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/lists/edit.vue":()=>i(()=>import("./edit-Bj7qxXPN.js"),__vite__mapDeps([163,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,164,165,166,167,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,168,83,169,16,17,18,19,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/article/lists/index.vue":()=>i(()=>import("./index-anE0XvOM.js"),__vite__mapDeps([170,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,83,169,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/h5.vue":()=>i(()=>import("./h5-Cnu0poEu.js"),__vite__mapDeps([171,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/open_setting.vue":()=>i(()=>import("./open_setting-CLvZN6m0.js"),__vite__mapDeps([172,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/weapp.vue":()=>i(()=>import("./weapp-CSekzxlI.js"),__vite__mapDeps([173,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,123,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/config.vue":()=>i(()=>import("./config-C_Ur91ii.js"),__vite__mapDeps([174,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,175,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu.vue":()=>i(()=>import("./menu-BtDKpBI_.js"),__vite__mapDeps([176,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,177,59,60,55,56,178,179,175,180,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,181,182])),"/src/views/channel/wx_oa/menu_com/oa-attr.vue":()=>i(()=>import("./oa-attr-Ct9DaDF9.js"),__vite__mapDeps([177,59,5,6,7,4,3,60,55,2,8,9,10,11,12,13,14,15,56,178,179,175,180,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu_com/oa-menu-form-edit.vue":()=>i(()=>import("./oa-menu-form-edit-PrVRlCrB.js"),__vite__mapDeps([183,180,55,2,3,4,5,6,7,8,9,10,11,12,13,14,15,56,178,179,175,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu_com/oa-menu-form.vue":()=>i(()=>import("./oa-menu-form-BVjP1ZgE.js"),__vite__mapDeps([184,178,2,3,4,5,6,7,8,9,10,11,12,13,14,15,179,175,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/menu_com/oa-phone.vue":()=>i(()=>import("./oa-phone-Bv_M1dC8.js"),__vite__mapDeps([181,2,3,4,5,6,7,8,9,10,11,12,13,14,15,179,175,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,182])),"/src/views/channel/wx_oa/reply/default_reply.vue":()=>i(()=>import("./default_reply-B3C3UH9r.js"),__vite__mapDeps([185,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,175,65,186,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/reply/edit.vue":()=>i(()=>import("./edit-CWxEoG6s.js"),__vite__mapDeps([187,186,2,3,4,5,6,7,8,9,10,11,12,13,14,15,175,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/reply/follow_reply.vue":()=>i(()=>import("./follow_reply-BpsbGJKg.js"),__vite__mapDeps([188,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,175,65,186,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/channel/wx_oa/reply/keyword_reply.vue":()=>i(()=>import("./keyword_reply-BLQGh5QI.js"),__vite__mapDeps([189,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,175,65,186,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/chat/components/MessageBubble.vue":()=>i(()=>import("./MessageBubble-CApbg15I.js"),__vite__mapDeps([190,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,191])),"/src/views/chat/components/SendPanel.vue":()=>i(()=>import("./SendPanel-Dz5Tcn_r.js").then(a=>a.i),__vite__mapDeps([192,2,3,4,5,6,7,8,9,10,11,12,13,14,15,63,193])),"/src/views/chat/index.vue":()=>i(()=>import("./index-C11LcA3l.js"),__vite__mapDeps([194,2,3,4,5,6,7,8,9,10,11,12,13,14,15,65,190,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,191,192,63,193,195])),"/src/views/consumer/assistant/edit.vue":()=>i(()=>import("./edit-BS5dUZ6W.js"),__vite__mapDeps([196,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,197,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,200])),"/src/views/consumer/assistant/index.vue":()=>i(()=>import("./index-C3w0jYsZ.js"),__vite__mapDeps([201,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,197,65,196,54,55,56,57,59,60,61,62,63,64,22,23,66,67,68,69,70,71,72,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,200,202])),"/src/views/consumer/components/account-adjust.vue":()=>i(()=>import("./account-adjust-CCxpv-Lh.js"),__vite__mapDeps([203,204,2,3,4,5,6,7,8,9,10,11,12,13,14,15,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/doctor/edit.vue":()=>i(()=>import("./edit-BowxPaau.js"),__vite__mapDeps([205,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,197,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,206])),"/src/views/consumer/doctor/index.vue":()=>i(()=>import("./index-Dq58HRUS.js"),__vite__mapDeps([207,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,197,65,205,54,55,56,57,59,60,61,62,63,64,22,23,66,67,68,69,70,71,72,198,199,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,206,208])),"/src/views/consumer/doctor/paiban.vue":()=>i(()=>import("./paiban-BEVhjp7u.js"),__vite__mapDeps([209,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,210])),"/src/views/consumer/lists/detail.vue":()=>i(()=>import("./detail-BHArlIAw.js"),__vite__mapDeps([211,2,3,4,5,6,7,8,9,10,11,12,13,14,15,64,22,23,212,204,55,56,16,17,18,19,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/lists/index.vue":()=>i(()=>import("./index-D2g_xmnm.js"),__vite__mapDeps([213,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,212,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/prescription/guahao.vue":()=>i(()=>import("./guahao-BYsrTfrt.js"),__vite__mapDeps([216,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,75,121,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/consumer/prescription/index.vue":()=>i(()=>import("./index-BV_bClbl.js"),__vite__mapDeps([217,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,218,219,65,215,220,221,16,222,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,223])),"/src/views/consumer/prescription/list.vue":()=>i(()=>import("./list-ClE78U4n.js"),__vite__mapDeps([224,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,65,220,218,221,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,225])),"/src/views/consumer/prescription/order_list.vue":()=>i(()=>import("./order_list-BN8dBg8z.js"),__vite__mapDeps([226,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,16,215,121,222,198,65,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,227])),"/src/views/consumer/prescription/order_list_h5.vue":()=>i(()=>import("./order_list_h5-Cw3qXm8_.js"),__vite__mapDeps([228,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,121,222,198,65,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,229])),"/src/views/decoration/component/add-nav.vue":()=>i(()=>import("./add-nav-gQxFxSGY.js"),__vite__mapDeps([230,95,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/decoration-img.vue":()=>i(()=>import("./decoration-img-Bn25X5JS.js"),__vite__mapDeps([87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/pages/attr-setting.vue":()=>i(()=>import("./attr-setting-BOx1YrNf.js"),__vite__mapDeps([231,232,2,3,4,5,6,7,8,9,10,11,12,13,14,15,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,78,102,103,104,105,106,107,108,109,110,111,112,113,114])),"/src/views/decoration/component/pages/menu.vue":()=>i(()=>import("./menu-DAbI419p.js"),__vite__mapDeps([233,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,234])),"/src/views/decoration/component/pages/preview-pc.vue":()=>i(()=>import("./preview-pc-C8bP-zog.js"),__vite__mapDeps([79,2,3,4,5,6,7,8,9,10,11,12,13,14,15,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,78,102,103,104,105,106,107,108,109,110,111,112,113,114,115])),"/src/views/decoration/component/pages/preview.vue":()=>i(()=>import("./preview-gBcw24wE.js"),__vite__mapDeps([235,2,3,4,5,6,7,8,9,10,11,12,13,14,15,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,78,102,103,104,105,106,107,108,109,110,111,112,113,114,236])),"/src/views/decoration/component/tabbar/mobile/attr.vue":()=>i(()=>import("./attr-CX-O-xtp.js"),__vite__mapDeps([237,238,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,104,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/tabbar/mobile/content.vue":()=>i(()=>import("./content-C08_uobP.js"),__vite__mapDeps([239,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,240])),"/src/views/decoration/component/tabbar/pc/attr.vue":()=>i(()=>import("./attr-DTDA9wc-.js"),__vite__mapDeps([241,2,3,4,5,6,7,8,9,10,11,12,13,14,15,242,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/tabbar/pc/content.vue":()=>i(()=>import("./content-T4Jkt9D0.js"),__vite__mapDeps([243,2,3,4,5,6,7,8,9,10,11,12,13,14,15,87,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,244])),"/src/views/decoration/component/tabbar/pc/menu-set.vue":()=>i(()=>import("./menu-set-H0F6w48t.js"),__vite__mapDeps([245,242,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/banner/attr.vue":()=>i(()=>import("./attr-LeDws8D5.js"),__vite__mapDeps([81,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85])),"/src/views/decoration/component/widgets/banner/content.vue":()=>i(()=>import("./content-B7Rh7c78.js"),__vite__mapDeps([246,86,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/customer-service/attr.vue":()=>i(()=>import("./attr-CE0o2vlh.js"),__vite__mapDeps([247,89,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/customer-service/content.vue":()=>i(()=>import("./content-DeSOYKs_.js"),__vite__mapDeps([90,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,91])),"/src/views/decoration/component/widgets/middle-banner/attr.vue":()=>i(()=>import("./attr-CO38y5Gg.js"),__vite__mapDeps([248,92,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/middle-banner/content.vue":()=>i(()=>import("./content-DKdIp2AF.js"),__vite__mapDeps([249,93,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/my-service/attr.vue":()=>i(()=>import("./attr-DDEaRP1C.js"),__vite__mapDeps([250,94,2,3,4,5,6,7,8,9,10,11,12,13,14,15,95,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/my-service/content.vue":()=>i(()=>import("./content-BRFykSo7.js"),__vite__mapDeps([96,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88,97])),"/src/views/decoration/component/widgets/nav/attr.vue":()=>i(()=>import("./attr-so5YA3Dq.js"),__vite__mapDeps([251,98,2,3,4,5,6,7,8,9,10,11,12,13,14,15,95,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/nav/content.vue":()=>i(()=>import("./content-CllbtYBr.js"),__vite__mapDeps([252,99,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/news/attr.vue":()=>i(()=>import("./attr-Db6EuK6T.js"),__vite__mapDeps([253,100,5,6,7,4])),"/src/views/decoration/component/widgets/news/content.vue":()=>i(()=>import("./content-TNbubsqc.js"),__vite__mapDeps([101,78,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,102])),"/src/views/decoration/component/widgets/page-meta/attr.vue":()=>i(()=>import("./attr-Byjux4Bs.js"),__vite__mapDeps([254,103,2,3,4,5,6,7,8,9,10,11,12,13,14,15,104,22,23,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/page-meta/content.vue":()=>i(()=>import("./content-DDJw1TZH.js"),__vite__mapDeps([105,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/pc-banner/content.vue":()=>i(()=>import("./content-B7hHbbXh.js"),__vite__mapDeps([255,106,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/search/attr.vue":()=>i(()=>import("./attr-BS21VV6Q.js"),__vite__mapDeps([256,107,5,6,7,4])),"/src/views/decoration/component/widgets/search/content.vue":()=>i(()=>import("./content-By25GabM.js"),__vite__mapDeps([108,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,109])),"/src/views/decoration/component/widgets/user-banner/attr.vue":()=>i(()=>import("./attr-B4x0BxoO.js"),__vite__mapDeps([257,110,2,3,4,5,6,7,8,9,10,11,12,13,14,15,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/component/widgets/user-banner/content.vue":()=>i(()=>import("./content-bXaLxCis.js"),__vite__mapDeps([258,111,87,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,88])),"/src/views/decoration/component/widgets/user-info/attr.vue":()=>i(()=>import("./attr-gr_OE7on.js"),__vite__mapDeps([259,112,5,6,7,4])),"/src/views/decoration/component/widgets/user-info/content.vue":()=>i(()=>import("./content-BLxl9Qo-.js"),__vite__mapDeps([113,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,114])),"/src/views/decoration/pages/index.vue":()=>i(()=>import("./index-B64L9SAA.js"),__vite__mapDeps([260,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,78,232,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,233,234,235,236,261])),"/src/views/decoration/pc.vue":()=>i(()=>import("./pc-DCi3Nq16.js"),__vite__mapDeps([262,2,3,4,5,6,7,8,9,10,11,12,13,14,15,78,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/decoration/pc_details.vue":()=>i(()=>import("./pc_details-CR93pqsw.js"),__vite__mapDeps([77,2,3,4,5,6,7,8,9,10,11,12,13,14,15,78,79,80,81,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,22,23,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116])),"/src/views/decoration/style/components/mobile-style.vue":()=>i(()=>import("./mobile-style-4_UCVEqX.js"),__vite__mapDeps([263,264,2,3,4,5,6,7,8,9,10,11,12,13,14,15,104,22,23,265,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,266])),"/src/views/decoration/style/components/theme-picker.vue":()=>i(()=>import("./theme-picker-6MJIe8r7.js"),__vite__mapDeps([265,22,23,6,7,4,5,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,266])),"/src/views/decoration/style/style.vue":()=>i(()=>import("./style-C7rdSz_0.js"),__vite__mapDeps([267,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,78,264,104,22,23,265,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,266])),"/src/views/decoration/tabbar.vue":()=>i(()=>import("./tabbar-BCvE1VW6.js"),__vite__mapDeps([268,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,78,233,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,234,238,59,60,82,55,56,58,83,65,84,54,57,61,62,63,64,66,67,68,69,70,71,72,104,239,87,88,240,269])),"/src/views/dev_tools/code/edit.vue":()=>i(()=>import("./edit-mXenLf8p.js"),__vite__mapDeps([270,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,271,272,273,169,274,55,56,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,275])),"/src/views/dev_tools/code/index.vue":()=>i(()=>import("./index-FUMZSHyo.js"),__vite__mapDeps([276,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,273,65,277,32,33,278,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39])),"/src/views/dev_tools/components/code-preview.vue":()=>i(()=>import("./code-preview-DrK3tprG.js"),__vite__mapDeps([279,277,2,3,4,5,6,7,8,9,10,11,12,13,14,15,32,33,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,34,35,36,37,38,39])),"/src/views/dev_tools/components/data-table.vue":()=>i(()=>import("./data-table-Ba_q4X-N.js"),__vite__mapDeps([280,278,2,3,4,5,6,7,8,9,10,11,12,13,14,15,273,58,55,56,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/dev_tools/components/relations-add.vue":()=>i(()=>import("./relations-add-DIyG8vSg.js"),__vite__mapDeps([281,274,2,3,4,5,6,7,8,9,10,11,12,13,14,15,273,55,56,169,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/doctor/dept-tongji.vue":()=>i(()=>import("./dept-tongji-DTpWoRQ0.js"),__vite__mapDeps([282,2,3,4,5,6,7,8,9,10,11,12,13,14,15,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,283])),"/src/views/doctor/medicine.vue":()=>i(()=>import("./medicine-CEyDY1rx.js"),__vite__mapDeps([284,2,3,4,5,6,7,8,9,10,11,12,13,14,15,218,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,285])),"/src/views/doctor/progress.vue":()=>i(()=>import("./progress-Dk3GB0SN.js"),__vite__mapDeps([74,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,75,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,76])),"/src/views/doctor/roster.vue":()=>i(()=>import("./roster-Clo3lqg1.js"),__vite__mapDeps([286,2,3,4,5,6,7,8,9,10,11,12,13,14,15,197,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,287])),"/src/views/doctor/tongji.vue":()=>i(()=>import("./tongji-C0pqWBk3.js"),__vite__mapDeps([288,2,3,4,5,6,7,8,9,10,11,12,13,14,15,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,289])),"/src/views/error/403.vue":()=>i(()=>import("./403-CYtFk05Q.js"),__vite__mapDeps([41,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),"/src/views/error/404.vue":()=>i(()=>import("./404-DopFFIyJ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),"/src/views/error/components/error.vue":()=>i(()=>import("./error-BqZT2_OW.js"),__vite__mapDeps([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])),"/src/views/fans/commission-settlement.vue":()=>i(()=>import("./commission-settlement-Dtr52e_y.js"),__vite__mapDeps([290,2,3,4,5,6,7,8,9,10,11,12,13,14,15,291,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,292])),"/src/views/fans/h5.vue":()=>i(()=>import("./h5-CmvmpHND.js"),__vite__mapDeps([117,2,3,4,5,6,7,8,9,10,11,12,13,14,15,118,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,119])),"/src/views/fans/index.vue":()=>i(()=>import("./index--WxeEniq.js"),__vite__mapDeps([293,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,118,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/fans/qywx.vue":()=>i(()=>import("./qywx-CDt9a_vU.js"),__vite__mapDeps([294,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,295])),"/src/views/fans/yeji.vue":()=>i(()=>import("./yeji-Wv5859YQ.js"),__vite__mapDeps([296,2,3,4,5,6,7,8,9,10,11,12,13,14,15,21,136,137,34,35,36,291,297,121,124,17,18,19,16,20,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,298])),"/src/views/finance/account_cost/edit.vue":()=>i(()=>import("./edit-BJAaLgsl.js"),__vite__mapDeps([299,2,3,4,5,6,7,8,9,10,11,12,13,14,15,297,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,300])),"/src/views/finance/account_cost/index.vue":()=>i(()=>import("./index-DV0DYErj.js"),__vite__mapDeps([301,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,297,65,299,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,300,302])),"/src/views/finance/balance_details.vue":()=>i(()=>import("./balance_details-BV6ycfYV.js"),__vite__mapDeps([303,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,297,169,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/finance/component/refund-log.vue":()=>i(()=>import("./refund-log-DeGBbgar.js"),__vite__mapDeps([304,305,2,3,4,5,6,7,8,9,10,11,12,13,14,15,297,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/finance/mubiao-dept-card.vue":()=>i(()=>import("./mubiao-dept-card-CbtPJAzl.js"),__vite__mapDeps([306,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,307])),"/src/views/finance/mubiao-dept-node.vue":()=>i(()=>import("./mubiao-dept-node-B-dTX5VO.js"),__vite__mapDeps([308,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,309])),"/src/views/finance/mubiao.vue":()=>i(()=>import("./mubiao-KkfmSA0m.js"),__vite__mapDeps([310,2,3,4,5,6,7,8,9,10,11,12,13,14,15,306,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,307,297,311])),"/src/views/finance/recharge_record.vue":()=>i(()=>import("./recharge_record-mWDEyCxs.js"),__vite__mapDeps([312,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,297,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/finance/refund_record.vue":()=>i(()=>import("./refund_record-3X79bN9_.js"),__vite__mapDeps([313,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,297,65,305,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/material/index.vue":()=>i(()=>import("./index-CBm-WmPc.js"),__vite__mapDeps([314,2,3,4,5,6,7,8,9,10,11,12,13,14,15,57,58,59,60,55,56,61,62,63,64,22,23,65,66,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,315])),"/src/views/message/notice/edit.vue":()=>i(()=>import("./edit-C__1lqOK.js"),__vite__mapDeps([316,2,3,4,5,6,7,8,9,10,11,12,13,14,15,52,53,317,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/message/notice/index.vue":()=>i(()=>import("./index-DN0U2fnj.js"),__vite__mapDeps([318,2,3,4,5,6,7,8,9,10,11,12,13,14,15,317,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/message/short_letter/edit.vue":()=>i(()=>import("./edit-BT12nby0.js"),__vite__mapDeps([319,320,2,3,4,5,6,7,8,9,10,11,12,13,14,15,317,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/message/short_letter/index.vue":()=>i(()=>import("./index-BHiaYJeM.js"),__vite__mapDeps([321,2,3,4,5,6,7,8,9,10,11,12,13,14,15,317,320,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/order/index.vue":()=>i(()=>import("./index-Cj72c8kg.js"),__vite__mapDeps([322,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,65,122,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,323])),"/src/views/organization/department/edit.vue":()=>i(()=>import("./edit-BVcM1H4r.js"),__vite__mapDeps([324,325,2,3,4,5,6,7,8,9,10,11,12,13,14,15,198,55,56,169,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/organization/department/index.vue":()=>i(()=>import("./index-DzLSMUVP.js"),__vite__mapDeps([326,2,3,4,5,6,7,8,9,10,11,12,13,14,15,198,325,55,56,169,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/organization/post/edit.vue":()=>i(()=>import("./edit-D_EVoHF9.js"),__vite__mapDeps([327,328,2,3,4,5,6,7,8,9,10,11,12,13,14,15,199,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/organization/post/index.vue":()=>i(()=>import("./index-BgP7VahB.js"),__vite__mapDeps([329,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,199,65,328,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/patient/reception/components/NoteTimeline.vue":()=>i(()=>import("./NoteTimeline-Vt4S5dzs.js"),__vite__mapDeps([156,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,127,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,157])),"/src/views/patient/reception/index.vue":()=>i(()=>import("./index-3Xy1OQb4.js"),__vite__mapDeps([330,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,127,156,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,157,129,128,130,131,132,133,134,135,136,137,138,121,124,139,140,75,331])),"/src/views/permission/admin/edit.vue":()=>i(()=>import("./edit-q_Bxd75_.js"),__vite__mapDeps([332,333,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,198,199,197,219,169,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/admin/index.vue":()=>i(()=>import("./index-BFc25KGY.js"),__vite__mapDeps([334,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,197,219,169,65,333,54,57,59,60,61,62,63,64,22,23,66,67,68,69,70,71,72,198,199,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/menu/edit.vue":()=>i(()=>import("./edit-lTigZ_qg.js"),__vite__mapDeps([335,336,2,3,4,5,6,7,8,9,10,11,12,13,14,15,337,22,23,271,55,56,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/menu/index.vue":()=>i(()=>import("./index-mMzAJGGu.js"),__vite__mapDeps([338,2,3,4,5,6,7,8,9,10,11,12,13,14,15,271,65,336,337,22,23,55,56,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/role/auth.vue":()=>i(()=>import("./auth-T9dg0X60.js"),__vite__mapDeps([339,340,2,3,4,5,6,7,8,9,10,11,12,13,14,15,271,219,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/role/edit.vue":()=>i(()=>import("./edit-uu_5ibVr.js"),__vite__mapDeps([341,342,2,3,4,5,6,7,8,9,10,11,12,13,14,15,219,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/permission/role/index.vue":()=>i(()=>import("./index-He0eWbxD.js"),__vite__mapDeps([343,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,219,65,340,271,55,56,342,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/data/edit.vue":()=>i(()=>import("./edit-D6VzjpSE.js"),__vite__mapDeps([344,345,2,3,4,5,6,7,8,9,10,11,12,13,14,15,272,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/data/index.vue":()=>i(()=>import("./index-clkQE9Cl.js"),__vite__mapDeps([346,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,272,65,345,55,56,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/type/edit.vue":()=>i(()=>import("./edit-ZxXJUj0T.js"),__vite__mapDeps([347,348,2,3,4,5,6,7,8,9,10,11,12,13,14,15,272,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/dict/type/index.vue":()=>i(()=>import("./index-BilNp2wo.js"),__vite__mapDeps([349,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,272,65,348,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/pay/config/edit.vue":()=>i(()=>import("./edit-B6nlFjfE.js"),__vite__mapDeps([350,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,351,43,352,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,353])),"/src/views/setting/pay/config/index.vue":()=>i(()=>import("./index-IlWlPkOx.js"),__vite__mapDeps([354,2,3,4,5,6,7,8,9,10,11,12,13,14,15,351,352,350,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,43,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,353])),"/src/views/setting/pay/method/index.vue":()=>i(()=>import("./index-GlwehVLz.js"),__vite__mapDeps([355,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,351,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/search/index.vue":()=>i(()=>import("./index-D1BQ-z9J.js"),__vite__mapDeps([356,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,357])),"/src/views/setting/storage/edit.vue":()=>i(()=>import("./edit-BcZRFQne.js"),__vite__mapDeps([358,359,2,3,4,5,6,7,8,9,10,11,12,13,14,15,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/storage/index.vue":()=>i(()=>import("./index-DPG02AxB.js"),__vite__mapDeps([360,2,3,4,5,6,7,8,9,10,11,12,13,14,15,359,55,56,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/cache.vue":()=>i(()=>import("./cache-Dcdk6Ai4.js"),__vite__mapDeps([361,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/environment.vue":()=>i(()=>import("./environment-BUW8BqoD.js"),__vite__mapDeps([362,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/journal.vue":()=>i(()=>import("./journal-B6J_9bs1.js"),__vite__mapDeps([363,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,214,55,56,215,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/scheduled_task/edit.vue":()=>i(()=>import("./edit-B612o9OQ.js"),__vite__mapDeps([364,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/system/scheduled_task/index.vue":()=>i(()=>import("./index-DIRz-m-f.js"),__vite__mapDeps([365,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/user/login_register.vue":()=>i(()=>import("./login_register-FZoA6yWr.js"),__vite__mapDeps([366,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,367,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/user/setup.vue":()=>i(()=>import("./setup-BJisEyDs.js"),__vite__mapDeps([368,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,367,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/filing.vue":()=>i(()=>import("./filing-BobnA8KA.js"),__vite__mapDeps([369,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,59,60,370,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/information.vue":()=>i(()=>import("./information-Dz_HQSyz.js"),__vite__mapDeps([371,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,370,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/protocol.vue":()=>i(()=>import("./protocol-BloD-dLt.js"),__vite__mapDeps([372,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,164,165,166,167,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,168,370,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/setting/website/statistics.vue":()=>i(()=>import("./statistics-CCqrf9HY.js"),__vite__mapDeps([373,52,5,6,7,4,53,2,3,8,9,10,11,12,13,14,15,370,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/stats/assistant-performance/index.vue":()=>i(()=>import("./index-DnJy5Y47.js"),__vite__mapDeps([374,2,3,4,5,6,7,8,9,10,11,12,13,14,15,136,137,34,35,36,291,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,375])),"/src/views/stats/conversion/index.vue":()=>i(()=>import("./index-Cc-ZnmoQ.js"),__vite__mapDeps([376,58,2,3,4,5,6,7,8,9,10,11,12,13,14,15,136,137,34,35,36,291,65,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,377])),"/src/views/stats/self_input/MediaSourceSelect.vue":()=>i(()=>import("./MediaSourceSelect-BPfd1tNV.js"),__vite__mapDeps([378,379,2,3,4,5,6,7,8,9,10,11,12,13,14,15])),"/src/views/stats/self_input/account_cost.vue":()=>i(()=>import("./account_cost-CeAkSL4u.js"),__vite__mapDeps([380,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,381,198,65,382,55,56,379,383,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,384])),"/src/views/stats/self_input/cost-edit.vue":()=>i(()=>import("./cost-edit-DOI5rSqz.js"),__vite__mapDeps([385,382,2,3,4,5,6,7,8,9,10,11,12,13,14,15,381,55,56,379,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/stats/self_input/index.vue":()=>i(()=>import("./index-CSxkUFTY.js"),__vite__mapDeps([386,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,381,198,65,379,387,55,56,383,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,388])),"/src/views/stats/self_input/yeji-edit.vue":()=>i(()=>import("./yeji-edit-D6URky3V.js"),__vite__mapDeps([389,387,2,3,4,5,6,7,8,9,10,11,12,13,14,15,381,55,56,379,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/tcm/appointment/components/prescription-drawer.vue":()=>i(()=>import("./prescription-drawer-CemRD-dp.js"),__vite__mapDeps([390,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,220,218,221,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,391])),"/src/views/tcm/appointment/list.vue":()=>i(()=>import("./list-Xx7Iy3U_.js"),__vite__mapDeps([392,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,215,65,75,121,133,123,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,393])),"/src/views/tcm/diagnosis/add.vue":()=>i(()=>import("./add-DdKFZhja.js"),__vite__mapDeps([394,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,395])),"/src/views/tcm/diagnosis/appointment.vue":()=>i(()=>import("./appointment-CmXNV-jm.js"),__vite__mapDeps([396,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,397])),"/src/views/tcm/diagnosis/components/AppointmentRecordPanel.vue":()=>i(()=>import("./AppointmentRecordPanel-CNtykthG.js"),__vite__mapDeps([152,2,3,4,5,6,7,8,9,10,11,12,13,14,15,75,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,153])),"/src/views/tcm/diagnosis/components/AssignLogPanel.vue":()=>i(()=>import("./AssignLogPanel-nLggvTO6.js"),__vite__mapDeps([150,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,151])),"/src/views/tcm/diagnosis/components/AssistantWatchCallDialog.vue":()=>i(()=>import("./AssistantWatchCallDialog-4k1wpmUn.js"),__vite__mapDeps([398,2,3,4,5,6,7,8,9,10,11,12,13,14,15,399,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,400])),"/src/views/tcm/diagnosis/components/BloodRecordList.vue":()=>i(()=>import("./BloodRecordList-D8lZsyog.js"),__vite__mapDeps([401,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,34,35,36,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,402])),"/src/views/tcm/diagnosis/components/CallRecordPanel.vue":()=>i(()=>import("./CallRecordPanel-BQekhSi-.js"),__vite__mapDeps([141,2,3,4,5,6,7,8,9,10,11,12,13,14,15,142,143,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,144,145,61,62,63,121,146])),"/src/views/tcm/diagnosis/components/CaseRecordList.vue":()=>i(()=>import("./CaseRecordList-Dl_AaWiA.js"),__vite__mapDeps([403,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,404])),"/src/views/tcm/diagnosis/components/DailyMatrix.vue":()=>i(()=>import("./DailyMatrix-DyqovtVx.js"),__vite__mapDeps([135,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,136,137,34,35,36,138,121,124,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,37,38,39,139,132,140])),"/src/views/tcm/diagnosis/components/DiagnosisTodoList.vue":()=>i(()=>import("./DiagnosisTodoList-Be3uAeoQ.js"),__vite__mapDeps([138,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,124,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,139])),"/src/views/tcm/diagnosis/components/DietRecordList.vue":()=>i(()=>import("./DietRecordList-B-dv93xh.js"),__vite__mapDeps([405,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,121,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,406])),"/src/views/tcm/diagnosis/components/ExerciseRecordList.vue":()=>i(()=>import("./ExerciseRecordList-CLofvORP.js"),__vite__mapDeps([407,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,121,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,408])),"/src/views/tcm/diagnosis/components/ImChatRecordPanel.vue":()=>i(()=>import("./ImChatRecordPanel-yVs1ANxt.js"),__vite__mapDeps([147,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,148,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,149])),"/src/views/tcm/diagnosis/components/PatientCaseCard.vue":()=>i(()=>import("./PatientCaseCard-MkaTBq87.js"),__vite__mapDeps([131,132,128,133,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,134])),"/src/views/tcm/diagnosis/components/PatientInfoCard.vue":()=>i(()=>import("./PatientInfoCard-D7xW7q4X.js"),__vite__mapDeps([129,128,5,6,7,4,17,18,19,16,20,21,2,3,8,9,10,11,12,13,14,15,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,130])),"/src/views/tcm/diagnosis/components/PatientOrderList.vue":()=>i(()=>import("./PatientOrderList-_Y1o6_3U.js"),__vite__mapDeps([154,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,65,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,155])),"/src/views/tcm/diagnosis/components/RecordingPlaybackBlock.vue":()=>i(()=>import("./RecordingPlaybackBlock-BHZL3zDJ.js"),__vite__mapDeps([142,2,3,4,5,6,7,8,9,10,11,12,13,14,15,143,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,144,145])),"/src/views/tcm/diagnosis/components/RecordingVideoPlayer.vue":()=>i(()=>import("./RecordingVideoPlayer-LJMNYP-k.js"),__vite__mapDeps([143,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,144])),"/src/views/tcm/diagnosis/components/TrackingMatrix.vue":()=>i(()=>import("./TrackingMatrix-CMAfdIxG.js"),__vite__mapDeps([409,2,3,4,5,6,7,8,9,10,11,12,13,14,15,132,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,410])),"/src/views/tcm/diagnosis/components/TrackingNoteTimeline.vue":()=>i(()=>import("./TrackingNoteTimeline-B1cc6OKF.js"),__vite__mapDeps([411,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,412])),"/src/views/tcm/diagnosis/detail.vue":()=>i(()=>import("./detail-BIA4i862.js"),__vite__mapDeps([413,55,2,3,4,5,6,7,8,9,10,11,12,13,14,15,56,121,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/tcm/diagnosis/edit.vue":()=>i(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([414,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,124,135,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,136,137,34,35,36,138,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,37,38,39,139,132,140,403,404,141,142,143,144,145,146,147,148,149,150,151,152,75,153,156,127,157,154,155,415,220,218,221,133,222,416,417,412])),"/src/views/tcm/diagnosis/index.vue":()=>i(()=>import("./index-CEfu2Pd8.js"),__vite__mapDeps([418,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,122,75,65,123,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,419])),"/src/views/tcm/diagnosis/index_h5.vue":()=>i(()=>import("./index_h5-CXWkZooV.js"),__vite__mapDeps([120,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,121,122,75,123,65,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,125])),"/src/views/tcm/diagnosis/readonly.vue":()=>i(()=>import("./readonly-hz28EqXX.js"),__vite__mapDeps([126,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,121,127,128,124,129,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,130,131,132,133,134,135,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,75,153,154,155,156,157,158])),"/src/views/tcm/follow/index.vue":()=>i(()=>import("./index-DIUEBs-A.js"),__vite__mapDeps([420,17,18,19,2,3,4,5,6,7,8,9,10,11,12,13,14,15,58,121,198,122,75,65,123,124,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,421])),"/src/views/template/component/file.vue":()=>i(()=>import("./file-TV1Qmc9P.js"),__vite__mapDeps([422,2,3,4,5,6,7,8,9,10,11,12,13,14,15,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/icon.vue":()=>i(()=>import("./icon-B9pYwGq6.js"),__vite__mapDeps([423,2,3,4,5,6,7,8,9,10,11,12,13,14,15,337,22,23,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/link.vue":()=>i(()=>import("./link-CF-Ql-TB.js"),__vite__mapDeps([424,2,3,4,5,6,7,8,9,10,11,12,13,14,15,82,55,56,58,83,65,84,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/overflow.vue":()=>i(()=>import("./overflow-Do8O2bq9.js"),__vite__mapDeps([425,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/popover_input.vue":()=>i(()=>import("./popover_input-BPLcgSyk.js"),__vite__mapDeps([426,2,3,4,5,6,7,8,9,10,11,12,13,14,15,64,22,23])),"/src/views/template/component/rich_text.vue":()=>i(()=>import("./rich_text-BnBjFfGI.js"),__vite__mapDeps([427,2,3,4,5,6,7,8,9,10,11,12,13,14,15,164,165,166,167,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,168,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/template/component/upload.vue":()=>i(()=>import("./upload-E1VfHXnC.js"),__vite__mapDeps([428,2,3,4,5,6,7,8,9,10,11,12,13,14,15,61,62,63,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39])),"/src/views/test/patient-call.vue":()=>i(()=>import("./patient-call-B5zRPl8O.js"),__vite__mapDeps([429,2,3,4,5,6,7,8,9,10,11,12,13,14,15,430,431,432,433,434,435,436,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,437])),"/src/views/user/setting.vue":()=>i(()=>import("./setting-I73bbSku.js"),__vite__mapDeps([51,2,3,4,5,6,7,8,9,10,11,12,13,14,15,52,53,54,55,56,57,58,59,60,61,62,63,64,22,23,65,66,67,68,69,70,71,72,49,17,18,19,16,20,21,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,73])),"/src/views/workbench/index.vue":()=>i(()=>import("./index-Ci3dXrw6.js"),__vite__mapDeps([438,2,3,4,5,6,7,8,9,10,11,12,13,14,15,136,137,34,35,36,121,122,352,17,18,19,16,20,21,22,23,24,25,26,27,28,29,30,31,32,33,37,38,39,439]))});function O7(){return Object.keys(C3).map(a=>a.replace("/src/views/","").replace(".vue",""))}function f1(a,o=!0){return a.map(e=>{const t=B6(e,o);return e.children!=null&&e.children&&e.children.length&&(t.children=f1(e.children,!1)),t})}function B6(a,o){const e=A1(a.paths),t={path:J(a.paths)?a.paths:o?`/${e}`:e,name:Symbol(a.paths),meta:{hidden:!a.is_show,keepAlive:!!a.is_cache,title:a.name,perms:a.perms,query:a.params,icon:a.icon,type:a.type,activeMenu:a.selected}};switch(a.type){case y3.CATALOGUE:t.component=o?l3:I3,a.children||(t.component=I3);break;case y3.MENU:t.component=C6(a.component);break}return t}function C6(a){try{const o=A1(a),e=Object.keys(C3).find(t=>t.includes(`/${o}.vue`));if(e)return C3[e];throw Error(`找不到组件${a},请确保组件路径正确`)}catch(o){return console.error(o),I3}}function A1(a){return String(a||"").replace(/^\/+/,"").replace(/\/+$/,"")}function S3(a){var o,e;for(const t of a){if(((o=t.meta)==null?void 0:o.type)==y3.MENU&&!((e=t.meta)!=null&&e.hidden)&&!J(t.path))return t.name;if(t.children){const l=S3(t.children);if(l)return l}}}function I7(a){var e;return((e=(n3()||H).getRoutes().find(t=>{var l;return((l=t.meta)==null?void 0:l.perms)==a}))==null?void 0:e.path)||""}function S6(){H.removeRoute(M3);const{routes:a}=Y();a.forEach(o=>{const e=o.name;e&&H.hasRoute(e)&&H.removeRoute(e)})}const H=T1({history:O1("/admin/"),routes:D6});function H3(a){if(a==null)return"";if(Array.isArray(a)){const o=a[0];return o==null?"":String(o).trim()}return String(a).trim()}function Y3(a){if(!H3(a.query.code))return!1;const e=H3(a.query.state);return e==="bind_wxwork"||e==="admin_bind_wx"?!0:H3(a.query.bind_wxwork)==="1"}const k3=(a,o="")=>{try{a.forEach(e=>{if(J(e.path))return;const t=o+e.path,l={...e,path:t,name:e.name||t.replace(/\//g,"_").replace("_","")};e.children?H.addRoute(l):H.addRoute(M3,l),e.children&&e.children.length>0&&k3(e.children,t+"/")})}catch(e){console.error("Error adding routes:",e)}},o3=T.LOGIN,k6=T.INDEX,T3="/change-password",_3="/bind-work-wechat",j6=[T.LOGIN,T.ERROR_403];H.beforeEach(async(a,o,e)=>{var c,n,r,s;document.title=a.meta.title??N.title;const t=Y(),l=m3();if(a.path===_3){if(!t.token){e({path:o3});return}e();return}if(a.path===T3){if(!t.token){e({path:o3});return}e();return}if(j6.includes(a.path))e();else if(t.token)if(Object.keys(t.userInfo).length!==0){if(t.isPaw===0){e({path:T3});return}if((c=t.userInfo)!=null&&c.need_bind_work_wechat&&a.path!==_3){if(Y3(a)){e();return}e({path:_3});return}if(!((n=t.userInfo)!=null&&n.need_bind_work_wechat)&&((r=t.routes)==null?void 0:r.length)>0&&!H.hasRoute(M3)){const p=S3(t.routes);if(!p){t3(),e(T.ERROR_403);return}l.setRouteName(p),v3.redirect={name:p},H.addRoute(v3),k3(t.routes),e({...a,replace:!0});return}a.path===o3?e({path:k6}):e()}else try{if(await t.getUserInfo(),t.isPaw===0){e({path:T3});return}if((s=t.userInfo)!=null&&s.need_bind_work_wechat){if(Y3(a)){e({...a,replace:!0});return}e({path:_3});return}const p=t.routes,v=S3(p);if(!v){t3(),e(T.ERROR_403);return}l.setRouteName(v),v3.redirect={name:v},H.addRoute(v3),k3(p),e({...a,replace:!0})}catch{t3(),e({path:o3,query:{redirect:a.fullPath}})}else e({path:o3,query:{redirect:a.fullPath}})});if(typeof window<"u"){let a=function(){var o=document.body,e=document.getElementById("__svg__icons__dom__");e||(e=document.createElementNS("http://www.w3.org/2000/svg","svg"),e.style.position="absolute",e.style.width="0",e.style.height="0",e.id="__svg__icons__dom__",e.setAttribute("xmlns","http://www.w3.org/2000/svg"),e.setAttribute("xmlns:link","http://www.w3.org/1999/xlink")),e.innerHTML='',o.insertBefore(e,o.lastChild)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",a):a()}function N6(){return L.get({url:"/chat/notifications"})}const q6=["onClick"],W6={class:"chat-notify-body"},G6={class:"chat-notify-title"},$6={class:"chat-notify-desc"},U6={class:"patient-name"},F6={class:"doctor-name"},Y6={class:"patient-name"},Z6={class:"patient-name"},X6={class:"chat-notify-time"},K6=["onClick"],J6=5e3,Q6=V({__name:"index",setup(a){const o=n3(),e=c3([]),t=c3(null);function l(s){if(!s)return"";const _=new Date(s*1e3),v=new Date().getTime()-_.getTime();return v<6e4?"刚刚":v<36e5?`${Math.floor(v/6e4)} 分钟前`:v<864e5?`${Math.floor(v/36e5)} 小时前`:_.toLocaleDateString("zh-CN",{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}function c(s){e.value=e.value.filter(_=>_.id!==s)}function n(s){c(s.id),s.type==="consultation_complete"&&s.diagnosis_id&&o.push({path:"/tcm/diagnosis",query:{id:s.diagnosis_id}})}async function r(){try{const s=await N6();Array.isArray(s)&&s.length>0&&(e.value=[...s,...e.value].slice(0,10))}catch{}}return u1(()=>{r(),t.value=setInterval(r,J6)}),l0(()=>{t.value&&clearInterval(t.value)}),(s,_)=>{const p=Q3;return h(),A(c0,{to:"body"},[u(z0,{name:"chat-notify-slide",tag:"div",class:"chat-notify-container"},{default:z(()=>[(h(!0),g(D,null,K(e.value,v=>(h(),g("div",{key:v.id,class:b3(["chat-notify-card",{"chat-notify-card-complete":v.type==="consultation_complete","chat-notify-card-left":v.type==="patient_left_chat"}]),onClick:w=>n(v)},[d("div",{class:b3(["chat-notify-icon",{"chat-notify-icon-complete":v.type==="consultation_complete","chat-notify-icon-left":v.type==="patient_left_chat"}])},[u(p,{size:22},{default:z(()=>[v.type!=="consultation_complete"&&v.type!=="patient_left_chat"?(h(),A(m(r0),{key:0})):v.type==="consultation_complete"?(h(),A(m(m0),{key:1})):(h(),A(m(u0),{key:2}))]),_:2},1024)],2),d("div",W6,[d("div",G6,R(v.type==="consultation_complete"?"面诊结束":v.type==="patient_left_chat"?"患者离开会话":"患者打开会话"),1),d("div",$6,[v.type==="consultation_complete"?(h(),g(D,{key:0},[d("span",U6,R(v.patient_name||"患者"),1),_[0]||(_[0]=I(" 的面诊已由 ",-1)),d("span",F6,R(v.doctor_name||"医生"),1),_[1]||(_[1]=I(" 完成,请及时跟进 ",-1))],64)):v.type==="patient_left_chat"?(h(),g(D,{key:1},[d("span",Y6,R(v.patient_name||"患者"),1),_[2]||(_[2]=I(" 已离开问诊会话页面 ",-1))],64)):(h(),g(D,{key:2},[d("span",Z6,R(v.patient_name||"患者"),1),_[3]||(_[3]=I(" 已打开与您的会话,请及时查看 ",-1))],64))]),d("div",X6,R(l(v.created_at)),1)]),d("button",{class:"chat-notify-close",onClick:p0(w=>c(v.id),["stop"]),"aria-label":"关闭"},[u(p,{size:14},{default:z(()=>[u(m(d0))]),_:1})],8,K6)],10,q6))),128))]),_:1})])}}}),a4=P(Q6,[["__scopeId","data-v-9276baf6"]]),o4=V({__name:"App",setup(a){const o=S(),e=W(),t=Y(),l=V3(),c=b(()=>{var _;return!!t.token&&l.path!=="/bind-work-wechat"&&!((_=t.userInfo)!=null&&_.need_bind_work_wechat)}),n={zIndex:2e3,locale:K1},r=c1();u1(async()=>{console.log("主题颜色",r.value),e.setTheme(r.value)});const{width:s}=Q1();return s1(s,v0(_=>{_>R3.SM?(o.setMobile(!1),o.toggleCollapsed(!1)):(o.setMobile(!0),o.toggleCollapsed(!0)),_{const v=s3("router-view"),w=X1;return h(),A(w,{locale:n.locale,"z-index":n.zIndex},{default:z(()=>[u(v),c.value?(h(),A(a4,{key:0})):B("",!0)]),_:1},8,["locale","z-index"])}}}),O3="data-clipboard-text",e4={mounted:(a,o)=>{a.setAttribute(O3,o.value);const{toClipboard:e}=y0();a.onclick=()=>{e(a.getAttribute(O3)).then(()=>{X.msgSuccess("复制成功")}).catch(()=>{X.msgError("复制失败")})}},updated:(a,o)=>{a.setAttribute(O3,o.value)}},t4=Object.freeze(Object.defineProperty({__proto__:null,default:e4},Symbol.toStringTag,{value:"Module"}));function Z3(a,o){const{value:e}=o,l=Y().perms||[],c="*";if(!Array.isArray(e))throw new Error(`like v-perms="['auth.menu/edit']"`);if(e.length===0){a.style.removeProperty("display");return}l.some(r=>c==r||e.includes(r))?a.style.removeProperty("display"):a.style.display="none"}const i4={mounted:(a,o)=>{Z3(a,o)},updated:(a,o)=>{Z3(a,o)}},l4=Object.freeze(Object.defineProperty({__proto__:null,default:i4},Symbol.toStringTag,{value:"Module"}));g0([w0,f0,A0,V0,L0,M0,x0,E0,H0,T0,O0,I0,R0,P0,D0,B0,C0,S0,k0,j0,N0,q0,W0,G0,$0]);const c4=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),n4=a=>{for(const[o,e]of Object.entries(h1))a.component(o,e)},s4=Object.freeze(Object.defineProperty({__proto__:null,default:n4},Symbol.toStringTag,{value:"Module"}));console.log(U0);const r4=a=>{a.use(F0)},m4=Object.freeze(Object.defineProperty({__proto__:null,default:r4},Symbol.toStringTag,{value:"Module"})),u4=I1(),d4=a=>{a.use(u4)},h4=Object.freeze(Object.defineProperty({__proto__:null,default:d4},Symbol.toStringTag,{value:"Module"}));function v4(a){a.beforeEach(async()=>{const o=S();if(!o.configFetchAttempted){o.$patch({configFetchAttempted:!0});try{const e=await o.getConfig();let t=document.querySelector('link[rel="icon"]');t&&(e!=null&&e.web_favicon)&&(t.href=e.web_favicon),e!=null&&e.web_favicon&&(t=document.createElement("link"),t.rel="icon",t.href=e.web_favicon,document.head.appendChild(t))}catch{}}})}const _4=Object.freeze(Object.defineProperty({__proto__:null,default:v4},Symbol.toStringTag,{value:"Module"})),X3=Object.assign({"./init.ts":_4});function p4(a){Object.keys(X3).forEach(o=>{const e=X3[o].default;typeof e=="function"&&e(a)})}const z4=a=>{p4(H),a.use(H)},b4=Object.freeze(Object.defineProperty({__proto__:null,default:z4},Symbol.toStringTag,{value:"Module"}));function y4(a){typeof window<"u"&&(window.__TUIKIT_INITIALIZED__=!0)}const g4=Object.freeze(Object.defineProperty({__proto__:null,default:y4},Symbol.toStringTag,{value:"Module"})),K3=Object.assign({"./directives/copy.ts":t4,"./directives/perms.ts":l4,"./plugins/echart.ts":c4,"./plugins/element.ts":s4,"./plugins/hljs.ts":m4,"./plugins/pinia.ts":h4,"./plugins/router.ts":b4,"./plugins/tuikit.ts":g4});function w4(a){Object.keys(K3).forEach(o=>{const e=o.replace(/(.*\/)*([^.]+).*/gi,"$2"),t=o.replace(/^\.\/([\w-]+).*/gi,"$1"),l=K3[o];if(l.default)switch(t){case"directives":a.directive(e,l.default);break;case"plugins":typeof l.default=="function"&&l.default(a);break}})}const f4={install:w4},V1=b0(o4);V1.use(f4);V1.mount("#app");y1().then(a=>{console.log(`%c likeadmin %c v${a.version} `,"padding: 4px 1px; border-radius: 3px 0 0 3px; color: #fff; background: #bbb; font-weight: bold;","padding: 4px 1px; border-radius: 0 3px 3px 0; color: #fff; background: #4A5DFF; font-weight: bold;")});export{s7 as A,K2 as B,n7 as C,A7 as D,V7 as E,x7 as F,T7 as G,E7 as H,M7 as I,L7 as J,H7 as K,d7 as L,y3 as M,r7 as N,f7 as O,T as P,v7 as Q,F as R,P as _,m7 as a,u7 as b,G as c,h7 as d,S as e,q as f,b1 as g,z6 as h,X as i,G2 as j,I7 as k,W as l,_7 as m,U3 as n,i3 as o,_6 as p,N as q,L as r,w7 as s,g7 as t,Y as u,O7 as v,y7 as w,b7 as x,p7 as y,z7 as z}; diff --git a/server/public/admin/assets/index-CtbZopo2.js b/server/public/admin/assets/index--WxeEniq.js similarity index 99% rename from server/public/admin/assets/index-CtbZopo2.js rename to server/public/admin/assets/index--WxeEniq.js index 19e350e1..43349cf3 100644 --- a/server/public/admin/assets/index-CtbZopo2.js +++ b/server/public/admin/assets/index--WxeEniq.js @@ -1 +1 @@ -import{D as xe,B as Ce,C as De,P as Ee,Q as Re,i as Ue,J as Fe,M as Ye,N as $e,T as he,L as Me,h as Te,G as Ne,I as He,V as Le,e as Pe,a2 as Se}from"./element-plus-DFTWCWyi.js";import{_ as qe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as W}from"./@vue/runtime-dom-DDAG46FW.js";import{f as Be,a as Ie,b as Ke,h as ze,g as Ae,c as Ge,d as je,e as Je}from"./fans-DpM3qtuW.js";import{u as Oe}from"./usePaging-VsbTxSU0.js";import{i as Z}from"./index-Nt5zMHcc.js";import{d as ee}from"./dayjs-DG77mNTn.js";import{f as te,ak as g,I as K,a as l,aN as t,O as n,J as w,aP as le,G as x,H as Qe}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as M,n as u}from"./@vue/reactivity-DiY1c2vO.js";import{Q as T}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Xe={class:"fans-management"},We={class:"mb-4"},Ze={key:1,class:"text-gray-400"},el={class:"flex mt-4 justify-end"},ll={class:"mb-4"},tl={key:0,class:"text-center mt-4"},al=te({name:"fansManagement"}),Al=te({...al,setup(ol){const ae=i=>{if(!i)return"-";const e=String(i).length===10?Number(i)*1e3:Number(i);return ee(e).format("YYYY-MM-DD HH:mm:ss")},f=u({name:"",phone:"",gender:"",status:""}),{pager:k,getLists:C,resetParams:oe,resetPage:N}=Oe({fetchFun:Be,params:f.value}),b=u(!1),D=u("add"),H=u(),L=u(!1),d=u({id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""}),ie={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"手机号格式不正确",trigger:"blur"}],id_card:[{pattern:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:"身份证号格式不正确",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}]},ne=()=>{D.value="add",b.value=!0},de=i=>{D.value="edit",d.value={id:i.id,name:i.name,phone:i.phone,id_card:i.id_card,age:i.age,gender:i.gender,status:i.status,remark:i.remark},b.value=!0},se=()=>{var i;d.value={id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""},(i=H.value)==null||i.resetFields()},re=async()=>{var i;await((i=H.value)==null?void 0:i.validate()),L.value=!0;try{D.value==="add"?await Ie(d.value):await Ke(d.value),b.value=!1,C()}catch{}finally{L.value=!1}},ue=async i=>{await Z.confirm("确定要删除该粉丝吗?");try{await ze({id:i}),C()}catch{}},E=u(!1),R=u(null),y=u([]),P=u(!1),z=u(0),c=u(1),me={1:"",2:"success",3:"info",4:"warning",5:"danger"},pe=i=>{R.value=i,E.value=!0,c.value=1,y.value=[],U()},U=async()=>{P.value=!0;try{const i=await Ae({fan_id:R.value.id,page_no:c.value,page_size:15});c.value===1?y.value=i.lists||[]:y.value=[...y.value,...i.lists||[]],z.value=i.count||0}catch(i){console.error("获取回访记录失败:",i)}finally{P.value=!1}},fe=()=>{c.value++,U()},V=u(!1),F=u("add"),S=u(),q=u(!1),m=u({id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""}),ve={visit_type:[{required:!0,message:"请选择回访类型",trigger:"change"}],visit_time:[{required:!0,message:"请选择回访时间",trigger:"change"}],content:[{required:!0,message:"请输入回访内容",trigger:"blur"}]},_e=()=>{F.value="add",m.value={id:0,fan_id:R.value.id,visit_type:1,visit_time:ee().format("YYYY-MM-DD HH:mm:ss"),content:"",result:"",next_visit_time:""},V.value=!0},ge=i=>{F.value="edit",m.value={id:i.id,fan_id:i.fan_id,visit_type:i.visit_type,visit_time:i.visit_time_text||"",content:i.content||"",result:i.result||"",next_visit_time:i.next_visit_time_text||""},V.value=!0},be=()=>{var i;m.value={id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""},(i=S.value)==null||i.resetFields()},Ve=async()=>{var i;await((i=S.value)==null?void 0:i.validate()),q.value=!0;try{F.value==="add"?await Ge(m.value):await je(m.value),V.value=!1,c.value=1,U()}catch{}finally{q.value=!1}},ye=async i=>{await Z.confirm("确定要删除该回访记录吗?");try{await Je({id:i}),c.value=1,U()}catch{}};return C(),(i,e)=>{var X;const _=De,r=Ce,v=Re,B=Ee,p=Ue,I=xe,A=Fe,s=$e,Y=he,G=Ye,ce=qe,ke=Te,$=He,j=Ne,J=Le,we=Pe,O=Se,Q=Me;return g(),K("div",Xe,[l(A,{class:"!border-none",shadow:"never"},{default:t(()=>[l(I,{class:"ls-form",model:o(f),inline:""},{default:t(()=>[l(r,{class:"w-[280px]",label:"姓名"},{default:t(()=>[l(_,{placeholder:"请输入姓名",modelValue:o(f).name,"onUpdate:modelValue":e[0]||(e[0]=a=>o(f).name=a),clearable:"",onKeyup:W(o(N),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[280px]",label:"手机号"},{default:t(()=>[l(_,{placeholder:"请输入手机号",modelValue:o(f).phone,"onUpdate:modelValue":e[1]||(e[1]=a=>o(f).phone=a),clearable:"",onKeyup:W(o(N),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[180px]",label:"性别"},{default:t(()=>[l(B,{modelValue:o(f).gender,"onUpdate:modelValue":e[2]||(e[2]=a=>o(f).gender=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"男",value:1}),l(v,{label:"女",value:2})]),_:1},8,["modelValue"])]),_:1}),l(r,{class:"w-[180px]",label:"状态"},{default:t(()=>[l(B,{modelValue:o(f).status,"onUpdate:modelValue":e[3]||(e[3]=a=>o(f).status=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"启用",value:1}),l(v,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),l(r,null,{default:t(()=>[l(p,{type:"primary",onClick:o(N)},{default:t(()=>[...e[22]||(e[22]=[n("查询",-1)])]),_:1},8,["onClick"]),l(p,{onClick:o(oe)},{default:t(()=>[...e[23]||(e[23]=[n("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),l(A,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[w("div",We,[l(p,{type:"primary",onClick:ne},{default:t(()=>[...e[24]||(e[24]=[n("新增粉丝",-1)])]),_:1})]),le((g(),x(G,{data:o(k).lists,size:"large"},{default:t(()=>[l(s,{label:"ID",prop:"id",width:"70"}),l(s,{label:"姓名",prop:"name","min-width":"100"}),l(s,{label:"手机号",prop:"phone","min-width":"130"}),l(s,{label:"身份证号",prop:"id_card","min-width":"180"}),l(s,{label:"性别",prop:"gender_desc",width:"80"}),l(s,{label:"年龄",prop:"age",width:"70"}),l(s,{label:"备注",prop:"remark","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"登记人",prop:"creator_name","min-width":"100"},{default:t(({row:a})=>[w("span",null,T(a.creator_name||"-"),1)]),_:1}),l(s,{label:"回访次数",width:"90",align:"center"},{default:t(({row:a})=>[a.visit_count>0?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[n(T(a.visit_count),1)]),_:2},1024)):(g(),K("span",Ze,"0"))]),_:1}),l(s,{label:"状态",width:"80"},{default:t(({row:a})=>[a.status==1?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[...e[25]||(e[25]=[n("启用",-1)])]),_:1})):(g(),x(Y,{key:1,type:"danger"},{default:t(()=>[...e[26]||(e[26]=[n("禁用",-1)])]),_:1}))]),_:1}),l(s,{label:"创建时间","min-width":"170"},{default:t(({row:a})=>[w("span",null,T(ae(a.create_time)),1)]),_:1}),l(s,{label:"操作",width:"220",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:h=>de(a)},{default:t(()=>[...e[27]||(e[27]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"success",link:"",onClick:h=>pe(a)},{default:t(()=>[...e[28]||(e[28]=[n("回访记录",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:h=>ue(a.id)},{default:t(()=>[...e[29]||(e[29]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Q,o(k).loading]]),w("div",el,[l(ce,{modelValue:o(k),"onUpdate:modelValue":e[4]||(e[4]=a=>M(k)?k.value=a:null),onChange:o(C)},null,8,["modelValue","onChange"])])]),_:1}),l(J,{modelValue:o(b),"onUpdate:modelValue":e[13]||(e[13]=a=>M(b)?b.value=a:null),title:o(D)==="add"?"新增粉丝":"编辑粉丝",width:"600px","close-on-click-modal":!1,onClosed:se},{footer:t(()=>[l(p,{onClick:e[12]||(e[12]=a=>b.value=!1)},{default:t(()=>[...e[34]||(e[34]=[n("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(L),onClick:re},{default:t(()=>[...e[35]||(e[35]=[n("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(I,{ref_key:"fanFormRef",ref:H,model:o(d),rules:ie,"label-width":"100px"},{default:t(()=>[l(r,{label:"姓名",prop:"name"},{default:t(()=>[l(_,{modelValue:o(d).name,"onUpdate:modelValue":e[5]||(e[5]=a=>o(d).name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),l(r,{label:"手机号",prop:"phone"},{default:t(()=>[l(_,{modelValue:o(d).phone,"onUpdate:modelValue":e[6]||(e[6]=a=>o(d).phone=a),placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"])]),_:1}),l(r,{label:"身份证号",prop:"id_card"},{default:t(()=>[l(_,{modelValue:o(d).id_card,"onUpdate:modelValue":e[7]||(e[7]=a=>o(d).id_card=a),placeholder:"请输入身份证号码",maxlength:"18"},null,8,["modelValue"])]),_:1}),l(r,{label:"年龄",prop:"age"},{default:t(()=>[l(ke,{modelValue:o(d).age,"onUpdate:modelValue":e[8]||(e[8]=a=>o(d).age=a),min:0,max:150},null,8,["modelValue"])]),_:1}),l(r,{label:"性别",prop:"gender"},{default:t(()=>[l(j,{modelValue:o(d).gender,"onUpdate:modelValue":e[9]||(e[9]=a=>o(d).gender=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[30]||(e[30]=[n("男",-1)])]),_:1}),l($,{label:2},{default:t(()=>[...e[31]||(e[31]=[n("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"状态",prop:"status"},{default:t(()=>[l(j,{modelValue:o(d).status,"onUpdate:modelValue":e[10]||(e[10]=a=>o(d).status=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[32]||(e[32]=[n("启用",-1)])]),_:1}),l($,{label:0},{default:t(()=>[...e[33]||(e[33]=[n("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"备注",prop:"remark"},{default:t(()=>[l(_,{modelValue:o(d).remark,"onUpdate:modelValue":e[11]||(e[11]=a=>o(d).remark=a),type:"textarea",rows:3,placeholder:"请输入备注",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(we,{modelValue:o(E),"onUpdate:modelValue":e[14]||(e[14]=a=>M(E)?E.value=a:null),title:`回访记录 - ${((X=o(R))==null?void 0:X.name)||""}`,size:"700px","close-on-click-modal":!1},{default:t(()=>[w("div",ll,[l(p,{type:"primary",onClick:_e},{default:t(()=>[...e[36]||(e[36]=[n("新增回访记录",-1)])]),_:1})]),le((g(),x(G,{data:o(y),size:"large"},{default:t(()=>[l(s,{label:"回访类型",width:"100"},{default:t(({row:a})=>[l(Y,{type:me[a.visit_type]},{default:t(()=>[n(T(a.visit_type_desc),1)]),_:2},1032,["type"])]),_:1}),l(s,{label:"回访时间",prop:"visit_time_text","min-width":"150"}),l(s,{label:"回访内容",prop:"content","min-width":"200","show-overflow-tooltip":""}),l(s,{label:"回访结果",prop:"result","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"下次回访",prop:"next_visit_time_text","min-width":"150"}),l(s,{label:"操作人",prop:"operator_name",width:"100"}),l(s,{label:"操作",width:"120",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:h=>ge(a)},{default:t(()=>[...e[37]||(e[37]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:h=>ye(a.id)},{default:t(()=>[...e[38]||(e[38]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Q,o(P)]]),o(z)>o(y).length?(g(),K("div",tl,[l(p,{link:"",type:"primary",onClick:fe},{default:t(()=>[...e[39]||(e[39]=[n("加载更多",-1)])]),_:1})])):Qe("",!0)]),_:1},8,["modelValue","title"]),l(J,{modelValue:o(V),"onUpdate:modelValue":e[21]||(e[21]=a=>M(V)?V.value=a:null),title:o(F)==="add"?"新增回访记录":"编辑回访记录",width:"600px","close-on-click-modal":!1,onClosed:be},{footer:t(()=>[l(p,{onClick:e[20]||(e[20]=a=>V.value=!1)},{default:t(()=>[...e[40]||(e[40]=[n("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(q),onClick:Ve},{default:t(()=>[...e[41]||(e[41]=[n("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(I,{ref_key:"visitFormRef",ref:S,model:o(m),rules:ve,"label-width":"120px"},{default:t(()=>[l(r,{label:"回访类型",prop:"visit_type"},{default:t(()=>[l(B,{modelValue:o(m).visit_type,"onUpdate:modelValue":e[15]||(e[15]=a=>o(m).visit_type=a),placeholder:"请选择回访类型"},{default:t(()=>[l(v,{label:"电话",value:1}),l(v,{label:"微信",value:2}),l(v,{label:"短信",value:3}),l(v,{label:"上门",value:4}),l(v,{label:"其他",value:5})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"回访时间",prop:"visit_time"},{default:t(()=>[l(O,{modelValue:o(m).visit_time,"onUpdate:modelValue":e[16]||(e[16]=a=>o(m).visit_time=a),type:"datetime",placeholder:"请选择回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(r,{label:"回访内容",prop:"content"},{default:t(()=>[l(_,{modelValue:o(m).content,"onUpdate:modelValue":e[17]||(e[17]=a=>o(m).content=a),type:"textarea",rows:4,placeholder:"请输入回访内容"},null,8,["modelValue"])]),_:1}),l(r,{label:"回访结果",prop:"result"},{default:t(()=>[l(_,{modelValue:o(m).result,"onUpdate:modelValue":e[18]||(e[18]=a=>o(m).result=a),type:"textarea",rows:3,placeholder:"请输入回访结果"},null,8,["modelValue"])]),_:1}),l(r,{label:"下次回访时间",prop:"next_visit_time"},{default:t(()=>[l(O,{modelValue:o(m).next_visit_time,"onUpdate:modelValue":e[19]||(e[19]=a=>o(m).next_visit_time=a),type:"datetime",placeholder:"请选择下次回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}});export{Al as default}; +import{D as xe,B as Ce,C as De,P as Ee,Q as Re,i as Ue,J as Fe,M as Ye,N as $e,T as he,L as Me,h as Te,G as Ne,I as He,V as Le,e as Pe,a2 as Se}from"./element-plus-DFTWCWyi.js";import{_ as qe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as W}from"./@vue/runtime-dom-DDAG46FW.js";import{f as Be,a as Ie,b as Ke,h as ze,g as Ae,c as Ge,d as je,e as Je}from"./fans-CmdPlHB_.js";import{u as Oe}from"./usePaging-VsbTxSU0.js";import{i as Z}from"./index--WnM67ZH.js";import{d as ee}from"./dayjs-DG77mNTn.js";import{f as te,ak as g,I as K,a as l,aN as t,O as n,J as w,aP as le,G as x,H as Qe}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as M,n as u}from"./@vue/reactivity-DiY1c2vO.js";import{Q as T}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Xe={class:"fans-management"},We={class:"mb-4"},Ze={key:1,class:"text-gray-400"},el={class:"flex mt-4 justify-end"},ll={class:"mb-4"},tl={key:0,class:"text-center mt-4"},al=te({name:"fansManagement"}),Al=te({...al,setup(ol){const ae=i=>{if(!i)return"-";const e=String(i).length===10?Number(i)*1e3:Number(i);return ee(e).format("YYYY-MM-DD HH:mm:ss")},f=u({name:"",phone:"",gender:"",status:""}),{pager:k,getLists:C,resetParams:oe,resetPage:N}=Oe({fetchFun:Be,params:f.value}),b=u(!1),D=u("add"),H=u(),L=u(!1),d=u({id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""}),ie={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"手机号格式不正确",trigger:"blur"}],id_card:[{pattern:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:"身份证号格式不正确",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}]},ne=()=>{D.value="add",b.value=!0},de=i=>{D.value="edit",d.value={id:i.id,name:i.name,phone:i.phone,id_card:i.id_card,age:i.age,gender:i.gender,status:i.status,remark:i.remark},b.value=!0},se=()=>{var i;d.value={id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""},(i=H.value)==null||i.resetFields()},re=async()=>{var i;await((i=H.value)==null?void 0:i.validate()),L.value=!0;try{D.value==="add"?await Ie(d.value):await Ke(d.value),b.value=!1,C()}catch{}finally{L.value=!1}},ue=async i=>{await Z.confirm("确定要删除该粉丝吗?");try{await ze({id:i}),C()}catch{}},E=u(!1),R=u(null),y=u([]),P=u(!1),z=u(0),c=u(1),me={1:"",2:"success",3:"info",4:"warning",5:"danger"},pe=i=>{R.value=i,E.value=!0,c.value=1,y.value=[],U()},U=async()=>{P.value=!0;try{const i=await Ae({fan_id:R.value.id,page_no:c.value,page_size:15});c.value===1?y.value=i.lists||[]:y.value=[...y.value,...i.lists||[]],z.value=i.count||0}catch(i){console.error("获取回访记录失败:",i)}finally{P.value=!1}},fe=()=>{c.value++,U()},V=u(!1),F=u("add"),S=u(),q=u(!1),m=u({id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""}),ve={visit_type:[{required:!0,message:"请选择回访类型",trigger:"change"}],visit_time:[{required:!0,message:"请选择回访时间",trigger:"change"}],content:[{required:!0,message:"请输入回访内容",trigger:"blur"}]},_e=()=>{F.value="add",m.value={id:0,fan_id:R.value.id,visit_type:1,visit_time:ee().format("YYYY-MM-DD HH:mm:ss"),content:"",result:"",next_visit_time:""},V.value=!0},ge=i=>{F.value="edit",m.value={id:i.id,fan_id:i.fan_id,visit_type:i.visit_type,visit_time:i.visit_time_text||"",content:i.content||"",result:i.result||"",next_visit_time:i.next_visit_time_text||""},V.value=!0},be=()=>{var i;m.value={id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""},(i=S.value)==null||i.resetFields()},Ve=async()=>{var i;await((i=S.value)==null?void 0:i.validate()),q.value=!0;try{F.value==="add"?await Ge(m.value):await je(m.value),V.value=!1,c.value=1,U()}catch{}finally{q.value=!1}},ye=async i=>{await Z.confirm("确定要删除该回访记录吗?");try{await Je({id:i}),c.value=1,U()}catch{}};return C(),(i,e)=>{var X;const _=De,r=Ce,v=Re,B=Ee,p=Ue,I=xe,A=Fe,s=$e,Y=he,G=Ye,ce=qe,ke=Te,$=He,j=Ne,J=Le,we=Pe,O=Se,Q=Me;return g(),K("div",Xe,[l(A,{class:"!border-none",shadow:"never"},{default:t(()=>[l(I,{class:"ls-form",model:o(f),inline:""},{default:t(()=>[l(r,{class:"w-[280px]",label:"姓名"},{default:t(()=>[l(_,{placeholder:"请输入姓名",modelValue:o(f).name,"onUpdate:modelValue":e[0]||(e[0]=a=>o(f).name=a),clearable:"",onKeyup:W(o(N),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[280px]",label:"手机号"},{default:t(()=>[l(_,{placeholder:"请输入手机号",modelValue:o(f).phone,"onUpdate:modelValue":e[1]||(e[1]=a=>o(f).phone=a),clearable:"",onKeyup:W(o(N),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[180px]",label:"性别"},{default:t(()=>[l(B,{modelValue:o(f).gender,"onUpdate:modelValue":e[2]||(e[2]=a=>o(f).gender=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"男",value:1}),l(v,{label:"女",value:2})]),_:1},8,["modelValue"])]),_:1}),l(r,{class:"w-[180px]",label:"状态"},{default:t(()=>[l(B,{modelValue:o(f).status,"onUpdate:modelValue":e[3]||(e[3]=a=>o(f).status=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"启用",value:1}),l(v,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),l(r,null,{default:t(()=>[l(p,{type:"primary",onClick:o(N)},{default:t(()=>[...e[22]||(e[22]=[n("查询",-1)])]),_:1},8,["onClick"]),l(p,{onClick:o(oe)},{default:t(()=>[...e[23]||(e[23]=[n("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),l(A,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[w("div",We,[l(p,{type:"primary",onClick:ne},{default:t(()=>[...e[24]||(e[24]=[n("新增粉丝",-1)])]),_:1})]),le((g(),x(G,{data:o(k).lists,size:"large"},{default:t(()=>[l(s,{label:"ID",prop:"id",width:"70"}),l(s,{label:"姓名",prop:"name","min-width":"100"}),l(s,{label:"手机号",prop:"phone","min-width":"130"}),l(s,{label:"身份证号",prop:"id_card","min-width":"180"}),l(s,{label:"性别",prop:"gender_desc",width:"80"}),l(s,{label:"年龄",prop:"age",width:"70"}),l(s,{label:"备注",prop:"remark","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"登记人",prop:"creator_name","min-width":"100"},{default:t(({row:a})=>[w("span",null,T(a.creator_name||"-"),1)]),_:1}),l(s,{label:"回访次数",width:"90",align:"center"},{default:t(({row:a})=>[a.visit_count>0?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[n(T(a.visit_count),1)]),_:2},1024)):(g(),K("span",Ze,"0"))]),_:1}),l(s,{label:"状态",width:"80"},{default:t(({row:a})=>[a.status==1?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[...e[25]||(e[25]=[n("启用",-1)])]),_:1})):(g(),x(Y,{key:1,type:"danger"},{default:t(()=>[...e[26]||(e[26]=[n("禁用",-1)])]),_:1}))]),_:1}),l(s,{label:"创建时间","min-width":"170"},{default:t(({row:a})=>[w("span",null,T(ae(a.create_time)),1)]),_:1}),l(s,{label:"操作",width:"220",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:h=>de(a)},{default:t(()=>[...e[27]||(e[27]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"success",link:"",onClick:h=>pe(a)},{default:t(()=>[...e[28]||(e[28]=[n("回访记录",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:h=>ue(a.id)},{default:t(()=>[...e[29]||(e[29]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Q,o(k).loading]]),w("div",el,[l(ce,{modelValue:o(k),"onUpdate:modelValue":e[4]||(e[4]=a=>M(k)?k.value=a:null),onChange:o(C)},null,8,["modelValue","onChange"])])]),_:1}),l(J,{modelValue:o(b),"onUpdate:modelValue":e[13]||(e[13]=a=>M(b)?b.value=a:null),title:o(D)==="add"?"新增粉丝":"编辑粉丝",width:"600px","close-on-click-modal":!1,onClosed:se},{footer:t(()=>[l(p,{onClick:e[12]||(e[12]=a=>b.value=!1)},{default:t(()=>[...e[34]||(e[34]=[n("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(L),onClick:re},{default:t(()=>[...e[35]||(e[35]=[n("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(I,{ref_key:"fanFormRef",ref:H,model:o(d),rules:ie,"label-width":"100px"},{default:t(()=>[l(r,{label:"姓名",prop:"name"},{default:t(()=>[l(_,{modelValue:o(d).name,"onUpdate:modelValue":e[5]||(e[5]=a=>o(d).name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),l(r,{label:"手机号",prop:"phone"},{default:t(()=>[l(_,{modelValue:o(d).phone,"onUpdate:modelValue":e[6]||(e[6]=a=>o(d).phone=a),placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"])]),_:1}),l(r,{label:"身份证号",prop:"id_card"},{default:t(()=>[l(_,{modelValue:o(d).id_card,"onUpdate:modelValue":e[7]||(e[7]=a=>o(d).id_card=a),placeholder:"请输入身份证号码",maxlength:"18"},null,8,["modelValue"])]),_:1}),l(r,{label:"年龄",prop:"age"},{default:t(()=>[l(ke,{modelValue:o(d).age,"onUpdate:modelValue":e[8]||(e[8]=a=>o(d).age=a),min:0,max:150},null,8,["modelValue"])]),_:1}),l(r,{label:"性别",prop:"gender"},{default:t(()=>[l(j,{modelValue:o(d).gender,"onUpdate:modelValue":e[9]||(e[9]=a=>o(d).gender=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[30]||(e[30]=[n("男",-1)])]),_:1}),l($,{label:2},{default:t(()=>[...e[31]||(e[31]=[n("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"状态",prop:"status"},{default:t(()=>[l(j,{modelValue:o(d).status,"onUpdate:modelValue":e[10]||(e[10]=a=>o(d).status=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[32]||(e[32]=[n("启用",-1)])]),_:1}),l($,{label:0},{default:t(()=>[...e[33]||(e[33]=[n("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"备注",prop:"remark"},{default:t(()=>[l(_,{modelValue:o(d).remark,"onUpdate:modelValue":e[11]||(e[11]=a=>o(d).remark=a),type:"textarea",rows:3,placeholder:"请输入备注",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(we,{modelValue:o(E),"onUpdate:modelValue":e[14]||(e[14]=a=>M(E)?E.value=a:null),title:`回访记录 - ${((X=o(R))==null?void 0:X.name)||""}`,size:"700px","close-on-click-modal":!1},{default:t(()=>[w("div",ll,[l(p,{type:"primary",onClick:_e},{default:t(()=>[...e[36]||(e[36]=[n("新增回访记录",-1)])]),_:1})]),le((g(),x(G,{data:o(y),size:"large"},{default:t(()=>[l(s,{label:"回访类型",width:"100"},{default:t(({row:a})=>[l(Y,{type:me[a.visit_type]},{default:t(()=>[n(T(a.visit_type_desc),1)]),_:2},1032,["type"])]),_:1}),l(s,{label:"回访时间",prop:"visit_time_text","min-width":"150"}),l(s,{label:"回访内容",prop:"content","min-width":"200","show-overflow-tooltip":""}),l(s,{label:"回访结果",prop:"result","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"下次回访",prop:"next_visit_time_text","min-width":"150"}),l(s,{label:"操作人",prop:"operator_name",width:"100"}),l(s,{label:"操作",width:"120",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:h=>ge(a)},{default:t(()=>[...e[37]||(e[37]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:h=>ye(a.id)},{default:t(()=>[...e[38]||(e[38]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Q,o(P)]]),o(z)>o(y).length?(g(),K("div",tl,[l(p,{link:"",type:"primary",onClick:fe},{default:t(()=>[...e[39]||(e[39]=[n("加载更多",-1)])]),_:1})])):Qe("",!0)]),_:1},8,["modelValue","title"]),l(J,{modelValue:o(V),"onUpdate:modelValue":e[21]||(e[21]=a=>M(V)?V.value=a:null),title:o(F)==="add"?"新增回访记录":"编辑回访记录",width:"600px","close-on-click-modal":!1,onClosed:be},{footer:t(()=>[l(p,{onClick:e[20]||(e[20]=a=>V.value=!1)},{default:t(()=>[...e[40]||(e[40]=[n("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(q),onClick:Ve},{default:t(()=>[...e[41]||(e[41]=[n("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(I,{ref_key:"visitFormRef",ref:S,model:o(m),rules:ve,"label-width":"120px"},{default:t(()=>[l(r,{label:"回访类型",prop:"visit_type"},{default:t(()=>[l(B,{modelValue:o(m).visit_type,"onUpdate:modelValue":e[15]||(e[15]=a=>o(m).visit_type=a),placeholder:"请选择回访类型"},{default:t(()=>[l(v,{label:"电话",value:1}),l(v,{label:"微信",value:2}),l(v,{label:"短信",value:3}),l(v,{label:"上门",value:4}),l(v,{label:"其他",value:5})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"回访时间",prop:"visit_time"},{default:t(()=>[l(O,{modelValue:o(m).visit_time,"onUpdate:modelValue":e[16]||(e[16]=a=>o(m).visit_time=a),type:"datetime",placeholder:"请选择回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(r,{label:"回访内容",prop:"content"},{default:t(()=>[l(_,{modelValue:o(m).content,"onUpdate:modelValue":e[17]||(e[17]=a=>o(m).content=a),type:"textarea",rows:4,placeholder:"请输入回访内容"},null,8,["modelValue"])]),_:1}),l(r,{label:"回访结果",prop:"result"},{default:t(()=>[l(_,{modelValue:o(m).result,"onUpdate:modelValue":e[18]||(e[18]=a=>o(m).result=a),type:"textarea",rows:3,placeholder:"请输入回访结果"},null,8,["modelValue"])]),_:1}),l(r,{label:"下次回访时间",prop:"next_visit_time"},{default:t(()=>[l(O,{modelValue:o(m).next_visit_time,"onUpdate:modelValue":e[19]||(e[19]=a=>o(m).next_visit_time=a),type:"datetime",placeholder:"请选择下次回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}});export{Al as default}; diff --git a/server/public/admin/assets/index-CHZQEiCU.js b/server/public/admin/assets/index-2TepIesZ.js similarity index 74% rename from server/public/admin/assets/index-CHZQEiCU.js rename to server/public/admin/assets/index-2TepIesZ.js index ff54c397..8915aad5 100644 --- a/server/public/admin/assets/index-CHZQEiCU.js +++ b/server/public/admin/assets/index-2TepIesZ.js @@ -1 +1 @@ -import i from"./attr-C9CZlLYE.js";import{_}from"./content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js";import{_ as s}from"./attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js";import a from"./content-DSbMIogU.js";import{_ as r}from"./attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js";import{_ as l}from"./content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js";import{_ as c}from"./attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js";import m from"./content-Bq2N97AM.js";import{_ as d}from"./attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js";import{_ as p}from"./content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js";import{_ as f}from"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import b from"./content-RKc8NsXf.js";import{_ as g}from"./attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js";import u from"./content-BvpTtLa-.js";import{_ as y}from"./content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js";import{_ as $}from"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import v from"./content-_IxwYLuN.js";import{_ as x}from"./attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js";import{_ as j}from"./content.vue_vue_type_script_setup_true_lang-BPonashY.js";import{_ as O}from"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import S from"./content-DPq40ncB.js";const z=()=>({title:"首页轮播图",name:"banner",content:{enabled:1,style:1,bg_style:0,data:[{is_show:"1",image:"",bg:"",name:"",link:{}}]},styles:{}}),M={attr:i,content:_,options:z},P=Object.freeze(Object.defineProperty({__proto__:null,default:M},Symbol.toStringTag,{value:"Module"})),T=()=>({title:"客服设置",name:"customer-service",content:{title:"添加客服二维码",time:"",mobile:"",qrcode:"",remark:""},styles:{}}),w={attr:s,content:a,options:T},h=Object.freeze(Object.defineProperty({__proto__:null,default:w},Symbol.toStringTag,{value:"Module"})),k=()=>({title:"首页中部轮播图",name:"middle-banner",content:{enabled:1,data:[{is_show:"1",image:"",name:"",link:{}}]},styles:{}}),q={attr:r,content:l,options:k},E=Object.freeze(Object.defineProperty({__proto__:null,default:q},Symbol.toStringTag,{value:"Module"})),N=()=>({title:"我的服务",name:"my-service",content:{style:1,title:"我的服务",data:[{image:"",name:"导航名称",link:{}}]},styles:{}}),W={attr:c,content:m,options:N},A=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),B=()=>({title:"导航菜单",name:"nav",content:{enabled:1,style:1,per_line:5,show_line:2,data:[{image:"",name:"导航名称",link:{}}]},styles:{}}),C={attr:d,content:p,options:B},D=Object.freeze(Object.defineProperty({__proto__:null,default:C},Symbol.toStringTag,{value:"Module"})),F=()=>({title:"资讯",name:"news",disabled:1,content:{},styles:{}}),G={attr:f,content:b,options:F},H=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),I=()=>({title:"页面设置",name:"page-meta",content:{title_type:1,title:"",title_img:"",bg_type:1,bg_color:"",bg_image:"",text_color:""},styles:{}}),J={attr:g,content:u,options:I},K=Object.freeze(Object.defineProperty({__proto__:null,default:J},Symbol.toStringTag,{value:"Module"})),L=()=>({title:"首页轮播图",name:"pc-banner",content:{enabled:1,data:[{image:"",name:"",link:{}}]},styles:{}}),Q={content:y,options:L},R=Object.freeze(Object.defineProperty({__proto__:null,default:Q},Symbol.toStringTag,{value:"Module"})),U=()=>({title:"搜索",name:"search",disabled:1,content:{},styles:{}}),V={attr:$,content:v,options:U},X=Object.freeze(Object.defineProperty({__proto__:null,default:V},Symbol.toStringTag,{value:"Module"})),Y=()=>({title:"个人中心广告图",name:"user-banner",content:{enabled:1,data:[{is_show:"1",image:"",name:"",link:{}}]},styles:{}}),Z={attr:x,content:j,options:Y},tt=Object.freeze(Object.defineProperty({__proto__:null,default:Z},Symbol.toStringTag,{value:"Module"})),et=()=>({title:"用户信息",name:"user-info",disabled:1,content:{},styles:{}}),ot={attr:O,content:S,options:et},nt=Object.freeze(Object.defineProperty({__proto__:null,default:ot},Symbol.toStringTag,{value:"Module"})),o=Object.assign({"./banner/index.ts":P,"./customer-service/index.ts":h,"./middle-banner/index.ts":E,"./my-service/index.ts":A,"./nav/index.ts":D,"./news/index.ts":H,"./page-meta/index.ts":K,"./pc-banner/index.ts":R,"./search/index.ts":X,"./user-banner/index.ts":tt,"./user-info/index.ts":nt}),it={};Object.keys(o).forEach(t=>{var e;const n=t.replace(/^\.\/([\w-]+).*/gi,"$1");it[n]=(e=o[t])==null?void 0:e.default});export{it as e}; +import i from"./attr-LeDws8D5.js";import{_}from"./content.vue_vue_type_script_setup_true_lang-D3j4saYE.js";import{_ as s}from"./attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js";import a from"./content-DeSOYKs_.js";import{_ as r}from"./attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js";import{_ as l}from"./content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js";import{_ as c}from"./attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js";import m from"./content-BRFykSo7.js";import{_ as d}from"./attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js";import{_ as p}from"./content.vue_vue_type_script_setup_true_lang-jnpmExki.js";import{_ as f}from"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import b from"./content-TNbubsqc.js";import{_ as g}from"./attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js";import u from"./content-DDJw1TZH.js";import{_ as y}from"./content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js";import{_ as $}from"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import v from"./content-By25GabM.js";import{_ as x}from"./attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js";import{_ as j}from"./content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js";import{_ as O}from"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import S from"./content-BLxl9Qo-.js";const z=()=>({title:"首页轮播图",name:"banner",content:{enabled:1,style:1,bg_style:0,data:[{is_show:"1",image:"",bg:"",name:"",link:{}}]},styles:{}}),M={attr:i,content:_,options:z},P=Object.freeze(Object.defineProperty({__proto__:null,default:M},Symbol.toStringTag,{value:"Module"})),T=()=>({title:"客服设置",name:"customer-service",content:{title:"添加客服二维码",time:"",mobile:"",qrcode:"",remark:""},styles:{}}),w={attr:s,content:a,options:T},h=Object.freeze(Object.defineProperty({__proto__:null,default:w},Symbol.toStringTag,{value:"Module"})),k=()=>({title:"首页中部轮播图",name:"middle-banner",content:{enabled:1,data:[{is_show:"1",image:"",name:"",link:{}}]},styles:{}}),q={attr:r,content:l,options:k},E=Object.freeze(Object.defineProperty({__proto__:null,default:q},Symbol.toStringTag,{value:"Module"})),N=()=>({title:"我的服务",name:"my-service",content:{style:1,title:"我的服务",data:[{image:"",name:"导航名称",link:{}}]},styles:{}}),W={attr:c,content:m,options:N},A=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),B=()=>({title:"导航菜单",name:"nav",content:{enabled:1,style:1,per_line:5,show_line:2,data:[{image:"",name:"导航名称",link:{}}]},styles:{}}),C={attr:d,content:p,options:B},D=Object.freeze(Object.defineProperty({__proto__:null,default:C},Symbol.toStringTag,{value:"Module"})),F=()=>({title:"资讯",name:"news",disabled:1,content:{},styles:{}}),G={attr:f,content:b,options:F},H=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),I=()=>({title:"页面设置",name:"page-meta",content:{title_type:1,title:"",title_img:"",bg_type:1,bg_color:"",bg_image:"",text_color:""},styles:{}}),J={attr:g,content:u,options:I},K=Object.freeze(Object.defineProperty({__proto__:null,default:J},Symbol.toStringTag,{value:"Module"})),L=()=>({title:"首页轮播图",name:"pc-banner",content:{enabled:1,data:[{image:"",name:"",link:{}}]},styles:{}}),Q={content:y,options:L},R=Object.freeze(Object.defineProperty({__proto__:null,default:Q},Symbol.toStringTag,{value:"Module"})),U=()=>({title:"搜索",name:"search",disabled:1,content:{},styles:{}}),V={attr:$,content:v,options:U},X=Object.freeze(Object.defineProperty({__proto__:null,default:V},Symbol.toStringTag,{value:"Module"})),Y=()=>({title:"个人中心广告图",name:"user-banner",content:{enabled:1,data:[{is_show:"1",image:"",name:"",link:{}}]},styles:{}}),Z={attr:x,content:j,options:Y},tt=Object.freeze(Object.defineProperty({__proto__:null,default:Z},Symbol.toStringTag,{value:"Module"})),et=()=>({title:"用户信息",name:"user-info",disabled:1,content:{},styles:{}}),ot={attr:O,content:S,options:et},nt=Object.freeze(Object.defineProperty({__proto__:null,default:ot},Symbol.toStringTag,{value:"Module"})),o=Object.assign({"./banner/index.ts":P,"./customer-service/index.ts":h,"./middle-banner/index.ts":E,"./my-service/index.ts":A,"./nav/index.ts":D,"./news/index.ts":H,"./page-meta/index.ts":K,"./pc-banner/index.ts":R,"./search/index.ts":X,"./user-banner/index.ts":tt,"./user-info/index.ts":nt}),it={};Object.keys(o).forEach(t=>{var e;const n=t.replace(/^\.\/([\w-]+).*/gi,"$1");it[n]=(e=o[t])==null?void 0:e.default});export{it as e}; diff --git a/server/public/admin/assets/index-DmXb6F6C.js b/server/public/admin/assets/index-3Xy1OQb4.js similarity index 87% rename from server/public/admin/assets/index-DmXb6F6C.js rename to server/public/admin/assets/index-3Xy1OQb4.js index f92a4c51..d3b4750d 100644 --- a/server/public/admin/assets/index-DmXb6F6C.js +++ b/server/public/admin/assets/index-3Xy1OQb4.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-4jHuPsCG.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/file-dC1LMm1W.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/patient-BKtZKzsB.js","assets/tcm-DCW3HTOw.js","assets/@tencentcloud/chat-uikit-vue3-CLQ__Wr9.js","assets/@tencentcloud/uikit-base-component-vue3-YgTqL4da.js","assets/@tencentcloud/uikit-base-component-vue3-BkrtIuVN.css","assets/tuikit-atomicx-vue3-Dln8Zi6e.js","assets/@tencentcloud/chat-uikit-engine-zx802ozq.js","assets/@tencentcloud/chat-AC2Y2r2A.js","assets/tim-upload-plugin-HO4N4AW9.js","assets/tim-profanity-filter-plugin-Dn_Cf-mP.js","assets/@tencentcloud/tui-core-8M7p1XHw.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/@tencentcloud/tuiroom-engine-js-Br9swJyU.js","assets/rtc-detect-Chu-fZvE.js","assets/tcplayer.js-qpFBCYzN.js","assets/tuikit-atomicx-vue3-Qhi9ezz1.css","assets/@tencentcloud/chat-uikit-vue3-Cj2eB1Uk.css","assets/im-business-message-parse-QKjFLn3X.js","assets/@tencentcloud/call-uikit-vue-DB7vt9Ht.js","assets/@tencentcloud/call-engine-js-BX2W9Lhf.js","assets/index-BqRj5hg7.css","assets/edit-CsfWrQHN.js","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); -import{_ as qe}from"./jspdf-BsthCvR5.js";import{d as Ye,C as Ze,L as Xe,T as et,r as tt,R as at,i as nt,V as st}from"./element-plus-DFTWCWyi.js";import{w as ot,s as it,T as lt}from"./@vue/runtime-dom-DDAG46FW.js";import{r as Ie,n as rt,a as ut,b as dt}from"./patient-BKtZKzsB.js";import ct from"./NoteTimeline-BrIUegAJ.js";import mt from"./PatientInfoCard-QbPK3em5.js";import pt from"./PatientCaseCard-D3V_iWVf.js";import vt from"./DailyMatrix-j3uF_86P.js";import{l as ft}from"./doctor-B7qEhSpt.js";import{L as gt}from"./tcm-DCW3HTOw.js";import{i as g,_ as _t}from"./index-Nt5zMHcc.js";import{f as ht}from"./diag-display-DCz_VAqj.js";import{N as yt,l as kt,J as St,a6 as Ct}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as wt,w as Et,b as Dt,n as bt,d as qt,as as It,ak as u,I as h,J as s,a as d,aN as m,aP as F,F as xe,ap as xt,O as b,G as w,H as q,at as Re,P as Ne,A as H}from"./@vue/runtime-core-C6bnekPw.js";import{Q as S,o as J}from"./@vue/shared-mAAVTE9n.js";import{y as a,a as re,n as l}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./blood-thresholds-CJ1fqMjh.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./vue-echarts-BNtg2q_G.js";import"./resize-detector-G6vbKCU7.js";import"./DiagnosisTodoList-BFQuq0si.js";import"./perm-DkIPMPyD.js";const Rt={class:"reception-page"},Nt={class:"reception-header"},Tt={class:"header-left"},$t={class:"header-meta"},Vt={class:"header-right"},Pt={class:"live-pill"},Lt={class:"filter-shell"},Mt={class:"filter-tabs"},zt={class:"main-area"},At={class:"queue-col"},Bt={class:"queue-panel"},Ft={class:"queue-head"},Ot={class:"queue-title"},Ut={class:"queue-meta"},jt=["onClick"],Gt={class:"row-name"},Qt={class:"name-line"},Wt={class:"name-meta"},Ht={class:"time-line"},Jt=["disabled","onClick"],Kt=["onClick"],Yt={key:0},Zt={key:1,class:"no-more"},Xt={class:"sidebar"},ea={key:0,class:"placeholder-card"},ta={class:"card note-card"},aa={class:"card metric-card"},na={key:0,class:"float-bar"},ue=5e3,de=15,sa=wt({__name:"index",setup(oa){const Te=Ne(()=>qe(()=>import("./index-4jHuPsCG.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64]))),$e=Ne(()=>qe(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([65,1,2,3,4,5,6,7,8,9,10,11,12,13,14,43,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,66,67,68,69,70,71,72,73,74,75,76,15,77,78,79,80,53,54,55,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,61,98,99,100,101,102,103,104,42,105,106,107,108,109,110,111,112,113,114,115,116]))),_=l(1),y=l([]),O=l(0),K=l(0),Y=l(0),Z=l(1),U=l(!0),j=l(!1),G=l(!1),X=l(!1),c=l(null),v=l(null),ee=l(!1),C=l(""),V=l(!1),P=l(ue/1e3),L=l(null);let I=null,x=null,te=!1,M=!1,E=null,Q=0,R=0;const ae=l(null),W=l(null),ce=l(),me=l(),N=l(!1),z=l(""),ne=l(!1),T=H(()=>{var e;return((e=v.value)==null?void 0:e.appointment)||{}}),k=H(()=>{var e;return((e=v.value)==null?void 0:e.diagnosis)||{}}),Ve=H(()=>{var e;return((e=v.value)==null?void 0:e.doctor_notes)||[]}),Pe=H(()=>{const e=new Date,t=["周日","周一","周二","周三","周四","周五","周六"][e.getDay()],n=o=>String(o).padStart(2,"0");return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())} ${t}`}),Le=()=>{const e=new Date,t=n=>String(n).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}`},Me=e=>[ht(e.gender),e.age!=null?e.age+"岁":""].filter(n=>n&&n!=="—").join(" "),ze=e=>e?e.replace(/^(\d{2}:\d{2})(:\d{2})?$/,"$1"):"—",se=async(e,t,n)=>{const o=Le(),i=await dt({status:t??_.value,start_date:o,end_date:o,patient_name:(n??C.value)||void 0,page_no:e,page_size:de}),D=(i==null?void 0:i.lists)||(i==null?void 0:i.data)||[],p=Number((i==null?void 0:i.count)??(i==null?void 0:i.total)??0);return{list:D,count:p}},Ae=async(e,t,n)=>{const o=e===1?4:1;try{const{count:i}=await se(1,o,t||void 0);if(n!==Q||_.value!==e||C.value!==t)return;o===1?K.value=i:Y.value=i}catch{}},A=async e=>{const t=(e==null?void 0:e.silent)===!0;if(t&&te)return;const n=++Q,o=_.value,i=C.value,D=(e==null?void 0:e.autoSelect)??!t;te=!0,t||(G.value=!0);try{Z.value=1;const{list:p,count:f}=await se(1,o,i||void 0);if(n!==Q||_.value!==o||C.value!==i)return;y.value=p,O.value=f||p.length,o===1?K.value=f:Y.value=f,U.value=p.length>=de&&y.value.length<(f||0),Ae(o,i,n),c.value&&!p.some(ie=>ie.id===c.value)&&(c.value=null,v.value=null),!c.value&&D&&p.length>0&&await pe(p[0])}catch(p){t||console.error("加载队列失败:",p)}finally{n===Q&&(G.value=!1,te=!1)}},Be=async()=>{if(j.value||!U.value)return;const e=_.value,t=C.value;j.value=!0;try{const n=Z.value+1,{list:o,count:i}=await se(n,e,t||void 0);if(_.value!==e||C.value!==t)return;const D=new Set(y.value.map(f=>f.id)),p=o.filter(f=>!D.has(f.id));y.value=[...y.value,...p],Z.value=n,O.value=i||O.value,U.value=o.length>=de&&y.value.length<(i||0)}catch(n){console.error("加载更多失败:",n)}finally{j.value=!1}},Fe=async()=>{if(!c.value||M)return;const e=c.value,t=++R;M=!0;try{const n=await Ie({id:e});if(t!==R||c.value!==e)return;v.value=n||v.value}catch{}finally{t===R&&(M=!1)}},pe=async e=>{if(c.value===e.id)return;const t=e.id,n=++R;c.value=e.id,v.value=null,X.value=!0,M=!0,B();try{const o=await Ie({id:t});if(n!==R||c.value!==t)return;v.value=o||null}catch(o){console.error("加载详情失败:",o),g.msgError("加载患者详情失败")}finally{n===R&&(X.value=!1,M=!1)}},ve=async e=>{_.value!==e&&(_.value=e,c.value=null,v.value=null,await A(),B())},fe=async()=>{c.value=null,v.value=null,await A(),B()},Oe=async e=>{var t;if(!e.patient_id){g.msgWarning("患者信息不完整");return}try{const n=await gt({patient_id:e.patient_id,diagnosis_id:e.diagnosis_id||e.id});(t=ce.value)==null||t.open({patientId:e.patient_id,patientName:e.patient_name,diagnosisId:e.diagnosis_id||e.id,signatureData:n})}catch(n){console.error("获取通话签名失败:",n),g.msgError((n==null?void 0:n.message)||"获取通话签名失败")}},Ue=async e=>{if(!L.value){L.value=e.id;try{await rt({id:e.id}),g.msgSuccess(`已通知医助 ${e.assistant_name||""}`),await $()}catch(t){g.msgError((t==null?void 0:t.message)||"通知失败")}finally{L.value=null}}},je=()=>{var e,t;(e=k.value)!=null&&e.patient_id&&((t=me.value)==null||t.open("edit",k.value.patient_id))},Ge=async()=>{await $()},$=async()=>{const e=c.value;await A({silent:!0,autoSelect:!1}),e&&c.value===e&&await Fe(),B()},Qe=async()=>{var e;if((e=T.value)!=null&&e.id){try{await g.confirm("确认将该患者标记为「已完成接诊」?此操作不可撤销。")}catch{return}ee.value=!0;try{await ft({id:T.value.id}),g.msgSuccess("已完成接诊"),c.value=null,v.value=null,await A({autoSelect:!0}),B()}catch(t){g.msgError((t==null?void 0:t.message)||"操作失败")}finally{ee.value=!1}}},We=async()=>{var n;const e=(n=k.value)==null?void 0:n.id;if(!e){g.msgWarning("当前患者无诊单,无法添加备注");return}const t=z.value.trim();if(!t){g.msgWarning("请输入备注内容");return}ne.value=!0;try{await ut({diagnosis_id:e,content:t}),g.msgSuccess("备注保存成功"),z.value="",N.value=!1,await $()}catch(o){g.msgError((o==null?void 0:o.message)||"保存失败")}finally{ne.value=!1}},He=()=>{P.value=ue/1e3},Je=()=>{x&&clearInterval(x),He(),x=setInterval(()=>{V.value||(P.value>1?P.value-=1:P.value=1)},1e3)},ge=()=>{I&&clearTimeout(I),!V.value&&(Je(),I=setTimeout(async()=>{await $()},ue))},B=()=>{ge()},Ke=()=>{oe(),ge()},oe=()=>{I&&(clearTimeout(I),I=null),x&&(clearInterval(x),x=null)},_e=()=>{V.value=document.hidden,document.hidden?oe():$()},he=e=>{var n;const t=String(((n=e==null?void 0:e.reason)==null?void 0:n.message)||(e==null?void 0:e.reason)||"");/Receiving end does not exist|Could not establish connection/i.test(t)&&e.preventDefault()},ye=()=>{!W.value||!ae.value||(E==null||E.disconnect(),E=new IntersectionObserver(e=>{for(const t of e)t.isIntersecting&&Be()},{root:ae.value,rootMargin:"80px",threshold:0}),E.observe(W.value))};return Et(W,()=>ye()),Dt(()=>{A(),Ke(),document.addEventListener("visibilitychange",_e),window.addEventListener("unhandledrejection",he),bt(()=>ye())}),qt(()=>{oe(),E==null||E.disconnect(),document.removeEventListener("visibilitychange",_e),window.removeEventListener("unhandledrejection",he)}),(e,t)=>{var Se,Ce,we,Ee,De;const n=Ye,o=Ze,i=et,D=tt,p=at,f=nt,ie=st,ke=Xe,le=It("perms");return u(),h("div",Rt,[s("div",Nt,[s("div",Tt,[t[8]||(t[8]=s("h1",{class:"header-title"},"接诊台",-1)),s("div",$t,S(a(Pe)),1)]),s("div",Vt,[s("div",Pt,[s("span",{class:J(["live-dot",{paused:a(V)}])},null,2),s("span",null,S(a(V)?"已暂停":`${a(P)}s 后刷新`),1)])])]),s("div",Lt,[d(o,{modelValue:a(C),"onUpdate:modelValue":t[0]||(t[0]=r=>re(C)?C.value=r:null),placeholder:"请输入患者姓名",clearable:"",size:"default",class:"search-input",onKeyup:ot(fe,["enter"]),onClear:fe},{prefix:m(()=>[d(n,null,{default:m(()=>[d(a(yt))]),_:1})]),_:1},8,["modelValue"]),s("div",Mt,[s("span",{class:J(["filter-tab",{active:a(_)===1}]),onClick:t[1]||(t[1]=r=>ve(1))},"待接诊 "+S(a(K))+" 人",3),t[9]||(t[9]=s("span",{class:"filter-sep"},"·",-1)),s("span",{class:J(["filter-tab",{active:a(_)===4}]),onClick:t[2]||(t[2]=r=>ve(4))},"已过号 "+S(a(Y))+" 人",3)])]),s("div",zt,[s("aside",At,[s("div",Bt,[s("div",Ft,[s("span",Ot,S(a(_)===1?"待接诊":"已过号"),1),s("span",Ut,S(a(O))+" 人",1)]),F((u(),h("div",{ref_key:"queueScrollRef",ref:ae,class:"queue-list"},[(u(!0),h(xe,null,xt(a(y),r=>(u(),h("div",{key:r.id,class:J(["queue-row",{active:a(c)===r.id,passed:r.status===4}]),onClick:be=>pe(r)},[s("div",Gt,[s("div",Qt,[b(S(r.patient_name||"未命名")+" ",1),s("span",Wt,S(Me(r)),1),r.status===4?(u(),w(i,{key:0,size:"small",type:"warning",class:"ml-1"},{default:m(()=>[...t[10]||(t[10]=[b("已过号",-1)])]),_:1})):q("",!0)]),s("div",Ht,S(ze(r.appointment_time))+" · 医助 "+S(r.assistant_name||"—"),1)]),s("div",{class:"row-actions",onClick:t[3]||(t[3]=it(()=>{},["stop"]))},[d(D,{content:"通知医助(企业微信)",placement:"top"},{default:m(()=>[s("button",{class:"row-icon-btn notify",disabled:a(L)===r.id,onClick:be=>Ue(r)},[a(L)===r.id?(u(),w(n,{key:0,class:"is-loading"},{default:m(()=>[d(a(kt))]),_:1})):(u(),w(n,{key:1},{default:m(()=>[d(a(St))]),_:1}))],8,Jt)]),_:2},1024),d(D,{content:"发起通话",placement:"top"},{default:m(()=>[s("button",{class:"row-icon-btn call",onClick:be=>Oe(r)},[d(n,null,{default:m(()=>[d(a(Ct))]),_:1})],8,Kt)]),_:2},1024)])],10,jt))),128)),a(y).length>0?(u(),h("div",{key:0,ref_key:"sentinelRef",ref:W,class:"scroll-sentinel"},[a(j)?(u(),h("span",Yt,"加载中…")):a(U)?q("",!0):(u(),h("span",Zt,"— 已全部加载 —"))],512)):q("",!0),!a(G)&&a(y).length===0?(u(),w(p,{key:1,description:"暂无待接诊患者","image-size":64})):q("",!0)])),[[ke,a(G)&&a(y).length===0]])])]),F((u(),h("section",Xt,[a(c)?a(v)?(u(),h(xe,{key:1},[d(mt,{apt:a(T),diag:a(k)},null,8,["apt","diag"]),d(pt,{apt:a(T),diag:a(k)},null,8,["apt","diag"]),s("div",ta,[t[11]||(t[11]=s("div",{class:"card-title"},"医生备注 & 舌苔照片 & 检查报告",-1)),d(ct,{notes:a(Ve),"diagnosis-id":(Se=a(k))==null?void 0:Se.id,onRefresh:$},null,8,["notes","diagnosis-id"])]),s("div",aa,[t[12]||(t[12]=s("div",{class:"card-title"},"日常记录",-1)),d(vt,{"diagnosis-id":Number(((Ce=a(k))==null?void 0:Ce.id)??0),"patient-id":Number(((we=a(k))==null?void 0:we.patient_id)??0),age:((Ee=a(k))==null?void 0:Ee.age)??null,"patient-name":((De=a(k))==null?void 0:De.patient_name)||"","read-only":!0},null,8,["diagnosis-id","patient-id","age","patient-name"])])],64)):q("",!0):(u(),h("div",ea,[d(p,{description:"请从左侧选择一位待接诊患者"})]))])),[[ke,a(X)&&!a(v)]])]),d(lt,{name:"fade"},{default:m(()=>[a(c)&&a(v)?(u(),h("div",na,[F((u(),w(f,{class:"float-action note",size:"large",onClick:t[4]||(t[4]=r=>N.value=!0)},{default:m(()=>[...t[13]||(t[13]=[b(" 备注 ",-1)])]),_:1})),[[le,["doctor.appointment/addDoctorNote"]]]),F((u(),w(f,{class:"float-action edit",size:"large",onClick:je},{default:m(()=>[...t[14]||(t[14]=[b(" 编辑病历 ",-1)])]),_:1})),[[le,["tcm.diagnosis/edit"]]]),a(T).status===1||a(T).status===4?F((u(),w(f,{key:0,class:"float-action finish",size:"large",loading:a(ee),onClick:Qe},{default:m(()=>[...t[15]||(t[15]=[b(" 完成接诊 ",-1)])]),_:1},8,["loading"])),[[le,["doctor.appointment/complete"]]]):q("",!0)])):q("",!0)]),_:1}),d(ie,{modelValue:a(N),"onUpdate:modelValue":t[7]||(t[7]=r=>re(N)?N.value=r:null),title:"添加备注",width:"480px","append-to-body":""},{footer:m(()=>[d(f,{onClick:t[6]||(t[6]=r=>N.value=!1)},{default:m(()=>[...t[16]||(t[16]=[b("取消",-1)])]),_:1}),d(f,{type:"primary",loading:a(ne),onClick:We},{default:m(()=>[...t[17]||(t[17]=[b("保存",-1)])]),_:1},8,["loading"])]),default:m(()=>[d(o,{modelValue:a(z),"onUpdate:modelValue":t[5]||(t[5]=r=>re(z)?z.value=r:null),type:"textarea",rows:4,placeholder:"输入今日备注...",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1},8,["modelValue"]),(u(),w(Re(a(Te)),{ref_key:"chatDialogRef",ref:ce},null,512)),(u(),w(Re(a($e)),{ref_key:"diagnosisEditRef",ref:me,onSuccess:Ge},null,544))])}}}),yn=_t(sa,[["__scopeId","data-v-2cfceb5b"]]);export{yn as default}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-Cs5gux7p.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/file-B0kKUfF_.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/patient-BNjmKCvA.js","assets/tcm-DzAQc_oE.js","assets/@tencentcloud/chat-uikit-vue3-CLQ__Wr9.js","assets/@tencentcloud/uikit-base-component-vue3-YgTqL4da.js","assets/@tencentcloud/uikit-base-component-vue3-BkrtIuVN.css","assets/tuikit-atomicx-vue3-Dln8Zi6e.js","assets/@tencentcloud/chat-uikit-engine-zx802ozq.js","assets/@tencentcloud/chat-AC2Y2r2A.js","assets/tim-upload-plugin-HO4N4AW9.js","assets/tim-profanity-filter-plugin-Dn_Cf-mP.js","assets/@tencentcloud/tui-core-8M7p1XHw.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/@tencentcloud/tuiroom-engine-js-Br9swJyU.js","assets/rtc-detect-Chu-fZvE.js","assets/tcplayer.js-qpFBCYzN.js","assets/tuikit-atomicx-vue3-Qhi9ezz1.css","assets/@tencentcloud/chat-uikit-vue3-Cj2eB1Uk.css","assets/im-business-message-parse-QKjFLn3X.js","assets/@tencentcloud/call-uikit-vue-DB7vt9Ht.js","assets/@tencentcloud/call-engine-js-BX2W9Lhf.js","assets/index-BqRj5hg7.css","assets/edit-DiacXhqZ.js","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); +import{_ as qe}from"./jspdf-BsthCvR5.js";import{d as Ye,C as Ze,L as Xe,T as et,r as tt,R as at,i as nt,V as st}from"./element-plus-DFTWCWyi.js";import{w as ot,s as it,T as lt}from"./@vue/runtime-dom-DDAG46FW.js";import{r as Ie,n as rt,a as ut,b as dt}from"./patient-BNjmKCvA.js";import ct from"./NoteTimeline-Vt4S5dzs.js";import mt from"./PatientInfoCard-D7xW7q4X.js";import pt from"./PatientCaseCard-MkaTBq87.js";import vt from"./DailyMatrix-DyqovtVx.js";import{l as ft}from"./doctor-BlvK2TEo.js";import{L as gt}from"./tcm-DzAQc_oE.js";import{i as g,_ as _t}from"./index--WnM67ZH.js";import{f as ht}from"./diag-display-DCz_VAqj.js";import{N as yt,l as kt,J as St,a6 as Ct}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as wt,w as Et,b as Dt,n as bt,d as qt,as as It,ak as u,I as h,J as s,a as d,aN as m,aP as F,F as xe,ap as xt,O as b,G as w,H as q,at as Re,P as Ne,A as H}from"./@vue/runtime-core-C6bnekPw.js";import{Q as S,o as J}from"./@vue/shared-mAAVTE9n.js";import{y as a,a as re,n as l}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./blood-thresholds-CJ1fqMjh.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./vue-echarts-BNtg2q_G.js";import"./resize-detector-G6vbKCU7.js";import"./DiagnosisTodoList-Be3uAeoQ.js";import"./perm-CLhA0PJe.js";const Rt={class:"reception-page"},Nt={class:"reception-header"},Tt={class:"header-left"},$t={class:"header-meta"},Vt={class:"header-right"},Pt={class:"live-pill"},Lt={class:"filter-shell"},Mt={class:"filter-tabs"},zt={class:"main-area"},At={class:"queue-col"},Bt={class:"queue-panel"},Ft={class:"queue-head"},Ot={class:"queue-title"},Ut={class:"queue-meta"},jt=["onClick"],Gt={class:"row-name"},Qt={class:"name-line"},Wt={class:"name-meta"},Ht={class:"time-line"},Jt=["disabled","onClick"],Kt=["onClick"],Yt={key:0},Zt={key:1,class:"no-more"},Xt={class:"sidebar"},ea={key:0,class:"placeholder-card"},ta={class:"card note-card"},aa={class:"card metric-card"},na={key:0,class:"float-bar"},ue=5e3,de=15,sa=wt({__name:"index",setup(oa){const Te=Ne(()=>qe(()=>import("./index-Cs5gux7p.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64]))),$e=Ne(()=>qe(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([65,1,2,3,4,5,6,7,8,9,10,11,12,13,14,43,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,66,67,68,69,70,71,72,73,74,75,76,15,77,78,79,80,53,54,55,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,61,98,99,100,101,102,103,104,42,105,106,107,108,109,110,111,112,113,114,115,116]))),_=l(1),y=l([]),O=l(0),K=l(0),Y=l(0),Z=l(1),U=l(!0),j=l(!1),G=l(!1),X=l(!1),c=l(null),v=l(null),ee=l(!1),C=l(""),V=l(!1),P=l(ue/1e3),L=l(null);let I=null,x=null,te=!1,M=!1,E=null,Q=0,R=0;const ae=l(null),W=l(null),ce=l(),me=l(),N=l(!1),z=l(""),ne=l(!1),T=H(()=>{var e;return((e=v.value)==null?void 0:e.appointment)||{}}),k=H(()=>{var e;return((e=v.value)==null?void 0:e.diagnosis)||{}}),Ve=H(()=>{var e;return((e=v.value)==null?void 0:e.doctor_notes)||[]}),Pe=H(()=>{const e=new Date,t=["周日","周一","周二","周三","周四","周五","周六"][e.getDay()],n=o=>String(o).padStart(2,"0");return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())} ${t}`}),Le=()=>{const e=new Date,t=n=>String(n).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}`},Me=e=>[ht(e.gender),e.age!=null?e.age+"岁":""].filter(n=>n&&n!=="—").join(" "),ze=e=>e?e.replace(/^(\d{2}:\d{2})(:\d{2})?$/,"$1"):"—",se=async(e,t,n)=>{const o=Le(),i=await dt({status:t??_.value,start_date:o,end_date:o,patient_name:(n??C.value)||void 0,page_no:e,page_size:de}),D=(i==null?void 0:i.lists)||(i==null?void 0:i.data)||[],p=Number((i==null?void 0:i.count)??(i==null?void 0:i.total)??0);return{list:D,count:p}},Ae=async(e,t,n)=>{const o=e===1?4:1;try{const{count:i}=await se(1,o,t||void 0);if(n!==Q||_.value!==e||C.value!==t)return;o===1?K.value=i:Y.value=i}catch{}},A=async e=>{const t=(e==null?void 0:e.silent)===!0;if(t&&te)return;const n=++Q,o=_.value,i=C.value,D=(e==null?void 0:e.autoSelect)??!t;te=!0,t||(G.value=!0);try{Z.value=1;const{list:p,count:f}=await se(1,o,i||void 0);if(n!==Q||_.value!==o||C.value!==i)return;y.value=p,O.value=f||p.length,o===1?K.value=f:Y.value=f,U.value=p.length>=de&&y.value.length<(f||0),Ae(o,i,n),c.value&&!p.some(ie=>ie.id===c.value)&&(c.value=null,v.value=null),!c.value&&D&&p.length>0&&await pe(p[0])}catch(p){t||console.error("加载队列失败:",p)}finally{n===Q&&(G.value=!1,te=!1)}},Be=async()=>{if(j.value||!U.value)return;const e=_.value,t=C.value;j.value=!0;try{const n=Z.value+1,{list:o,count:i}=await se(n,e,t||void 0);if(_.value!==e||C.value!==t)return;const D=new Set(y.value.map(f=>f.id)),p=o.filter(f=>!D.has(f.id));y.value=[...y.value,...p],Z.value=n,O.value=i||O.value,U.value=o.length>=de&&y.value.length<(i||0)}catch(n){console.error("加载更多失败:",n)}finally{j.value=!1}},Fe=async()=>{if(!c.value||M)return;const e=c.value,t=++R;M=!0;try{const n=await Ie({id:e});if(t!==R||c.value!==e)return;v.value=n||v.value}catch{}finally{t===R&&(M=!1)}},pe=async e=>{if(c.value===e.id)return;const t=e.id,n=++R;c.value=e.id,v.value=null,X.value=!0,M=!0,B();try{const o=await Ie({id:t});if(n!==R||c.value!==t)return;v.value=o||null}catch(o){console.error("加载详情失败:",o),g.msgError("加载患者详情失败")}finally{n===R&&(X.value=!1,M=!1)}},ve=async e=>{_.value!==e&&(_.value=e,c.value=null,v.value=null,await A(),B())},fe=async()=>{c.value=null,v.value=null,await A(),B()},Oe=async e=>{var t;if(!e.patient_id){g.msgWarning("患者信息不完整");return}try{const n=await gt({patient_id:e.patient_id,diagnosis_id:e.diagnosis_id||e.id});(t=ce.value)==null||t.open({patientId:e.patient_id,patientName:e.patient_name,diagnosisId:e.diagnosis_id||e.id,signatureData:n})}catch(n){console.error("获取通话签名失败:",n),g.msgError((n==null?void 0:n.message)||"获取通话签名失败")}},Ue=async e=>{if(!L.value){L.value=e.id;try{await rt({id:e.id}),g.msgSuccess(`已通知医助 ${e.assistant_name||""}`),await $()}catch(t){g.msgError((t==null?void 0:t.message)||"通知失败")}finally{L.value=null}}},je=()=>{var e,t;(e=k.value)!=null&&e.patient_id&&((t=me.value)==null||t.open("edit",k.value.patient_id))},Ge=async()=>{await $()},$=async()=>{const e=c.value;await A({silent:!0,autoSelect:!1}),e&&c.value===e&&await Fe(),B()},Qe=async()=>{var e;if((e=T.value)!=null&&e.id){try{await g.confirm("确认将该患者标记为「已完成接诊」?此操作不可撤销。")}catch{return}ee.value=!0;try{await ft({id:T.value.id}),g.msgSuccess("已完成接诊"),c.value=null,v.value=null,await A({autoSelect:!0}),B()}catch(t){g.msgError((t==null?void 0:t.message)||"操作失败")}finally{ee.value=!1}}},We=async()=>{var n;const e=(n=k.value)==null?void 0:n.id;if(!e){g.msgWarning("当前患者无诊单,无法添加备注");return}const t=z.value.trim();if(!t){g.msgWarning("请输入备注内容");return}ne.value=!0;try{await ut({diagnosis_id:e,content:t}),g.msgSuccess("备注保存成功"),z.value="",N.value=!1,await $()}catch(o){g.msgError((o==null?void 0:o.message)||"保存失败")}finally{ne.value=!1}},He=()=>{P.value=ue/1e3},Je=()=>{x&&clearInterval(x),He(),x=setInterval(()=>{V.value||(P.value>1?P.value-=1:P.value=1)},1e3)},ge=()=>{I&&clearTimeout(I),!V.value&&(Je(),I=setTimeout(async()=>{await $()},ue))},B=()=>{ge()},Ke=()=>{oe(),ge()},oe=()=>{I&&(clearTimeout(I),I=null),x&&(clearInterval(x),x=null)},_e=()=>{V.value=document.hidden,document.hidden?oe():$()},he=e=>{var n;const t=String(((n=e==null?void 0:e.reason)==null?void 0:n.message)||(e==null?void 0:e.reason)||"");/Receiving end does not exist|Could not establish connection/i.test(t)&&e.preventDefault()},ye=()=>{!W.value||!ae.value||(E==null||E.disconnect(),E=new IntersectionObserver(e=>{for(const t of e)t.isIntersecting&&Be()},{root:ae.value,rootMargin:"80px",threshold:0}),E.observe(W.value))};return Et(W,()=>ye()),Dt(()=>{A(),Ke(),document.addEventListener("visibilitychange",_e),window.addEventListener("unhandledrejection",he),bt(()=>ye())}),qt(()=>{oe(),E==null||E.disconnect(),document.removeEventListener("visibilitychange",_e),window.removeEventListener("unhandledrejection",he)}),(e,t)=>{var Se,Ce,we,Ee,De;const n=Ye,o=Ze,i=et,D=tt,p=at,f=nt,ie=st,ke=Xe,le=It("perms");return u(),h("div",Rt,[s("div",Nt,[s("div",Tt,[t[8]||(t[8]=s("h1",{class:"header-title"},"接诊台",-1)),s("div",$t,S(a(Pe)),1)]),s("div",Vt,[s("div",Pt,[s("span",{class:J(["live-dot",{paused:a(V)}])},null,2),s("span",null,S(a(V)?"已暂停":`${a(P)}s 后刷新`),1)])])]),s("div",Lt,[d(o,{modelValue:a(C),"onUpdate:modelValue":t[0]||(t[0]=r=>re(C)?C.value=r:null),placeholder:"请输入患者姓名",clearable:"",size:"default",class:"search-input",onKeyup:ot(fe,["enter"]),onClear:fe},{prefix:m(()=>[d(n,null,{default:m(()=>[d(a(yt))]),_:1})]),_:1},8,["modelValue"]),s("div",Mt,[s("span",{class:J(["filter-tab",{active:a(_)===1}]),onClick:t[1]||(t[1]=r=>ve(1))},"待接诊 "+S(a(K))+" 人",3),t[9]||(t[9]=s("span",{class:"filter-sep"},"·",-1)),s("span",{class:J(["filter-tab",{active:a(_)===4}]),onClick:t[2]||(t[2]=r=>ve(4))},"已过号 "+S(a(Y))+" 人",3)])]),s("div",zt,[s("aside",At,[s("div",Bt,[s("div",Ft,[s("span",Ot,S(a(_)===1?"待接诊":"已过号"),1),s("span",Ut,S(a(O))+" 人",1)]),F((u(),h("div",{ref_key:"queueScrollRef",ref:ae,class:"queue-list"},[(u(!0),h(xe,null,xt(a(y),r=>(u(),h("div",{key:r.id,class:J(["queue-row",{active:a(c)===r.id,passed:r.status===4}]),onClick:be=>pe(r)},[s("div",Gt,[s("div",Qt,[b(S(r.patient_name||"未命名")+" ",1),s("span",Wt,S(Me(r)),1),r.status===4?(u(),w(i,{key:0,size:"small",type:"warning",class:"ml-1"},{default:m(()=>[...t[10]||(t[10]=[b("已过号",-1)])]),_:1})):q("",!0)]),s("div",Ht,S(ze(r.appointment_time))+" · 医助 "+S(r.assistant_name||"—"),1)]),s("div",{class:"row-actions",onClick:t[3]||(t[3]=it(()=>{},["stop"]))},[d(D,{content:"通知医助(企业微信)",placement:"top"},{default:m(()=>[s("button",{class:"row-icon-btn notify",disabled:a(L)===r.id,onClick:be=>Ue(r)},[a(L)===r.id?(u(),w(n,{key:0,class:"is-loading"},{default:m(()=>[d(a(kt))]),_:1})):(u(),w(n,{key:1},{default:m(()=>[d(a(St))]),_:1}))],8,Jt)]),_:2},1024),d(D,{content:"发起通话",placement:"top"},{default:m(()=>[s("button",{class:"row-icon-btn call",onClick:be=>Oe(r)},[d(n,null,{default:m(()=>[d(a(Ct))]),_:1})],8,Kt)]),_:2},1024)])],10,jt))),128)),a(y).length>0?(u(),h("div",{key:0,ref_key:"sentinelRef",ref:W,class:"scroll-sentinel"},[a(j)?(u(),h("span",Yt,"加载中…")):a(U)?q("",!0):(u(),h("span",Zt,"— 已全部加载 —"))],512)):q("",!0),!a(G)&&a(y).length===0?(u(),w(p,{key:1,description:"暂无待接诊患者","image-size":64})):q("",!0)])),[[ke,a(G)&&a(y).length===0]])])]),F((u(),h("section",Xt,[a(c)?a(v)?(u(),h(xe,{key:1},[d(mt,{apt:a(T),diag:a(k)},null,8,["apt","diag"]),d(pt,{apt:a(T),diag:a(k)},null,8,["apt","diag"]),s("div",ta,[t[11]||(t[11]=s("div",{class:"card-title"},"医生备注 & 舌苔照片 & 检查报告",-1)),d(ct,{notes:a(Ve),"diagnosis-id":(Se=a(k))==null?void 0:Se.id,onRefresh:$},null,8,["notes","diagnosis-id"])]),s("div",aa,[t[12]||(t[12]=s("div",{class:"card-title"},"日常记录",-1)),d(vt,{"diagnosis-id":Number(((Ce=a(k))==null?void 0:Ce.id)??0),"patient-id":Number(((we=a(k))==null?void 0:we.patient_id)??0),age:((Ee=a(k))==null?void 0:Ee.age)??null,"patient-name":((De=a(k))==null?void 0:De.patient_name)||"","read-only":!0},null,8,["diagnosis-id","patient-id","age","patient-name"])])],64)):q("",!0):(u(),h("div",ea,[d(p,{description:"请从左侧选择一位待接诊患者"})]))])),[[ke,a(X)&&!a(v)]])]),d(lt,{name:"fade"},{default:m(()=>[a(c)&&a(v)?(u(),h("div",na,[F((u(),w(f,{class:"float-action note",size:"large",onClick:t[4]||(t[4]=r=>N.value=!0)},{default:m(()=>[...t[13]||(t[13]=[b(" 备注 ",-1)])]),_:1})),[[le,["doctor.appointment/addDoctorNote"]]]),F((u(),w(f,{class:"float-action edit",size:"large",onClick:je},{default:m(()=>[...t[14]||(t[14]=[b(" 编辑病历 ",-1)])]),_:1})),[[le,["tcm.diagnosis/edit"]]]),a(T).status===1||a(T).status===4?F((u(),w(f,{key:0,class:"float-action finish",size:"large",loading:a(ee),onClick:Qe},{default:m(()=>[...t[15]||(t[15]=[b(" 完成接诊 ",-1)])]),_:1},8,["loading"])),[[le,["doctor.appointment/complete"]]]):q("",!0)])):q("",!0)]),_:1}),d(ie,{modelValue:a(N),"onUpdate:modelValue":t[7]||(t[7]=r=>re(N)?N.value=r:null),title:"添加备注",width:"480px","append-to-body":""},{footer:m(()=>[d(f,{onClick:t[6]||(t[6]=r=>N.value=!1)},{default:m(()=>[...t[16]||(t[16]=[b("取消",-1)])]),_:1}),d(f,{type:"primary",loading:a(ne),onClick:We},{default:m(()=>[...t[17]||(t[17]=[b("保存",-1)])]),_:1},8,["loading"])]),default:m(()=>[d(o,{modelValue:a(z),"onUpdate:modelValue":t[5]||(t[5]=r=>re(z)?z.value=r:null),type:"textarea",rows:4,placeholder:"输入今日备注...",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1},8,["modelValue"]),(u(),w(Re(a(Te)),{ref_key:"chatDialogRef",ref:ce},null,512)),(u(),w(Re(a($e)),{ref_key:"diagnosisEditRef",ref:me,onSuccess:Ge},null,544))])}}}),yn=_t(sa,[["__scopeId","data-v-2cfceb5b"]]);export{yn as default}; diff --git a/server/public/admin/assets/index-By_gWTUA.js b/server/public/admin/assets/index-B64L9SAA.js similarity index 69% rename from server/public/admin/assets/index-By_gWTUA.js rename to server/public/admin/assets/index-B64L9SAA.js index f21c425c..499f429d 100644 --- a/server/public/admin/assets/index-By_gWTUA.js +++ b/server/public/admin/assets/index-B64L9SAA.js @@ -1 +1 @@ -import{_ as S}from"./index-DbiC_Mh1.js";import{J as C,i as E}from"./element-plus-DFTWCWyi.js";import{a as I,s as J}from"./decoration-XX4ow94I.js";import{s as O,_ as k}from"./index-Nt5zMHcc.js";import{_ as B}from"./attr-setting.vue_vue_type_script_setup_true_lang-De0qg73C.js";import U from"./menu-DdD-PeZU.js";import h from"./preview-Bxm-pT3K.js";import{e as R}from"./index-CHZQEiCU.js";import{f as w,w as W,as as j,ak as _,I as A,J as G,a as m,aN as l,aP as H,G as $,O as q,A as c}from"./@vue/runtime-core-C6bnekPw.js";import{r as z,y as i,a as v,n as D}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./attr-C9CZlLYE.js";import"./index-D18gAY1e.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js";import"./decoration-img-A6h02C6l.js";import"./attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js";import"./content-DSbMIogU.js";import"./attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js";import"./content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js";import"./attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./content-Bq2N97AM.js";import"./attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js";import"./content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-RKc8NsXf.js";import"./attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-BvpTtLa-.js";import"./content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-_IxwYLuN.js";import"./attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js";import"./content.vue_vue_type_script_setup_true_lang-BPonashY.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-DPq40ncB.js";const F={class:"decoration-pages min-w-[1100px]"},K={class:"flex flex-1 h-full justify-between"},L=w({name:"decorationPages"}),Q=w({...L,setup(T){let u;(t=>{t.HOME="1",t.USER="2",t.SERVICE="3"})(u||(u={}));const x=t=>{o[a.value].pageData=[...t]},p=t=>t.map(e=>{var n;return{id:O(),...((n=R[e])==null?void 0:n.options())||{}}}),M=t=>{var e;(e=o[a.value])!=null&&e.pageData&&(o[a.value].pageData[r.value].content=t)},o=z({1:{id:1,type:1,name:"首页装修",pageMeta:p(["page-meta"]),pageData:p(["search","banner","nav","news"])},2:{id:2,type:2,name:"个人中心",pageMeta:p(["page-meta"]),pageData:p(["user-info","my-service","user-banner"])},3:{id:3,type:3,name:"客服设置",pageMeta:null,pageData:p(["customer-service"])}}),a=D("1"),r=D(-1),d=c(()=>{var t;return((t=o[a.value])==null?void 0:t.pageData)??[]}),y=c(()=>{var t;return((t=o[a.value])==null?void 0:t.pageMeta)??null}),b=c(()=>{var t,e;return r.value===-1?((t=o[a.value])==null?void 0:t.pageMeta[0])??"":((e=o[a.value])==null?void 0:e.pageData[r.value])??""}),g=async()=>{const t=await I({id:a.value});o[String(t.id)].pageData=JSON.parse(t.data),o[String(t.id)].pageMeta=t!=null&&t.meta?JSON.parse(t==null?void 0:t.meta):null},P=async()=>{const t=o[a.value];await J({...t,data:JSON.stringify(t.pageData),meta:t!=null&&t.pageMeta?JSON.stringify(t==null?void 0:t.pageMeta):null}),g()};return W(a,()=>{r.value=d.value.findIndex(t=>!t.disabled),g()},{immediate:!0}),(t,e)=>{const f=C,n=E,V=S,N=j("perms");return _(),A("div",F,[G("div",K,[m(f,{shadow:"never",class:"!border-none flex scroll-view-content","body-style":{"padding-right":0}},{default:l(()=>[m(U,{modelValue:i(a),"onUpdate:modelValue":e[0]||(e[0]=s=>v(a)?a.value=s:null),menus:i(o)},null,8,["modelValue","menus"])]),_:1}),m(h,{class:"flex-1 scroll-view-content",modelValue:i(r),"onUpdate:modelValue":e[1]||(e[1]=s=>v(r)?r.value=s:null),onUpdatePageData:x,pageData:i(d),pageMeta:i(y)},null,8,["modelValue","pageData","pageMeta"]),m(B,{class:"w-[560px] scroll-view-content",widget:i(b),"onUpdate:content":M},null,8,["widget"])]),H((_(),$(V,{class:"mt-4",fixed:!1},{default:l(()=>[m(n,{type:"primary",onClick:P},{default:l(()=>[...e[2]||(e[2]=[q("保存",-1)])]),_:1})]),_:1})),[[N,["decorate:pages:save"]]])])}}}),Se=k(Q,[["__scopeId","data-v-8a7bf3bc"]]);export{Se as default}; +import{_ as S}from"./index-j275bAO5.js";import{J as C,i as E}from"./element-plus-DFTWCWyi.js";import{a as I,s as J}from"./decoration-BA17WVMJ.js";import{s as O,_ as k}from"./index--WnM67ZH.js";import{_ as B}from"./attr-setting.vue_vue_type_script_setup_true_lang-CiGkQ9Un.js";import U from"./menu-DAbI419p.js";import h from"./preview-gBcw24wE.js";import{e as R}from"./index-2TepIesZ.js";import{f as w,w as W,as as j,ak as _,I as A,J as G,a as m,aN as l,aP as H,G as $,O as q,A as c}from"./@vue/runtime-core-C6bnekPw.js";import{r as z,y as i,a as v,n as D}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./attr-LeDws8D5.js";import"./index-BtiRSS_3.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-D3j4saYE.js";import"./decoration-img-Bn25X5JS.js";import"./attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js";import"./content-DeSOYKs_.js";import"./attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js";import"./content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js";import"./attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./content-BRFykSo7.js";import"./attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js";import"./content.vue_vue_type_script_setup_true_lang-jnpmExki.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-TNbubsqc.js";import"./attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-DDJw1TZH.js";import"./content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-By25GabM.js";import"./attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js";import"./content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-BLxl9Qo-.js";const F={class:"decoration-pages min-w-[1100px]"},K={class:"flex flex-1 h-full justify-between"},L=w({name:"decorationPages"}),Q=w({...L,setup(T){let u;(t=>{t.HOME="1",t.USER="2",t.SERVICE="3"})(u||(u={}));const x=t=>{o[a.value].pageData=[...t]},p=t=>t.map(e=>{var n;return{id:O(),...((n=R[e])==null?void 0:n.options())||{}}}),M=t=>{var e;(e=o[a.value])!=null&&e.pageData&&(o[a.value].pageData[r.value].content=t)},o=z({1:{id:1,type:1,name:"首页装修",pageMeta:p(["page-meta"]),pageData:p(["search","banner","nav","news"])},2:{id:2,type:2,name:"个人中心",pageMeta:p(["page-meta"]),pageData:p(["user-info","my-service","user-banner"])},3:{id:3,type:3,name:"客服设置",pageMeta:null,pageData:p(["customer-service"])}}),a=D("1"),r=D(-1),d=c(()=>{var t;return((t=o[a.value])==null?void 0:t.pageData)??[]}),y=c(()=>{var t;return((t=o[a.value])==null?void 0:t.pageMeta)??null}),b=c(()=>{var t,e;return r.value===-1?((t=o[a.value])==null?void 0:t.pageMeta[0])??"":((e=o[a.value])==null?void 0:e.pageData[r.value])??""}),g=async()=>{const t=await I({id:a.value});o[String(t.id)].pageData=JSON.parse(t.data),o[String(t.id)].pageMeta=t!=null&&t.meta?JSON.parse(t==null?void 0:t.meta):null},P=async()=>{const t=o[a.value];await J({...t,data:JSON.stringify(t.pageData),meta:t!=null&&t.pageMeta?JSON.stringify(t==null?void 0:t.pageMeta):null}),g()};return W(a,()=>{r.value=d.value.findIndex(t=>!t.disabled),g()},{immediate:!0}),(t,e)=>{const f=C,n=E,V=S,N=j("perms");return _(),A("div",F,[G("div",K,[m(f,{shadow:"never",class:"!border-none flex scroll-view-content","body-style":{"padding-right":0}},{default:l(()=>[m(U,{modelValue:i(a),"onUpdate:modelValue":e[0]||(e[0]=s=>v(a)?a.value=s:null),menus:i(o)},null,8,["modelValue","menus"])]),_:1}),m(h,{class:"flex-1 scroll-view-content",modelValue:i(r),"onUpdate:modelValue":e[1]||(e[1]=s=>v(r)?r.value=s:null),onUpdatePageData:x,pageData:i(d),pageMeta:i(y)},null,8,["modelValue","pageData","pageMeta"]),m(B,{class:"w-[560px] scroll-view-content",widget:i(b),"onUpdate:content":M},null,8,["widget"])]),H((_(),$(V,{class:"mt-4",fixed:!1},{default:l(()=>[m(n,{type:"primary",onClick:P},{default:l(()=>[...e[2]||(e[2]=[q("保存",-1)])]),_:1})]),_:1})),[[N,["decorate:pages:save"]]])])}}}),Se=k(Q,[["__scopeId","data-v-8a7bf3bc"]]);export{Se as default}; diff --git a/server/public/admin/assets/index-D8ldWVxH.js b/server/public/admin/assets/index-BFc25KGY.js similarity index 88% rename from server/public/admin/assets/index-D8ldWVxH.js rename to server/public/admin/assets/index-BFc25KGY.js index 5cd1bdce..5bd4cdb3 100644 --- a/server/public/admin/assets/index-D8ldWVxH.js +++ b/server/public/admin/assets/index-BFc25KGY.js @@ -1 +1 @@ -import{D as M,B as G,C as H,P as Q,Q as W,i as X,J as Y,L as Z,M as ee,N as oe,q as te,g as ae}from"./element-plus-DFTWCWyi.js";import{_ as le}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as ne,i as ie}from"./index-Nt5zMHcc.js";import{_ as me}from"./index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js";import{w as E}from"./@vue/runtime-dom-DDAG46FW.js";import{a as x,b as re,c as se}from"./admin-BAFPFiwc.js";import{r as pe}from"./role-Dce31LXP.js";import{u as de}from"./useDictOptions-CT8hbU1b.js";import{u as ue}from"./usePaging-VsbTxSU0.js";import{_ as ce}from"./edit.vue_vue_type_script_setup_true_lang-V9yb54Tt.js";import{f as B,b as _e,as as fe,ak as m,I as D,a as e,aN as l,F as ve,ap as be,G as s,O as u,aP as v,J as $,H as k,n as P}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,a as we,q as ge,r as he,n as ye}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-CSUh_x-a.js";import"./post-CjhbCF7F.js";const ke={class:"admin"},Ce={class:"mt-4"},Ve={class:"flex mt-4 justify-end"},Ee=B({name:"admin"}),Uo=B({...Ee,setup(xe){const b=ge(),r=he({account:"",name:"",role_id:""}),w=ye(!1),{pager:p,getLists:c,resetParams:F,resetPage:y}=ue({fetchFun:x,params:r}),N=n=>{re({id:n.id,avatar:n.avatar,account:n.account,name:n.name,role_id:n.role_id,job_id:n.job_id,dept_id:n.dept_id,disable:n.disable,multipoint_login:n.multipoint_login}).finally(()=>{c()})},U=async()=>{var n;w.value=!0,await P(),(n=b.value)==null||n.open("add")},z=async n=>{var o,_;w.value=!0,await P(),(o=b.value)==null||o.open("edit"),(_=b.value)==null||_.setFormData(n)},I=async n=>{await ie.confirm("确定要删除?"),await se({id:n}),c()},{optionsData:K}=de({role:{api:pe}});return _e(()=>{c()}),(n,o)=>{const _=H,g=G,C=W,L=Q,f=X,S=me,R=M,V=Y,T=ne,i=oe,j=te,A=ae,O=ee,q=le,h=fe("perms"),J=Z;return m(),D("div",ke,[e(V,{class:"!border-none",shadow:"never"},{default:l(()=>[e(R,{class:"mb-[-16px]",model:a(r),inline:""},{default:l(()=>[e(g,{class:"w-[280px]",label:"管理员账号"},{default:l(()=>[e(_,{modelValue:a(r).account,"onUpdate:modelValue":o[0]||(o[0]=t=>a(r).account=t),placeholder:"请输入管理员账号",clearable:"",onKeyup:E(a(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员名称"},{default:l(()=>[e(_,{modelValue:a(r).name,"onUpdate:modelValue":o[1]||(o[1]=t=>a(r).name=t),placeholder:"请输入管理员名称",clearable:"",onKeyup:E(a(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员角色"},{default:l(()=>[e(L,{modelValue:a(r).role_id,"onUpdate:modelValue":o[2]||(o[2]=t=>a(r).role_id=t)},{default:l(()=>[e(C,{label:"全部",value:""}),(m(!0),D(ve,null,be(a(K).role,(t,d)=>(m(),s(C,{key:d,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(g,null,{default:l(()=>[e(f,{type:"primary",onClick:a(y)},{default:l(()=>[...o[5]||(o[5]=[u("查询",-1)])]),_:1},8,["onClick"]),e(f,{onClick:a(F)},{default:l(()=>[...o[6]||(o[6]=[u("重置",-1)])]),_:1},8,["onClick"]),e(S,{class:"ml-2.5","fetch-fun":a(x),params:a(r),"page-size":a(p).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),v((m(),s(V,{class:"mt-4 !border-none",shadow:"never"},{default:l(()=>[v((m(),s(f,{type:"primary",onClick:U},{icon:l(()=>[e(T,{name:"el-icon-Plus"})]),default:l(()=>[o[7]||(o[7]=u(" 新增 ",-1))]),_:1})),[[h,["auth.admin/add"]]]),$("div",Ce,[e(O,{data:a(p).lists,size:"large"},{default:l(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),o[10]||(o[10]=u("> ",-1)),e(i,{label:"头像","min-width":"100"},{default:l(({row:t})=>[e(j,{size:50,src:t.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"100"}),e(i,{label:"名称",prop:"name","min-width":"100"}),e(i,{label:"角色",prop:"role_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"部门",prop:"dept_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),v((m(),s(i,{label:"状态","min-width":"100"},{default:l(({row:t})=>[t.root!=1?(m(),s(A,{key:0,modelValue:t.disable,"onUpdate:modelValue":d=>t.disable=d,"active-value":0,"inactive-value":1,onChange:d=>N(t)},null,8,["modelValue","onUpdate:modelValue","onChange"])):k("",!0)]),_:1})),[[h,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:l(({row:t})=>[v((m(),s(f,{type:"primary",link:"",onClick:d=>z(t)},{default:l(()=>[...o[8]||(o[8]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/edit"]]]),t.root!=1?v((m(),s(f,{key:0,type:"danger",link:"",onClick:d=>I(t.id)},{default:l(()=>[...o[9]||(o[9]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/delete"]]]):k("",!0)]),_:1})]),_:1},8,["data"])]),$("div",Ve,[e(q,{modelValue:a(p),"onUpdate:modelValue":o[3]||(o[3]=t=>we(p)?p.value=t:null),onChange:a(c)},null,8,["modelValue","onChange"])])]),_:1})),[[J,a(p).loading]]),a(w)?(m(),s(ce,{key:0,ref_key:"editRef",ref:b,onSuccess:a(c),onClose:o[4]||(o[4]=t=>w.value=!1)},null,8,["onSuccess"])):k("",!0)])}}});export{Uo as default}; +import{D as M,B as G,C as H,P as Q,Q as W,i as X,J as Y,L as Z,M as ee,N as oe,q as te,g as ae}from"./element-plus-DFTWCWyi.js";import{_ as le}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as ne,i as ie}from"./index--WnM67ZH.js";import{_ as me}from"./index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js";import{w as E}from"./@vue/runtime-dom-DDAG46FW.js";import{a as x,b as re,c as se}from"./admin-CGNFdyXh.js";import{r as pe}from"./role-BvkAFvOK.js";import{u as de}from"./useDictOptions-lSbSoycG.js";import{u as ue}from"./usePaging-VsbTxSU0.js";import{_ as ce}from"./edit.vue_vue_type_script_setup_true_lang-ChNKntck.js";import{f as B,b as _e,as as fe,ak as m,I as D,a as e,aN as l,F as ve,ap as be,G as s,O as u,aP as v,J as $,H as k,n as P}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,a as we,q as ge,r as he,n as ye}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-D5OVad_r.js";import"./post-D694zeqo.js";const ke={class:"admin"},Ce={class:"mt-4"},Ve={class:"flex mt-4 justify-end"},Ee=B({name:"admin"}),Uo=B({...Ee,setup(xe){const b=ge(),r=he({account:"",name:"",role_id:""}),w=ye(!1),{pager:p,getLists:c,resetParams:F,resetPage:y}=ue({fetchFun:x,params:r}),N=n=>{re({id:n.id,avatar:n.avatar,account:n.account,name:n.name,role_id:n.role_id,job_id:n.job_id,dept_id:n.dept_id,disable:n.disable,multipoint_login:n.multipoint_login}).finally(()=>{c()})},U=async()=>{var n;w.value=!0,await P(),(n=b.value)==null||n.open("add")},z=async n=>{var o,_;w.value=!0,await P(),(o=b.value)==null||o.open("edit"),(_=b.value)==null||_.setFormData(n)},I=async n=>{await ie.confirm("确定要删除?"),await se({id:n}),c()},{optionsData:K}=de({role:{api:pe}});return _e(()=>{c()}),(n,o)=>{const _=H,g=G,C=W,L=Q,f=X,S=me,R=M,V=Y,T=ne,i=oe,j=te,A=ae,O=ee,q=le,h=fe("perms"),J=Z;return m(),D("div",ke,[e(V,{class:"!border-none",shadow:"never"},{default:l(()=>[e(R,{class:"mb-[-16px]",model:a(r),inline:""},{default:l(()=>[e(g,{class:"w-[280px]",label:"管理员账号"},{default:l(()=>[e(_,{modelValue:a(r).account,"onUpdate:modelValue":o[0]||(o[0]=t=>a(r).account=t),placeholder:"请输入管理员账号",clearable:"",onKeyup:E(a(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员名称"},{default:l(()=>[e(_,{modelValue:a(r).name,"onUpdate:modelValue":o[1]||(o[1]=t=>a(r).name=t),placeholder:"请输入管理员名称",clearable:"",onKeyup:E(a(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员角色"},{default:l(()=>[e(L,{modelValue:a(r).role_id,"onUpdate:modelValue":o[2]||(o[2]=t=>a(r).role_id=t)},{default:l(()=>[e(C,{label:"全部",value:""}),(m(!0),D(ve,null,be(a(K).role,(t,d)=>(m(),s(C,{key:d,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(g,null,{default:l(()=>[e(f,{type:"primary",onClick:a(y)},{default:l(()=>[...o[5]||(o[5]=[u("查询",-1)])]),_:1},8,["onClick"]),e(f,{onClick:a(F)},{default:l(()=>[...o[6]||(o[6]=[u("重置",-1)])]),_:1},8,["onClick"]),e(S,{class:"ml-2.5","fetch-fun":a(x),params:a(r),"page-size":a(p).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),v((m(),s(V,{class:"mt-4 !border-none",shadow:"never"},{default:l(()=>[v((m(),s(f,{type:"primary",onClick:U},{icon:l(()=>[e(T,{name:"el-icon-Plus"})]),default:l(()=>[o[7]||(o[7]=u(" 新增 ",-1))]),_:1})),[[h,["auth.admin/add"]]]),$("div",Ce,[e(O,{data:a(p).lists,size:"large"},{default:l(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),o[10]||(o[10]=u("> ",-1)),e(i,{label:"头像","min-width":"100"},{default:l(({row:t})=>[e(j,{size:50,src:t.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"100"}),e(i,{label:"名称",prop:"name","min-width":"100"}),e(i,{label:"角色",prop:"role_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"部门",prop:"dept_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),v((m(),s(i,{label:"状态","min-width":"100"},{default:l(({row:t})=>[t.root!=1?(m(),s(A,{key:0,modelValue:t.disable,"onUpdate:modelValue":d=>t.disable=d,"active-value":0,"inactive-value":1,onChange:d=>N(t)},null,8,["modelValue","onUpdate:modelValue","onChange"])):k("",!0)]),_:1})),[[h,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:l(({row:t})=>[v((m(),s(f,{type:"primary",link:"",onClick:d=>z(t)},{default:l(()=>[...o[8]||(o[8]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/edit"]]]),t.root!=1?v((m(),s(f,{key:0,type:"danger",link:"",onClick:d=>I(t.id)},{default:l(()=>[...o[9]||(o[9]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/delete"]]]):k("",!0)]),_:1})]),_:1},8,["data"])]),$("div",Ve,[e(q,{modelValue:a(p),"onUpdate:modelValue":o[3]||(o[3]=t=>we(p)?p.value=t:null),onChange:a(c)},null,8,["modelValue","onChange"])])]),_:1})),[[J,a(p).loading]]),a(w)?(m(),s(ce,{key:0,ref_key:"editRef",ref:b,onSuccess:a(c),onClose:o[4]||(o[4]=t=>w.value=!1)},null,8,["onSuccess"])):k("",!0)])}}});export{Uo as default}; diff --git a/server/public/admin/assets/index-BUOQPh2G.js b/server/public/admin/assets/index-BHiaYJeM.js similarity index 87% rename from server/public/admin/assets/index-BUOQPh2G.js rename to server/public/admin/assets/index-BHiaYJeM.js index b996c893..5cdaaaee 100644 --- a/server/public/admin/assets/index-BUOQPh2G.js +++ b/server/public/admin/assets/index-BHiaYJeM.js @@ -1 +1 @@ -import{L as C,M as h,N as E,T as x,i as L,J as T}from"./element-plus-DFTWCWyi.js";import{d as B}from"./message-DMZbcMZ3.js";import{_ as N}from"./edit.vue_vue_type_script_setup_true_lang-DXBj1QMo.js";import{f as u,as as R,ak as i,I as D,aP as c,G as a,aN as o,a as r,O as l}from"./@vue/runtime-core-C6bnekPw.js";import{y as f,q as S,r as V}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const $=u({name:"shortLetter"}),ht=u({...$,setup(q){const p=S(),e=V({loading:!1,lists:[]}),d=async()=>{try{e.loading=!0,e.lists=await B(),e.loading=!1}catch{e.loading=!1}},g=s=>{var t;(t=p.value)==null||t.open(s)};return d(),(s,t)=>{const m=E,_=x,v=L,k=h,y=T,b=R("perms"),w=C;return i(),D("div",null,[c((i(),a(y,{class:"!border-none",shadow:"never"},{default:o(()=>[r(k,{size:"large",data:f(e).lists},{default:o(()=>[r(m,{label:"短信渠道",prop:"name","min-width":"120"}),r(m,{label:"状态","min-width":"120"},{default:o(({row:n})=>[n.status==1?(i(),a(_,{key:0},{default:o(()=>[...t[0]||(t[0]=[l("开启",-1)])]),_:1})):(i(),a(_,{key:1,type:"danger"},{default:o(()=>[...t[1]||(t[1]=[l("关闭",-1)])]),_:1}))]),_:1}),r(m,{label:"操作","min-width":"120",fixed:"right"},{default:o(({row:n})=>[c((i(),a(v,{type:"primary",link:"",onClick:z=>g(n.type)},{default:o(()=>[...t[2]||(t[2]=[l(" 设置 ",-1)])]),_:1},8,["onClick"])),[[b,["notice.sms_config/setConfig"]]])]),_:1})]),_:1},8,["data"])]),_:1})),[[w,f(e).loading]]),r(N,{ref_key:"editRef",ref:p,onSuccess:d},null,512)])}}});export{ht as default}; +import{L as C,M as h,N as E,T as x,i as L,J as T}from"./element-plus-DFTWCWyi.js";import{d as B}from"./message-E3FypG9J.js";import{_ as N}from"./edit.vue_vue_type_script_setup_true_lang-BmLgmCzm.js";import{f as u,as as R,ak as i,I as D,aP as c,G as a,aN as o,a as r,O as l}from"./@vue/runtime-core-C6bnekPw.js";import{y as f,q as S,r as V}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const $=u({name:"shortLetter"}),ht=u({...$,setup(q){const p=S(),e=V({loading:!1,lists:[]}),d=async()=>{try{e.loading=!0,e.lists=await B(),e.loading=!1}catch{e.loading=!1}},g=s=>{var t;(t=p.value)==null||t.open(s)};return d(),(s,t)=>{const m=E,_=x,v=L,k=h,y=T,b=R("perms"),w=C;return i(),D("div",null,[c((i(),a(y,{class:"!border-none",shadow:"never"},{default:o(()=>[r(k,{size:"large",data:f(e).lists},{default:o(()=>[r(m,{label:"短信渠道",prop:"name","min-width":"120"}),r(m,{label:"状态","min-width":"120"},{default:o(({row:n})=>[n.status==1?(i(),a(_,{key:0},{default:o(()=>[...t[0]||(t[0]=[l("开启",-1)])]),_:1})):(i(),a(_,{key:1,type:"danger"},{default:o(()=>[...t[1]||(t[1]=[l("关闭",-1)])]),_:1}))]),_:1}),r(m,{label:"操作","min-width":"120",fixed:"right"},{default:o(({row:n})=>[c((i(),a(v,{type:"primary",link:"",onClick:z=>g(n.type)},{default:o(()=>[...t[2]||(t[2]=[l(" 设置 ",-1)])]),_:1},8,["onClick"])),[[b,["notice.sms_config/setConfig"]]])]),_:1})]),_:1},8,["data"])]),_:1})),[[w,f(e).loading]]),r(N,{ref_key:"editRef",ref:p,onSuccess:d},null,512)])}}});export{ht as default}; diff --git a/server/public/admin/assets/index-BBnPZgeu.js b/server/public/admin/assets/index-BV_bClbl.js similarity index 98% rename from server/public/admin/assets/index-BBnPZgeu.js rename to server/public/admin/assets/index-BV_bClbl.js index cd34d61d..504916f3 100644 --- a/server/public/admin/assets/index-BBnPZgeu.js +++ b/server/public/admin/assets/index-BV_bClbl.js @@ -1,5 +1,5 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-CsfWrQHN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DCW3HTOw.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/patient-BKtZKzsB.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); -import{_ as Sl,E as Cl}from"./jspdf-BsthCvR5.js";import{G as Ul,F as $l,D as Pl,B as Dl,C as Rl,P as Tl,Q as Ol,i as Al,J as El,L as Ll,M as Fl,N as zl,T as Il,K as jl,a4 as Ml,a5 as Hl,I as Wl,h as ql,a2 as Yl,e as Bl,V as Gl,a6 as Kl,a7 as Jl,a8 as Ql,g as Xl,r as Zl,X as es}from"./element-plus-DFTWCWyi.js";import{_ as ts}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{u as as,c as ls,i as S,m as ss,_ as ns}from"./index-Nt5zMHcc.js";import{w as mt,s as we,q as _t}from"./@vue/runtime-dom-DDAG46FW.js";import{g as os,p as rs,b as is,c as ct,d as us,e as ds,f as ps,h as ms,i as _s,j as cs,k as fs,l as gs}from"./tcm-DCW3HTOw.js";import{m as vs}from"./medicine-D4btWglq.js";import{r as bs}from"./role-Dce31LXP.js";import{u as ys}from"./usePaging-VsbTxSU0.js";import{_ as xs}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{M as Jt}from"./index-afeGV-gc.js";import{T as ks,M as Vs,U as hs,N as ws}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as Ns}from"./vue-router-QlpZ4wdW.js";import Ss from"./html2canvas-QH1iLAAe.js";import{f as Qt,w as ze,b as Cs,as as Us,ak as m,I as b,a,aN as s,J as r,O as c,F as E,ap as Y,G as k,aP as O,H as y,P as $s,A as $,n as te}from"./@vue/runtime-core-C6bnekPw.js";import{y as j,a as Ps,r as Ne,n as x}from"./@vue/reactivity-DiY1c2vO.js";import{Q as f,o as Ds}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Rs={class:"prescription-list"},Ts={class:"pl-toolbar"},Os={class:"pl-toolbar__line"},As={class:"pl-toolbar__line pl-toolbar__line--second"},Es={class:"pl-toolbar__actions"},Ls={class:"pl-table-head"},Fs={class:"flex items-center gap-2"},zs={class:"mt-3"},Is={class:"font-medium"},js={class:"text-xs text-gray-400 mt-0.5"},Ms={key:1,class:"text-gray-400 text-sm"},Hs={class:"font-medium"},Ws={class:"text-xs text-gray-500 mt-0.5"},qs={class:"flex flex-col gap-1"},Ys={class:"flex flex-wrap items-center gap-1"},Bs={key:0,class:"text-xs text-gray-500"},Gs=["title"],Ks={key:1,class:"text-gray-400"},Js={class:"font-medium"},Qs={class:"text-xs text-gray-500 mt-0.5"},Xs={class:"text-sm"},Zs={class:"flex mt-2 justify-end"},en={key:0,class:"rx-wrap"},tn={class:"rx-toolbar"},an={key:0,class:"rx-status rx-status-danger"},ln={key:1,class:"rx-status rx-status-danger"},sn={key:0,class:"mt-1"},nn={key:2,class:"rx-status rx-status-danger"},on={key:0,class:"mt-1"},rn={class:"rx-notice"},un={class:"rx-notice-meta"},dn={class:"rx-info"},pn={class:"rx-info-row"},mn={class:"rx-info-cell"},_n={class:"rx-val"},cn={class:"rx-info-cell"},fn={class:"rx-val"},gn={class:"rx-info-cell"},vn={class:"rx-val"},bn={class:"rx-info-cell"},yn={class:"rx-val"},xn={class:"rx-info-row rx-info-row-full"},kn={class:"rx-info-cell"},Vn={class:"rx-val"},hn={class:"rx-info-row rx-info-row-full"},wn={class:"rx-info-cell"},Nn={class:"rx-val"},Sn={class:"rx-rp"},Cn={class:"rx-herbs"},Un={class:"rx-herb-name"},$n={class:"rx-herb-total"},Pn={class:"rx-herb-name"},Dn={class:"rx-herb-total"},Rn={class:"rx-text"},Tn={key:0},On={key:1},An={key:2},En={key:3,class:"rx-text-warn"},Ln={key:4,class:"rx-text-warn"},Fn={class:"rx-bottom"},zn={class:"rx-bot-row rx-bot-row-1"},In={class:"rx-bot-cell rx-bot-stack rx-bot-doctor"},jn={class:"rx-bot-doctor-body"},Mn=["src"],Hn={class:"rx-bot-doctor-name"},Wn={class:"rx-bot-cell rx-bot-meta"},qn={class:"rx-bot-meta-val"},Yn={class:"rx-bot-cell rx-bot-meta"},Bn={class:"rx-bot-meta-val"},Gn={class:"rx-bot-cell rx-bot-meta"},Kn={class:"rx-bot-meta-val"},Jn={key:4,class:"rx-audit"},Qn={key:0},Xn={key:0,class:"ml-2 text-gray-400"},Zn={key:1,class:"mt-1"},eo={class:"text-sm mt-1"},to={key:0,class:"text-sm mt-2 text-gray-800 font-medium"},ao={key:5,class:"mb-3 flex flex-wrap items-center gap-2 pl-[120px]"},lo={class:"text-xs text-gray-400"},so={class:"w-full"},no={class:"flex flex-wrap items-center gap-2"},oo={class:"herb-formula-block mt-3"},ro={class:"herb-formula-block__head"},io={class:"herb-formula-block mt-4"},uo={class:"herb-formula-block__head"},po={class:"text-sm mt-1 leading-relaxed"},mo={key:0,class:"mb-1.5"},_o={class:"font-mono text-primary"},co={class:"mb-1.5"},fo={class:"whitespace-pre-wrap"},go={key:1,class:"text-gray-600"},vo={class:"signature-pad-wrap"},bo={class:"signature-actions"},yo={class:"text-gray-700"},xo={class:"create-order-dialog__inner"},ko={key:0,class:"create-order-rx-card"},Vo={class:"create-order-rx-card__head"},ho={class:"create-order-rx-card__meta"},wo={class:"create-order-rx-card__id"},No={key:0,class:"create-order-rx-card__sn"},So={class:"create-order-rx-card__patient"},Co={class:"create-order-step-lead"},Uo={class:"create-order-step-panel"},$o={class:"create-order-step-panel"},Po={class:"flex items-center gap-1 w-full"},Do={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},Ro={class:"flex items-center justify-between"},To={class:"font-medium text-[13px] text-gray-800"},Oo={class:"text-orange-500 font-medium ml-4"},Ao={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},Eo={class:"truncate pr-2"},Lo={class:"shrink-0"},Fo={class:"create-order-pay-hint text-gray-500"},zo={class:"text-amber-600 font-medium"},Io={class:"create-order-step-panel"},jo={class:"create-order-deposit-bar__cell"},Mo={class:"create-order-deposit-bar__sub"},Ho={class:"create-order-deposit-bar__cell"},Wo={class:"create-order-deposit-bar__sub"},qo={class:"create-order-footer"},Yo={class:"create-order-footer__hint"},Bo={class:"create-order-footer__step"},Go={key:0,class:"create-order-footer__warn"},Ko={class:"create-order-footer__actions"},Jo={class:"mb-4 flex gap-3"},Qo={class:"mb-3 flex flex-wrap items-center gap-x-4 gap-y-2"},Xo={key:0},Zo={key:1,class:"text-gray-400"},er={class:"flex justify-end mt-4"},tr={class:"mt-3 flex flex-wrap items-center gap-x-4 gap-y-2"},ar=Qt({name:"prescriptionList"}),lr=Qt({...ar,setup(sr){const Xt=$s(()=>Sl(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98])));function Se(t="浓缩水丸"){return t==="饮片"?{dosage_amount:50,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:t==="浓缩水丸"?{dosage_amount:5,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:{dosage_amount:1,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}}function ft(t,e){const o=Se(e);if(!t||typeof t!="object")return{...o};const u=t;return{dosage_amount:u.dosage_amount!==null&&u.dosage_amount!==void 0&&u.dosage_amount!==""?Number(u.dosage_amount):o.dosage_amount,dosage_bag_count:u.dosage_bag_count!=null?Number(u.dosage_bag_count)||1:o.dosage_bag_count,need_decoction:u.need_decoction===1||u.need_decoction===!0,bags_per_dose:u.bags_per_dose!=null?Number(u.bags_per_dose)||1:o.bags_per_dose,times_per_day:u.times_per_day!=null?Number(u.times_per_day)||3:o.times_per_day,usage_days:u.usage_days!=null?Number(u.usage_days)||7:o.usage_days}}function gt(t,e,o){const u=t.prescription_type||"浓缩水丸",p=Number(t.times_per_day)>0?Number(t.times_per_day):3,d=t.dosage_amount!=null?Number(t.dosage_amount):10,i=t.dosage_unit||(u==="饮片"?"ml":"g"),V=t.usage_way||e||"温水送服",L=t.usage_time||o||"",v=[];if(v.push(`每天${p}次`),u==="浓缩水丸"){const K=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;v.push(`一次${K}袋`),v.push(`每袋${d}${i}`)}else v.push(`一次${d}${i}`);return v.push(V),L&&v.push(L),v.join(", ")}function W(t){return t==="辅方"?"辅方":"主方"}function Ie(t){return{name:String((t==null?void 0:t.name)??"").trim(),dosage:Number(t==null?void 0:t.dosage)||0,formula_type:W(t==null?void 0:t.formula_type)}}function je(t){return t?Array.isArray(t)?t.map(e=>Ie(e)):[]:[]}const ie=as(),vt=Ns();function Zt(){const t=vt.getRoutes().find(e=>{var o;return((o=e.meta)==null?void 0:o.perms)==="tcm.prescriptionOrder/lists"});t!=null&&t.path?vt.push(t.path):S.msgWarning("未配置「处方业务订单」菜单,请在权限管理中执行菜单 SQL 或手动添加路由")}const w=Ne({sn:"",patient_name:"",creator_ids:[],audit_filter:"all",source_filter:"all",start_time:"",end_time:""}),Me=x([]),B=x("all"),J=x(!1),R=x("add"),He=x(!1),X=x(),G=x(),ue=x(null),ae=560,le=168,g=x(null),We=x(!1),bt=x([]),de=x(!1),yt=x(0),se=x(""),Ce=x(!1),pe=x(!1),qe=x(!1),Ye=x(),P=Ne({id:0,patient_name:"",gender:1,phone:""}),ea={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function ta(t){P.id=Number(t.id)||0,P.patient_name=String(t.patient_name??"").trim();const e=Number(t.gender);P.gender=e===0||e===1?e:1,P.phone=String(t.phone??"").trim(),pe.value=!0}function aa(){var t;P.id=0,P.patient_name="",P.gender=1,P.phone="",(t=Ye.value)==null||t.clearValidate()}async function la(){const t=Ye.value;if(t){try{await t.validate()}catch{return}qe.value=!0;try{await rs({id:P.id,patient_name:P.patient_name.trim(),phone:P.phone.trim(),gender:P.gender}),S.msgSuccess("已保存"),pe.value=!1,Z()}catch(e){const o=e&&typeof e=="object"&&"msg"in e?String(e.msg):"";S.msgError(o||"保存失败")}finally{qe.value=!1}}}const me=x(!1),T=x(0),sa=$(()=>["请核对诊单患者并填写完整收货信息,便于发货与物流联系。","按需填写服务相关信息,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;提交前请对照定金门槛是否已满足。"][T.value]??""),na=["patient_id","recipient_name","recipient_phone","region","shipping_address"],q=x(null),_e=x(),Be=x(!1),Ge=x(!1),Q=x([]),ne=x([]),Ke=x(!1),D=x(0);function oe(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function xt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const _=Ne({patient_id:"",recipient_name:"",recipient_phone:"",region:[],shipping_address:"",is_follow_up:0,medication_days:void 0,prev_staff:"",service_channel:"",service_package:[],express_company:"auto",tracking_number:"",fee_type:3,amount:0,internal_cost:void 0,remark_extra:"",remark_assistant:"",pay_order_ids:[]}),ce=x([]),Je=x([]),oa=t=>t.map(e=>{var o;return{name:e.province,code:e.code,children:((o=e.citys)==null?void 0:o.map(u=>{var p;return{name:u.city,code:u.code,children:((p=u.areas)==null?void 0:p.map(d=>({name:d.area,code:d.code})))||[]}}))||[]}}),ra=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const o=await e.json();console.log("加载的数据条数:",o==null?void 0:o.length),ce.value=oa(o),console.log("regionOptions 已设置,条数:",ce.value.length)}catch(t){console.error("加载省市区数据失败:",t),ce.value=[{name:"四川省",children:[{name:"成都市",children:[{name:"锦江区"},{name:"青羊区"},{name:"金牛区"},{name:"武侯区"},{name:"成华区"},{name:"龙泉驿区"},{name:"青白江区"},{name:"新都区"},{name:"温江区"},{name:"双流区"}]},{name:"绵阳市",children:[{name:"涪城区"},{name:"游仙区"},{name:"安州区"}]}]},{name:"北京市",children:[{name:"北京市",children:[{name:"东城区"},{name:"西城区"},{name:"朝阳区"},{name:"丰台区"},{name:"海淀区"}]}]},{name:"上海市",children:[{name:"上海市",children:[{name:"黄浦区"},{name:"徐汇区"},{name:"长宁区"},{name:"静安区"},{name:"普陀区"}]}]},{name:"广东省",children:[{name:"广州市",children:[{name:"荔湾区"},{name:"越秀区"},{name:"海珠区"},{name:"天河区"},{name:"白云区"}]},{name:"深圳市",children:[{name:"罗湖区"},{name:"福田区"},{name:"南山区"},{name:"宝安区"}]}]}],console.log("使用后备数据,条数:",ce.value.length)}},ia=async()=>{try{const t=await ss({type:"server_order"});Je.value=((t==null?void 0:t.server_order)||[]).filter(e=>e.status!==0)}catch{Je.value=[]}},ua=t=>{console.log("选择的省市区:",t)},Qe=$(()=>{const t=new Set(_.pay_order_ids.map(o=>Number(o)));let e=0;for(const o of ne.value)t.has(Number(o.id))&&(e+=Number(o.amount)||0);return Math.round(e*100)/100}),da=$(()=>{const t=D.value;return t>0?Math.round(t*100)/100:0}),pa=$(()=>{const t={patient_id:[{required:!0,message:"请选择诊单患者",trigger:"change"}],recipient_name:[{required:!0,message:"请输入收货人",trigger:"blur"}],recipient_phone:[{required:!0,message:"请输入收货手机",trigger:"blur"}],region:[{required:!0,message:"请选择省/市/区",trigger:"change",type:"array"}],shipping_address:[{required:!0,message:"请输入收货地址",trigger:"blur"}],fee_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(e,o,u)=>{const p=D.value,d=Number(o);if(p>0&&(!Number.isFinite(d)||d0){const e=`已开启关联支付门槛(¥${oe(D.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function kt(){var t;T.value=0,_.patient_id="",_.recipient_name="",_.recipient_phone="",_.shipping_address="",_.is_follow_up=0,_.medication_days=void 0,_.prev_staff="",_.service_channel="",_.service_package=[],_.express_company="auto",_.tracking_number="",_.fee_type=3,_.amount=0,_.internal_cost=void 0,_.remark_extra="",_.remark_assistant="",_.pay_order_ids=[],Q.value=[],ne.value=[],D.value=0,q.value=null,(t=_e.value)==null||t.clearValidate()}function ma(){const t=D.value;if(t<=0)return;const e=Math.round(t*100)/100;Number(_.amount)_.patient_id,()=>{_.pay_order_ids=[],Vt()});async function _a(t){var p;if(Number(t==null?void 0:t.void_status)===1){S.msgWarning("已作废处方不可创建业务订单");return}kt(),q.value=t;const e=Number(t.diagnosis_id)||0;e>0&&(_.patient_id=e,_.recipient_name=t.patient_name||"",_.recipient_phone=String(t.phone||"").trim(),Q.value=[{id:e,patient_name:t.patient_name||"",phone:String(t.phone||"").trim()}]);const o=Number(t.usage_days);o>0&&(_.medication_days=o),me.value=!0,Vt();const u=t.id;if(u&&!_.recipient_phone)try{const d=await ct({id:u}),i=d&&typeof d.phone=="string"?d.phone.trim():"";if(i&&((p=q.value)==null?void 0:p.id)===u){_.recipient_phone=i;const V=Q.value[0];V&&Number(V.id)===e&&(V.phone=i)}}catch{}}async function ca(t){if(!t){Q.value=[];return}try{Ge.value=!0;const e=await searchPatientsAPI({keyword:t,page_no:1,page_size:10});Q.value=(e==null?void 0:e.lists)||[]}catch{Q.value=[]}finally{Ge.value=!1}}function fa(t){const e=Q.value.find(o=>Number(o.id)===Number(t));e&&(_.recipient_name=e.patient_name||"",_.recipient_phone=e.phone||"")}function ga(){T.value>0&&(T.value-=1)}async function va(){const t=_e.value;if(t)try{T.value===0?await t.validateField([...na]):T.value===1&&D.value>0&&await t.validateField(["pay_order_ids"]),T.value<2&&(T.value+=1)}catch{}}async function ba(){if(!(!_e.value||!q.value)&&T.value===2)try{await _e.value.validate(),Be.value=!0;const t=Number(_.patient_id),e={prescription_id:q.value.id,diagnosis_id:t,recipient_name:_.recipient_name,recipient_phone:_.recipient_phone,shipping_address:_.shipping_address,is_follow_up:_.is_follow_up,prev_staff:_.prev_staff||"",service_channel:_.service_channel||"",service_package:Array.isArray(_.service_package)&&_.service_package.length>0?_.service_package.join(","):"",express_company:_.express_company||"auto",tracking_number:_.tracking_number||"",fee_type:_.fee_type,amount:_.amount,remark_extra:_.remark_extra||"",remark_assistant:_.remark_assistant||""};_.region&&_.region.length>=3&&(e.shipping_province=_.region[0],e.shipping_city=_.region[1],e.shipping_district=_.region[2]),_.medication_days!=null&&_.medication_days>0&&(e.medication_days=_.medication_days),_.internal_cost!=null&&_.internal_cost>0&&(e.internal_cost=_.internal_cost),_.pay_order_ids.length&&(e.pay_order_ids=[..._.pay_order_ids]);const o=await us(e),u=(o==null?void 0:o.data)??o,p=u==null?void 0:u.order_no;S.msgSuccess(p?`业务订单已创建,单号:${p}`:"业务订单已创建"),me.value=!1,Z()}catch(t){console.error(t)}finally{Be.value=!1}}const Ue=x(!1),$e=x(!1),ht=$(()=>{const t=Ue.value,e=$e.value;return!t&&!e?"":t&&e?"当前处方已作废且已驳回。保存后将取消作废、清除驳回,并重新进入待审核。":t?"当前为已作废处方。保存后将取消作废,并重新进入待审核。":"当前为已驳回处方。保存后将清除驳回,并重新进入待审核。"}),fe=$(()=>{var e;const t=(e=g.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),wt=$(()=>fe.value.filter(t=>W(t.formula_type)==="主方")),Xe=$(()=>fe.value.filter(t=>W(t.formula_type)==="辅方")),ya=$(()=>n.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>W(t.formula_type)==="主方")),Nt=$(()=>n.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>W(t.formula_type)==="辅方")),St=x(null),Ze=x(!1),Pe=t=>String(t).padStart(2,"0"),xa=$(()=>{const t=g.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const o=String(e).length===10?Number(e)*1e3:Number(e),u=new Date(o);if(!isNaN(u.getTime()))return`${u.getFullYear()}-${Pe(u.getMonth()+1)}-${Pe(u.getDate())} ${Pe(u.getHours())}:${Pe(u.getMinutes())}`}return t.prescription_date||"—"}),ka=$(()=>{const t=g.value;return t?t.order_no||t.serial_no||t.serial_number||t.no||t.prescription_no||t.visit_no||(t.id?`G${t.id}`:"—"):"—"}),Va=$(()=>{const t=g.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let o=t.region;return Array.isArray(o)&&(o=o.filter(Boolean).join("")),o&&e.push(String(o)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),Ct=$(()=>{var e;const t=Number((e=g.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),ha=$(()=>{const e=fe.value.reduce((o,u)=>o+(Number(u==null?void 0:u.dosage)||0),0);return ge(e)}),Ut=t=>{const e=Number(t)||0;return ge(e*Ct.value)},wa=$(()=>{const t=g.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),Na=$(()=>{const t=g.value;return t?t.usage_text?t.usage_text:gt(t):"—"}),$t=$(()=>{const t=g.value;if(!t||!Xe.value.length)return"";const e=ft(t.aux_usage,t.prescription_type||"浓缩水丸");return gt({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),Pt=$(()=>{const t=g.value;return t&&t.medical_advice||""}),Dt=$(()=>{const t=g.value;if(!t)return"";const e=[];return e.push(`共${fe.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Rt=$(()=>{const t=g.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),Tt=$(()=>{const t=g.value;if(!t)return"";const e=Sa(t);return e?`${e}克`:""});function Sa(t){if(!t)return"";if((t.prescription_type||"浓缩水丸")==="浓缩水丸"){const p=Number(t.medication_days??t.usage_days??t.dose_count),d=Number(t.times_per_day),i=Number(t.dosage_amount),V=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;if(Number.isFinite(p)&&Number.isFinite(d)&&Number.isFinite(i)&&p>0&&d>0&&i>0)return ge(p*d*i*V)}const e=t.out_pellet||t.total_weight;if(e&&Number(e)>0)return ge(Number(e));const o=fe.value;if(!o.length)return"";const u=o.reduce((p,d)=>p+(Number(d==null?void 0:d.dosage)||0),0);return ge(u*Ct.value)}function ge(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function Ca(){g.value&&te(()=>{try{window.print()}catch(t){console.error(t)}})}async function Ua(){var e,o,u;const t=St.value;if(!t){S.msgWarning("处方笺尚未渲染完成");return}Ze.value=!0;try{await te(),await new Promise(z=>requestAnimationFrame(()=>z(null))),await new Promise(z=>setTimeout(z,250));const p=await Ss(t,{scale:2,backgroundColor:"#ffffff",useCORS:!0,allowTaint:!1,logging:!1,windowWidth:t.scrollWidth,windowHeight:t.scrollHeight,width:t.scrollWidth,height:t.scrollHeight}),d=p.toDataURL("image/jpeg",.95),i=new Cl({unit:"mm",format:"a4",orientation:"portrait"}),V=210,L=297,v=V,K=p.height*v/p.width;if(K<=L)i.addImage(d,"JPEG",0,0,v,K);else{let z=K,Le=0;for(;z>0;)i.addImage(d,"JPEG",0,Le,v,K),z-=L,Le-=L,z>0&&i.addPage()}const ut=((e=g.value)==null?void 0:e.patient_name)||"处方",C=((o=g.value)==null?void 0:o.id)||"",A=((u=g.value)==null?void 0:u.prescription_date)||"";i.save(`处方-${ut}${A?"-"+A:""}${C?"-"+C:""}.pdf`)}catch(p){console.error("下载处方 PDF 失败:",p),S.msgError((p==null?void 0:p.message)||"下载失败,请重试")}finally{Ze.value=!1}}const n=Ne({id:0,prescription_type:"浓缩水丸",dosage_amount:1,dosage_unit:"g",dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,patient_name:"",gender:1,age:0,visit_no:"",prescription_date:"",tongue:"",tongue_image:"",pulse:"",pulse_condition:"",clinical_diagnosis:"",herbs:[],dose_count:7,dose_unit:"剂",usage_days:7,usage_instruction:"",usage_time:"饭后",usage_way:"温水送服",dietary_taboo:[],usage_notes:"",doctor_name:"",doctor_signature:"",is_shared:0,visible_role_ids:[],audit_status:1,audit_time:null,audit_by_name:"",audit_remark:"",diagnosis_id:0,creator_id:0,is_system_auto:0,business_prescription_audit_rejected:0,business_prescription_audit_remark:"",times_per_day:2,aux_usage:Se("浓缩水丸")}),U=Ne({loading:!1,orderNo:"",medicationDays:null,remarkAssistant:""});function $a(){U.loading=!1,U.orderNo="",U.medicationDays=null,U.remarkAssistant=""}async function Pa(t){if(U.orderNo="",U.medicationDays=null,U.remarkAssistant="",!t){U.loading=!1;return}U.loading=!0;try{const e=await gs({page_no:1,page_size:5,prescription_id:t}),o=e==null?void 0:e.lists,u=Array.isArray(o)&&o.length?o[0]:null;if(u){U.orderNo=String(u.order_no||"").trim();const p=u.medication_days,d=p!=null&&String(p).trim()!==""?Number(p):NaN;U.medicationDays=Number.isFinite(d)&&d>0?d:null,U.remarkAssistant=String(u.remark_assistant||"").trim()}}catch{}finally{U.loading=!1}}const Ot=x(null);function Da(){var e;const t=Number(n.diagnosis_id);if(!t){S.msgWarning("本处方未关联诊单,无法查看诊单患者信息");return}(e=Ot.value)==null||e.openViewOnly(t)}const De=x(!1);ze(()=>n.prescription_type,t=>{De.value||(t==="浓缩水丸"?(n.dosage_unit="g",n.dosage_amount=1,n.dosage_bag_count=1,n.need_decoction=!1,n.bags_per_dose=1):t==="饮片"?(n.dosage_unit="ml",n.dosage_amount=50,n.dosage_bag_count=1,n.bags_per_dose=1):(n.dosage_unit="g",n.dosage_amount=void 0,n.dosage_bag_count=1,n.need_decoction=!1,n.bags_per_dose=1),Object.assign(n.aux_usage,Se(t)))});const Ra={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],prescription_date:[{required:!0,message:"请选择处方日期",trigger:"change"}],clinical_diagnosis:[{required:!0,message:"请输入临床诊断",trigger:"blur"}],dose_count:[{required:!0,message:"请输入剂数",trigger:"blur"}],doctor_name:[{required:!0,message:"请输入医师姓名",trigger:"blur"}],doctor_signature:[{required:!0,validator:(t,e,o)=>{!e||!String(e).trim()?o(new Error("请使用电子签名板手写医师签名")):o()},trigger:"change"}]};async function Ta(t){const{audit_filter:e,source_filter:o,creator_ids:u,...p}=t,d={...p,audit_filter:e==="all"||e===""?"":e,source_filter:o==="all"||o===""||o===void 0?"":o};return Array.isArray(u)&&u.length>0&&(d.creator_ids=u),ds(d)}const{pager:ve,getLists:Z,resetPage:ee}=ys({fetchFun:Ta,params:w});function At(t){return String(t).padStart(2,"0")}function Et(t){const e=t.getFullYear(),o=At(t.getMonth()+1),u=At(t.getDate()),p=`${e}-${o}-${u}`;return{start:`${p} 00:00:00`,end:`${p} 23:59:59`}}function Oa(t){const e=String(t??"all");if(e==="all")w.start_time="",w.end_time="";else{const o=new Date,u=new Date(o.getFullYear(),o.getMonth(),o.getDate());e==="yesterday"?u.setDate(u.getDate()-1):e==="before_yesterday"&&u.setDate(u.getDate()-2);const{start:p,end:d}=Et(u);w.start_time=p,w.end_time=d}ee()}function Aa(){ee()}function Ea(){ee()}let et=!1;ze(()=>[w.start_time,w.end_time],()=>{if(et)return;const t=w.start_time,e=w.end_time;if(!t&&!e){B.value="all";return}if(!t||!e){B.value="";return}const o=new Date,u=p=>{const d=new Date(o.getFullYear(),o.getMonth(),o.getDate()-p),{start:i,end:V}=Et(d);return t===i&&e===V};u(0)?B.value="today":u(1)?B.value="yesterday":u(2)?B.value="before_yesterday":B.value=""});function La(t){if(t==null||t==="")return"—";if(typeof t=="number"&&t>=1e9&&t<1e11)return Re(t);const e=String(t).trim();return/^\d{10}$/.test(e)?Re(parseInt(e,10)):e}function Fa(){et=!0,B.value="all",w.sn="",w.patient_name="",w.creator_ids=[],w.audit_filter="all",w.source_filter="all",w.start_time="",w.end_time="",et=!1,ee()}function za(t){return t===0?"待审核":t===2?"已驳回":"已通过"}function Ia(t){return t===0?"warning":t===2?"danger":"success"}function ja(t){return Number(t.business_prescription_audit_rejected)===1?"已驳回":za(t.audit_status)}function Ma(t){return Number(t.business_prescription_audit_rejected)===1?"danger":Ia(t.audit_status)}function Lt(t){const e=[];if(Number(t.business_prescription_audit_rejected)===1){const o=String(t.business_prescription_audit_remark||"").trim();e.push(o?`业务订单审核驳回意见:${o}`:"业务订单审核驳回意见:—")}if(Number(t.audit_status)===2){const o=String(t.audit_remark||"").trim();e.push(o?`消费者处方审核驳回意见:${o}`:"消费者处方审核驳回意见:—")}return e}function Ft(t){return Number(t.audit_status)===1&&Number(t.void_status)!==1}function Re(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Ha(t){return t?Re(t):"—"}function Wa(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function qa(t){return t==null||t===""?"—":`${t}岁`}function Ya(t){var p;const e=n.herbs[t];if(!e)return`第${t+1}味`;const o=W(e.formula_type);let u=0;for(let d=0;d<=t;d++)W((p=n.herbs[d])==null?void 0:p.formula_type)===o&&u++;return`${o}第${u}味`}function Ba(t){if(Number(t==null?void 0:t.has_prescription_order)!==1)return[];const o=je(t==null?void 0:t.herbs).map(i=>String((i==null?void 0:i.name)||"").trim()).filter(Boolean),u=[];if(!o.length)return u.push("请开方,当前处方药材为空白"),u;const p=new Set,d=new Set;for(const i of o){const V=i.replace(/\s+/g,"").toLowerCase();V&&(p.has(V)?d.add(i):p.add(V))}return d.size>0&&u.push(`已有关联业务订单,当前处方存在重复药材:${Array.from(d).join("、")}`),u}function Ga(t){return{...t,herbs:je(t==null?void 0:t.herbs)}}function Ka(){g.value=null,ue.value=null}function zt(t){const e=G.value;if(!e)return{x:0,y:0};const o=e.getBoundingClientRect();if(o.width<=0||o.height<=0)return{x:0,y:0};const u=(t.clientX-o.left)/o.width*ae,p=(t.clientY-o.top)/o.height*le;return{x:Math.max(0,Math.min(ae,u)),y:Math.max(0,Math.min(le,p))}}function tt(){const t=G.value;t&&(n.doctor_signature=t.toDataURL("image/png")),te(()=>{var e;(e=X.value)==null||e.validateField("doctor_signature").catch(()=>{})})}function Ja(t){if(t.pointerType==="mouse"&&t.button!==0)return;const e=G.value,o=e==null?void 0:e.getContext("2d");if(!e||!o)return;e.setPointerCapture(t.pointerId),ue.value=t.pointerId;const{x:u,y:p}=zt(t);o.beginPath(),o.moveTo(u,p)}function Qa(t){var p;if(ue.value!==t.pointerId)return;const e=(p=G.value)==null?void 0:p.getContext("2d");if(!e)return;const{x:o,y:u}=zt(t);e.lineTo(o,u),e.stroke(),e.beginPath(),e.moveTo(o,u)}function It(t){if(ue.value!==t.pointerId)return;ue.value=null;const e=G.value;if(e)try{e.releasePointerCapture(t.pointerId)}catch{}tt()}function Xa(){jt(),n.doctor_signature="",te(()=>{var t;(t=X.value)==null||t.validateField("doctor_signature").catch(()=>{})})}function jt(){const t=G.value;if(!t)return;const e=Math.min(typeof window<"u"&&window.devicePixelRatio||1,2.5);t.style.width=`${ae}px`,t.style.height=`${le}px`,t.width=Math.round(ae*e),t.height=Math.round(le*e);const o=t.getContext("2d");o&&(o.setTransform(1,0,0,1,0,0),o.scale(e,e),o.fillStyle="#fff",o.fillRect(0,0,ae,le),o.strokeStyle="#333",o.lineWidth=2.5,o.lineCap="round",o.lineJoin="round")}function Mt(){R.value!=="view"&&te(()=>{setTimeout(()=>{jt();const t=n.doctor_signature;if(t&&String(t).trim().startsWith("data:image")&&G.value){const e=new Image;e.onload=()=>{const o=G.value,u=o==null?void 0:o.getContext("2d");!o||!u||(u.drawImage(e,0,0,ae,le),tt())},e.onerror=()=>{tt()},e.src=t}},100)})}function Za(t){const e=t==null?void 0:t.visible_role_ids;return Array.isArray(e)?e.map(o=>Number(o)).filter(o=>!Number.isNaN(o)):typeof e=="string"&&e?e.split(",").map(o=>parseInt(o.trim(),10)).filter(o=>!Number.isNaN(o)):[]}function el(t){yt.value=t.id,se.value="",de.value=!0}async function Ht(t){if(t==="reject"&&!se.value.trim()){S.msgError("驳回时请填写审核意见");return}Ce.value=!0;try{const e=await ps({id:yt.value,action:t,remark:se.value.trim()});S.msgSuccess(t==="reject"?"已驳回并作废处方":"审核通过"),e&&e.wecom_notify_ok===!1&&e.wecom_notify_hint&&S.msgWarning(e.wecom_notify_hint),de.value=!1,Z()}catch{}finally{Ce.value=!1}}async function tl(){try{const t=await bs({});bt.value=Array.isArray(t)?t:[]}catch{bt.value=[]}}const be=x(!1),at=x(!1),lt=x([]),Te=x(""),Oe=x(""),ye=x("replace"),xe=x(1),st=x(15),nt=x(0),Wt=$(()=>{var o;const t=Number(n.creator_id);if(t>0)return t;const e=Number((o=ie.userInfo)==null?void 0:o.id);return e>0?e:0});function al(t){return String(t||"").trim().toLowerCase()}function qt(){const t=new Map;for(const e of n.herbs){const o=al(e==null?void 0:e.name);o&&t.set(o,(t.get(o)??0)+1)}return[...t.entries()].filter(([,e])=>e>1).map(([e])=>e)}const Ae=async()=>{const t=Wt.value;if(!t){S.msgWarning("无法确定开方医师,无法加载处方库"),lt.value=[],nt.value=0;return}at.value=!0;try{const e=await ms({page_no:xe.value,page_size:st.value,prescription_name:Te.value,formula_type:Oe.value,prescribing_creator_id:t});lt.value=(e==null?void 0:e.lists)||[],nt.value=(e==null?void 0:e.count)||0}catch(e){console.error(e),S.msgError("加载处方库失败")}finally{at.value=!1}},Ee=()=>{xe.value=1,Ae()},ll=()=>{if(!Wt.value){S.msgWarning("无法确定开方医师,无法从处方库导入");return}be.value=!0},sl=t=>{Yt(t)},Yt=t=>{if(!t.herbs||t.herbs.length===0){S.msgWarning("该处方没有药材信息");return}const e=W(t.formula_type),o=JSON.parse(JSON.stringify(t.herbs)).map(p=>({...Ie(p),formula_type:e}));if(ye.value==="replace"){const p=n.herbs.filter(d=>W(d.formula_type)!==e);n.herbs=[...p,...o]}else n.herbs.push(...o);const u=ye.value==="append"?"(已追加)":"";qt().length?S.msgWarning(`已导入处方「${t.prescription_name}」${u},共${o.length}味药材。存在重复药名,请合并剂量或删除多余行`):S.msgSuccess(`已导入处方「${t.prescription_name}」${u},共${o.length}味药材`),be.value=!1};ze(be,t=>{t&&(Te.value="",Oe.value="",ye.value="replace",xe.value=1,Ae())});const ke=x(!1),Ve=x(""),ot=x("replace"),rt=x(!1),nl=/^(用法|用量|医嘱|忌口|水煎服|空腹|饭后|温水|内服|外用|备注|顿服|分服|ml|毫升|[×xX]\s*\d)/;function ol(t){let e=t.replace(/\r\n/g,` +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DiacXhqZ.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DzAQc_oE.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/patient-BNjmKCvA.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); +import{_ as Sl,E as Cl}from"./jspdf-BsthCvR5.js";import{G as Ul,F as $l,D as Pl,B as Dl,C as Rl,P as Tl,Q as Ol,i as Al,J as El,L as Ll,M as Fl,N as zl,T as Il,K as jl,a4 as Ml,a5 as Hl,I as Wl,h as ql,a2 as Yl,e as Bl,V as Gl,a6 as Kl,a7 as Jl,a8 as Ql,g as Xl,r as Zl,X as es}from"./element-plus-DFTWCWyi.js";import{_ as ts}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{u as as,c as ls,i as S,m as ss,_ as ns}from"./index--WnM67ZH.js";import{w as mt,s as we,q as _t}from"./@vue/runtime-dom-DDAG46FW.js";import{g as os,p as rs,b as is,c as ct,d as us,e as ds,f as ps,h as ms,i as _s,j as cs,k as fs,l as gs}from"./tcm-DzAQc_oE.js";import{m as vs}from"./medicine-KRcHi5G1.js";import{r as bs}from"./role-BvkAFvOK.js";import{u as ys}from"./usePaging-VsbTxSU0.js";import{_ as xs}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{M as Jt}from"./index-DgkrquIz.js";import{T as ks,M as Vs,U as hs,N as ws}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as Ns}from"./vue-router-QlpZ4wdW.js";import Ss from"./html2canvas-QH1iLAAe.js";import{f as Qt,w as ze,b as Cs,as as Us,ak as m,I as b,a,aN as s,J as r,O as c,F as E,ap as Y,G as k,aP as O,H as y,P as $s,A as $,n as te}from"./@vue/runtime-core-C6bnekPw.js";import{y as j,a as Ps,r as Ne,n as x}from"./@vue/reactivity-DiY1c2vO.js";import{Q as f,o as Ds}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Rs={class:"prescription-list"},Ts={class:"pl-toolbar"},Os={class:"pl-toolbar__line"},As={class:"pl-toolbar__line pl-toolbar__line--second"},Es={class:"pl-toolbar__actions"},Ls={class:"pl-table-head"},Fs={class:"flex items-center gap-2"},zs={class:"mt-3"},Is={class:"font-medium"},js={class:"text-xs text-gray-400 mt-0.5"},Ms={key:1,class:"text-gray-400 text-sm"},Hs={class:"font-medium"},Ws={class:"text-xs text-gray-500 mt-0.5"},qs={class:"flex flex-col gap-1"},Ys={class:"flex flex-wrap items-center gap-1"},Bs={key:0,class:"text-xs text-gray-500"},Gs=["title"],Ks={key:1,class:"text-gray-400"},Js={class:"font-medium"},Qs={class:"text-xs text-gray-500 mt-0.5"},Xs={class:"text-sm"},Zs={class:"flex mt-2 justify-end"},en={key:0,class:"rx-wrap"},tn={class:"rx-toolbar"},an={key:0,class:"rx-status rx-status-danger"},ln={key:1,class:"rx-status rx-status-danger"},sn={key:0,class:"mt-1"},nn={key:2,class:"rx-status rx-status-danger"},on={key:0,class:"mt-1"},rn={class:"rx-notice"},un={class:"rx-notice-meta"},dn={class:"rx-info"},pn={class:"rx-info-row"},mn={class:"rx-info-cell"},_n={class:"rx-val"},cn={class:"rx-info-cell"},fn={class:"rx-val"},gn={class:"rx-info-cell"},vn={class:"rx-val"},bn={class:"rx-info-cell"},yn={class:"rx-val"},xn={class:"rx-info-row rx-info-row-full"},kn={class:"rx-info-cell"},Vn={class:"rx-val"},hn={class:"rx-info-row rx-info-row-full"},wn={class:"rx-info-cell"},Nn={class:"rx-val"},Sn={class:"rx-rp"},Cn={class:"rx-herbs"},Un={class:"rx-herb-name"},$n={class:"rx-herb-total"},Pn={class:"rx-herb-name"},Dn={class:"rx-herb-total"},Rn={class:"rx-text"},Tn={key:0},On={key:1},An={key:2},En={key:3,class:"rx-text-warn"},Ln={key:4,class:"rx-text-warn"},Fn={class:"rx-bottom"},zn={class:"rx-bot-row rx-bot-row-1"},In={class:"rx-bot-cell rx-bot-stack rx-bot-doctor"},jn={class:"rx-bot-doctor-body"},Mn=["src"],Hn={class:"rx-bot-doctor-name"},Wn={class:"rx-bot-cell rx-bot-meta"},qn={class:"rx-bot-meta-val"},Yn={class:"rx-bot-cell rx-bot-meta"},Bn={class:"rx-bot-meta-val"},Gn={class:"rx-bot-cell rx-bot-meta"},Kn={class:"rx-bot-meta-val"},Jn={key:4,class:"rx-audit"},Qn={key:0},Xn={key:0,class:"ml-2 text-gray-400"},Zn={key:1,class:"mt-1"},eo={class:"text-sm mt-1"},to={key:0,class:"text-sm mt-2 text-gray-800 font-medium"},ao={key:5,class:"mb-3 flex flex-wrap items-center gap-2 pl-[120px]"},lo={class:"text-xs text-gray-400"},so={class:"w-full"},no={class:"flex flex-wrap items-center gap-2"},oo={class:"herb-formula-block mt-3"},ro={class:"herb-formula-block__head"},io={class:"herb-formula-block mt-4"},uo={class:"herb-formula-block__head"},po={class:"text-sm mt-1 leading-relaxed"},mo={key:0,class:"mb-1.5"},_o={class:"font-mono text-primary"},co={class:"mb-1.5"},fo={class:"whitespace-pre-wrap"},go={key:1,class:"text-gray-600"},vo={class:"signature-pad-wrap"},bo={class:"signature-actions"},yo={class:"text-gray-700"},xo={class:"create-order-dialog__inner"},ko={key:0,class:"create-order-rx-card"},Vo={class:"create-order-rx-card__head"},ho={class:"create-order-rx-card__meta"},wo={class:"create-order-rx-card__id"},No={key:0,class:"create-order-rx-card__sn"},So={class:"create-order-rx-card__patient"},Co={class:"create-order-step-lead"},Uo={class:"create-order-step-panel"},$o={class:"create-order-step-panel"},Po={class:"flex items-center gap-1 w-full"},Do={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},Ro={class:"flex items-center justify-between"},To={class:"font-medium text-[13px] text-gray-800"},Oo={class:"text-orange-500 font-medium ml-4"},Ao={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},Eo={class:"truncate pr-2"},Lo={class:"shrink-0"},Fo={class:"create-order-pay-hint text-gray-500"},zo={class:"text-amber-600 font-medium"},Io={class:"create-order-step-panel"},jo={class:"create-order-deposit-bar__cell"},Mo={class:"create-order-deposit-bar__sub"},Ho={class:"create-order-deposit-bar__cell"},Wo={class:"create-order-deposit-bar__sub"},qo={class:"create-order-footer"},Yo={class:"create-order-footer__hint"},Bo={class:"create-order-footer__step"},Go={key:0,class:"create-order-footer__warn"},Ko={class:"create-order-footer__actions"},Jo={class:"mb-4 flex gap-3"},Qo={class:"mb-3 flex flex-wrap items-center gap-x-4 gap-y-2"},Xo={key:0},Zo={key:1,class:"text-gray-400"},er={class:"flex justify-end mt-4"},tr={class:"mt-3 flex flex-wrap items-center gap-x-4 gap-y-2"},ar=Qt({name:"prescriptionList"}),lr=Qt({...ar,setup(sr){const Xt=$s(()=>Sl(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98])));function Se(t="浓缩水丸"){return t==="饮片"?{dosage_amount:50,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:t==="浓缩水丸"?{dosage_amount:5,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:{dosage_amount:1,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}}function ft(t,e){const o=Se(e);if(!t||typeof t!="object")return{...o};const u=t;return{dosage_amount:u.dosage_amount!==null&&u.dosage_amount!==void 0&&u.dosage_amount!==""?Number(u.dosage_amount):o.dosage_amount,dosage_bag_count:u.dosage_bag_count!=null?Number(u.dosage_bag_count)||1:o.dosage_bag_count,need_decoction:u.need_decoction===1||u.need_decoction===!0,bags_per_dose:u.bags_per_dose!=null?Number(u.bags_per_dose)||1:o.bags_per_dose,times_per_day:u.times_per_day!=null?Number(u.times_per_day)||3:o.times_per_day,usage_days:u.usage_days!=null?Number(u.usage_days)||7:o.usage_days}}function gt(t,e,o){const u=t.prescription_type||"浓缩水丸",p=Number(t.times_per_day)>0?Number(t.times_per_day):3,d=t.dosage_amount!=null?Number(t.dosage_amount):10,i=t.dosage_unit||(u==="饮片"?"ml":"g"),V=t.usage_way||e||"温水送服",L=t.usage_time||o||"",v=[];if(v.push(`每天${p}次`),u==="浓缩水丸"){const K=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;v.push(`一次${K}袋`),v.push(`每袋${d}${i}`)}else v.push(`一次${d}${i}`);return v.push(V),L&&v.push(L),v.join(", ")}function W(t){return t==="辅方"?"辅方":"主方"}function Ie(t){return{name:String((t==null?void 0:t.name)??"").trim(),dosage:Number(t==null?void 0:t.dosage)||0,formula_type:W(t==null?void 0:t.formula_type)}}function je(t){return t?Array.isArray(t)?t.map(e=>Ie(e)):[]:[]}const ie=as(),vt=Ns();function Zt(){const t=vt.getRoutes().find(e=>{var o;return((o=e.meta)==null?void 0:o.perms)==="tcm.prescriptionOrder/lists"});t!=null&&t.path?vt.push(t.path):S.msgWarning("未配置「处方业务订单」菜单,请在权限管理中执行菜单 SQL 或手动添加路由")}const w=Ne({sn:"",patient_name:"",creator_ids:[],audit_filter:"all",source_filter:"all",start_time:"",end_time:""}),Me=x([]),B=x("all"),J=x(!1),R=x("add"),He=x(!1),X=x(),G=x(),ue=x(null),ae=560,le=168,g=x(null),We=x(!1),bt=x([]),de=x(!1),yt=x(0),se=x(""),Ce=x(!1),pe=x(!1),qe=x(!1),Ye=x(),P=Ne({id:0,patient_name:"",gender:1,phone:""}),ea={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function ta(t){P.id=Number(t.id)||0,P.patient_name=String(t.patient_name??"").trim();const e=Number(t.gender);P.gender=e===0||e===1?e:1,P.phone=String(t.phone??"").trim(),pe.value=!0}function aa(){var t;P.id=0,P.patient_name="",P.gender=1,P.phone="",(t=Ye.value)==null||t.clearValidate()}async function la(){const t=Ye.value;if(t){try{await t.validate()}catch{return}qe.value=!0;try{await rs({id:P.id,patient_name:P.patient_name.trim(),phone:P.phone.trim(),gender:P.gender}),S.msgSuccess("已保存"),pe.value=!1,Z()}catch(e){const o=e&&typeof e=="object"&&"msg"in e?String(e.msg):"";S.msgError(o||"保存失败")}finally{qe.value=!1}}}const me=x(!1),T=x(0),sa=$(()=>["请核对诊单患者并填写完整收货信息,便于发货与物流联系。","按需填写服务相关信息,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;提交前请对照定金门槛是否已满足。"][T.value]??""),na=["patient_id","recipient_name","recipient_phone","region","shipping_address"],q=x(null),_e=x(),Be=x(!1),Ge=x(!1),Q=x([]),ne=x([]),Ke=x(!1),D=x(0);function oe(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function xt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const _=Ne({patient_id:"",recipient_name:"",recipient_phone:"",region:[],shipping_address:"",is_follow_up:0,medication_days:void 0,prev_staff:"",service_channel:"",service_package:[],express_company:"auto",tracking_number:"",fee_type:3,amount:0,internal_cost:void 0,remark_extra:"",remark_assistant:"",pay_order_ids:[]}),ce=x([]),Je=x([]),oa=t=>t.map(e=>{var o;return{name:e.province,code:e.code,children:((o=e.citys)==null?void 0:o.map(u=>{var p;return{name:u.city,code:u.code,children:((p=u.areas)==null?void 0:p.map(d=>({name:d.area,code:d.code})))||[]}}))||[]}}),ra=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const o=await e.json();console.log("加载的数据条数:",o==null?void 0:o.length),ce.value=oa(o),console.log("regionOptions 已设置,条数:",ce.value.length)}catch(t){console.error("加载省市区数据失败:",t),ce.value=[{name:"四川省",children:[{name:"成都市",children:[{name:"锦江区"},{name:"青羊区"},{name:"金牛区"},{name:"武侯区"},{name:"成华区"},{name:"龙泉驿区"},{name:"青白江区"},{name:"新都区"},{name:"温江区"},{name:"双流区"}]},{name:"绵阳市",children:[{name:"涪城区"},{name:"游仙区"},{name:"安州区"}]}]},{name:"北京市",children:[{name:"北京市",children:[{name:"东城区"},{name:"西城区"},{name:"朝阳区"},{name:"丰台区"},{name:"海淀区"}]}]},{name:"上海市",children:[{name:"上海市",children:[{name:"黄浦区"},{name:"徐汇区"},{name:"长宁区"},{name:"静安区"},{name:"普陀区"}]}]},{name:"广东省",children:[{name:"广州市",children:[{name:"荔湾区"},{name:"越秀区"},{name:"海珠区"},{name:"天河区"},{name:"白云区"}]},{name:"深圳市",children:[{name:"罗湖区"},{name:"福田区"},{name:"南山区"},{name:"宝安区"}]}]}],console.log("使用后备数据,条数:",ce.value.length)}},ia=async()=>{try{const t=await ss({type:"server_order"});Je.value=((t==null?void 0:t.server_order)||[]).filter(e=>e.status!==0)}catch{Je.value=[]}},ua=t=>{console.log("选择的省市区:",t)},Qe=$(()=>{const t=new Set(_.pay_order_ids.map(o=>Number(o)));let e=0;for(const o of ne.value)t.has(Number(o.id))&&(e+=Number(o.amount)||0);return Math.round(e*100)/100}),da=$(()=>{const t=D.value;return t>0?Math.round(t*100)/100:0}),pa=$(()=>{const t={patient_id:[{required:!0,message:"请选择诊单患者",trigger:"change"}],recipient_name:[{required:!0,message:"请输入收货人",trigger:"blur"}],recipient_phone:[{required:!0,message:"请输入收货手机",trigger:"blur"}],region:[{required:!0,message:"请选择省/市/区",trigger:"change",type:"array"}],shipping_address:[{required:!0,message:"请输入收货地址",trigger:"blur"}],fee_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(e,o,u)=>{const p=D.value,d=Number(o);if(p>0&&(!Number.isFinite(d)||d0){const e=`已开启关联支付门槛(¥${oe(D.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function kt(){var t;T.value=0,_.patient_id="",_.recipient_name="",_.recipient_phone="",_.shipping_address="",_.is_follow_up=0,_.medication_days=void 0,_.prev_staff="",_.service_channel="",_.service_package=[],_.express_company="auto",_.tracking_number="",_.fee_type=3,_.amount=0,_.internal_cost=void 0,_.remark_extra="",_.remark_assistant="",_.pay_order_ids=[],Q.value=[],ne.value=[],D.value=0,q.value=null,(t=_e.value)==null||t.clearValidate()}function ma(){const t=D.value;if(t<=0)return;const e=Math.round(t*100)/100;Number(_.amount)_.patient_id,()=>{_.pay_order_ids=[],Vt()});async function _a(t){var p;if(Number(t==null?void 0:t.void_status)===1){S.msgWarning("已作废处方不可创建业务订单");return}kt(),q.value=t;const e=Number(t.diagnosis_id)||0;e>0&&(_.patient_id=e,_.recipient_name=t.patient_name||"",_.recipient_phone=String(t.phone||"").trim(),Q.value=[{id:e,patient_name:t.patient_name||"",phone:String(t.phone||"").trim()}]);const o=Number(t.usage_days);o>0&&(_.medication_days=o),me.value=!0,Vt();const u=t.id;if(u&&!_.recipient_phone)try{const d=await ct({id:u}),i=d&&typeof d.phone=="string"?d.phone.trim():"";if(i&&((p=q.value)==null?void 0:p.id)===u){_.recipient_phone=i;const V=Q.value[0];V&&Number(V.id)===e&&(V.phone=i)}}catch{}}async function ca(t){if(!t){Q.value=[];return}try{Ge.value=!0;const e=await searchPatientsAPI({keyword:t,page_no:1,page_size:10});Q.value=(e==null?void 0:e.lists)||[]}catch{Q.value=[]}finally{Ge.value=!1}}function fa(t){const e=Q.value.find(o=>Number(o.id)===Number(t));e&&(_.recipient_name=e.patient_name||"",_.recipient_phone=e.phone||"")}function ga(){T.value>0&&(T.value-=1)}async function va(){const t=_e.value;if(t)try{T.value===0?await t.validateField([...na]):T.value===1&&D.value>0&&await t.validateField(["pay_order_ids"]),T.value<2&&(T.value+=1)}catch{}}async function ba(){if(!(!_e.value||!q.value)&&T.value===2)try{await _e.value.validate(),Be.value=!0;const t=Number(_.patient_id),e={prescription_id:q.value.id,diagnosis_id:t,recipient_name:_.recipient_name,recipient_phone:_.recipient_phone,shipping_address:_.shipping_address,is_follow_up:_.is_follow_up,prev_staff:_.prev_staff||"",service_channel:_.service_channel||"",service_package:Array.isArray(_.service_package)&&_.service_package.length>0?_.service_package.join(","):"",express_company:_.express_company||"auto",tracking_number:_.tracking_number||"",fee_type:_.fee_type,amount:_.amount,remark_extra:_.remark_extra||"",remark_assistant:_.remark_assistant||""};_.region&&_.region.length>=3&&(e.shipping_province=_.region[0],e.shipping_city=_.region[1],e.shipping_district=_.region[2]),_.medication_days!=null&&_.medication_days>0&&(e.medication_days=_.medication_days),_.internal_cost!=null&&_.internal_cost>0&&(e.internal_cost=_.internal_cost),_.pay_order_ids.length&&(e.pay_order_ids=[..._.pay_order_ids]);const o=await us(e),u=(o==null?void 0:o.data)??o,p=u==null?void 0:u.order_no;S.msgSuccess(p?`业务订单已创建,单号:${p}`:"业务订单已创建"),me.value=!1,Z()}catch(t){console.error(t)}finally{Be.value=!1}}const Ue=x(!1),$e=x(!1),ht=$(()=>{const t=Ue.value,e=$e.value;return!t&&!e?"":t&&e?"当前处方已作废且已驳回。保存后将取消作废、清除驳回,并重新进入待审核。":t?"当前为已作废处方。保存后将取消作废,并重新进入待审核。":"当前为已驳回处方。保存后将清除驳回,并重新进入待审核。"}),fe=$(()=>{var e;const t=(e=g.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),wt=$(()=>fe.value.filter(t=>W(t.formula_type)==="主方")),Xe=$(()=>fe.value.filter(t=>W(t.formula_type)==="辅方")),ya=$(()=>n.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>W(t.formula_type)==="主方")),Nt=$(()=>n.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>W(t.formula_type)==="辅方")),St=x(null),Ze=x(!1),Pe=t=>String(t).padStart(2,"0"),xa=$(()=>{const t=g.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const o=String(e).length===10?Number(e)*1e3:Number(e),u=new Date(o);if(!isNaN(u.getTime()))return`${u.getFullYear()}-${Pe(u.getMonth()+1)}-${Pe(u.getDate())} ${Pe(u.getHours())}:${Pe(u.getMinutes())}`}return t.prescription_date||"—"}),ka=$(()=>{const t=g.value;return t?t.order_no||t.serial_no||t.serial_number||t.no||t.prescription_no||t.visit_no||(t.id?`G${t.id}`:"—"):"—"}),Va=$(()=>{const t=g.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let o=t.region;return Array.isArray(o)&&(o=o.filter(Boolean).join("")),o&&e.push(String(o)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),Ct=$(()=>{var e;const t=Number((e=g.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),ha=$(()=>{const e=fe.value.reduce((o,u)=>o+(Number(u==null?void 0:u.dosage)||0),0);return ge(e)}),Ut=t=>{const e=Number(t)||0;return ge(e*Ct.value)},wa=$(()=>{const t=g.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),Na=$(()=>{const t=g.value;return t?t.usage_text?t.usage_text:gt(t):"—"}),$t=$(()=>{const t=g.value;if(!t||!Xe.value.length)return"";const e=ft(t.aux_usage,t.prescription_type||"浓缩水丸");return gt({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),Pt=$(()=>{const t=g.value;return t&&t.medical_advice||""}),Dt=$(()=>{const t=g.value;if(!t)return"";const e=[];return e.push(`共${fe.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Rt=$(()=>{const t=g.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),Tt=$(()=>{const t=g.value;if(!t)return"";const e=Sa(t);return e?`${e}克`:""});function Sa(t){if(!t)return"";if((t.prescription_type||"浓缩水丸")==="浓缩水丸"){const p=Number(t.medication_days??t.usage_days??t.dose_count),d=Number(t.times_per_day),i=Number(t.dosage_amount),V=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;if(Number.isFinite(p)&&Number.isFinite(d)&&Number.isFinite(i)&&p>0&&d>0&&i>0)return ge(p*d*i*V)}const e=t.out_pellet||t.total_weight;if(e&&Number(e)>0)return ge(Number(e));const o=fe.value;if(!o.length)return"";const u=o.reduce((p,d)=>p+(Number(d==null?void 0:d.dosage)||0),0);return ge(u*Ct.value)}function ge(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function Ca(){g.value&&te(()=>{try{window.print()}catch(t){console.error(t)}})}async function Ua(){var e,o,u;const t=St.value;if(!t){S.msgWarning("处方笺尚未渲染完成");return}Ze.value=!0;try{await te(),await new Promise(z=>requestAnimationFrame(()=>z(null))),await new Promise(z=>setTimeout(z,250));const p=await Ss(t,{scale:2,backgroundColor:"#ffffff",useCORS:!0,allowTaint:!1,logging:!1,windowWidth:t.scrollWidth,windowHeight:t.scrollHeight,width:t.scrollWidth,height:t.scrollHeight}),d=p.toDataURL("image/jpeg",.95),i=new Cl({unit:"mm",format:"a4",orientation:"portrait"}),V=210,L=297,v=V,K=p.height*v/p.width;if(K<=L)i.addImage(d,"JPEG",0,0,v,K);else{let z=K,Le=0;for(;z>0;)i.addImage(d,"JPEG",0,Le,v,K),z-=L,Le-=L,z>0&&i.addPage()}const ut=((e=g.value)==null?void 0:e.patient_name)||"处方",C=((o=g.value)==null?void 0:o.id)||"",A=((u=g.value)==null?void 0:u.prescription_date)||"";i.save(`处方-${ut}${A?"-"+A:""}${C?"-"+C:""}.pdf`)}catch(p){console.error("下载处方 PDF 失败:",p),S.msgError((p==null?void 0:p.message)||"下载失败,请重试")}finally{Ze.value=!1}}const n=Ne({id:0,prescription_type:"浓缩水丸",dosage_amount:1,dosage_unit:"g",dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,patient_name:"",gender:1,age:0,visit_no:"",prescription_date:"",tongue:"",tongue_image:"",pulse:"",pulse_condition:"",clinical_diagnosis:"",herbs:[],dose_count:7,dose_unit:"剂",usage_days:7,usage_instruction:"",usage_time:"饭后",usage_way:"温水送服",dietary_taboo:[],usage_notes:"",doctor_name:"",doctor_signature:"",is_shared:0,visible_role_ids:[],audit_status:1,audit_time:null,audit_by_name:"",audit_remark:"",diagnosis_id:0,creator_id:0,is_system_auto:0,business_prescription_audit_rejected:0,business_prescription_audit_remark:"",times_per_day:2,aux_usage:Se("浓缩水丸")}),U=Ne({loading:!1,orderNo:"",medicationDays:null,remarkAssistant:""});function $a(){U.loading=!1,U.orderNo="",U.medicationDays=null,U.remarkAssistant=""}async function Pa(t){if(U.orderNo="",U.medicationDays=null,U.remarkAssistant="",!t){U.loading=!1;return}U.loading=!0;try{const e=await gs({page_no:1,page_size:5,prescription_id:t}),o=e==null?void 0:e.lists,u=Array.isArray(o)&&o.length?o[0]:null;if(u){U.orderNo=String(u.order_no||"").trim();const p=u.medication_days,d=p!=null&&String(p).trim()!==""?Number(p):NaN;U.medicationDays=Number.isFinite(d)&&d>0?d:null,U.remarkAssistant=String(u.remark_assistant||"").trim()}}catch{}finally{U.loading=!1}}const Ot=x(null);function Da(){var e;const t=Number(n.diagnosis_id);if(!t){S.msgWarning("本处方未关联诊单,无法查看诊单患者信息");return}(e=Ot.value)==null||e.openViewOnly(t)}const De=x(!1);ze(()=>n.prescription_type,t=>{De.value||(t==="浓缩水丸"?(n.dosage_unit="g",n.dosage_amount=1,n.dosage_bag_count=1,n.need_decoction=!1,n.bags_per_dose=1):t==="饮片"?(n.dosage_unit="ml",n.dosage_amount=50,n.dosage_bag_count=1,n.bags_per_dose=1):(n.dosage_unit="g",n.dosage_amount=void 0,n.dosage_bag_count=1,n.need_decoction=!1,n.bags_per_dose=1),Object.assign(n.aux_usage,Se(t)))});const Ra={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],prescription_date:[{required:!0,message:"请选择处方日期",trigger:"change"}],clinical_diagnosis:[{required:!0,message:"请输入临床诊断",trigger:"blur"}],dose_count:[{required:!0,message:"请输入剂数",trigger:"blur"}],doctor_name:[{required:!0,message:"请输入医师姓名",trigger:"blur"}],doctor_signature:[{required:!0,validator:(t,e,o)=>{!e||!String(e).trim()?o(new Error("请使用电子签名板手写医师签名")):o()},trigger:"change"}]};async function Ta(t){const{audit_filter:e,source_filter:o,creator_ids:u,...p}=t,d={...p,audit_filter:e==="all"||e===""?"":e,source_filter:o==="all"||o===""||o===void 0?"":o};return Array.isArray(u)&&u.length>0&&(d.creator_ids=u),ds(d)}const{pager:ve,getLists:Z,resetPage:ee}=ys({fetchFun:Ta,params:w});function At(t){return String(t).padStart(2,"0")}function Et(t){const e=t.getFullYear(),o=At(t.getMonth()+1),u=At(t.getDate()),p=`${e}-${o}-${u}`;return{start:`${p} 00:00:00`,end:`${p} 23:59:59`}}function Oa(t){const e=String(t??"all");if(e==="all")w.start_time="",w.end_time="";else{const o=new Date,u=new Date(o.getFullYear(),o.getMonth(),o.getDate());e==="yesterday"?u.setDate(u.getDate()-1):e==="before_yesterday"&&u.setDate(u.getDate()-2);const{start:p,end:d}=Et(u);w.start_time=p,w.end_time=d}ee()}function Aa(){ee()}function Ea(){ee()}let et=!1;ze(()=>[w.start_time,w.end_time],()=>{if(et)return;const t=w.start_time,e=w.end_time;if(!t&&!e){B.value="all";return}if(!t||!e){B.value="";return}const o=new Date,u=p=>{const d=new Date(o.getFullYear(),o.getMonth(),o.getDate()-p),{start:i,end:V}=Et(d);return t===i&&e===V};u(0)?B.value="today":u(1)?B.value="yesterday":u(2)?B.value="before_yesterday":B.value=""});function La(t){if(t==null||t==="")return"—";if(typeof t=="number"&&t>=1e9&&t<1e11)return Re(t);const e=String(t).trim();return/^\d{10}$/.test(e)?Re(parseInt(e,10)):e}function Fa(){et=!0,B.value="all",w.sn="",w.patient_name="",w.creator_ids=[],w.audit_filter="all",w.source_filter="all",w.start_time="",w.end_time="",et=!1,ee()}function za(t){return t===0?"待审核":t===2?"已驳回":"已通过"}function Ia(t){return t===0?"warning":t===2?"danger":"success"}function ja(t){return Number(t.business_prescription_audit_rejected)===1?"已驳回":za(t.audit_status)}function Ma(t){return Number(t.business_prescription_audit_rejected)===1?"danger":Ia(t.audit_status)}function Lt(t){const e=[];if(Number(t.business_prescription_audit_rejected)===1){const o=String(t.business_prescription_audit_remark||"").trim();e.push(o?`业务订单审核驳回意见:${o}`:"业务订单审核驳回意见:—")}if(Number(t.audit_status)===2){const o=String(t.audit_remark||"").trim();e.push(o?`消费者处方审核驳回意见:${o}`:"消费者处方审核驳回意见:—")}return e}function Ft(t){return Number(t.audit_status)===1&&Number(t.void_status)!==1}function Re(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Ha(t){return t?Re(t):"—"}function Wa(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function qa(t){return t==null||t===""?"—":`${t}岁`}function Ya(t){var p;const e=n.herbs[t];if(!e)return`第${t+1}味`;const o=W(e.formula_type);let u=0;for(let d=0;d<=t;d++)W((p=n.herbs[d])==null?void 0:p.formula_type)===o&&u++;return`${o}第${u}味`}function Ba(t){if(Number(t==null?void 0:t.has_prescription_order)!==1)return[];const o=je(t==null?void 0:t.herbs).map(i=>String((i==null?void 0:i.name)||"").trim()).filter(Boolean),u=[];if(!o.length)return u.push("请开方,当前处方药材为空白"),u;const p=new Set,d=new Set;for(const i of o){const V=i.replace(/\s+/g,"").toLowerCase();V&&(p.has(V)?d.add(i):p.add(V))}return d.size>0&&u.push(`已有关联业务订单,当前处方存在重复药材:${Array.from(d).join("、")}`),u}function Ga(t){return{...t,herbs:je(t==null?void 0:t.herbs)}}function Ka(){g.value=null,ue.value=null}function zt(t){const e=G.value;if(!e)return{x:0,y:0};const o=e.getBoundingClientRect();if(o.width<=0||o.height<=0)return{x:0,y:0};const u=(t.clientX-o.left)/o.width*ae,p=(t.clientY-o.top)/o.height*le;return{x:Math.max(0,Math.min(ae,u)),y:Math.max(0,Math.min(le,p))}}function tt(){const t=G.value;t&&(n.doctor_signature=t.toDataURL("image/png")),te(()=>{var e;(e=X.value)==null||e.validateField("doctor_signature").catch(()=>{})})}function Ja(t){if(t.pointerType==="mouse"&&t.button!==0)return;const e=G.value,o=e==null?void 0:e.getContext("2d");if(!e||!o)return;e.setPointerCapture(t.pointerId),ue.value=t.pointerId;const{x:u,y:p}=zt(t);o.beginPath(),o.moveTo(u,p)}function Qa(t){var p;if(ue.value!==t.pointerId)return;const e=(p=G.value)==null?void 0:p.getContext("2d");if(!e)return;const{x:o,y:u}=zt(t);e.lineTo(o,u),e.stroke(),e.beginPath(),e.moveTo(o,u)}function It(t){if(ue.value!==t.pointerId)return;ue.value=null;const e=G.value;if(e)try{e.releasePointerCapture(t.pointerId)}catch{}tt()}function Xa(){jt(),n.doctor_signature="",te(()=>{var t;(t=X.value)==null||t.validateField("doctor_signature").catch(()=>{})})}function jt(){const t=G.value;if(!t)return;const e=Math.min(typeof window<"u"&&window.devicePixelRatio||1,2.5);t.style.width=`${ae}px`,t.style.height=`${le}px`,t.width=Math.round(ae*e),t.height=Math.round(le*e);const o=t.getContext("2d");o&&(o.setTransform(1,0,0,1,0,0),o.scale(e,e),o.fillStyle="#fff",o.fillRect(0,0,ae,le),o.strokeStyle="#333",o.lineWidth=2.5,o.lineCap="round",o.lineJoin="round")}function Mt(){R.value!=="view"&&te(()=>{setTimeout(()=>{jt();const t=n.doctor_signature;if(t&&String(t).trim().startsWith("data:image")&&G.value){const e=new Image;e.onload=()=>{const o=G.value,u=o==null?void 0:o.getContext("2d");!o||!u||(u.drawImage(e,0,0,ae,le),tt())},e.onerror=()=>{tt()},e.src=t}},100)})}function Za(t){const e=t==null?void 0:t.visible_role_ids;return Array.isArray(e)?e.map(o=>Number(o)).filter(o=>!Number.isNaN(o)):typeof e=="string"&&e?e.split(",").map(o=>parseInt(o.trim(),10)).filter(o=>!Number.isNaN(o)):[]}function el(t){yt.value=t.id,se.value="",de.value=!0}async function Ht(t){if(t==="reject"&&!se.value.trim()){S.msgError("驳回时请填写审核意见");return}Ce.value=!0;try{const e=await ps({id:yt.value,action:t,remark:se.value.trim()});S.msgSuccess(t==="reject"?"已驳回并作废处方":"审核通过"),e&&e.wecom_notify_ok===!1&&e.wecom_notify_hint&&S.msgWarning(e.wecom_notify_hint),de.value=!1,Z()}catch{}finally{Ce.value=!1}}async function tl(){try{const t=await bs({});bt.value=Array.isArray(t)?t:[]}catch{bt.value=[]}}const be=x(!1),at=x(!1),lt=x([]),Te=x(""),Oe=x(""),ye=x("replace"),xe=x(1),st=x(15),nt=x(0),Wt=$(()=>{var o;const t=Number(n.creator_id);if(t>0)return t;const e=Number((o=ie.userInfo)==null?void 0:o.id);return e>0?e:0});function al(t){return String(t||"").trim().toLowerCase()}function qt(){const t=new Map;for(const e of n.herbs){const o=al(e==null?void 0:e.name);o&&t.set(o,(t.get(o)??0)+1)}return[...t.entries()].filter(([,e])=>e>1).map(([e])=>e)}const Ae=async()=>{const t=Wt.value;if(!t){S.msgWarning("无法确定开方医师,无法加载处方库"),lt.value=[],nt.value=0;return}at.value=!0;try{const e=await ms({page_no:xe.value,page_size:st.value,prescription_name:Te.value,formula_type:Oe.value,prescribing_creator_id:t});lt.value=(e==null?void 0:e.lists)||[],nt.value=(e==null?void 0:e.count)||0}catch(e){console.error(e),S.msgError("加载处方库失败")}finally{at.value=!1}},Ee=()=>{xe.value=1,Ae()},ll=()=>{if(!Wt.value){S.msgWarning("无法确定开方医师,无法从处方库导入");return}be.value=!0},sl=t=>{Yt(t)},Yt=t=>{if(!t.herbs||t.herbs.length===0){S.msgWarning("该处方没有药材信息");return}const e=W(t.formula_type),o=JSON.parse(JSON.stringify(t.herbs)).map(p=>({...Ie(p),formula_type:e}));if(ye.value==="replace"){const p=n.herbs.filter(d=>W(d.formula_type)!==e);n.herbs=[...p,...o]}else n.herbs.push(...o);const u=ye.value==="append"?"(已追加)":"";qt().length?S.msgWarning(`已导入处方「${t.prescription_name}」${u},共${o.length}味药材。存在重复药名,请合并剂量或删除多余行`):S.msgSuccess(`已导入处方「${t.prescription_name}」${u},共${o.length}味药材`),be.value=!1};ze(be,t=>{t&&(Te.value="",Oe.value="",ye.value="replace",xe.value=1,Ae())});const ke=x(!1),Ve=x(""),ot=x("replace"),rt=x(!1),nl=/^(用法|用量|医嘱|忌口|水煎服|空腹|饭后|温水|内服|外用|备注|顿服|分服|ml|毫升|[×xX]\s*\d)/;function ol(t){let e=t.replace(/\r\n/g,` `).replace(/\r/g,` `);return e=e.replace(/[0-9]/g,o=>String.fromCharCode(o.charCodeAt(0)-65296+48)),e.trim()}function rl(t){return t.replace(/^\s*Rp[::**\s]*/i,"").replace(/^\s*处方[::\s]*/,"").replace(/^\s*中药处方[::\s]*/,"").trimStart()}function it(t){return t.replace(/([^)]*)$/u,"").replace(/\([^)]*\)$/u,"").trim()}function Bt(t){const e=t.trim();if(!e||nl.test(e)||/^\d/.test(e)||/^\d+\s*剂$/.test(e))return null;const o=e.match(/^(.+)\s*各\s*(\d+(?:\.\d+)?)\s*(?:克|g|G)?$/i);if(o){const d=parseFloat(o[2]);if(!Number.isFinite(d)||d<=0)return null;const i=o[1].split(/[、,,\s]+/).map(V=>V.trim()).filter(Boolean);return i.length?i.map(V=>({name:it(V),dosage:d})):null}const u=e.match(/^(.+?)\s*(\d+(?:\.\d+)?)\s*(?:克|g|G|钱)?$/i);if(u){const d=it(u[1].trim()),i=parseFloat(u[2]);return!d||!Number.isFinite(i)||i<=0?null:[{name:d,dosage:i}]}const p=it(e);return p.length>=2&&p.length<=16?[{name:p,dosage:6}]:null}function il(t){const e=rl(ol(t)),o=[];for(const u of e.split(/\n+/)){const p=u.trim();if(p)for(const d of p.split(/[、,,;;]/)){const i=d.trim();if(i)if(/\s/.test(i)&&!Bt(i)){const V=i.split(/\s+(?=[\u4e00-\u9fff]{2,})/);for(const L of V){const v=L.trim();v&&o.push(v)}}else o.push(i)}}return o}function ul(t){const e=[];for(const o of il(t)){const u=Bt(o);u&&e.push(...u)}return e}async function dl(t){const e=t.trim();if(!e)return null;try{const p=((await vs({name:e,page_no:1,page_size:200,status:1})).lists||[]).find(d=>(d.name??"").trim()===e);return p?p.name.trim():null}catch{return null}}function pl(){ke.value=!0}async function ml(){const t=ul(Ve.value);if(!t.length){S.msgWarning("未能从文本中解析出药材,请检查格式(药名 + 剂量,或用顿号/换行分隔)");return}rt.value=!0;try{const e=[],o=[];for(const i of t){const V=await dl(i.name);if(!V){o.push(i.name.trim());continue}e.push({name:V,dosage:i.dosage,formula_type:"主方"})}const u=[...new Set(o.filter(Boolean))];if(e.length===0){S.msgWarning(u.length?`药品库中无以下完全同名药材,未录入:${u.join("、")}`:"未能匹配到药品库中的药材");return}if(ot.value==="replace"){const i=n.herbs.filter(V=>W(V.formula_type)==="辅方");n.herbs=[...i,...e]}else n.herbs.push(...e);const p=qt(),d=u.length>0?`;药品库未收录已跳过:${u.join("、")}`:"";p.length?S.msgWarning(`已导入 ${e.length} 味药材${d}。存在重复药名:${p.join("、")},请合并剂量或删除多余行`):u.length?S.msgSuccess(`已导入 ${e.length} 味药材${d},请核对剂量`):S.msgSuccess(`已导入 ${e.length} 味药材,请核对药名与剂量`),ke.value=!1,Ve.value=""}finally{rt.value=!1}}const Gt=(t="主方")=>{n.herbs.push({name:"",dosage:0,formula_type:t})},Kt=t=>{n.herbs.splice(t,1)},_l=()=>{var t;n.id=0,n.prescription_type="浓缩水丸",n.dosage_amount=1,n.dosage_unit="g",n.dosage_bag_count=1,n.need_decoction=!1,n.bags_per_dose=1,n.patient_name="",n.gender=1,n.age=0,n.visit_no="",n.prescription_date=new Date().toISOString().split("T")[0],n.tongue="",n.tongue_image="",n.pulse="",n.pulse_condition="",n.clinical_diagnosis="",n.herbs=[],n.dose_count=7,n.dose_unit="剂",n.usage_days=7,n.usage_instruction="",n.usage_time="饭后",n.usage_way="温水送服",n.dietary_taboo=[],n.usage_notes="",n.doctor_name="",n.doctor_signature="",n.is_shared=0,n.visible_role_ids=[],n.audit_status=1,n.audit_time=null,n.audit_by_name="",n.audit_remark="",n.diagnosis_id=0,n.creator_id=Number((t=ie.userInfo)==null?void 0:t.id)||0,n.is_system_auto=0,n.business_prescription_audit_rejected=0,n.business_prescription_audit_remark="",n.times_per_day=2,Object.assign(n.aux_usage,Se("浓缩水丸")),$a()},cl=()=>{var t;_l(),n.doctor_name=String(((t=ie.userInfo)==null?void 0:t.name)||""),Ue.value=!1,$e.value=!1,R.value="add",De.value=!1,J.value=!0,te(()=>{var e;(e=X.value)==null||e.clearValidate(),Mt()})},fl=async t=>{Ue.value=!1,$e.value=!1,R.value="view",g.value=Ga(t),J.value=!0,We.value=!0;try{const e=await ct({id:t.id});e&&typeof e=="object"&&(g.value={...e,herbs:je(e.herbs)})}catch(e){S.msgError((e==null?void 0:e.msg)||"加载处方详情失败")}finally{We.value=!1}},gl=async t=>{Ue.value=Number(t.void_status)===1,$e.value=Number(t.audit_status)===2,R.value="edit",De.value=!0;let e=t;if(t!=null&&t.id&&!t.doctor_signature)try{const o=await ct({id:t.id});o&&typeof o=="object"&&(e={...t,...o})}catch{}n.id=e.id,n.prescription_type=e.prescription_type||"浓缩水丸",e.dosage_amount!==null&&e.dosage_amount!==void 0&&e.dosage_amount!==""?n.dosage_amount=Number(e.dosage_amount):n.dosage_amount=void 0,e.dosage_unit?n.dosage_unit=e.dosage_unit:n.prescription_type==="饮片"?n.dosage_unit="ml":n.dosage_unit="g",n.dosage_bag_count=e.dosage_bag_count?Number(e.dosage_bag_count):1,n.need_decoction=e.need_decoction===1||e.need_decoction===!0,n.bags_per_dose=e.bags_per_dose?Number(e.bags_per_dose):1,n.patient_name=e.patient_name||"",n.gender=e.gender??1,n.age=e.age??0,n.visit_no=e.visit_no||"",n.prescription_date=e.prescription_date||"",n.tongue=e.tongue||"",n.tongue_image=e.tongue_image||"",n.pulse=e.pulse||"",n.pulse_condition=e.pulse_condition||"",n.clinical_diagnosis=e.clinical_diagnosis||"",n.herbs=e.herbs?e.herbs.map(o=>Ie(o)):[],n.dose_count=e.dose_count??7,n.dose_unit=e.dose_unit||"剂",n.usage_days=e.usage_days??7,n.times_per_day=e.times_per_day??2,n.usage_instruction=e.usage_instruction||"",n.usage_time=e.usage_time||"饭后",n.usage_way=e.usage_way||"温水送服",n.dietary_taboo=e.dietary_taboo?Array.isArray(e.dietary_taboo)?e.dietary_taboo:String(e.dietary_taboo).split(",").filter(o=>o):[],n.usage_notes=e.usage_notes||"",n.doctor_name=e.doctor_name||"",n.doctor_signature=String(e.doctor_signature||""),n.is_shared=e.is_shared??0,n.visible_role_ids=Za(e),n.audit_status=e.audit_status??1,n.audit_time=e.audit_time??null,n.audit_by_name=e.audit_by_name||"",n.audit_remark=e.audit_remark||"",n.diagnosis_id=e.diagnosis_id??0,n.creator_id=Number(e.creator_id)>0?Number(e.creator_id):0,n.is_system_auto=Number(e.is_system_auto)===1?1:0,n.business_prescription_audit_rejected=Number(e.business_prescription_audit_rejected)===1?1:0,n.business_prescription_audit_remark=String(e.business_prescription_audit_remark||""),Object.assign(n.aux_usage,ft(e.aux_usage,n.prescription_type)),setTimeout(()=>{De.value=!1},0),J.value=!0,Pa(Number(n.id)),te(()=>{var o;(o=X.value)==null||o.clearValidate(),Mt()})},vl=async()=>{if(X.value){try{await X.value.validate()}catch{return}if(!n.herbs||n.herbs.length===0){S.msgError("请至少添加一味药材");return}for(let t=0;t{await S.confirm("确定要删除该处方吗?"),await fs({id:t}),S.msgSuccess("删除成功"),Z()};return Cs(async()=>{var t;await tl(),await ra(),await ia();try{const e=await os();Me.value=Array.isArray(e)?e:[]}catch{Me.value=[]}try{(t=ie.userInfo)!=null&&t.id||await ie.getUserInfo()}catch{}Z()}),(t,e)=>{const o=$l,u=Ul,p=Rl,d=Dl,i=Ol,V=Tl,L=Pl,v=Al,K=El,ut=ls,C=zl,A=Il,z=Fl,Le=ts,re=jl,h=Hl,M=Ml,I=Wl,F=ql,yl=Yl,xl=Bl,he=Gl,dt=Jl,kl=Kl,Vl=Ql,hl=Xl,wl=Zl,Nl=es,H=Us("perms"),Fe=Ll;return m(),b("div",Rs,[a(K,{class:"filter-toolbar",shadow:"never","body-style":{padding:"10px 14px"}},{default:s(()=>[r("div",Ts,[r("div",Os,[e[101]||(e[101]=r("span",{class:"pl-toolbar__k",title:"按处方创建时间"},"创建时间",-1)),a(u,{modelValue:B.value,"onUpdate:modelValue":e[0]||(e[0]=l=>B.value=l),size:"small",class:"pl-toolbar__rg",onChange:Oa},{default:s(()=>[a(o,{label:"all"},{default:s(()=>[...e[89]||(e[89]=[c("全部",-1)])]),_:1}),a(o,{label:"today"},{default:s(()=>[...e[90]||(e[90]=[c("今日",-1)])]),_:1}),a(o,{label:"yesterday"},{default:s(()=>[...e[91]||(e[91]=[c("昨日",-1)])]),_:1}),a(o,{label:"before_yesterday"},{default:s(()=>[...e[92]||(e[92]=[c("前天",-1)])]),_:1})]),_:1},8,["modelValue"]),a(xs,{class:"pl-toolbar__range",startTime:w.start_time,"onUpdate:startTime":e[1]||(e[1]=l=>w.start_time=l),endTime:w.end_time,"onUpdate:endTime":e[2]||(e[2]=l=>w.end_time=l)},null,8,["startTime","endTime"]),e[102]||(e[102]=r("span",{class:"pl-toolbar__sep","aria-hidden":"true"},null,-1)),e[103]||(e[103]=r("span",{class:"pl-toolbar__k",title:"「未通过」含待审核与已驳回"},"审核",-1)),a(u,{modelValue:w.audit_filter,"onUpdate:modelValue":e[3]||(e[3]=l=>w.audit_filter=l),size:"small",class:"pl-toolbar__rg pl-toolbar__rg--audit",onChange:Aa},{default:s(()=>[a(o,{label:"pending",class:"pl-audit-pending-btn"},{default:s(()=>[...e[93]||(e[93]=[c("待审核",-1)])]),_:1}),a(o,{label:"all"},{default:s(()=>[...e[94]||(e[94]=[c("全部",-1)])]),_:1}),a(o,{label:"passed"},{default:s(()=>[...e[95]||(e[95]=[c("已通过",-1)])]),_:1}),a(o,{label:"not_passed"},{default:s(()=>[...e[96]||(e[96]=[c("未通过",-1)])]),_:1}),a(o,{label:"rejected"},{default:s(()=>[...e[97]||(e[97]=[c("驳回",-1)])]),_:1})]),_:1},8,["modelValue"]),e[104]||(e[104]=r("span",{class:"pl-toolbar__sep","aria-hidden":"true"},null,-1)),e[105]||(e[105]=r("span",{class:"pl-toolbar__k",title:"与列表「来源」列一致:系统代开 / 手工"},"来源",-1)),a(u,{modelValue:w.source_filter,"onUpdate:modelValue":e[4]||(e[4]=l=>w.source_filter=l),size:"small",class:"pl-toolbar__rg pl-toolbar__rg--source",onChange:Ea},{default:s(()=>[a(o,{label:"all"},{default:s(()=>[...e[98]||(e[98]=[c("全部",-1)])]),_:1}),a(o,{label:"manual"},{default:s(()=>[...e[99]||(e[99]=[c("手工",-1)])]),_:1}),a(o,{label:"system"},{default:s(()=>[...e[100]||(e[100]=[c("系统代开",-1)])]),_:1})]),_:1},8,["modelValue"])]),r("div",As,[a(L,{model:w,inline:"",class:"pl-toolbar__form"},{default:s(()=>[a(d,{label:"处方编号",class:"!mb-0"},{default:s(()=>[a(p,{modelValue:w.sn,"onUpdate:modelValue":e[5]||(e[5]=l=>w.sn=l),placeholder:"编号",clearable:"",class:"pl-toolbar__input",onKeyup:mt(j(ee),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(d,{label:"患者",class:"!mb-0"},{default:s(()=>[a(p,{modelValue:w.patient_name,"onUpdate:modelValue":e[6]||(e[6]=l=>w.patient_name=l),placeholder:"姓名",clearable:"",class:"pl-toolbar__input",onKeyup:mt(j(ee),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(d,{label:"医师",class:"!mb-0"},{default:s(()=>[a(V,{modelValue:w.creator_ids,"onUpdate:modelValue":e[7]||(e[7]=l=>w.creator_ids=l),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",filterable:"",clearable:"",placeholder:"全部医师",class:"pl-toolbar__select pl-toolbar__select--doctors"},{default:s(()=>[(m(!0),b(E,null,Y(Me.value,l=>(m(),k(i,{key:l.id,label:l.name,value:Number(l.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"]),r("div",Es,[a(v,{type:"primary",onClick:j(ee)},{default:s(()=>[...e[106]||(e[106]=[c("查询",-1)])]),_:1},8,["onClick"]),a(v,{onClick:Fa},{default:s(()=>[...e[107]||(e[107]=[c("重置",-1)])]),_:1})])])])]),_:1}),O((m(),k(K,{class:"mt-3 table-card",shadow:"never"},{default:s(()=>[r("div",Ls,[e[110]||(e[110]=r("span",{class:"pl-table-head__title"},"处方列表",-1)),r("div",Fs,[O((m(),k(v,{onClick:Zt},{default:s(()=>[...e[108]||(e[108]=[c(" 业务订单 ",-1)])]),_:1})),[[H,["tcm.prescriptionOrder/lists"]]]),O((m(),k(v,{type:"primary",onClick:cl},{icon:s(()=>[a(ut,{name:"el-icon-Plus"})]),default:s(()=>[e[109]||(e[109]=c(" 新增处方 ",-1))]),_:1})),[[H,["cf.prescription/add"]]])])]),r("div",zs,[a(z,{data:j(ve).lists,size:"default",stripe:""},{default:s(()=>[a(C,{label:"处方编号","min-width":"160"},{default:s(({row:l})=>[r("span",Is,f(l.sn||"—"),1),r("div",js,"ID: "+f(l.id),1),(m(!0),b(E,null,Y(Ba(l),(N,pt)=>(m(),b("div",{key:`rx-order-warn-${l.id}-${pt}`,class:"text-xs text-red-600 mt-0.5 leading-snug"},f(N),1))),128))]),_:1}),a(C,{label:"处方类型","min-width":"100"},{default:s(({row:l})=>[a(A,{type:"info",size:"small"},{default:s(()=>[c(f(l.prescription_type||"—"),1)]),_:2},1024)]),_:1}),a(C,{label:"来源","min-width":"92",align:"center"},{default:s(({row:l})=>[Number(l.is_system_auto)===1?(m(),k(A,{key:0,type:"warning",size:"small",effect:"plain"},{default:s(()=>[...e[111]||(e[111]=[c(" 系统代开 ",-1)])]),_:1})):(m(),b("span",Ms,"手工"))]),_:1}),a(C,{label:"患者信息","min-width":"110"},{default:s(({row:l})=>[r("div",Hs,f(l.patient_name||"—"),1),r("div",Ws,f(l.gender===1?"男":l.gender===0?"女":"未知")+" · "+f(l.age?l.age+"岁":"—"),1)]),_:1}),a(C,{label:"审核状态","min-width":"200"},{default:s(({row:l})=>[r("div",qs,[r("div",Ys,[a(A,{type:Ma(l)},{default:s(()=>[c(f(ja(l)),1)]),_:2},1032,["type"]),Number(l.business_prescription_audit_rejected)===1?(m(),b("span",Bs," (业务订单审核) ")):y("",!0)]),Lt(l).length?(m(!0),b(E,{key:0},Y(Lt(l),(N,pt)=>(m(),b("div",{key:pt,class:"text-xs text-red-600 leading-snug line-clamp-3",title:N},f(N),9,Gs))),128)):y("",!0)])]),_:1}),a(C,{label:"作废","min-width":"80",align:"center"},{default:s(({row:l})=>[l.void_status===1?(m(),k(A,{key:0,type:"danger",size:"small"},{default:s(()=>[...e[112]||(e[112]=[c("作废",-1)])]),_:1})):(m(),b("span",Ks,"—"))]),_:1}),a(C,{label:"医师信息","min-width":"120"},{default:s(({row:l})=>[r("div",Js,f(l.doctor_name||"—"),1),r("div",Qs,f(l.prescription_date||"—"),1)]),_:1}),a(C,{label:"医助","min-width":"90"},{default:s(({row:l})=>[r("div",Xs,f(l.assistant_name||"—"),1)]),_:1}),a(C,{label:"创建时间","min-width":"160"},{default:s(({row:l})=>[c(f(La(l.create_time)),1)]),_:1}),a(C,{label:"操作",width:"300",fixed:"right"},{default:s(({row:l})=>[O((m(),k(v,{type:"primary",link:"",onClick:N=>fl(l)},{default:s(()=>[...e[113]||(e[113]=[c(" 查看 ",-1)])]),_:1},8,["onClick"])),[[H,["cf.prescription/read"]]]),Number(l.void_status)!==1?O((m(),k(v,{key:0,type:"primary",link:"",onClick:N=>ta(l)},{default:s(()=>[...e[114]||(e[114]=[c(" 改姓名手机 ",-1)])]),_:1},8,["onClick"])),[[H,["tcm.prescription/patchPatient"]]]):y("",!0),!Number(l.has_prescription_order)&&Number(l.void_status)!==1?O((m(),k(v,{key:1,type:"success",link:"",onClick:N=>_a(l)},{default:s(()=>[...e[115]||(e[115]=[c(" 创建订单 ",-1)])]),_:1},8,["onClick"])),[[H,["tcm.prescriptionOrder/create"]]]):y("",!0),Ft(l)?y("",!0):O((m(),k(v,{key:2,type:"primary",link:"",onClick:N=>gl(l)},{default:s(()=>[...e[116]||(e[116]=[c(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[H,["cf.prescription/edit"]]]),l.audit_status===0&&l.void_status!==1?O((m(),k(v,{key:3,type:"warning",link:"",onClick:N=>el(l)},{default:s(()=>[...e[117]||(e[117]=[c(" 审核 ",-1)])]),_:1},8,["onClick"])),[[H,["cf.prescription/audit"]]]):y("",!0),Ft(l)?y("",!0):O((m(),k(v,{key:4,type:"danger",link:"",onClick:N=>bl(l.id)},{default:s(()=>[...e[118]||(e[118]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])),[[H,["cf.prescription/del"]]])]),_:1})]),_:1},8,["data"])]),r("div",Zs,[a(Le,{modelValue:j(ve),"onUpdate:modelValue":e[8]||(e[8]=l=>Ps(ve)?ve.value=l:null),onChange:j(Z)},null,8,["modelValue","onChange"])])]),_:1})),[[Fe,j(ve).loading]]),a(xl,{modelValue:J.value,"onUpdate:modelValue":e[48]||(e[48]=l=>J.value=l),title:R.value==="add"?"新增处方":R.value==="edit"?"编辑处方":"查看处方",size:R.value==="view"?"920px":"860px",class:"cf-prescription-drawer","close-on-click-modal":!1,"destroy-on-close":"",onClosed:Ka},{footer:s(()=>[R.value==="view"?(m(),k(v,{key:0,onClick:e[46]||(e[46]=l=>J.value=!1)},{default:s(()=>[...e[174]||(e[174]=[c("关闭",-1)])]),_:1})):(m(),b(E,{key:1},[a(v,{onClick:e[47]||(e[47]=l=>J.value=!1)},{default:s(()=>[...e[175]||(e[175]=[c("取消",-1)])]),_:1}),a(v,{type:"primary",onClick:vl,loading:He.value},{default:s(()=>[...e[176]||(e[176]=[c(" 确定 ",-1)])]),_:1},8,["loading"])],64))]),default:s(()=>[R.value==="view"?O((m(),b("div",en,[r("div",tn,[g.value&&Number(g.value.is_system_auto)===1?(m(),k(A,{key:0,type:"warning",size:"small",effect:"plain"},{default:s(()=>[...e[119]||(e[119]=[c("系统代开",-1)])]),_:1})):y("",!0),g.value&&Number(g.value.void_status)===1?(m(),k(A,{key:1,type:"danger",size:"small"},{default:s(()=>[...e[120]||(e[120]=[c("已作废",-1)])]),_:1})):g.value&&Number(g.value.business_prescription_audit_rejected)===1?(m(),k(A,{key:2,type:"danger",size:"small"},{default:s(()=>[...e[121]||(e[121]=[c("业务订单已驳回",-1)])]),_:1})):g.value&&Number(g.value.audit_status)===1?(m(),k(A,{key:3,type:"success",size:"small"},{default:s(()=>[...e[122]||(e[122]=[c("已通过",-1)])]),_:1})):g.value&&Number(g.value.audit_status)===0?(m(),k(A,{key:4,type:"warning",size:"small"},{default:s(()=>[...e[123]||(e[123]=[c("待审核",-1)])]),_:1})):g.value?(m(),k(A,{key:5,type:"danger",size:"small"},{default:s(()=>[...e[124]||(e[124]=[c("已驳回",-1)])]),_:1})):y("",!0),e[127]||(e[127]=r("div",{class:"flex-1"},null,-1)),a(v,{icon:j(ks),size:"small",onClick:Ca},{default:s(()=>[...e[125]||(e[125]=[c("打印",-1)])]),_:1},8,["icon"]),a(v,{type:"primary",icon:j(Vs),size:"small",loading:Ze.value,onClick:Ua},{default:s(()=>[...e[126]||(e[126]=[c(" 下载 PDF (A4) ",-1)])]),_:1},8,["icon","loading"])]),g.value&&Number(g.value.void_status)===1?(m(),b("div",an," 作废人:"+f(g.value.void_by_name||"—")+",作废时间:"+f(Ha(g.value.void_time)),1)):g.value&&Number(g.value.business_prescription_audit_rejected)===1?(m(),b("div",ln,[e[128]||(e[128]=r("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),g.value.business_prescription_audit_remark?(m(),b("div",sn," 驳回意见:"+f(g.value.business_prescription_audit_remark),1)):y("",!0)])):g.value&&Number(g.value.audit_status)===2?(m(),b("div",nn,[e[129]||(e[129]=r("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),g.value.audit_remark?(m(),b("div",on,"驳回意见:"+f(g.value.audit_remark),1)):y("",!0)])):y("",!0),g.value?(m(),b("div",{key:3,ref_key:"rxPaperRef",ref:St,class:"rx-paper"},[r("div",rn,[e[130]||(e[130]=r("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),r("span",un,[r("span",null,"日期:"+f(xa.value),1),r("span",null,"编号:"+f(ka.value),1)])]),r("div",dn,[r("div",pn,[r("div",mn,[e[131]||(e[131]=r("span",{class:"rx-key"},"姓名",-1)),r("span",_n,f(g.value.patient_name||"—"),1)]),r("div",cn,[e[132]||(e[132]=r("span",{class:"rx-key"},"性别",-1)),r("span",fn,f(Wa(g.value.gender)),1)]),r("div",gn,[e[133]||(e[133]=r("span",{class:"rx-key"},"年龄",-1)),r("span",vn,f(qa(g.value.age)),1)]),r("div",bn,[e[134]||(e[134]=r("span",{class:"rx-key"},"电话",-1)),r("span",yn,f(g.value.phone||"—"),1)])]),r("div",xn,[r("div",kn,[e[135]||(e[135]=r("span",{class:"rx-key"},"收件信息",-1)),r("span",Vn,f(Va.value),1)])]),r("div",hn,[r("div",wn,[e[136]||(e[136]=r("span",{class:"rx-key"},"临床诊断",-1)),r("span",Nn,f(g.value.clinical_diagnosis||"—"),1)])])]),r("div",Sn,[e[139]||(e[139]=r("div",{class:"rx-watermark"},"药房联",-1)),e[140]||(e[140]=r("div",{class:"rx-rp-head"},[r("div",{class:"rx-rp-label"},"Rp."),r("div",{class:"rx-rp-cols-head"},[r("div",{class:"rx-rp-col-head"},[r("span",null,"用药 (单剂)"),r("span",null,"总量")]),r("div",{class:"rx-rp-col-head"},[r("span",null,"用药 (单剂)"),r("span",null,"总量")])])],-1)),r("div",Cn,[wt.value.length?(m(),b(E,{key:0},[e[137]||(e[137]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(m(!0),b(E,null,Y(wt.value,(l,N)=>(m(),b("div",{key:"main-"+N,class:"rx-herb-cell"},[r("span",Un,f(l.name)+" ("+f(l.dosage)+"克)",1),r("span",$n,f(Ut(l.dosage))+"克",1)]))),128))],64)):y("",!0),Xe.value.length?(m(),b(E,{key:1},[e[138]||(e[138]=r("div",{class:"rx-herb-section-label rx-herb-section-label--aux"},"辅方",-1)),(m(!0),b(E,null,Y(Xe.value,(l,N)=>(m(),b("div",{key:"aux-"+N,class:"rx-herb-cell"},[r("span",Pn,f(l.name)+" ("+f(l.dosage)+"克)",1),r("span",Dn,f(Ut(l.dosage))+"克",1)]))),128))],64)):y("",!0)])]),r("div",Rn,[r("p",null,"主方服法:"+f(Na.value),1),$t.value?(m(),b("p",Tn,"辅方服法:"+f($t.value),1)):y("",!0),Pt.value?(m(),b("p",On,"医嘱:"+f(Pt.value),1)):y("",!0),Dt.value?(m(),b("p",An,"备注:"+f(Dt.value),1)):y("",!0),Rt.value?(m(),b("p",En," 药房备注:"+f(Rt.value),1)):y("",!0),Tt.value?(m(),b("p",Ln," 出丸:"+f(Tt.value),1)):y("",!0)]),r("div",Fn,[r("div",zn,[r("div",In,[e[141]||(e[141]=r("div",{class:"rx-bot-label"},"医师",-1)),r("div",jn,[g.value.doctor_signature?(m(),b("img",{key:0,src:g.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,Mn)):y("",!0),r("div",Hn,f(g.value.doctor_name||"—"),1)])]),r("div",Wn,[e[142]||(e[142]=r("span",{class:"rx-bot-meta-key"},"类型:",-1)),r("span",qn,f(wa.value),1)]),r("div",Yn,[e[143]||(e[143]=r("span",{class:"rx-bot-meta-key"},"天数:",-1)),r("span",Bn,f(g.value.dose_count||"—")+"剂",1)]),r("div",Gn,[e[144]||(e[144]=r("span",{class:"rx-bot-meta-key"},"单剂量:",-1)),r("span",Kn,f(ha.value)+"克",1)])])])],512)):y("",!0),g.value&&(g.value.audit_by_name||g.value.audit_remark)?(m(),b("div",Jn,[g.value.audit_by_name?(m(),b("div",Qn,[c(" 审核人:"+f(g.value.audit_by_name)+" ",1),g.value.audit_time?(m(),b("span",Xn,f(Re(g.value.audit_time)),1)):y("",!0)])):y("",!0),g.value.audit_remark?(m(),b("div",Zn,"审核意见:"+f(g.value.audit_remark),1)):y("",!0)])):y("",!0)])),[[Fe,We.value]]):(m(),k(L,{key:1,ref_key:"formRef",ref:X,model:n,rules:Ra,"label-width":"120px"},{default:s(()=>[R.value==="edit"&&Number(n.is_system_auto)===1?(m(),k(re,{key:0,type:"warning",closable:!1,"show-icon":"",class:"mb-4",title:"本处方为系统自动生成(如挂号完成),默认无药材配方,请补充药材与诊断等信息后再保存。"})):y("",!0),R.value==="edit"?(m(),k(re,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4",title:"保存修改后,该处方将重新进入「待审核」,需审核人员再次通过后方可生效。"})):y("",!0),R.value==="edit"&&Number(n.audit_status)===2?(m(),k(re,{key:2,type:"error",closable:!1,"show-icon":"",class:"mb-4"},{title:s(()=>[...e[145]||(e[145]=[c("当前消费者处方为「已驳回」",-1)])]),default:s(()=>[r("div",eo," 保存修改后将清除驳回并变为「待审核」。"+f(n.audit_remark?`上次意见:${n.audit_remark}`:""),1)]),_:1})):y("",!0),R.value==="edit"&&Number(n.business_prescription_audit_rejected)===1&&Number(n.audit_status)===1?(m(),k(re,{key:3,type:"warning",closable:!1,"show-icon":"",class:"mb-4"},{title:s(()=>[...e[146]||(e[146]=[c("业务订单侧「处方审核」已驳回",-1)])]),default:s(()=>[e[147]||(e[147]=r("div",{class:"text-sm mt-1"}," 消费者处方仍为「已通过」;您修改并保存后,将重置关联业务订单的处方/支付单审核为「待审」,请在「处方业务订单」中继续处理。 ",-1)),String(n.business_prescription_audit_remark||"").trim()?(m(),b("div",to," 驳回意见:"+f(n.business_prescription_audit_remark),1)):y("",!0)]),_:1})):y("",!0),R.value==="edit"&&ht.value?(m(),k(re,{key:4,type:"warning",closable:!1,"show-icon":"",class:"mb-4",title:ht.value},null,8,["title"])):y("",!0),Number(n.diagnosis_id)>0?(m(),b("div",ao,[a(v,{type:"primary",size:"small",onClick:Da},{default:s(()=>[...e[148]||(e[148]=[c(" 查看患者诊单详情 ",-1)])]),_:1}),r("span",lo,"关联诊单 #"+f(n.diagnosis_id),1)])):y("",!0),a(M,{gutter:20},{default:s(()=>[a(h,{span:12},{default:s(()=>[a(d,{label:"患者姓名",prop:"patient_name"},{default:s(()=>[a(p,{modelValue:n.patient_name,"onUpdate:modelValue":e[9]||(e[9]=l=>n.patient_name=l),placeholder:"请输入患者姓名",disabled:R.value==="edit"},null,8,["modelValue","disabled"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"门诊号",prop:"visit_no"},{default:s(()=>[a(p,{modelValue:n.visit_no,"onUpdate:modelValue":e[10]||(e[10]=l=>n.visit_no=l),placeholder:"自动生成或手动输入",disabled:R.value==="edit"},null,8,["modelValue","disabled"])]),_:1})]),_:1})]),_:1}),a(M,{gutter:20},{default:s(()=>[a(h,{span:8},{default:s(()=>[a(d,{label:"性别",prop:"gender"},{default:s(()=>[a(u,{modelValue:n.gender,"onUpdate:modelValue":e[11]||(e[11]=l=>n.gender=l)},{default:s(()=>[a(I,{label:1},{default:s(()=>[...e[149]||(e[149]=[c("男",-1)])]),_:1}),a(I,{label:0},{default:s(()=>[...e[150]||(e[150]=[c("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(h,{span:8},{default:s(()=>[a(d,{label:"年龄",prop:"age"},{default:s(()=>[a(F,{modelValue:n.age,"onUpdate:modelValue":e[12]||(e[12]=l=>n.age=l),min:0,max:150,placeholder:"请输入年龄",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:8},{default:s(()=>[a(d,{label:"处方日期",prop:"prescription_date"},{default:s(()=>[a(yl,{modelValue:n.prescription_date,"onUpdate:modelValue":e[13]||(e[13]=l=>n.prescription_date=l),type:"date",placeholder:"选择日期",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),a(M,{gutter:20},{default:s(()=>[a(h,{span:12},{default:s(()=>[a(d,{label:"面象",prop:"tongue"},{default:s(()=>[a(p,{modelValue:n.tongue,"onUpdate:modelValue":e[14]||(e[14]=l=>n.tongue=l),placeholder:"请输入面象"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"舌象",prop:"tongue_image"},{default:s(()=>[a(p,{modelValue:n.tongue_image,"onUpdate:modelValue":e[15]||(e[15]=l=>n.tongue_image=l),placeholder:"请输入舌象"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),a(M,{gutter:20},{default:s(()=>[a(h,{span:12},{default:s(()=>[a(d,{label:"脉象",prop:"pulse"},{default:s(()=>[a(p,{modelValue:n.pulse,"onUpdate:modelValue":e[16]||(e[16]=l=>n.pulse=l),placeholder:"请输入脉象"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"脉象详情",prop:"pulse_condition"},{default:s(()=>[a(p,{modelValue:n.pulse_condition,"onUpdate:modelValue":e[17]||(e[17]=l=>n.pulse_condition=l),placeholder:"请输入脉象详情"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),a(d,{label:"临床诊断",prop:"clinical_diagnosis"},{default:s(()=>[a(p,{modelValue:n.clinical_diagnosis,"onUpdate:modelValue":e[18]||(e[18]=l=>n.clinical_diagnosis=l),type:"textarea",rows:3,placeholder:"请输入临床诊断",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),a(d,{label:"药材配方",prop:"herbs",required:""},{default:s(()=>[r("div",so,[r("div",no,[O((m(),k(v,{type:"success",size:"small",onClick:ll},{default:s(()=>[...e[151]||(e[151]=[c(" 从处方库导入 ",-1)])]),_:1})),[[H,["cf.prescription/add","cf.prescription/edit","tcm.prescriptionLibrary/lists"]]]),a(v,{type:"warning",size:"small",plain:"",icon:j(hs),onClick:pl},{default:s(()=>[...e[152]||(e[152]=[c(" 导入药方 ",-1)])]),_:1},8,["icon"]),e[153]||(e[153]=r("span",{class:"text-xs text-gray-500"}," 粘贴文本解析药名与剂量;须与药品库名称完全一致才录入(导入至主方) ",-1))]),r("div",oo,[r("div",ro,[a(A,{type:"primary",size:"small"},{default:s(()=>[...e[154]||(e[154]=[c("主方",-1)])]),_:1}),a(v,{type:"primary",size:"small",onClick:e[19]||(e[19]=l=>Gt("主方"))},{default:s(()=>[...e[155]||(e[155]=[c("添加主方药材",-1)])]),_:1})]),a(z,{data:ya.value,class:"mt-2",border:"","empty-text":"暂无主方药材"},{default:s(()=>[a(C,{label:"序号",type:"index",width:"60"}),a(C,{label:"药材名称","min-width":"220"},{default:s(({row:l})=>[a(Jt,{modelValue:n.herbs[l.index].name,"onUpdate:modelValue":N=>n.herbs[l.index].name=N,class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),a(C,{label:"剂量(克)","min-width":"120"},{default:s(({row:l})=>[a(F,{modelValue:n.herbs[l.index].dosage,"onUpdate:modelValue":N=>n.herbs[l.index].dosage=N,min:0,precision:1,step:.5,placeholder:"剂量",class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),a(C,{label:"操作",width:"80"},{default:s(({row:l})=>[a(v,{type:"danger",link:"",onClick:N=>Kt(l.index)},{default:s(()=>[...e[156]||(e[156]=[c("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),r("div",io,[r("div",uo,[a(A,{type:"warning",size:"small"},{default:s(()=>[...e[157]||(e[157]=[c("辅方",-1)])]),_:1}),a(v,{type:"primary",size:"small",plain:"",onClick:e[20]||(e[20]=l=>Gt("辅方"))},{default:s(()=>[...e[158]||(e[158]=[c(" 添加辅方药材 ",-1)])]),_:1})]),a(z,{data:Nt.value,class:"mt-2",border:"","empty-text":"暂无辅方药材"},{default:s(()=>[a(C,{label:"序号",type:"index",width:"60"}),a(C,{label:"药材名称","min-width":"220"},{default:s(({row:l})=>[a(Jt,{modelValue:n.herbs[l.index].name,"onUpdate:modelValue":N=>n.herbs[l.index].name=N,class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),a(C,{label:"剂量(克)","min-width":"120"},{default:s(({row:l})=>[a(F,{modelValue:n.herbs[l.index].dosage,"onUpdate:modelValue":N=>n.herbs[l.index].dosage=N,min:0,precision:1,step:.5,placeholder:"剂量",class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),a(C,{label:"操作",width:"80"},{default:s(({row:l})=>[a(v,{type:"danger",link:"",onClick:N=>Kt(l.index)},{default:s(()=>[...e[159]||(e[159]=[c("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),R.value==="edit"?O((m(),k(re,{key:0,type:"warning",closable:!1,"show-icon":"",class:"mt-3"},{title:s(()=>[...e[160]||(e[160]=[c("业务订单要求(请与本处方保持一致)",-1)])]),default:s(()=>[r("div",po,[U.orderNo||U.medicationDays!=null||U.remarkAssistant?(m(),b(E,{key:0},[U.orderNo?(m(),b("p",mo,[e[161]||(e[161]=c(" 最近关联订单(按创建倒序): ",-1)),r("span",_o,f(U.orderNo),1)])):y("",!0),r("p",co,[e[162]||(e[162]=r("span",{class:"font-semibold"},"服用天数(订单)",-1)),c(": "+f(U.medicationDays!=null?`${U.medicationDays} 天`:"— 订单未填写"),1)]),r("p",null,[e[163]||(e[163]=r("span",{class:"font-semibold"},"医助备注(订单)",-1)),e[164]||(e[164]=c(": ",-1)),r("span",fo,f(U.remarkAssistant||"— 无"),1)])],64)):U.loading?y("",!0):(m(),b("p",go,[...e[165]||(e[165]=[c(" 当前处方暂无关联业务订单,或您无订单列表权限;若有订单,将在此处显示订单内 ",-1),r("span",{class:"font-semibold"},"服用天数",-1),c("与 ",-1),r("span",{class:"font-semibold"},"医助备注",-1),c("。 ",-1)])]))])]),_:1})),[[Fe,U.loading]]):y("",!0)])]),_:1}),a(M,{gutter:20},{default:s(()=>[a(h,{span:8},{default:s(()=>[a(d,{label:"剂数",prop:"dose_count"},{default:s(()=>[a(F,{modelValue:n.dose_count,"onUpdate:modelValue":e[21]||(e[21]=l=>n.dose_count=l),min:1,placeholder:"剂数",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:8},{default:s(()=>[a(d,{label:"剂量单位",prop:"dose_unit"},{default:s(()=>[a(V,{modelValue:n.dose_unit,"onUpdate:modelValue":e[22]||(e[22]=l=>n.dose_unit=l),placeholder:"请选择",class:"w-full"},{default:s(()=>[a(i,{label:"剂",value:"剂"}),a(i,{label:"丸",value:"丸"}),a(i,{label:"袋",value:"袋"}),a(i,{label:"盒",value:"盒"}),a(i,{label:"瓶",value:"瓶"}),a(i,{label:"膏",value:"膏"}),a(i,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(h,{span:8},{default:s(()=>[a(d,{label:"处方类型",prop:"prescription_type"},{default:s(()=>[a(V,{modelValue:n.prescription_type,"onUpdate:modelValue":e[23]||(e[23]=l=>n.prescription_type=l),placeholder:"请选择处方类型",class:"w-full"},{default:s(()=>[a(i,{label:"浓缩水丸",value:"浓缩水丸"}),a(i,{label:"饮片",value:"饮片"}),a(i,{label:"颗粒",value:"颗粒"}),a(i,{label:"丸剂",value:"丸剂"}),a(i,{label:"散剂",value:"散剂"}),a(i,{label:"膏方",value:"膏方"}),a(i,{label:"汤剂",value:"汤剂"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),e[173]||(e[173]=r("div",{class:"usage-formula-title usage-formula-title--main"},"主方用法",-1)),a(M,{gutter:20},{default:s(()=>[a(h,{span:8},{default:s(()=>[a(d,{label:"用量",prop:"dosage_amount"},{default:s(()=>[n.prescription_type==="浓缩水丸"?(m(),k(V,{key:0,modelValue:n.dosage_amount,"onUpdate:modelValue":e[24]||(e[24]=l=>n.dosage_amount=l),placeholder:"请选择用量",class:"w-full"},{default:s(()=>[a(i,{label:"1g",value:1}),a(i,{label:"2g",value:2}),a(i,{label:"3g",value:3}),a(i,{label:"4g",value:4}),a(i,{label:"5g",value:5}),a(i,{label:"6g",value:6}),a(i,{label:"7g",value:7}),a(i,{label:"8g",value:8}),a(i,{label:"9g",value:9}),a(i,{label:"10g",value:10})]),_:1},8,["modelValue"])):n.prescription_type==="饮片"?(m(),k(V,{key:1,modelValue:n.dosage_amount,"onUpdate:modelValue":e[25]||(e[25]=l=>n.dosage_amount=l),placeholder:"请选择用量",class:"w-full"},{default:s(()=>[a(i,{label:"50ml",value:50}),a(i,{label:"100ml",value:100}),a(i,{label:"120ml",value:120}),a(i,{label:"150ml",value:150}),a(i,{label:"180ml",value:180}),a(i,{label:"200ml",value:200}),a(i,{label:"250ml",value:250})]),_:1},8,["modelValue"])):(m(),k(F,{key:2,modelValue:n.dosage_amount,"onUpdate:modelValue":e[26]||(e[26]=l=>n.dosage_amount=l),min:0,precision:2,class:"w-full"},null,8,["modelValue"]))]),_:1})]),_:1}),n.prescription_type==="浓缩水丸"?(m(),k(h,{key:0,span:8},{default:s(()=>[a(d,{label:" ",prop:"dosage_bag_count","label-width":"12px"},{default:s(()=>[a(V,{modelValue:n.dosage_bag_count,"onUpdate:modelValue":e[27]||(e[27]=l=>n.dosage_bag_count=l),placeholder:"请选择袋数",class:"w-[120px]"},{default:s(()=>[a(i,{label:"1袋",value:1}),a(i,{label:"2袋",value:2}),a(i,{label:"3袋",value:3}),a(i,{label:"4袋",value:4}),a(i,{label:"5袋",value:5})]),_:1},8,["modelValue"])]),_:1})]),_:1})):y("",!0),n.prescription_type==="饮片"?(m(),k(h,{key:1,span:8},{default:s(()=>[a(d,{label:"是否代煎",prop:"need_decoction"},{default:s(()=>[a(u,{modelValue:n.need_decoction,"onUpdate:modelValue":e[28]||(e[28]=l=>n.need_decoction=l)},{default:s(()=>[a(I,{label:!0},{default:s(()=>[...e[166]||(e[166]=[c("代煎",-1)])]),_:1}),a(I,{label:!1},{default:s(()=>[...e[167]||(e[167]=[c("不代煎",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})):y("",!0),n.prescription_type==="饮片"?(m(),k(h,{key:2,span:8},{default:s(()=>[a(d,{label:"每贴出包数",prop:"bags_per_dose"},{default:s(()=>[a(V,{modelValue:n.bags_per_dose,"onUpdate:modelValue":e[29]||(e[29]=l=>n.bags_per_dose=l),placeholder:"请选择",class:"w-full"},{default:s(()=>[a(i,{label:"1包",value:1}),a(i,{label:"2包",value:2}),a(i,{label:"3包",value:3}),a(i,{label:"4包",value:4}),a(i,{label:"5包",value:5}),a(i,{label:"6包",value:6}),a(i,{label:"7包",value:7}),a(i,{label:"8包",value:8}),a(i,{label:"9包",value:9})]),_:1},8,["modelValue"])]),_:1})]),_:1})):y("",!0),a(h,{span:8},{default:s(()=>[a(d,{label:"每天几次",prop:"times_per_day"},{default:s(()=>[a(F,{modelValue:n.times_per_day,"onUpdate:modelValue":e[30]||(e[30]=l=>n.times_per_day=l),min:1,max:6,class:"!w-full",placeholder:"每天服用次数"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:8},{default:s(()=>[a(d,{label:"服用天数",prop:"usage_days"},{default:s(()=>[a(F,{modelValue:n.usage_days,"onUpdate:modelValue":e[31]||(e[31]=l=>n.usage_days=l),min:1,max:365,placeholder:"服用天数",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),Nt.value.length>0?(m(),b(E,{key:6},[e[170]||(e[170]=r("div",{class:"usage-formula-title usage-formula-title--aux"},"辅方用法",-1)),a(M,{gutter:20},{default:s(()=>[a(h,{span:8},{default:s(()=>[a(d,{label:"用量"},{default:s(()=>[n.prescription_type==="浓缩水丸"?(m(),k(V,{key:0,modelValue:n.aux_usage.dosage_amount,"onUpdate:modelValue":e[32]||(e[32]=l=>n.aux_usage.dosage_amount=l),placeholder:"请选择用量",class:"w-full"},{default:s(()=>[(m(),b(E,null,Y(10,l=>a(i,{key:l,label:l+"g",value:l},null,8,["label","value"])),64))]),_:1},8,["modelValue"])):n.prescription_type==="饮片"?(m(),k(V,{key:1,modelValue:n.aux_usage.dosage_amount,"onUpdate:modelValue":e[33]||(e[33]=l=>n.aux_usage.dosage_amount=l),placeholder:"请选择用量",class:"w-full"},{default:s(()=>[a(i,{label:"50ml",value:50}),a(i,{label:"100ml",value:100}),a(i,{label:"120ml",value:120}),a(i,{label:"150ml",value:150}),a(i,{label:"180ml",value:180}),a(i,{label:"200ml",value:200}),a(i,{label:"250ml",value:250})]),_:1},8,["modelValue"])):(m(),k(F,{key:2,modelValue:n.aux_usage.dosage_amount,"onUpdate:modelValue":e[34]||(e[34]=l=>n.aux_usage.dosage_amount=l),min:0,precision:2,class:"w-full"},null,8,["modelValue"]))]),_:1})]),_:1}),n.prescription_type==="浓缩水丸"?(m(),k(h,{key:0,span:8},{default:s(()=>[a(d,{label:" ","label-width":"12px"},{default:s(()=>[a(V,{modelValue:n.aux_usage.dosage_bag_count,"onUpdate:modelValue":e[35]||(e[35]=l=>n.aux_usage.dosage_bag_count=l),placeholder:"请选择袋数",class:"w-[120px]"},{default:s(()=>[a(i,{label:"1袋",value:1}),a(i,{label:"2袋",value:2}),a(i,{label:"3袋",value:3}),a(i,{label:"4袋",value:4}),a(i,{label:"5袋",value:5})]),_:1},8,["modelValue"])]),_:1})]),_:1})):y("",!0),n.prescription_type==="饮片"?(m(),k(h,{key:1,span:8},{default:s(()=>[a(d,{label:"是否代煎"},{default:s(()=>[a(u,{modelValue:n.aux_usage.need_decoction,"onUpdate:modelValue":e[36]||(e[36]=l=>n.aux_usage.need_decoction=l)},{default:s(()=>[a(I,{label:!0},{default:s(()=>[...e[168]||(e[168]=[c("代煎",-1)])]),_:1}),a(I,{label:!1},{default:s(()=>[...e[169]||(e[169]=[c("不代煎",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})):y("",!0),n.prescription_type==="饮片"?(m(),k(h,{key:2,span:8},{default:s(()=>[a(d,{label:"每贴出包数"},{default:s(()=>[a(V,{modelValue:n.aux_usage.bags_per_dose,"onUpdate:modelValue":e[37]||(e[37]=l=>n.aux_usage.bags_per_dose=l),placeholder:"请选择",class:"w-full"},{default:s(()=>[(m(),b(E,null,Y(9,l=>a(i,{key:l,label:l+"包",value:l},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1})]),_:1})):y("",!0),a(h,{span:8},{default:s(()=>[a(d,{label:"每天几次"},{default:s(()=>[a(F,{modelValue:n.aux_usage.times_per_day,"onUpdate:modelValue":e[38]||(e[38]=l=>n.aux_usage.times_per_day=l),min:1,max:6,class:"!w-full",placeholder:"每天服用次数"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:8},{default:s(()=>[a(d,{label:"服用天数"},{default:s(()=>[a(F,{modelValue:n.aux_usage.usage_days,"onUpdate:modelValue":e[39]||(e[39]=l=>n.aux_usage.usage_days=l),min:1,max:365,placeholder:"服用天数",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],64)):y("",!0),a(d,{label:"用法",prop:"usage_instruction"},{default:s(()=>[a(p,{modelValue:n.usage_instruction,"onUpdate:modelValue":e[40]||(e[40]=l=>n.usage_instruction=l),placeholder:"例如:水煎服,一日二次",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),a(M,{gutter:20},{default:s(()=>[a(h,{span:12},{default:s(()=>[a(d,{label:"服用时间",prop:"usage_time"},{default:s(()=>[a(V,{modelValue:n.usage_time,"onUpdate:modelValue":e[41]||(e[41]=l=>n.usage_time=l),placeholder:"请选择服用时间",class:"w-full"},{default:s(()=>[a(i,{label:"饭前",value:"饭前"}),a(i,{label:"饭后",value:"饭后"}),a(i,{label:"饭中",value:"饭中"}),a(i,{label:"空腹",value:"空腹"}),a(i,{label:"睡前",value:"睡前"}),a(i,{label:"晨起",value:"晨起"}),a(i,{label:"随时",value:"随时"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"服用方式",prop:"usage_way"},{default:s(()=>[a(V,{modelValue:n.usage_way,"onUpdate:modelValue":e[42]||(e[42]=l=>n.usage_way=l),placeholder:"请选择服用方式",class:"w-full"},{default:s(()=>[a(i,{label:"温水送服",value:"温水送服"}),a(i,{label:"开水冲服",value:"开水冲服"}),a(i,{label:"黄酒送服",value:"黄酒送服"}),a(i,{label:"淡盐水送服",value:"淡盐水送服"}),a(i,{label:"米汤送服",value:"米汤送服"}),a(i,{label:"嚼服",value:"嚼服"}),a(i,{label:"含化",value:"含化"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),a(d,{label:"忌口",prop:"dietary_taboo"},{default:s(()=>[a(V,{modelValue:n.dietary_taboo,"onUpdate:modelValue":e[43]||(e[43]=l=>n.dietary_taboo=l),multiple:"",placeholder:"请选择忌口内容(可多选)",class:"w-full"},{default:s(()=>[a(i,{label:"辛辣食物",value:"辛辣食物"}),a(i,{label:"生冷食物",value:"生冷食物"}),a(i,{label:"油腻食物",value:"油腻食物"}),a(i,{label:"海鲜",value:"海鲜"}),a(i,{label:"牛羊肉",value:"牛羊肉"}),a(i,{label:"鸡蛋",value:"鸡蛋"}),a(i,{label:"豆制品",value:"豆制品"}),a(i,{label:"酒类",value:"酒类"}),a(i,{label:"浓茶",value:"浓茶"}),a(i,{label:"咖啡",value:"咖啡"}),a(i,{label:"烟草",value:"烟草"}),a(i,{label:"萝卜",value:"萝卜"})]),_:1},8,["modelValue"])]),_:1}),a(d,{label:"其他说明",prop:"usage_notes"},{default:s(()=>[a(p,{modelValue:n.usage_notes,"onUpdate:modelValue":e[44]||(e[44]=l=>n.usage_notes=l),type:"textarea",rows:2,placeholder:"其他服用注意事项",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),a(d,{label:"医师姓名",prop:"doctor_name"},{default:s(()=>[a(p,{modelValue:n.doctor_name,"onUpdate:modelValue":e[45]||(e[45]=l=>n.doctor_name=l),placeholder:"请输入医师姓名"},null,8,["modelValue"])]),_:1}),a(d,{label:"医师签名",prop:"doctor_signature",required:""},{default:s(()=>[r("div",vo,[r("canvas",{ref_key:"signatureCanvasRef",ref:G,class:"signature-canvas",onPointerdown:we(Ja,["prevent"]),onPointermove:we(Qa,["prevent"]),onPointerup:we(It,["prevent"]),onPointercancel:we(It,["prevent"])},null,544),r("div",bo,[a(v,{size:"small",onClick:Xa},{default:s(()=>[...e[171]||(e[171]=[c("清空签名",-1)])]),_:1})])]),e[172]||(e[172]=r("div",{class:"text-xs text-amber-600 mt-1"},"* 必填,请在框内手写医师签名",-1))]),_:1})]),_:1},8,["model"]))]),_:1},8,["modelValue","title","size"]),a(he,{modelValue:pe.value,"onUpdate:modelValue":e[53]||(e[53]=l=>pe.value=l),title:"修正姓名、性别与手机号",width:"440px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:aa},{footer:s(()=>[a(v,{onClick:e[52]||(e[52]=l=>pe.value=!1)},{default:s(()=>[...e[179]||(e[179]=[c("取消",-1)])]),_:1}),a(v,{type:"primary",loading:qe.value,onClick:la},{default:s(()=>[...e[180]||(e[180]=[c(" 保存 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[a(L,{ref_key:"patchPatientFormRef",ref:Ye,model:P,rules:ea,"label-width":"88px"},{default:s(()=>[a(d,{label:"处方编号"},{default:s(()=>[r("span",yo,"#"+f(P.id||"—"),1)]),_:1}),a(d,{label:"患者姓名",prop:"patient_name"},{default:s(()=>[a(p,{modelValue:P.patient_name,"onUpdate:modelValue":e[49]||(e[49]=l=>P.patient_name=l),maxlength:"50","show-word-limit":"",placeholder:"处方笺展示姓名"},null,8,["modelValue"])]),_:1}),a(d,{label:"性别",prop:"gender"},{default:s(()=>[a(u,{modelValue:P.gender,"onUpdate:modelValue":e[50]||(e[50]=l=>P.gender=l)},{default:s(()=>[a(I,{label:1},{default:s(()=>[...e[177]||(e[177]=[c("男",-1)])]),_:1}),a(I,{label:0},{default:s(()=>[...e[178]||(e[178]=[c("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(d,{label:"手机号",prop:"phone"},{default:s(()=>[a(p,{modelValue:P.phone,"onUpdate:modelValue":e[51]||(e[51]=l=>P.phone=l),maxlength:"20",placeholder:"处方笺展示手机号"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),e[181]||(e[181]=r("p",{class:"text-xs text-gray-500 -mt-2 mb-2"}," 仅更新处方表 patient_name、gender、phone,不改变审核状态;记录写入业务订单操作日志(有关联订单时可在此订单日志中查看)。 ",-1))]),_:1},8,["modelValue"]),a(he,{modelValue:me.value,"onUpdate:modelValue":e[71]||(e[71]=l=>me.value=l),title:"创建业务订单",width:"940px",top:"4vh","close-on-click-modal":!1,onClosed:kt,class:"create-order-dialog"},{footer:s(()=>[r("div",qo,[r("div",Yo,[r("span",Bo,"第 "+f(T.value+1)+" / 3 步",1),T.value===2&&D.value>0?(m(),b("span",Go," 订单金额与关联支付单合计须 ≥ ¥"+f(oe(D.value)),1)):y("",!0)]),r("div",Ko,[a(v,{size:"large",onClick:e[70]||(e[70]=l=>me.value=!1)},{default:s(()=>[...e[190]||(e[190]=[c("取消",-1)])]),_:1}),T.value>0?(m(),k(v,{key:0,size:"large",onClick:ga},{default:s(()=>[...e[191]||(e[191]=[c("上一步",-1)])]),_:1})):y("",!0),T.value<2?(m(),k(v,{key:1,type:"primary",size:"large",onClick:va},{default:s(()=>[...e[192]||(e[192]=[c(" 下一步 ",-1)])]),_:1})):y("",!0),T.value===2?(m(),k(v,{key:2,type:"primary",size:"large",loading:Be.value,onClick:ba},{default:s(()=>[...e[193]||(e[193]=[c(" 创建业务订单 ",-1)])]),_:1},8,["loading"])):y("",!0)])])]),default:s(()=>[r("div",xo,[q.value?(m(),b("div",ko,[r("div",Vo,[e[182]||(e[182]=r("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),r("div",ho,[r("span",wo,"#"+f(q.value.id),1),q.value.sn?(m(),b("span",No,f(q.value.sn),1)):y("",!0),r("span",So,f(q.value.patient_name||"—"),1)])])])):y("",!0),a(kl,{active:T.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:s(()=>[a(dt,{title:"患者与收货",description:"诊单与物流地址"}),a(dt,{title:"服务与支付单",description:"套餐与关联收款"}),a(dt,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),r("p",Co,f(sa.value),1),a(L,{ref_key:"createOrderFormRef",ref:_e,model:_,rules:pa.value,"label-width":"108px",class:"create-order-form"},{default:s(()=>[O(r("div",Uo,[a(M,{gutter:20},{default:s(()=>[a(h,{span:24},{default:s(()=>[a(d,{label:"诊单患者",prop:"patient_id"},{default:s(()=>[a(V,{modelValue:_.patient_id,"onUpdate:modelValue":e[54]||(e[54]=l=>_.patient_id=l),class:"w-full",placeholder:"搜索姓名/手机/身份证",filterable:"",remote:"","remote-method":ca,loading:Ge.value,onChange:fa},{default:s(()=>[(m(!0),b(E,null,Y(Q.value,l=>(m(),k(i,{key:l.id,label:`${l.patient_name} (${l.phone||"无手机"})`,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"收货人",prop:"recipient_name"},{default:s(()=>[a(p,{modelValue:_.recipient_name,"onUpdate:modelValue":e[55]||(e[55]=l=>_.recipient_name=l),placeholder:"姓名",maxlength:"50"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"收货手机",prop:"recipient_phone"},{default:s(()=>[a(p,{modelValue:_.recipient_phone,"onUpdate:modelValue":e[56]||(e[56]=l=>_.recipient_phone=l),placeholder:"物流联系",maxlength:"20"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:24},{default:s(()=>[a(d,{label:"省市区",prop:"region"},{default:s(()=>[a(Vl,{modelValue:_.region,"onUpdate:modelValue":e[57]||(e[57]=l=>_.region=l),options:ce.value,props:{value:"name",label:"name",children:"children",emitPath:!0,checkStrictly:!1},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full",onChange:ua},null,8,["modelValue","options"])]),_:1})]),_:1}),a(h,{span:24},{default:s(()=>[a(d,{label:"详细地址",prop:"shipping_address"},{default:s(()=>[a(p,{modelValue:_.shipping_address,"onUpdate:modelValue":e[58]||(e[58]=l=>_.shipping_address=l),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[_t,T.value===0]]),O(r("div",$o,[a(M,{gutter:20},{default:s(()=>[a(h,{xs:24,sm:8},{default:s(()=>[a(d,{label:"复诊"},{default:s(()=>[a(hl,{modelValue:_.is_follow_up,"onUpdate:modelValue":e[59]||(e[59]=l=>_.is_follow_up=l),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{xs:24,sm:8},{default:s(()=>[a(d,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:s(()=>[r("div",Po,[a(F,{modelValue:_.medication_days,"onUpdate:modelValue":e[60]||(e[60]=l=>_.medication_days=l),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[183]||(e[183]=r("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),a(h,{xs:24,sm:8},{default:s(()=>[a(d,{label:"上次医生"},{default:s(()=>[a(p,{modelValue:_.prev_staff,"onUpdate:modelValue":e[61]||(e[61]=l=>_.prev_staff=l),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"服务渠道"},{default:s(()=>[a(p,{modelValue:_.service_channel,"onUpdate:modelValue":e[62]||(e[62]=l=>_.service_channel=l),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"服务套餐"},{default:s(()=>[a(V,{modelValue:_.service_package,"onUpdate:modelValue":e[63]||(e[63]=l=>_.service_package=l),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:s(()=>[(m(!0),b(E,null,Y(Je.value,l=>(m(),k(i,{key:l.value,label:l.name,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(h,{span:24},{default:s(()=>[a(d,{label:"关联支付单",prop:"pay_order_ids"},{default:s(()=>[a(V,{modelValue:_.pay_order_ids,"onUpdate:modelValue":e[64]||(e[64]=l=>_.pay_order_ids=l),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:D.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Ke.value},{default:s(()=>[(m(!0),b(E,null,Y(ne.value,l=>(m(),k(i,{key:l.id,label:`${l.order_no} · ¥${l.amount} · ${xt(l.order_type)}`,value:l.id,class:"!h-auto py-1.5"},{default:s(()=>[r("div",Do,[r("div",Ro,[r("span",To,f(l.order_no),1),r("span",Oo,"¥"+f(l.amount),1)]),r("div",Ao,[r("span",Eo,[c(f(xt(l.order_type)),1),l.remark?(m(),b(E,{key:0},[c(" · "+f(l.remark),1)],64)):y("",!0)]),r("span",Lo,f(String(l.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),r("div",Fo,[D.value>0?(m(),b(E,{key:0},[r("span",zo,"当前已开启关联支付门槛(¥"+f(oe(D.value))+"),须至少选择一笔支付单。",1),e[184]||(e[184]=r("span",{class:"mx-1"},null,-1))],64)):y("",!0),e[186]||(e[186]=c(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),a(wl,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:s(()=>[...e[185]||(e[185]=[r("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1})]),_:1})]),_:1})],512),[[_t,T.value===1]]),O(r("div",Io,[r("div",{class:Ds(["create-order-deposit-bar",Qe.value>=D.value?"is-ok":"is-warn"])},[r("div",jo,[e[187]||(e[187]=r("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),r("strong",null,"¥"+f(oe(D.value)),1),r("span",Mo,f(D.value>0?"须 ≥ 此值":"未设置"),1)]),e[189]||(e[189]=r("div",{class:"create-order-deposit-bar__sep"},null,-1)),r("div",Ho,[e[188]||(e[188]=r("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),r("strong",null,"¥"+f(oe(Qe.value)),1),r("span",Wo,f(Qe.value>=D.value?"已达标":"未达标"),1)])],2),a(M,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:s(()=>[a(h,{span:12},{default:s(()=>[a(d,{label:"费用类别",prop:"fee_type"},{default:s(()=>[a(V,{modelValue:_.fee_type,"onUpdate:modelValue":e[65]||(e[65]=l=>_.fee_type=l),placeholder:"请选择",class:"w-full"},{default:s(()=>[a(i,{label:"挂号费",value:1}),a(i,{label:"问诊费",value:2}),a(i,{label:"药品费用",value:3}),a(i,{label:"首付费用",value:4}),a(i,{label:"尾款费用",value:5}),a(i,{label:"其他费用",value:6}),a(i,{label:"全部费用",value:7}),a(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(h,{span:12},{default:s(()=>[a(d,{label:"总金额",prop:"amount"},{default:s(()=>[a(F,{modelValue:_.amount,"onUpdate:modelValue":e[66]||(e[66]=l=>_.amount=l),min:da.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),O((m(),k(h,{span:12},{default:s(()=>[a(d,{label:"内部成本"},{default:s(()=>[a(F,{modelValue:_.internal_cost,"onUpdate:modelValue":e[67]||(e[67]=l=>_.internal_cost=l),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[H,["finance.account_log/lists"]]]),a(h,{span:24},{default:s(()=>[O((m(),k(d,{label:"药房备注"},{default:s(()=>[a(p,{modelValue:_.remark_extra,"onUpdate:modelValue":e[68]||(e[68]=l=>_.remark_extra=l),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[H,["tcm.prescriptionOrder/editRemarkExtra"]]]),a(d,{label:"医助备注"},{default:s(()=>[a(p,{modelValue:_.remark_assistant,"onUpdate:modelValue":e[69]||(e[69]=l=>_.remark_assistant=l),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[_t,T.value===2]])]),_:1},8,["model","rules"])])]),_:1},8,["modelValue"]),a(he,{modelValue:be.value,"onUpdate:modelValue":e[77]||(e[77]=l=>be.value=l),title:"从处方库导入",width:"800px","close-on-click-modal":!1},{default:s(()=>[r("div",Jo,[a(p,{modelValue:Te.value,"onUpdate:modelValue":e[72]||(e[72]=l=>Te.value=l),class:"flex-1",placeholder:"请输入处方名称搜索",clearable:"",onKeyup:mt(Ee,["enter"]),onClear:Ee},{append:s(()=>[a(v,{icon:j(ws),onClick:Ee},null,8,["icon"])]),_:1},8,["modelValue"]),a(V,{modelValue:Oe.value,"onUpdate:modelValue":e[73]||(e[73]=l=>Oe.value=l),placeholder:"处方类型",clearable:"",class:"w-[140px]",onChange:Ee},{default:s(()=>[a(i,{label:"全部",value:""}),a(i,{label:"主方",value:"主方"}),a(i,{label:"辅方",value:"辅方"})]),_:1},8,["modelValue"])]),r("div",Qo,[e[196]||(e[196]=r("span",{class:"text-sm text-gray-600 shrink-0"},"导入方式",-1)),a(u,{modelValue:ye.value,"onUpdate:modelValue":e[74]||(e[74]=l=>ye.value=l)},{default:s(()=>[a(I,{label:"replace"},{default:s(()=>[...e[194]||(e[194]=[c("覆盖现有药材",-1)])]),_:1}),a(I,{label:"append"},{default:s(()=>[...e[195]||(e[195]=[c("追加到末尾",-1)])]),_:1})]),_:1},8,["modelValue"])]),O((m(),k(z,{data:lt.value,height:"400",style:{cursor:"pointer"},onRowClick:sl},{default:s(()=>[a(C,{label:"处方名称",prop:"prescription_name","min-width":"150","show-overflow-tooltip":""}),a(C,{label:"处方类型",width:"90"},{default:s(({row:l})=>[a(A,{type:l.formula_type==="辅方"?"warning":"primary",size:"small"},{default:s(()=>[c(f(l.formula_type||"主方"),1)]),_:2},1032,["type"])]),_:1}),a(C,{label:"药材数量",width:"100"},{default:s(({row:l})=>{var N;return[c(f(((N=l.herbs)==null?void 0:N.length)||0)+"味 ",1)]}),_:1}),a(C,{label:"药材明细","min-width":"300","show-overflow-tooltip":""},{default:s(({row:l})=>[l.herbs&&l.herbs.length>0?(m(),b("span",Xo,f(l.herbs.map(N=>`${N.name} ${N.dosage}g`).join("、")),1)):(m(),b("span",Zo,"暂无药材"))]),_:1}),a(C,{label:"是否公开",width:"110"},{default:s(({row:l})=>[a(A,{type:l.is_public?"success":"info",size:"small"},{default:s(()=>[c(f(l.is_public?"所有人可见":"仅自己可见"),1)]),_:2},1032,["type"])]),_:1}),a(C,{label:"创建人",prop:"creator_name",width:"100"}),a(C,{label:"操作",width:"100",fixed:"right"},{default:s(({row:l})=>[a(v,{type:"primary",link:"",onClick:we(N=>Yt(l),["stop"])},{default:s(()=>[...e[197]||(e[197]=[c("导入",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Fe,at.value]]),r("div",er,[a(Nl,{"current-page":xe.value,"onUpdate:currentPage":e[75]||(e[75]=l=>xe.value=l),"page-size":st.value,"onUpdate:pageSize":e[76]||(e[76]=l=>st.value=l),total:nt.value,"page-sizes":[10,15,20,50],layout:"total, sizes, prev, pager, next",onCurrentChange:Ae,onSizeChange:Ae},null,8,["current-page","page-size","total"])])]),_:1},8,["modelValue"]),a(he,{modelValue:ke.value,"onUpdate:modelValue":e[81]||(e[81]=l=>ke.value=l),title:"导入药方(识别药材)",width:"560px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[82]||(e[82]=l=>Ve.value="")},{footer:s(()=>[a(v,{onClick:e[80]||(e[80]=l=>ke.value=!1)},{default:s(()=>[...e[201]||(e[201]=[c("取消",-1)])]),_:1}),a(v,{type:"primary",loading:rt.value,onClick:ml},{default:s(()=>[...e[202]||(e[202]=[c(" 识别并导入 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[e[203]||(e[203]=r("p",{class:"text-gray-500 text-sm mb-2 leading-relaxed"}," 粘贴整张药方文本,系统按「药名 + 剂量」解析;药名须与药品库中名称完全一致才会录入,否则跳过。支持顿号/逗号/换行分隔;单行可用空格分味(如「黄芪15g 白术10g」);「黄芪、党参各10克」等同剂量写法亦可识别。 ",-1)),a(p,{modelValue:Ve.value,"onUpdate:modelValue":e[78]||(e[78]=l=>Ve.value=l),type:"textarea",rows:10,placeholder:`示例: 黄芪15 党参12 茯苓10 diff --git a/server/public/admin/assets/index-BdMgSRB8.js b/server/public/admin/assets/index-BgP7VahB.js similarity index 93% rename from server/public/admin/assets/index-BdMgSRB8.js rename to server/public/admin/assets/index-BgP7VahB.js index 241307be..f7e2644c 100644 --- a/server/public/admin/assets/index-BdMgSRB8.js +++ b/server/public/admin/assets/index-BgP7VahB.js @@ -1 +1 @@ -import{D as I,B as q,C as J,P as O,Q,i as A,J as G,M as H,N as M,T as W,L as X}from"./element-plus-DFTWCWyi.js";import{_ as Y}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as Z,i as ee}from"./index-Nt5zMHcc.js";import{_ as te}from"./index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js";import{w as V}from"./@vue/runtime-dom-DDAG46FW.js";import{d as E,e as oe}from"./post-CjhbCF7F.js";import{u as ae}from"./usePaging-VsbTxSU0.js";import{_ as le}from"./edit.vue_vue_type_script_setup_true_lang-Csv2cIsH.js";import{f as D,as as se,ak as m,I as ne,a as e,aN as a,O as p,J as x,aP as y,G as c,H as ie,n as $}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as re,q as me,n as pe,r as de}from"./@vue/reactivity-DiY1c2vO.js";import{Q as ue}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const ce={class:"post-lists"},_e={class:"flex justify-end mt-4"},fe=D({name:"post"}),nt=D({...fe,setup(be){const _=me(),f=pe(!1),s=de({code:"",name:"",status:""}),{pager:r,getLists:b,resetPage:w,resetParams:P}=ae({fetchFun:E,params:s}),h=async()=>{var n;f.value=!0,await $(),(n=_.value)==null||n.open("add")},j=async n=>{var t,d;f.value=!0,await $(),(t=_.value)==null||t.open("edit"),(d=_.value)==null||d.getDetail(n)},B=async n=>{await ee.confirm("确定要删除?"),await oe({id:n}),b()};return b(),(n,t)=>{const d=J,v=q,g=Q,N=O,u=A,T=te,K=I,C=G,R=Z,i=M,z=W,L=H,S=Y,k=se("perms"),U=X;return m(),ne("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e(K,{ref:"formRef",class:"mb-[-16px]",model:o(s),inline:!0},{default:a(()=>[e(v,{class:"w-[280px]",label:"岗位编码"},{default:a(()=>[e(d,{modelValue:o(s).code,"onUpdate:modelValue":t[0]||(t[0]=l=>o(s).code=l),placeholder:"请输入岗位编码",clearable:"",onKeyup:V(o(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(v,{class:"w-[280px]",label:"岗位名称"},{default:a(()=>[e(d,{modelValue:o(s).name,"onUpdate:modelValue":t[1]||(t[1]=l=>o(s).name=l),clearable:"",onKeyup:V(o(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(v,{class:"w-[280px]",label:"岗位状态"},{default:a(()=>[e(N,{modelValue:o(s).status,"onUpdate:modelValue":t[2]||(t[2]=l=>o(s).status=l)},{default:a(()=>[e(g,{label:"全部",value:""}),e(g,{label:"正常",value:1}),e(g,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),e(v,null,{default:a(()=>[e(u,{type:"primary",onClick:o(w)},{default:a(()=>[...t[6]||(t[6]=[p("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:o(P)},{default:a(()=>[...t[7]||(t[7]=[p("重置",-1)])]),_:1},8,["onClick"]),e(T,{class:"ml-2.5","fetch-fun":o(E),params:o(s),"page-size":o(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),e(C,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[x("div",null,[y((m(),c(u,{type:"primary",onClick:t[3]||(t[3]=l=>h())},{icon:a(()=>[e(R,{name:"el-icon-Plus"})]),default:a(()=>[t[8]||(t[8]=p(" 新增 ",-1))]),_:1})),[[k,["dept.jobs/add"]]])]),y((m(),c(L,{class:"mt-4",size:"large",data:o(r).lists},{default:a(()=>[e(i,{label:"岗位编码",prop:"code","min-width":"100"}),e(i,{label:"岗位名称",prop:"name","min-width":"100"}),e(i,{label:"排序",prop:"sort","min-width":"100"}),e(i,{label:"备注",prop:"remark","min-width":"100","show-overflow-tooltip":""}),e(i,{label:"添加时间",prop:"create_time","min-width":"180"}),e(i,{label:"状态",prop:"status","min-width":"100"},{default:a(({row:l})=>[e(z,{class:"ml-2",type:l.status?"primary":"danger"},{default:a(()=>[p(ue(l.status_desc),1)]),_:2},1032,["type"])]),_:1}),e(i,{label:"操作",width:"120",fixed:"right"},{default:a(({row:l})=>[y((m(),c(u,{type:"primary",link:"",onClick:F=>j(l)},{default:a(()=>[...t[9]||(t[9]=[p(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.jobs/edit"]]]),y((m(),c(u,{type:"danger",link:"",onClick:F=>B(l.id)},{default:a(()=>[...t[10]||(t[10]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.jobs/delete"]]])]),_:1})]),_:1},8,["data"])),[[U,o(r).loading]]),x("div",_e,[e(S,{modelValue:o(r),"onUpdate:modelValue":t[4]||(t[4]=l=>re(r)?r.value=l:null),onChange:o(b)},null,8,["modelValue","onChange"])])]),_:1}),o(f)?(m(),c(le,{key:0,ref_key:"editRef",ref:_,onSuccess:o(b),onClose:t[5]||(t[5]=l=>f.value=!1)},null,8,["onSuccess"])):ie("",!0)])}}});export{nt as default}; +import{D as I,B as q,C as J,P as O,Q,i as A,J as G,M as H,N as M,T as W,L as X}from"./element-plus-DFTWCWyi.js";import{_ as Y}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as Z,i as ee}from"./index--WnM67ZH.js";import{_ as te}from"./index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js";import{w as V}from"./@vue/runtime-dom-DDAG46FW.js";import{d as E,e as oe}from"./post-D694zeqo.js";import{u as ae}from"./usePaging-VsbTxSU0.js";import{_ as le}from"./edit.vue_vue_type_script_setup_true_lang-DJxNWLcv.js";import{f as D,as as se,ak as m,I as ne,a as e,aN as a,O as p,J as x,aP as y,G as c,H as ie,n as $}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as re,q as me,n as pe,r as de}from"./@vue/reactivity-DiY1c2vO.js";import{Q as ue}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const ce={class:"post-lists"},_e={class:"flex justify-end mt-4"},fe=D({name:"post"}),nt=D({...fe,setup(be){const _=me(),f=pe(!1),s=de({code:"",name:"",status:""}),{pager:r,getLists:b,resetPage:w,resetParams:P}=ae({fetchFun:E,params:s}),h=async()=>{var n;f.value=!0,await $(),(n=_.value)==null||n.open("add")},j=async n=>{var t,d;f.value=!0,await $(),(t=_.value)==null||t.open("edit"),(d=_.value)==null||d.getDetail(n)},B=async n=>{await ee.confirm("确定要删除?"),await oe({id:n}),b()};return b(),(n,t)=>{const d=J,v=q,g=Q,N=O,u=A,T=te,K=I,C=G,R=Z,i=M,z=W,L=H,S=Y,k=se("perms"),U=X;return m(),ne("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e(K,{ref:"formRef",class:"mb-[-16px]",model:o(s),inline:!0},{default:a(()=>[e(v,{class:"w-[280px]",label:"岗位编码"},{default:a(()=>[e(d,{modelValue:o(s).code,"onUpdate:modelValue":t[0]||(t[0]=l=>o(s).code=l),placeholder:"请输入岗位编码",clearable:"",onKeyup:V(o(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(v,{class:"w-[280px]",label:"岗位名称"},{default:a(()=>[e(d,{modelValue:o(s).name,"onUpdate:modelValue":t[1]||(t[1]=l=>o(s).name=l),clearable:"",onKeyup:V(o(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(v,{class:"w-[280px]",label:"岗位状态"},{default:a(()=>[e(N,{modelValue:o(s).status,"onUpdate:modelValue":t[2]||(t[2]=l=>o(s).status=l)},{default:a(()=>[e(g,{label:"全部",value:""}),e(g,{label:"正常",value:1}),e(g,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),e(v,null,{default:a(()=>[e(u,{type:"primary",onClick:o(w)},{default:a(()=>[...t[6]||(t[6]=[p("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:o(P)},{default:a(()=>[...t[7]||(t[7]=[p("重置",-1)])]),_:1},8,["onClick"]),e(T,{class:"ml-2.5","fetch-fun":o(E),params:o(s),"page-size":o(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),e(C,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[x("div",null,[y((m(),c(u,{type:"primary",onClick:t[3]||(t[3]=l=>h())},{icon:a(()=>[e(R,{name:"el-icon-Plus"})]),default:a(()=>[t[8]||(t[8]=p(" 新增 ",-1))]),_:1})),[[k,["dept.jobs/add"]]])]),y((m(),c(L,{class:"mt-4",size:"large",data:o(r).lists},{default:a(()=>[e(i,{label:"岗位编码",prop:"code","min-width":"100"}),e(i,{label:"岗位名称",prop:"name","min-width":"100"}),e(i,{label:"排序",prop:"sort","min-width":"100"}),e(i,{label:"备注",prop:"remark","min-width":"100","show-overflow-tooltip":""}),e(i,{label:"添加时间",prop:"create_time","min-width":"180"}),e(i,{label:"状态",prop:"status","min-width":"100"},{default:a(({row:l})=>[e(z,{class:"ml-2",type:l.status?"primary":"danger"},{default:a(()=>[p(ue(l.status_desc),1)]),_:2},1032,["type"])]),_:1}),e(i,{label:"操作",width:"120",fixed:"right"},{default:a(({row:l})=>[y((m(),c(u,{type:"primary",link:"",onClick:F=>j(l)},{default:a(()=>[...t[9]||(t[9]=[p(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.jobs/edit"]]]),y((m(),c(u,{type:"danger",link:"",onClick:F=>B(l.id)},{default:a(()=>[...t[10]||(t[10]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.jobs/delete"]]])]),_:1})]),_:1},8,["data"])),[[U,o(r).loading]]),x("div",_e,[e(S,{modelValue:o(r),"onUpdate:modelValue":t[4]||(t[4]=l=>re(r)?r.value=l:null),onChange:o(b)},null,8,["modelValue","onChange"])])]),_:1}),o(f)?(m(),c(le,{key:0,ref_key:"editRef",ref:_,onSuccess:o(b),onClose:t[5]||(t[5]=l=>f.value=!1)},null,8,["onSuccess"])):ie("",!0)])}}});export{nt as default}; diff --git a/server/public/admin/assets/index-B1LIHnDq.js b/server/public/admin/assets/index-BilNp2wo.js similarity index 94% rename from server/public/admin/assets/index-B1LIHnDq.js rename to server/public/admin/assets/index-BilNp2wo.js index 4da07eb6..89de39c6 100644 --- a/server/public/admin/assets/index-B1LIHnDq.js +++ b/server/public/admin/assets/index-BilNp2wo.js @@ -1 +1 @@ -import{D as z,B as A,C as G,P as H,Q as M,i as Q,J as W,M as X,N as Y,T as Z,L as ee}from"./element-plus-DFTWCWyi.js";import{_ as te}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as oe,k as le,i as ae}from"./index-Nt5zMHcc.js";import{w as P}from"./@vue/runtime-dom-DDAG46FW.js";import{f as ne,i as ie}from"./dict-BN4CTMA_.js";import{u as se}from"./usePaging-VsbTxSU0.js";import{_ as re}from"./edit.vue_vue_type_script_setup_true_lang-D0_v-7QH.js";import{f as R,ar as me,as as de,ak as n,I as $,a as t,aN as o,O as s,J as V,aP as u,G as d,H as pe,n as B}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as ue,q as ce,n as N,r as _e}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const fe={class:"dict-type"},ye={class:"mt-4"},ve={class:"flex justify-end mt-4"},ge=R({name:"dictType"}),rt=R({...ge,setup(ke){const y=ce(),v=N(!1),r=_e({name:"",type:"",status:""}),{pager:c,getLists:g,resetPage:b,resetParams:K}=se({fetchFun:ne,params:r}),C=N([]),S=i=>{C.value=i.map(({id:e})=>e)},F=async()=>{var i;v.value=!0,await B(),(i=y.value)==null||i.open("add")},I=async i=>{var e,_;v.value=!0,await B(),(e=y.value)==null||e.open("edit"),(_=y.value)==null||_.setFormData(i)},E=async i=>{await ae.confirm("确定要删除?"),await ie({id:i}),g()};return g(),(i,e)=>{const _=G,k=A,w=M,L=H,p=Q,U=z,x=W,D=oe,m=Y,T=Z,q=me("router-link"),J=X,O=te,f=de("perms"),h=ee;return n(),$("div",fe,[t(x,{class:"!border-none",shadow:"never"},{default:o(()=>[t(U,{ref:"formRef",class:"mb-[-16px]",model:l(r),inline:""},{default:o(()=>[t(k,{class:"w-[280px]",label:"字典名称"},{default:o(()=>[t(_,{modelValue:l(r).name,"onUpdate:modelValue":e[0]||(e[0]=a=>l(r).name=a),clearable:"",onKeyup:P(l(b),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,{class:"w-[280px]",label:"字典类型"},{default:o(()=>[t(_,{modelValue:l(r).type,"onUpdate:modelValue":e[1]||(e[1]=a=>l(r).type=a),clearable:"",onKeyup:P(l(b),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,{class:"w-[280px]",label:"状态"},{default:o(()=>[t(L,{modelValue:l(r).status,"onUpdate:modelValue":e[2]||(e[2]=a=>l(r).status=a)},{default:o(()=>[t(w,{label:"全部",value:""}),t(w,{label:"正常",value:1}),t(w,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(k,null,{default:o(()=>[t(p,{type:"primary",onClick:l(b)},{default:o(()=>[...e[6]||(e[6]=[s("查询",-1)])]),_:1},8,["onClick"]),t(p,{onClick:l(K)},{default:o(()=>[...e[7]||(e[7]=[s("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(x,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[V("div",null,[u((n(),d(p,{type:"primary",onClick:F},{icon:o(()=>[t(D,{name:"el-icon-Plus"})]),default:o(()=>[e[8]||(e[8]=s(" 新增 ",-1))]),_:1})),[[f,["setting.dict.dict_type/add"]]]),u((n(),d(p,{disabled:!l(C).length,type:"danger",onClick:e[3]||(e[3]=a=>E(l(C)))},{icon:o(()=>[t(D,{name:"el-icon-Delete"})]),default:o(()=>[e[9]||(e[9]=s(" 删除 ",-1))]),_:1},8,["disabled"])),[[f,["setting.dict.dict_type/delete"]]])]),u((n(),$("div",ye,[V("div",null,[t(J,{data:l(c).lists,size:"large",onSelectionChange:S},{default:o(()=>[t(m,{type:"selection",width:"55"}),t(m,{label:"ID",prop:"id"}),t(m,{label:"字典名称",prop:"name","min-width":"120"}),t(m,{label:"字典类型",prop:"type","min-width":"120"}),t(m,{label:"状态"},{default:o(({row:a})=>[a.status==1?(n(),d(T,{key:0},{default:o(()=>[...e[10]||(e[10]=[s("正常",-1)])]),_:1})):(n(),d(T,{key:1,type:"danger"},{default:o(()=>[...e[11]||(e[11]=[s("停用",-1)])]),_:1}))]),_:1}),t(m,{label:"备注",prop:"remark","show-tooltip-when-overflow":""}),t(m,{label:"创建时间",prop:"create_time","min-width":"180"}),t(m,{label:"操作",width:"190",fixed:"right"},{default:o(({row:a})=>[u((n(),d(p,{link:"",type:"primary",onClick:j=>I(a)},{default:o(()=>[...e[12]||(e[12]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/edit"]]]),u((n(),d(p,{type:"primary",link:""},{default:o(()=>[t(q,{to:{path:l(le)("setting.dict.dict_data/lists"),query:{id:a.id}}},{default:o(()=>[...e[13]||(e[13]=[s(" 数据管理 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[f,["setting.dict.dict_data/lists"]]]),u((n(),d(p,{link:"",type:"danger",onClick:j=>E(a.id)},{default:o(()=>[...e[14]||(e[14]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",ve,[t(O,{modelValue:l(c),"onUpdate:modelValue":e[4]||(e[4]=a=>ue(c)?c.value=a:null),onChange:l(g)},null,8,["modelValue","onChange"])])])),[[h,l(c).loading]])]),_:1}),l(v)?(n(),d(re,{key:0,ref_key:"editRef",ref:y,onSuccess:l(g),onClose:e[5]||(e[5]=a=>v.value=!1)},null,8,["onSuccess"])):pe("",!0)])}}});export{rt as default}; +import{D as z,B as A,C as G,P as H,Q as M,i as Q,J as W,M as X,N as Y,T as Z,L as ee}from"./element-plus-DFTWCWyi.js";import{_ as te}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as oe,k as le,i as ae}from"./index--WnM67ZH.js";import{w as P}from"./@vue/runtime-dom-DDAG46FW.js";import{f as ne,i as ie}from"./dict-DnKASfBm.js";import{u as se}from"./usePaging-VsbTxSU0.js";import{_ as re}from"./edit.vue_vue_type_script_setup_true_lang-CaN7mnTW.js";import{f as R,ar as me,as as de,ak as n,I as $,a as t,aN as o,O as s,J as V,aP as u,G as d,H as pe,n as B}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as ue,q as ce,n as N,r as _e}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const fe={class:"dict-type"},ye={class:"mt-4"},ve={class:"flex justify-end mt-4"},ge=R({name:"dictType"}),rt=R({...ge,setup(ke){const y=ce(),v=N(!1),r=_e({name:"",type:"",status:""}),{pager:c,getLists:g,resetPage:b,resetParams:K}=se({fetchFun:ne,params:r}),C=N([]),S=i=>{C.value=i.map(({id:e})=>e)},F=async()=>{var i;v.value=!0,await B(),(i=y.value)==null||i.open("add")},I=async i=>{var e,_;v.value=!0,await B(),(e=y.value)==null||e.open("edit"),(_=y.value)==null||_.setFormData(i)},E=async i=>{await ae.confirm("确定要删除?"),await ie({id:i}),g()};return g(),(i,e)=>{const _=G,k=A,w=M,L=H,p=Q,U=z,x=W,D=oe,m=Y,T=Z,q=me("router-link"),J=X,O=te,f=de("perms"),h=ee;return n(),$("div",fe,[t(x,{class:"!border-none",shadow:"never"},{default:o(()=>[t(U,{ref:"formRef",class:"mb-[-16px]",model:l(r),inline:""},{default:o(()=>[t(k,{class:"w-[280px]",label:"字典名称"},{default:o(()=>[t(_,{modelValue:l(r).name,"onUpdate:modelValue":e[0]||(e[0]=a=>l(r).name=a),clearable:"",onKeyup:P(l(b),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,{class:"w-[280px]",label:"字典类型"},{default:o(()=>[t(_,{modelValue:l(r).type,"onUpdate:modelValue":e[1]||(e[1]=a=>l(r).type=a),clearable:"",onKeyup:P(l(b),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,{class:"w-[280px]",label:"状态"},{default:o(()=>[t(L,{modelValue:l(r).status,"onUpdate:modelValue":e[2]||(e[2]=a=>l(r).status=a)},{default:o(()=>[t(w,{label:"全部",value:""}),t(w,{label:"正常",value:1}),t(w,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(k,null,{default:o(()=>[t(p,{type:"primary",onClick:l(b)},{default:o(()=>[...e[6]||(e[6]=[s("查询",-1)])]),_:1},8,["onClick"]),t(p,{onClick:l(K)},{default:o(()=>[...e[7]||(e[7]=[s("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(x,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[V("div",null,[u((n(),d(p,{type:"primary",onClick:F},{icon:o(()=>[t(D,{name:"el-icon-Plus"})]),default:o(()=>[e[8]||(e[8]=s(" 新增 ",-1))]),_:1})),[[f,["setting.dict.dict_type/add"]]]),u((n(),d(p,{disabled:!l(C).length,type:"danger",onClick:e[3]||(e[3]=a=>E(l(C)))},{icon:o(()=>[t(D,{name:"el-icon-Delete"})]),default:o(()=>[e[9]||(e[9]=s(" 删除 ",-1))]),_:1},8,["disabled"])),[[f,["setting.dict.dict_type/delete"]]])]),u((n(),$("div",ye,[V("div",null,[t(J,{data:l(c).lists,size:"large",onSelectionChange:S},{default:o(()=>[t(m,{type:"selection",width:"55"}),t(m,{label:"ID",prop:"id"}),t(m,{label:"字典名称",prop:"name","min-width":"120"}),t(m,{label:"字典类型",prop:"type","min-width":"120"}),t(m,{label:"状态"},{default:o(({row:a})=>[a.status==1?(n(),d(T,{key:0},{default:o(()=>[...e[10]||(e[10]=[s("正常",-1)])]),_:1})):(n(),d(T,{key:1,type:"danger"},{default:o(()=>[...e[11]||(e[11]=[s("停用",-1)])]),_:1}))]),_:1}),t(m,{label:"备注",prop:"remark","show-tooltip-when-overflow":""}),t(m,{label:"创建时间",prop:"create_time","min-width":"180"}),t(m,{label:"操作",width:"190",fixed:"right"},{default:o(({row:a})=>[u((n(),d(p,{link:"",type:"primary",onClick:j=>I(a)},{default:o(()=>[...e[12]||(e[12]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/edit"]]]),u((n(),d(p,{type:"primary",link:""},{default:o(()=>[t(q,{to:{path:l(le)("setting.dict.dict_data/lists"),query:{id:a.id}}},{default:o(()=>[...e[13]||(e[13]=[s(" 数据管理 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[f,["setting.dict.dict_data/lists"]]]),u((n(),d(p,{link:"",type:"danger",onClick:j=>E(a.id)},{default:o(()=>[...e[14]||(e[14]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",ve,[t(O,{modelValue:l(c),"onUpdate:modelValue":e[4]||(e[4]=a=>ue(c)?c.value=a:null),onChange:l(g)},null,8,["modelValue","onChange"])])])),[[h,l(c).loading]])]),_:1}),l(v)?(n(),d(re,{key:0,ref_key:"editRef",ref:y,onSuccess:l(g),onClose:e[5]||(e[5]=a=>v.value=!1)},null,8,["onSuccess"])):pe("",!0)])}}});export{rt as default}; diff --git a/server/public/admin/assets/index-D18gAY1e.js b/server/public/admin/assets/index-BtiRSS_3.js similarity index 90% rename from server/public/admin/assets/index-D18gAY1e.js rename to server/public/admin/assets/index-BtiRSS_3.js index 1613e37f..d64118b4 100644 --- a/server/public/admin/assets/index-D18gAY1e.js +++ b/server/public/admin/assets/index-BtiRSS_3.js @@ -1 +1 @@ -import{_ as r,c}from"./index-Nt5zMHcc.js";import{f as d,ak as s,I as n,aq as p,a as i,H as m}from"./@vue/runtime-core-C6bnekPw.js";import{s as _}from"./@vue/runtime-dom-DDAG46FW.js";const f=d({props:{showClose:{type:Boolean,default:!0}},emits:["close"],setup(e,{emit:o}){return{handleClose:()=>{o("close")}}}}),u={class:"del-wrap"};function C(e,o,t,h,$,k){const a=c;return s(),n("div",u,[p(e.$slots,"default",{},void 0,!0),e.showClose?(s(),n("div",{key:0,class:"icon-close",onClick:o[0]||(o[0]=_((...l)=>e.handleClose&&e.handleClose(...l),["stop"]))},[i(a,{size:12,name:"el-icon-CloseBold"})])):m("",!0)])}const y=r(f,[["render",C],["__scopeId","data-v-acafd744"]]);export{y as _}; +import{_ as r,c}from"./index--WnM67ZH.js";import{f as d,ak as s,I as n,aq as p,a as i,H as m}from"./@vue/runtime-core-C6bnekPw.js";import{s as _}from"./@vue/runtime-dom-DDAG46FW.js";const f=d({props:{showClose:{type:Boolean,default:!0}},emits:["close"],setup(e,{emit:o}){return{handleClose:()=>{o("close")}}}}),u={class:"del-wrap"};function C(e,o,t,h,$,k){const a=c;return s(),n("div",u,[p(e.$slots,"default",{},void 0,!0),e.showClose?(s(),n("div",{key:0,class:"icon-close",onClick:o[0]||(o[0]=_((...l)=>e.handleClose&&e.handleClose(...l),["stop"]))},[i(a,{size:12,name:"el-icon-CloseBold"})])):m("",!0)])}const y=r(f,[["render",C],["__scopeId","data-v-acafd744"]]);export{y as _}; diff --git a/server/public/admin/assets/index-gTDcOAp2.js b/server/public/admin/assets/index-C11LcA3l.js similarity index 98% rename from server/public/admin/assets/index-gTDcOAp2.js rename to server/public/admin/assets/index-C11LcA3l.js index b1cbbbd6..2942e8d5 100644 --- a/server/public/admin/assets/index-gTDcOAp2.js +++ b/server/public/admin/assets/index-C11LcA3l.js @@ -1 +1 @@ -import{K as Je,i as Oe,d as Ge,r as We,Q as je,q as Xe,P as Ye,C as Ze,H as et,L as tt,R as st,S as at,T as lt,l as nt,m as it,U as ot,M as rt,N as ut,V as dt}from"./element-plus-DFTWCWyi.js";import{w as ct}from"./@vue/runtime-dom-DDAG46FW.js";import{L as fe,M as mt,N as _t,J as ft}from"./@element-plus/icons-vue-HOEUG8sr.js";import{i as C,t as vt,_ as pt}from"./index-Nt5zMHcc.js";import{u as gt}from"./usePaging-VsbTxSU0.js";import yt from"./MessageBubble-BalN4H2y.js";import{q as ht,S as kt,a as wt,b as bt,c as xt,d as St,e as ae,f as Tt,g as Mt,h as ve}from"./SendPanel-BlCCqkH6.js";import{f as zt,w as Et,b as Ct,ae as Vt,ak as o,I as u,G as x,H as _,J as a,a as l,aN as i,F as M,ap as B,O as f,aP as le,A as pe,n as ne}from"./@vue/runtime-core-C6bnekPw.js";import{y,n as m}from"./@vue/reactivity-DiY1c2vO.js";import{Q as d,o as $t}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./file-dC1LMm1W.js";const Dt={class:"qywx-im"},Lt={class:"im-layout"},qt={class:"col-session"},At={class:"col-header"},It={class:"col-actions"},Bt={class:"col-filters"},Ht={class:"staff-option"},Pt={class:"staff-userid"},Nt={class:"session-list"},Ut={key:0,class:"empty-tip"},Rt=["onClick"],Kt={class:"session-meta"},Ft={class:"session-top"},Qt={class:"session-name"},Jt={class:"session-time"},Ot={class:"session-bottom"},Gt={class:"session-preview"},Wt={key:0,class:"session-staff"},jt={key:1,class:"session-load-more"},Xt={class:"col-message"},Yt={key:0,class:"no-session"},Zt={class:"col-header"},es={class:"msg-header-title"},ts={class:"msg-customer-name"},ss={class:"msg-customer-sub"},as={class:"col-actions"},ls={key:0,class:"load-history"},ns={key:1,class:"load-history end-tip"},is={key:2,class:"empty-tip"},os={class:"col-profile"},rs={class:"profile-panel"},us={class:"profile-name"},ds={class:"profile-fields"},cs={class:"field"},ms={class:"value"},_s={class:"field"},fs=["title"],vs={key:0,class:"field"},ps={class:"value"},gs={key:1,class:"field"},ys={class:"value"},hs={class:"field"},ks={class:"value"},ws={class:"field"},bs={class:"value"},xs={class:"tasks-panel"},Ss={key:0,class:"empty-tip"},Ts={class:"task-top"},Ms={class:"task-time"},zs={class:"task-body"},Es={key:0,class:"task-text"},Cs={key:1,class:"task-attachments"},Vs={key:2,class:"task-error"},$s={class:"task-actions"},Ds={key:1,class:"no-session"},Ls={class:"tips"},qs={key:1,class:"mt-2 text-center"},As=zt({__name:"index",setup(Is){const z=m(null),J=m(!1),ge=pe(()=>{if(!z.value)return"";const t=z.value;return t.enabled?`会话存档 SDK 不可用:${t.error||"未知错误"}`:"「会话内容存档」未启用,实时消息不可用。请在后端 pay.php 中开启 msgaudit_enabled 并配置 SDK 动态库与 RSA 私钥。"});async function ye(){try{z.value=await wt()}catch{}}async function he(){J.value=!0;try{await bt(5,!0),C.msgSuccess("已触发一次拉取,稍后刷新可见"),await S(!0),n.value&&await j()}catch(t){C.msgError((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"拉取失败")}finally{J.value=!1}}const O=m([]);async function ke(){try{const t=await xt();O.value=Array.isArray(t)?t:(t==null?void 0:t.lists)||[]}catch{O.value=[]}}const E=m({staff_userid:"",keyword:"",only_unread:0}),G=m(!1);Et(G,t=>{E.value.only_unread=t?1:0});const{pager:g,getLists:W}=gt({fetchFun:ht,params:E.value,size:30});function S(t=!1){return t||(g.page=1),W()}async function we(){const t=[...g.lists||[]];g.page+=1;try{await W();const e=g.lists||[],r=new Set(t.map(v=>v.id)),c=[...t,...e.filter(v=>!r.has(v.id))];g.lists=c}catch{}}const n=m(null),h=m([]),H=m(!1),V=m(!1),$=m(!1),P=m(0),N=m(0),k=m(null),be=pe(()=>!!n.value&&n.value.session_type!==2);async function xe(t){var e;if(((e=n.value)==null?void 0:e.id)!==t.id){if(n.value=t,h.value=[],P.value=0,N.value=0,$.value=!1,await j(),await re(),t.unread_staff>0)try{await St(t.id),t.unread_staff=0}catch{}U.value="profile"}}async function j(){if(n.value){H.value=!0;try{const t=await ae({session_id:n.value.id,page_no:1,page_size:30}),e=(t==null?void 0:t.lists)||[];h.value=e,e.length&&(P.value=e[0].send_time,N.value=e[e.length-1].send_time),$.value=e.length>=30,await ne(),oe()}catch(t){C.msgError((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"加载消息失败")}finally{H.value=!1}}}async function ie(){var e;if(!n.value||V.value)return;V.value=!0;const t=((e=k.value)==null?void 0:e.scrollHeight)||0;try{const r=await ae({session_id:n.value.id,page_no:1,page_size:30,before_time:P.value}),c=(r==null?void 0:r.lists)||[];c.length&&(P.value=c[0].send_time,h.value=[...c,...h.value]),$.value=c.length>=30,await ne(),k.value&&(k.value.scrollTop=k.value.scrollHeight-t)}finally{V.value=!1}}async function Se(){if(n.value)try{const t=await ae({session_id:n.value.id,page_no:1,page_size:50,after_time:N.value}),e=(t==null?void 0:t.lists)||[];if(!e.length)return;const r=new Set(h.value.map(T=>T.id)),c=e.filter(T=>!r.has(T.id));if(!c.length)return;h.value=[...h.value,...c],N.value=c[c.length-1].send_time;const v=k.value;(v?v.scrollHeight-v.scrollTop-v.clientHeight<120:!0)&&(await ne(),oe())}catch{}}function Te(){const t=k.value;t&&t.scrollTop<40&&$.value&&!V.value&&ie()}function oe(){k.value&&(k.value.scrollTop=k.value.scrollHeight)}async function Me(t){if(n.value)try{await Tt({sender_userid:n.value.staff_userid,external_userids:[n.value.external_userid],msg_payload:t,chat_type:"single"}),C.msgSuccess("已创建群发任务,员工手机确认后送达客户"),await re(),U.value="tasks"}catch(e){C.msgError((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"发送失败")}}const U=m("profile"),R=m([]),X=m(!1);async function re(){if(n.value){X.value=!0;try{const t=await Mt({sender_userid:n.value.staff_userid,page_no:1,page_size:50}),e=(t==null?void 0:t.lists)||[];R.value=e.filter(r=>(r.external_userids||[]).includes(n.value.external_userid))}finally{X.value=!1}}}function ze(t){return{0:"待提交",1:"已提交",2:"已送达",3:"失败"}[t]??`状态${t}`}function Ee(t){return{0:"info",1:"primary",2:"success",3:"danger"}[t]??"info"}function Ce(t){return{image:"图片",video:"视频",file:"文件",link:"链接",miniprogram:"小程序"}[t]||t}const Y=m(!1),D=m(!1),ue=m(0),w=m(null);async function Ve(t){ue.value=t.id,w.value={detail_list:[],next_cursor:""},Y.value=!0,D.value=!0;try{const e=await ve(t.id,"");w.value={detail_list:(e==null?void 0:e.detail_list)||[],next_cursor:(e==null?void 0:e.next_cursor)||"",task:e==null?void 0:e.task}}catch(e){C.msgError((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{D.value=!1}}async function $e(){var t;if((t=w.value)!=null&&t.next_cursor){D.value=!0;try{const e=await ve(ue.value,w.value.next_cursor);w.value={detail_list:[...w.value.detail_list,...(e==null?void 0:e.detail_list)||[]],next_cursor:(e==null?void 0:e.next_cursor)||"",task:e==null?void 0:e.task}}finally{D.value=!1}}}function De(t){switch(t){case 0:return"未发送";case 1:return"已送达";case 2:return"被拒收";case 3:return"已送达(未读)";default:return`状态${t}`}}function Le(t){return t===1?"success":t===2?"warning":t===3?"primary":"info"}function L(t){var e;return(e=t.customer)!=null&&e.name?t.customer.name:t.session_type===2?`群聊 ${t.roomid.slice(-6)}`:t.external_userid||"未命名客户"}function qe(t){const e=t.last_msg_summary||"",r=t.last_msg_type;return e||(r==="image"?"[图片]":r==="video"?"[视频]":r==="voice"?"[语音]":r==="file"?"[文件]":r==="link"?"[链接]":r==="weapp"?"[小程序]":r==="chatrecord"?"[聊天记录]":r?`[${r}]`:"暂无消息")}function Z(t){return t?vt(t*1e3,"yyyy-mm-dd hh:MM"):"-"}function Ae(t){if(!t)return"";const r=Math.floor(Date.now()/1e3)-t;if(r<60)return`${r}秒前`;if(r<3600)return`${Math.floor(r/60)}分前`;if(r<86400)return`${Math.floor(r/3600)}小时前`;const c=new Date(t*1e3);return`${c.getMonth()+1}-${c.getDate()}`}let ee=null,te=null;return Ct(async()=>{await Promise.all([ye(),ke()]),await S(),ee=window.setInterval(()=>{W({silent:!0}).catch(()=>{})},15e3),te=window.setInterval(()=>{Se()},8e3)}),Vt(()=>{ee&&window.clearInterval(ee),te&&window.clearInterval(te)}),(t,e)=>{var ce,me;const r=Je,c=Ge,v=Oe,K=We,T=Xe,Ie=je,Be=Ye,He=Ze,Pe=et,F=st,Ne=at,q=lt,de=nt,Ue=it,Re=ot,Q=ut,Ke=rt,Fe=dt,se=tt;return o(),u("div",Dt,[z.value&&!z.value.available?(o(),x(r,{key:0,title:ge.value,type:"warning",closable:!1,"show-icon":"",class:"archive-warning"},null,8,["title"])):_("",!0),a("div",Lt,[a("section",qt,[a("header",At,[e[11]||(e[11]=a("div",{class:"col-title"},"会话",-1)),a("div",It,[l(K,{content:"刷新"},{default:i(()=>[l(v,{size:"small",link:"",loading:y(g).loading,onClick:e[0]||(e[0]=s=>S(!0))},{default:i(()=>[l(c,null,{default:i(()=>[l(y(fe))]),_:1})]),_:1},8,["loading"])]),_:1}),l(K,{content:"手动拉一次存档"},{default:i(()=>{var s;return[l(v,{size:"small",link:"",disabled:!((s=z.value)!=null&&s.available),loading:J.value,onClick:he},{default:i(()=>[l(c,null,{default:i(()=>[l(y(mt))]),_:1})]),_:1},8,["disabled","loading"])]}),_:1})])]),a("div",Bt,[l(Be,{modelValue:E.value.staff_userid,"onUpdate:modelValue":e[1]||(e[1]=s=>E.value.staff_userid=s),placeholder:"全部员工",clearable:"",filterable:"",size:"default",style:{width:"100%"},onChange:e[2]||(e[2]=s=>S())},{default:i(()=>[(o(!0),u(M,null,B(O.value,s=>(o(),x(Ie,{key:s.userid,label:(s.name||s.userid)+"("+s.userid+")",value:s.userid},{default:i(()=>[a("div",Ht,[l(T,{size:20,src:s.avatar},{default:i(()=>[f(d((s.name||"").slice(-2)),1)]),_:2},1032,["src"]),a("span",null,d(s.name),1),a("span",Pt,d(s.userid),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue"]),l(He,{modelValue:E.value.keyword,"onUpdate:modelValue":e[3]||(e[3]=s=>E.value.keyword=s),placeholder:"搜索客户或消息",clearable:"",size:"default",onKeyup:e[4]||(e[4]=ct(s=>S(),["enter"])),onClear:e[5]||(e[5]=s=>S())},{prefix:i(()=>[l(c,null,{default:i(()=>[l(y(_t))]),_:1})]),_:1},8,["modelValue"]),l(Pe,{modelValue:G.value,"onUpdate:modelValue":e[6]||(e[6]=s=>G.value=s),onChange:e[7]||(e[7]=s=>S())},{default:i(()=>[...e[12]||(e[12]=[f(" 仅未读 ",-1)])]),_:1},8,["modelValue"])]),le((o(),u("div",Nt,[!y(g).lists.length&&!y(g).loading?(o(),u("div",Ut,[l(F,{description:"暂无会话","image-size":80})])):_("",!0),(o(!0),u(M,null,B(y(g).lists,s=>{var p;return o(),u("div",{key:s.id,class:$t(["session-item",{active:((p=n.value)==null?void 0:p.id)===s.id}]),onClick:b=>xe(s)},[l(Ne,{value:s.unread_staff,hidden:!s.unread_staff,max:99},{default:i(()=>{var b;return[l(T,{size:42,src:((b=s.customer)==null?void 0:b.avatar)||""},{default:i(()=>[f(d(L(s).slice(-2)),1)]),_:2},1032,["src"])]}),_:2},1032,["value","hidden"]),a("div",Kt,[a("div",Ft,[a("span",Qt,d(L(s)),1),a("span",Jt,d(Ae(s.last_msg_time)),1)]),a("div",Ot,[a("span",Gt,d(qe(s)),1),s.session_type===2?(o(),x(q,{key:0,size:"small",type:"info",class:"session-tag"},{default:i(()=>[...e[13]||(e[13]=[f(" 群 ",-1)])]),_:1})):_("",!0)]),s.staff?(o(),u("div",Wt," 员工: "+d(s.staff.name||s.staff_userid),1)):_("",!0)])],10,Rt)}),128)),y(g).lists.length[...e[14]||(e[14]=[f(" 加载更多 ",-1)])]),_:1})])):_("",!0)])),[[se,y(g).loading]])]),a("section",Xt,[n.value?(o(),u(M,{key:1},[a("header",Zt,[a("div",es,[a("div",ts,d(L(n.value)),1),a("div",ss,[(ce=n.value.customer)!=null&&ce.corp_name?(o(),u(M,{key:0},[f(d(n.value.customer.corp_name)+" · ",1)],64)):_("",!0),f(" 代发员工: "+d(((me=n.value.staff)==null?void 0:me.name)||n.value.staff_userid)+" ",1),n.value.session_type===2?(o(),x(q,{key:1,size:"small",type:"info",class:"ml-1"},{default:i(()=>[...e[15]||(e[15]=[f(" 群聊 ",-1)])]),_:1})):_("",!0)])]),a("div",as,[l(K,{content:"刷新消息"},{default:i(()=>[l(v,{link:"",size:"small",loading:H.value,onClick:e[8]||(e[8]=s=>j())},{default:i(()=>[l(c,null,{default:i(()=>[l(y(fe))]),_:1})]),_:1},8,["loading"])]),_:1})])]),a("div",{ref_key:"messageListRef",ref:k,class:"message-list",onScroll:Te},[$.value?(o(),u("div",ls,[l(v,{link:"",type:"primary",loading:V.value,onClick:ie},{default:i(()=>[...e[16]||(e[16]=[f(" 加载更早的消息 ",-1)])]),_:1},8,["loading"])])):h.value.length?(o(),u("div",ns," —— 没有更早的消息了 —— ")):_("",!0),!h.value.length&&!H.value?(o(),u("div",is,[l(F,{description:"暂无消息","image-size":80})])):_("",!0),(o(!0),u(M,null,B(h.value,s=>(o(),x(yt,{key:s.id,message:s},null,8,["message"]))),128))],544),l(kt,{"can-send-message":be.value,onSend:Me},null,8,["can-send-message"])],64)):(o(),u("div",Yt,[l(F,{description:"选择左侧会话查看消息"},{image:i(()=>[l(c,{size:60,color:"#ccc"},{default:i(()=>[l(y(ft))]),_:1})]),_:1})]))]),a("section",os,[n.value?(o(),x(Ue,{key:0,modelValue:U.value,"onUpdate:modelValue":e[9]||(e[9]=s=>U.value=s),class:"profile-tabs"},{default:i(()=>[l(de,{label:"客户资料",name:"profile"},{default:i(()=>{var s,p,b,A,I;return[a("div",rs,[l(T,{size:72,src:((s=n.value.customer)==null?void 0:s.avatar)||""},{default:i(()=>[f(d(L(n.value).slice(-2)),1)]),_:1},8,["src"]),a("div",us,d(L(n.value)),1),a("div",ds,[a("div",cs,[e[17]||(e[17]=a("span",{class:"label"},"客户类型",-1)),a("span",ms,d(((p=n.value.customer)==null?void 0:p.type)===2?"@微信":"@企业微信"),1)]),a("div",_s,[e[18]||(e[18]=a("span",{class:"label"},"外部 ID",-1)),a("span",{class:"value ellipsis",title:n.value.external_userid},d(n.value.external_userid||"-"),9,fs)]),(b=n.value.customer)!=null&&b.corp_name?(o(),u("div",vs,[e[19]||(e[19]=a("span",{class:"label"},"所属企业",-1)),a("span",ps,d(n.value.customer.corp_name),1)])):_("",!0),(A=n.value.customer)!=null&&A.gender?(o(),u("div",gs,[e[20]||(e[20]=a("span",{class:"label"},"性别",-1)),a("span",ys,d(n.value.customer.gender===1?"男":n.value.customer.gender===2?"女":"未知"),1)])):_("",!0),a("div",hs,[e[21]||(e[21]=a("span",{class:"label"},"代发员工",-1)),a("span",ks,d(((I=n.value.staff)==null?void 0:I.name)||n.value.staff_userid),1)]),a("div",ws,[e[22]||(e[22]=a("span",{class:"label"},"最近消息",-1)),a("span",bs,d(Z(n.value.last_msg_time)),1)])])])]}),_:1}),l(de,{label:`发送任务(${R.value.length})`,name:"tasks"},{default:i(()=>[le((o(),u("div",xs,[R.value.length?_("",!0):(o(),u("div",Ss,[l(F,{description:"暂无任务","image-size":80})])),(o(!0),u(M,null,B(R.value,s=>{var p,b,A,I;return o(),u("div",{key:s.id,class:"task-item"},[a("div",Ts,[l(q,{type:Ee(s.status),size:"small"},{default:i(()=>[f(d(ze(s.status)),1)]),_:2},1032,["type"]),a("span",Ms,d(Z(s.create_time)),1)]),a("div",zs,[(b=(p=s.msg_payload)==null?void 0:p.text)!=null&&b.content?(o(),u("div",Es,d(s.msg_payload.text.content),1)):_("",!0),(I=(A=s.msg_payload)==null?void 0:A.attachments)!=null&&I.length?(o(),u("div",Cs,[e[23]||(e[23]=f(" 附件: ",-1)),(o(!0),u(M,null,B(s.msg_payload.attachments,(_e,Qe)=>(o(),x(q,{key:Qe,size:"small",type:"info",class:"mr-1"},{default:i(()=>[f(d(Ce(_e.msgtype)),1)]),_:2},1024))),128))])):_("",!0),s.error?(o(),u("div",Vs,d(s.error),1)):_("",!0)]),a("div",$s,[l(v,{size:"small",link:"",type:"primary",onClick:_e=>Ve(s)},{default:i(()=>[...e[24]||(e[24]=[f(" 送达详情 ",-1)])]),_:1},8,["onClick"])])])}),128))])),[[se,X.value]])]),_:1},8,["label"])]),_:1},8,["modelValue"])):(o(),u("div",Ds,[a("div",Ls,[e[25]||(e[25]=a("h4",null,"企业微信 IM",-1)),e[26]||(e[26]=a("p",null,"选择一个会话查看客户资料与群发任务",-1)),l(Re),e[27]||(e[27]=a("p",{class:"text-sm"}," · 实时消息依赖「会话内容存档」,由后台计划任务每 30 秒拉取一次。 ",-1)),e[28]||(e[28]=a("p",{class:"text-sm"}," · 发送使用「企业群发」能力,员工手机端确认后送达客户。 ",-1))])]))])]),l(Fe,{modelValue:Y.value,"onUpdate:modelValue":e[10]||(e[10]=s=>Y.value=s),title:"群发送达详情",width:"640px",top:"8vh"},{default:i(()=>{var s;return[w.value?le((o(),x(Ke,{key:0,data:w.value.detail_list,border:"",size:"small","max-height":"420"},{default:i(()=>[l(Q,{label:"外部客户",prop:"external_userid","min-width":"200"}),l(Q,{label:"员工",prop:"userid","min-width":"120"}),l(Q,{label:"状态",width:"120"},{default:i(({row:p})=>[l(q,{type:Le(p.status),size:"small"},{default:i(()=>[f(d(De(p.status)),1)]),_:2},1032,["type"])]),_:1}),l(Q,{label:"送达时间",width:"160"},{default:i(({row:p})=>[f(d(p.send_time?Z(p.send_time):"-"),1)]),_:1})]),_:1},8,["data"])),[[se,D.value]]):_("",!0),(s=w.value)!=null&&s.next_cursor?(o(),u("div",qs,[l(v,{link:"",type:"primary",onClick:$e},{default:i(()=>[...e[29]||(e[29]=[f(" 加载更多 ",-1)])]),_:1})])):_("",!0)]}),_:1},8,["modelValue"])])}}}),Sa=pt(As,[["__scopeId","data-v-6e4c9382"]]);export{Sa as default}; +import{K as Je,i as Oe,d as Ge,r as We,Q as je,q as Xe,P as Ye,C as Ze,H as et,L as tt,R as st,S as at,T as lt,l as nt,m as it,U as ot,M as rt,N as ut,V as dt}from"./element-plus-DFTWCWyi.js";import{w as ct}from"./@vue/runtime-dom-DDAG46FW.js";import{L as fe,M as mt,N as _t,J as ft}from"./@element-plus/icons-vue-HOEUG8sr.js";import{i as C,t as vt,_ as pt}from"./index--WnM67ZH.js";import{u as gt}from"./usePaging-VsbTxSU0.js";import yt from"./MessageBubble-CApbg15I.js";import{q as ht,S as kt,a as wt,b as bt,c as xt,d as St,e as ae,f as Tt,g as Mt,h as ve}from"./SendPanel-Dz5Tcn_r.js";import{f as zt,w as Et,b as Ct,ae as Vt,ak as o,I as u,G as x,H as _,J as a,a as l,aN as i,F as M,ap as B,O as f,aP as le,A as pe,n as ne}from"./@vue/runtime-core-C6bnekPw.js";import{y,n as m}from"./@vue/reactivity-DiY1c2vO.js";import{Q as d,o as $t}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./file-B0kKUfF_.js";const Dt={class:"qywx-im"},Lt={class:"im-layout"},qt={class:"col-session"},At={class:"col-header"},It={class:"col-actions"},Bt={class:"col-filters"},Ht={class:"staff-option"},Pt={class:"staff-userid"},Nt={class:"session-list"},Ut={key:0,class:"empty-tip"},Rt=["onClick"],Kt={class:"session-meta"},Ft={class:"session-top"},Qt={class:"session-name"},Jt={class:"session-time"},Ot={class:"session-bottom"},Gt={class:"session-preview"},Wt={key:0,class:"session-staff"},jt={key:1,class:"session-load-more"},Xt={class:"col-message"},Yt={key:0,class:"no-session"},Zt={class:"col-header"},es={class:"msg-header-title"},ts={class:"msg-customer-name"},ss={class:"msg-customer-sub"},as={class:"col-actions"},ls={key:0,class:"load-history"},ns={key:1,class:"load-history end-tip"},is={key:2,class:"empty-tip"},os={class:"col-profile"},rs={class:"profile-panel"},us={class:"profile-name"},ds={class:"profile-fields"},cs={class:"field"},ms={class:"value"},_s={class:"field"},fs=["title"],vs={key:0,class:"field"},ps={class:"value"},gs={key:1,class:"field"},ys={class:"value"},hs={class:"field"},ks={class:"value"},ws={class:"field"},bs={class:"value"},xs={class:"tasks-panel"},Ss={key:0,class:"empty-tip"},Ts={class:"task-top"},Ms={class:"task-time"},zs={class:"task-body"},Es={key:0,class:"task-text"},Cs={key:1,class:"task-attachments"},Vs={key:2,class:"task-error"},$s={class:"task-actions"},Ds={key:1,class:"no-session"},Ls={class:"tips"},qs={key:1,class:"mt-2 text-center"},As=zt({__name:"index",setup(Is){const z=m(null),J=m(!1),ge=pe(()=>{if(!z.value)return"";const t=z.value;return t.enabled?`会话存档 SDK 不可用:${t.error||"未知错误"}`:"「会话内容存档」未启用,实时消息不可用。请在后端 pay.php 中开启 msgaudit_enabled 并配置 SDK 动态库与 RSA 私钥。"});async function ye(){try{z.value=await wt()}catch{}}async function he(){J.value=!0;try{await bt(5,!0),C.msgSuccess("已触发一次拉取,稍后刷新可见"),await S(!0),n.value&&await j()}catch(t){C.msgError((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"拉取失败")}finally{J.value=!1}}const O=m([]);async function ke(){try{const t=await xt();O.value=Array.isArray(t)?t:(t==null?void 0:t.lists)||[]}catch{O.value=[]}}const E=m({staff_userid:"",keyword:"",only_unread:0}),G=m(!1);Et(G,t=>{E.value.only_unread=t?1:0});const{pager:g,getLists:W}=gt({fetchFun:ht,params:E.value,size:30});function S(t=!1){return t||(g.page=1),W()}async function we(){const t=[...g.lists||[]];g.page+=1;try{await W();const e=g.lists||[],r=new Set(t.map(v=>v.id)),c=[...t,...e.filter(v=>!r.has(v.id))];g.lists=c}catch{}}const n=m(null),h=m([]),H=m(!1),V=m(!1),$=m(!1),P=m(0),N=m(0),k=m(null),be=pe(()=>!!n.value&&n.value.session_type!==2);async function xe(t){var e;if(((e=n.value)==null?void 0:e.id)!==t.id){if(n.value=t,h.value=[],P.value=0,N.value=0,$.value=!1,await j(),await re(),t.unread_staff>0)try{await St(t.id),t.unread_staff=0}catch{}U.value="profile"}}async function j(){if(n.value){H.value=!0;try{const t=await ae({session_id:n.value.id,page_no:1,page_size:30}),e=(t==null?void 0:t.lists)||[];h.value=e,e.length&&(P.value=e[0].send_time,N.value=e[e.length-1].send_time),$.value=e.length>=30,await ne(),oe()}catch(t){C.msgError((t==null?void 0:t.msg)||(t==null?void 0:t.message)||"加载消息失败")}finally{H.value=!1}}}async function ie(){var e;if(!n.value||V.value)return;V.value=!0;const t=((e=k.value)==null?void 0:e.scrollHeight)||0;try{const r=await ae({session_id:n.value.id,page_no:1,page_size:30,before_time:P.value}),c=(r==null?void 0:r.lists)||[];c.length&&(P.value=c[0].send_time,h.value=[...c,...h.value]),$.value=c.length>=30,await ne(),k.value&&(k.value.scrollTop=k.value.scrollHeight-t)}finally{V.value=!1}}async function Se(){if(n.value)try{const t=await ae({session_id:n.value.id,page_no:1,page_size:50,after_time:N.value}),e=(t==null?void 0:t.lists)||[];if(!e.length)return;const r=new Set(h.value.map(T=>T.id)),c=e.filter(T=>!r.has(T.id));if(!c.length)return;h.value=[...h.value,...c],N.value=c[c.length-1].send_time;const v=k.value;(v?v.scrollHeight-v.scrollTop-v.clientHeight<120:!0)&&(await ne(),oe())}catch{}}function Te(){const t=k.value;t&&t.scrollTop<40&&$.value&&!V.value&&ie()}function oe(){k.value&&(k.value.scrollTop=k.value.scrollHeight)}async function Me(t){if(n.value)try{await Tt({sender_userid:n.value.staff_userid,external_userids:[n.value.external_userid],msg_payload:t,chat_type:"single"}),C.msgSuccess("已创建群发任务,员工手机确认后送达客户"),await re(),U.value="tasks"}catch(e){C.msgError((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"发送失败")}}const U=m("profile"),R=m([]),X=m(!1);async function re(){if(n.value){X.value=!0;try{const t=await Mt({sender_userid:n.value.staff_userid,page_no:1,page_size:50}),e=(t==null?void 0:t.lists)||[];R.value=e.filter(r=>(r.external_userids||[]).includes(n.value.external_userid))}finally{X.value=!1}}}function ze(t){return{0:"待提交",1:"已提交",2:"已送达",3:"失败"}[t]??`状态${t}`}function Ee(t){return{0:"info",1:"primary",2:"success",3:"danger"}[t]??"info"}function Ce(t){return{image:"图片",video:"视频",file:"文件",link:"链接",miniprogram:"小程序"}[t]||t}const Y=m(!1),D=m(!1),ue=m(0),w=m(null);async function Ve(t){ue.value=t.id,w.value={detail_list:[],next_cursor:""},Y.value=!0,D.value=!0;try{const e=await ve(t.id,"");w.value={detail_list:(e==null?void 0:e.detail_list)||[],next_cursor:(e==null?void 0:e.next_cursor)||"",task:e==null?void 0:e.task}}catch(e){C.msgError((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{D.value=!1}}async function $e(){var t;if((t=w.value)!=null&&t.next_cursor){D.value=!0;try{const e=await ve(ue.value,w.value.next_cursor);w.value={detail_list:[...w.value.detail_list,...(e==null?void 0:e.detail_list)||[]],next_cursor:(e==null?void 0:e.next_cursor)||"",task:e==null?void 0:e.task}}finally{D.value=!1}}}function De(t){switch(t){case 0:return"未发送";case 1:return"已送达";case 2:return"被拒收";case 3:return"已送达(未读)";default:return`状态${t}`}}function Le(t){return t===1?"success":t===2?"warning":t===3?"primary":"info"}function L(t){var e;return(e=t.customer)!=null&&e.name?t.customer.name:t.session_type===2?`群聊 ${t.roomid.slice(-6)}`:t.external_userid||"未命名客户"}function qe(t){const e=t.last_msg_summary||"",r=t.last_msg_type;return e||(r==="image"?"[图片]":r==="video"?"[视频]":r==="voice"?"[语音]":r==="file"?"[文件]":r==="link"?"[链接]":r==="weapp"?"[小程序]":r==="chatrecord"?"[聊天记录]":r?`[${r}]`:"暂无消息")}function Z(t){return t?vt(t*1e3,"yyyy-mm-dd hh:MM"):"-"}function Ae(t){if(!t)return"";const r=Math.floor(Date.now()/1e3)-t;if(r<60)return`${r}秒前`;if(r<3600)return`${Math.floor(r/60)}分前`;if(r<86400)return`${Math.floor(r/3600)}小时前`;const c=new Date(t*1e3);return`${c.getMonth()+1}-${c.getDate()}`}let ee=null,te=null;return Ct(async()=>{await Promise.all([ye(),ke()]),await S(),ee=window.setInterval(()=>{W({silent:!0}).catch(()=>{})},15e3),te=window.setInterval(()=>{Se()},8e3)}),Vt(()=>{ee&&window.clearInterval(ee),te&&window.clearInterval(te)}),(t,e)=>{var ce,me;const r=Je,c=Ge,v=Oe,K=We,T=Xe,Ie=je,Be=Ye,He=Ze,Pe=et,F=st,Ne=at,q=lt,de=nt,Ue=it,Re=ot,Q=ut,Ke=rt,Fe=dt,se=tt;return o(),u("div",Dt,[z.value&&!z.value.available?(o(),x(r,{key:0,title:ge.value,type:"warning",closable:!1,"show-icon":"",class:"archive-warning"},null,8,["title"])):_("",!0),a("div",Lt,[a("section",qt,[a("header",At,[e[11]||(e[11]=a("div",{class:"col-title"},"会话",-1)),a("div",It,[l(K,{content:"刷新"},{default:i(()=>[l(v,{size:"small",link:"",loading:y(g).loading,onClick:e[0]||(e[0]=s=>S(!0))},{default:i(()=>[l(c,null,{default:i(()=>[l(y(fe))]),_:1})]),_:1},8,["loading"])]),_:1}),l(K,{content:"手动拉一次存档"},{default:i(()=>{var s;return[l(v,{size:"small",link:"",disabled:!((s=z.value)!=null&&s.available),loading:J.value,onClick:he},{default:i(()=>[l(c,null,{default:i(()=>[l(y(mt))]),_:1})]),_:1},8,["disabled","loading"])]}),_:1})])]),a("div",Bt,[l(Be,{modelValue:E.value.staff_userid,"onUpdate:modelValue":e[1]||(e[1]=s=>E.value.staff_userid=s),placeholder:"全部员工",clearable:"",filterable:"",size:"default",style:{width:"100%"},onChange:e[2]||(e[2]=s=>S())},{default:i(()=>[(o(!0),u(M,null,B(O.value,s=>(o(),x(Ie,{key:s.userid,label:(s.name||s.userid)+"("+s.userid+")",value:s.userid},{default:i(()=>[a("div",Ht,[l(T,{size:20,src:s.avatar},{default:i(()=>[f(d((s.name||"").slice(-2)),1)]),_:2},1032,["src"]),a("span",null,d(s.name),1),a("span",Pt,d(s.userid),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue"]),l(He,{modelValue:E.value.keyword,"onUpdate:modelValue":e[3]||(e[3]=s=>E.value.keyword=s),placeholder:"搜索客户或消息",clearable:"",size:"default",onKeyup:e[4]||(e[4]=ct(s=>S(),["enter"])),onClear:e[5]||(e[5]=s=>S())},{prefix:i(()=>[l(c,null,{default:i(()=>[l(y(_t))]),_:1})]),_:1},8,["modelValue"]),l(Pe,{modelValue:G.value,"onUpdate:modelValue":e[6]||(e[6]=s=>G.value=s),onChange:e[7]||(e[7]=s=>S())},{default:i(()=>[...e[12]||(e[12]=[f(" 仅未读 ",-1)])]),_:1},8,["modelValue"])]),le((o(),u("div",Nt,[!y(g).lists.length&&!y(g).loading?(o(),u("div",Ut,[l(F,{description:"暂无会话","image-size":80})])):_("",!0),(o(!0),u(M,null,B(y(g).lists,s=>{var p;return o(),u("div",{key:s.id,class:$t(["session-item",{active:((p=n.value)==null?void 0:p.id)===s.id}]),onClick:b=>xe(s)},[l(Ne,{value:s.unread_staff,hidden:!s.unread_staff,max:99},{default:i(()=>{var b;return[l(T,{size:42,src:((b=s.customer)==null?void 0:b.avatar)||""},{default:i(()=>[f(d(L(s).slice(-2)),1)]),_:2},1032,["src"])]}),_:2},1032,["value","hidden"]),a("div",Kt,[a("div",Ft,[a("span",Qt,d(L(s)),1),a("span",Jt,d(Ae(s.last_msg_time)),1)]),a("div",Ot,[a("span",Gt,d(qe(s)),1),s.session_type===2?(o(),x(q,{key:0,size:"small",type:"info",class:"session-tag"},{default:i(()=>[...e[13]||(e[13]=[f(" 群 ",-1)])]),_:1})):_("",!0)]),s.staff?(o(),u("div",Wt," 员工: "+d(s.staff.name||s.staff_userid),1)):_("",!0)])],10,Rt)}),128)),y(g).lists.length[...e[14]||(e[14]=[f(" 加载更多 ",-1)])]),_:1})])):_("",!0)])),[[se,y(g).loading]])]),a("section",Xt,[n.value?(o(),u(M,{key:1},[a("header",Zt,[a("div",es,[a("div",ts,d(L(n.value)),1),a("div",ss,[(ce=n.value.customer)!=null&&ce.corp_name?(o(),u(M,{key:0},[f(d(n.value.customer.corp_name)+" · ",1)],64)):_("",!0),f(" 代发员工: "+d(((me=n.value.staff)==null?void 0:me.name)||n.value.staff_userid)+" ",1),n.value.session_type===2?(o(),x(q,{key:1,size:"small",type:"info",class:"ml-1"},{default:i(()=>[...e[15]||(e[15]=[f(" 群聊 ",-1)])]),_:1})):_("",!0)])]),a("div",as,[l(K,{content:"刷新消息"},{default:i(()=>[l(v,{link:"",size:"small",loading:H.value,onClick:e[8]||(e[8]=s=>j())},{default:i(()=>[l(c,null,{default:i(()=>[l(y(fe))]),_:1})]),_:1},8,["loading"])]),_:1})])]),a("div",{ref_key:"messageListRef",ref:k,class:"message-list",onScroll:Te},[$.value?(o(),u("div",ls,[l(v,{link:"",type:"primary",loading:V.value,onClick:ie},{default:i(()=>[...e[16]||(e[16]=[f(" 加载更早的消息 ",-1)])]),_:1},8,["loading"])])):h.value.length?(o(),u("div",ns," —— 没有更早的消息了 —— ")):_("",!0),!h.value.length&&!H.value?(o(),u("div",is,[l(F,{description:"暂无消息","image-size":80})])):_("",!0),(o(!0),u(M,null,B(h.value,s=>(o(),x(yt,{key:s.id,message:s},null,8,["message"]))),128))],544),l(kt,{"can-send-message":be.value,onSend:Me},null,8,["can-send-message"])],64)):(o(),u("div",Yt,[l(F,{description:"选择左侧会话查看消息"},{image:i(()=>[l(c,{size:60,color:"#ccc"},{default:i(()=>[l(y(ft))]),_:1})]),_:1})]))]),a("section",os,[n.value?(o(),x(Ue,{key:0,modelValue:U.value,"onUpdate:modelValue":e[9]||(e[9]=s=>U.value=s),class:"profile-tabs"},{default:i(()=>[l(de,{label:"客户资料",name:"profile"},{default:i(()=>{var s,p,b,A,I;return[a("div",rs,[l(T,{size:72,src:((s=n.value.customer)==null?void 0:s.avatar)||""},{default:i(()=>[f(d(L(n.value).slice(-2)),1)]),_:1},8,["src"]),a("div",us,d(L(n.value)),1),a("div",ds,[a("div",cs,[e[17]||(e[17]=a("span",{class:"label"},"客户类型",-1)),a("span",ms,d(((p=n.value.customer)==null?void 0:p.type)===2?"@微信":"@企业微信"),1)]),a("div",_s,[e[18]||(e[18]=a("span",{class:"label"},"外部 ID",-1)),a("span",{class:"value ellipsis",title:n.value.external_userid},d(n.value.external_userid||"-"),9,fs)]),(b=n.value.customer)!=null&&b.corp_name?(o(),u("div",vs,[e[19]||(e[19]=a("span",{class:"label"},"所属企业",-1)),a("span",ps,d(n.value.customer.corp_name),1)])):_("",!0),(A=n.value.customer)!=null&&A.gender?(o(),u("div",gs,[e[20]||(e[20]=a("span",{class:"label"},"性别",-1)),a("span",ys,d(n.value.customer.gender===1?"男":n.value.customer.gender===2?"女":"未知"),1)])):_("",!0),a("div",hs,[e[21]||(e[21]=a("span",{class:"label"},"代发员工",-1)),a("span",ks,d(((I=n.value.staff)==null?void 0:I.name)||n.value.staff_userid),1)]),a("div",ws,[e[22]||(e[22]=a("span",{class:"label"},"最近消息",-1)),a("span",bs,d(Z(n.value.last_msg_time)),1)])])])]}),_:1}),l(de,{label:`发送任务(${R.value.length})`,name:"tasks"},{default:i(()=>[le((o(),u("div",xs,[R.value.length?_("",!0):(o(),u("div",Ss,[l(F,{description:"暂无任务","image-size":80})])),(o(!0),u(M,null,B(R.value,s=>{var p,b,A,I;return o(),u("div",{key:s.id,class:"task-item"},[a("div",Ts,[l(q,{type:Ee(s.status),size:"small"},{default:i(()=>[f(d(ze(s.status)),1)]),_:2},1032,["type"]),a("span",Ms,d(Z(s.create_time)),1)]),a("div",zs,[(b=(p=s.msg_payload)==null?void 0:p.text)!=null&&b.content?(o(),u("div",Es,d(s.msg_payload.text.content),1)):_("",!0),(I=(A=s.msg_payload)==null?void 0:A.attachments)!=null&&I.length?(o(),u("div",Cs,[e[23]||(e[23]=f(" 附件: ",-1)),(o(!0),u(M,null,B(s.msg_payload.attachments,(_e,Qe)=>(o(),x(q,{key:Qe,size:"small",type:"info",class:"mr-1"},{default:i(()=>[f(d(Ce(_e.msgtype)),1)]),_:2},1024))),128))])):_("",!0),s.error?(o(),u("div",Vs,d(s.error),1)):_("",!0)]),a("div",$s,[l(v,{size:"small",link:"",type:"primary",onClick:_e=>Ve(s)},{default:i(()=>[...e[24]||(e[24]=[f(" 送达详情 ",-1)])]),_:1},8,["onClick"])])])}),128))])),[[se,X.value]])]),_:1},8,["label"])]),_:1},8,["modelValue"])):(o(),u("div",Ds,[a("div",Ls,[e[25]||(e[25]=a("h4",null,"企业微信 IM",-1)),e[26]||(e[26]=a("p",null,"选择一个会话查看客户资料与群发任务",-1)),l(Re),e[27]||(e[27]=a("p",{class:"text-sm"}," · 实时消息依赖「会话内容存档」,由后台计划任务每 30 秒拉取一次。 ",-1)),e[28]||(e[28]=a("p",{class:"text-sm"}," · 发送使用「企业群发」能力,员工手机端确认后送达客户。 ",-1))])]))])]),l(Fe,{modelValue:Y.value,"onUpdate:modelValue":e[10]||(e[10]=s=>Y.value=s),title:"群发送达详情",width:"640px",top:"8vh"},{default:i(()=>{var s;return[w.value?le((o(),x(Ke,{key:0,data:w.value.detail_list,border:"",size:"small","max-height":"420"},{default:i(()=>[l(Q,{label:"外部客户",prop:"external_userid","min-width":"200"}),l(Q,{label:"员工",prop:"userid","min-width":"120"}),l(Q,{label:"状态",width:"120"},{default:i(({row:p})=>[l(q,{type:Le(p.status),size:"small"},{default:i(()=>[f(d(De(p.status)),1)]),_:2},1032,["type"])]),_:1}),l(Q,{label:"送达时间",width:"160"},{default:i(({row:p})=>[f(d(p.send_time?Z(p.send_time):"-"),1)]),_:1})]),_:1},8,["data"])),[[se,D.value]]):_("",!0),(s=w.value)!=null&&s.next_cursor?(o(),u("div",qs,[l(v,{link:"",type:"primary",onClick:$e},{default:i(()=>[...e[29]||(e[29]=[f(" 加载更多 ",-1)])]),_:1})])):_("",!0)]}),_:1},8,["modelValue"])])}}}),Sa=pt(As,[["__scopeId","data-v-6e4c9382"]]);export{Sa as default}; diff --git a/server/public/admin/assets/index-nT7Z051Q.js b/server/public/admin/assets/index-C3w0jYsZ.js similarity index 90% rename from server/public/admin/assets/index-nT7Z051Q.js rename to server/public/admin/assets/index-C3w0jYsZ.js index a7d1059e..6f813001 100644 --- a/server/public/admin/assets/index-nT7Z051Q.js +++ b/server/public/admin/assets/index-C3w0jYsZ.js @@ -1 +1 @@ -import{D as T,B as j,C as q,i as z,J as A,L as J,M,N as G,q as H,g as O}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as W,i as X,_ as Y}from"./index-Nt5zMHcc.js";import{w as k}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Z,b as ee,c as te}from"./admin-BAFPFiwc.js";import{u as oe}from"./usePaging-VsbTxSU0.js";import ae from"./edit-3qCytcox.js";import{f as x,b as ie,as as ne,ak as m,I as le,a as e,aN as a,O as _,aP as f,G as s,J as V,H as me,n as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as re,q as se,r as pe,n as de}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-CSUh_x-a.js";import"./post-CjhbCF7F.js";import"./useDictOptions-CT8hbU1b.js";const ce={class:"doctor-list"},ue={class:"mt-4"},_e={class:"flex mt-4 justify-end"},fe=x({name:"doctorList"}),be=x({...fe,setup(ve){const b=se(),r=pe({account:"",name:"",role_id:2,apply_data_scope:1}),v=de(!1),{pager:p,getLists:d,resetParams:D,resetPage:h}=oe({fetchFun:Z,params:r}),P=o=>{ee({id:o.id,avatar:o.avatar,account:o.account,name:o.name,role_id:o.role_id,jobs_id:o.jobs_id,dept_id:o.dept_id,disable:o.disable,multipoint_login:o.multipoint_login}).finally(()=>{d()})},B=async()=>{var o;v.value=!0,await E(),(o=b.value)==null||o.open("add")},I=async o=>{var t,c;v.value=!0,await E(),(t=b.value)==null||t.open("edit"),(c=b.value)==null||c.setFormData(o)},N=async o=>{await X.confirm("确定要删除该医助吗?"),await te({id:o}),d()};return ie(()=>{d()}),(o,t)=>{const c=q,y=j,u=z,$=T,C=A,K=W,l=G,L=H,U=O,F=M,R=Q,w=ne("perms"),S=J;return m(),le("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e($,{class:"mb-[-16px]",model:n(r),inline:""},{default:a(()=>[e(y,{class:"w-[280px]",label:"医助账号"},{default:a(()=>[e(c,{modelValue:n(r).account,"onUpdate:modelValue":t[0]||(t[0]=i=>n(r).account=i),placeholder:"请输入医助账号",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医助名称"},{default:a(()=>[e(c,{modelValue:n(r).name,"onUpdate:modelValue":t[1]||(t[1]=i=>n(r).name=i),placeholder:"请输入医助名称",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:a(()=>[e(u,{type:"primary",onClick:n(h)},{default:a(()=>[...t[4]||(t[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:a(()=>[...t[5]||(t[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((m(),s(C,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[f((m(),s(u,{type:"primary",onClick:B},{icon:a(()=>[e(K,{name:"el-icon-Plus"})]),default:a(()=>[t[6]||(t[6]=_(" 新增医助 ",-1))]),_:1})),[[w,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(p).lists,size:"large"},{default:a(()=>[e(l,{label:"ID",prop:"id","min-width":"60"}),e(l,{label:"头像","min-width":"100"},{default:a(({row:i})=>[e(L,{size:50,src:i.avatar},null,8,["src"])]),_:1}),e(l,{label:"账号",prop:"account","min-width":"120"}),e(l,{label:"姓名",prop:"name","min-width":"100"}),e(l,{label:"手机号",prop:"phone","min-width":"120"}),e(l,{label:"创建时间",prop:"create_time","min-width":"180"}),e(l,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(l,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((m(),s(l,{label:"状态","min-width":"100"},{default:a(({row:i})=>[e(U,{modelValue:i.disable,"onUpdate:modelValue":g=>i.disable=g,"active-value":0,"inactive-value":1,onChange:g=>P(i)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[w,["auth.admin/edit"]]]),e(l,{label:"操作",width:"120",fixed:"right"},{default:a(({row:i})=>[f((m(),s(u,{type:"primary",link:"",onClick:g=>I(i)},{default:a(()=>[...t[7]||(t[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/edit"]]]),f((m(),s(u,{type:"danger",link:"",onClick:g=>N(i.id)},{default:a(()=>[...t[8]||(t[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(R,{modelValue:n(p),"onUpdate:modelValue":t[2]||(t[2]=i=>re(p)?p.value=i:null),onChange:n(d)},null,8,["modelValue","onChange"])])]),_:1})),[[S,n(p).loading]]),n(v)?(m(),s(ae,{key:0,ref_key:"editRef",ref:b,onSuccess:n(d),onClose:t[3]||(t[3]=i=>v.value=!1)},null,8,["onSuccess"])):me("",!0)])}}}),yt=Y(be,[["__scopeId","data-v-64b2cdbe"]]);export{yt as default}; +import{D as T,B as j,C as q,i as z,J as A,L as J,M,N as G,q as H,g as O}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as W,i as X,_ as Y}from"./index--WnM67ZH.js";import{w as k}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Z,b as ee,c as te}from"./admin-CGNFdyXh.js";import{u as oe}from"./usePaging-VsbTxSU0.js";import ae from"./edit-BS5dUZ6W.js";import{f as x,b as ie,as as ne,ak as m,I as le,a as e,aN as a,O as _,aP as f,G as s,J as V,H as me,n as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as re,q as se,r as pe,n as de}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-D5OVad_r.js";import"./post-D694zeqo.js";import"./useDictOptions-lSbSoycG.js";const ce={class:"doctor-list"},ue={class:"mt-4"},_e={class:"flex mt-4 justify-end"},fe=x({name:"doctorList"}),be=x({...fe,setup(ve){const b=se(),r=pe({account:"",name:"",role_id:2,apply_data_scope:1}),v=de(!1),{pager:p,getLists:d,resetParams:D,resetPage:h}=oe({fetchFun:Z,params:r}),P=o=>{ee({id:o.id,avatar:o.avatar,account:o.account,name:o.name,role_id:o.role_id,jobs_id:o.jobs_id,dept_id:o.dept_id,disable:o.disable,multipoint_login:o.multipoint_login}).finally(()=>{d()})},B=async()=>{var o;v.value=!0,await E(),(o=b.value)==null||o.open("add")},I=async o=>{var t,c;v.value=!0,await E(),(t=b.value)==null||t.open("edit"),(c=b.value)==null||c.setFormData(o)},N=async o=>{await X.confirm("确定要删除该医助吗?"),await te({id:o}),d()};return ie(()=>{d()}),(o,t)=>{const c=q,y=j,u=z,$=T,C=A,K=W,l=G,L=H,U=O,F=M,R=Q,w=ne("perms"),S=J;return m(),le("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e($,{class:"mb-[-16px]",model:n(r),inline:""},{default:a(()=>[e(y,{class:"w-[280px]",label:"医助账号"},{default:a(()=>[e(c,{modelValue:n(r).account,"onUpdate:modelValue":t[0]||(t[0]=i=>n(r).account=i),placeholder:"请输入医助账号",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医助名称"},{default:a(()=>[e(c,{modelValue:n(r).name,"onUpdate:modelValue":t[1]||(t[1]=i=>n(r).name=i),placeholder:"请输入医助名称",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:a(()=>[e(u,{type:"primary",onClick:n(h)},{default:a(()=>[...t[4]||(t[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:a(()=>[...t[5]||(t[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((m(),s(C,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[f((m(),s(u,{type:"primary",onClick:B},{icon:a(()=>[e(K,{name:"el-icon-Plus"})]),default:a(()=>[t[6]||(t[6]=_(" 新增医助 ",-1))]),_:1})),[[w,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(p).lists,size:"large"},{default:a(()=>[e(l,{label:"ID",prop:"id","min-width":"60"}),e(l,{label:"头像","min-width":"100"},{default:a(({row:i})=>[e(L,{size:50,src:i.avatar},null,8,["src"])]),_:1}),e(l,{label:"账号",prop:"account","min-width":"120"}),e(l,{label:"姓名",prop:"name","min-width":"100"}),e(l,{label:"手机号",prop:"phone","min-width":"120"}),e(l,{label:"创建时间",prop:"create_time","min-width":"180"}),e(l,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(l,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((m(),s(l,{label:"状态","min-width":"100"},{default:a(({row:i})=>[e(U,{modelValue:i.disable,"onUpdate:modelValue":g=>i.disable=g,"active-value":0,"inactive-value":1,onChange:g=>P(i)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[w,["auth.admin/edit"]]]),e(l,{label:"操作",width:"120",fixed:"right"},{default:a(({row:i})=>[f((m(),s(u,{type:"primary",link:"",onClick:g=>I(i)},{default:a(()=>[...t[7]||(t[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/edit"]]]),f((m(),s(u,{type:"danger",link:"",onClick:g=>N(i.id)},{default:a(()=>[...t[8]||(t[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(R,{modelValue:n(p),"onUpdate:modelValue":t[2]||(t[2]=i=>re(p)?p.value=i:null),onChange:n(d)},null,8,["modelValue","onChange"])])]),_:1})),[[S,n(p).loading]]),n(v)?(m(),s(ae,{key:0,ref_key:"editRef",ref:b,onSuccess:n(d),onClose:t[3]||(t[3]=i=>v.value=!1)},null,8,["onSuccess"])):me("",!0)])}}}),yt=Y(be,[["__scopeId","data-v-64b2cdbe"]]);export{yt as default}; diff --git a/server/public/admin/assets/index-5vSbbrqK.js b/server/public/admin/assets/index-C5tKSXIA.js similarity index 99% rename from server/public/admin/assets/index-5vSbbrqK.js rename to server/public/admin/assets/index-C5tKSXIA.js index 4c4bfcf9..3f48c352 100644 --- a/server/public/admin/assets/index-5vSbbrqK.js +++ b/server/public/admin/assets/index-C5tKSXIA.js @@ -1,4 +1,4 @@ -import{e as xs,i as hs,D as ks,a4 as Vs,a5 as ws,B as Ss,C as Ns,h as Us,T as Cs,P as $s,Q as Ds,G as Rs,I as Ps,g as Ts,d as Is,r as Es,V as Os,L as As,N as zs,M as Hs,X as Ls}from"./element-plus-DFTWCWyi.js";import{s as le,w as Ms}from"./@vue/runtime-dom-DDAG46FW.js";import{M as xt}from"./index-afeGV-gc.js";import{u as Ws,e as Fs,i as V,m as C,_ as js}from"./index-Nt5zMHcc.js";import{f as Bs}from"./diabetes-discovery-display-B_wmGXQJ.js";import{Z as Gs,c as ge,_ as ht,h as Ks,i as qs,ai as Js}from"./tcm-DCW3HTOw.js";import{m as Ys}from"./medicine-D4btWglq.js";import kt from"./html2canvas-QH1iLAAe.js";import{E as Xs}from"./jspdf-BsthCvR5.js";import{aa as Qs,a2 as Zs,U as ea,M as ta,G as sa,N as aa}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as la,w as Vt,ak as f,I as y,F as T,a as o,M as oa,aN as i,J as l,O as _,ap as j,H as k,G as U,aP as na,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as I,n as x,r as wt}from"./@vue/reactivity-DiY1c2vO.js";import{Q as p,o as St}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";const ra={key:0,class:"prescription-edit"},ia={class:"info-section"},da={class:"info-section"},ua={class:"info-section info-section--rp"},ca={class:"rp-toolbar",role:"region","aria-label":"中药处方"},pa={class:"rp-toolbar__lead"},_a={class:"rp-toolbar__text"},ma={class:"rp-toolbar__meta"},ga={class:"rp-toolbar__actions",role:"toolbar","aria-label":"处方药材快捷操作"},fa={class:"mb-3"},ba={class:"herb-formula-block"},va={class:"herb-formula-block__head"},ya={class:"herbs-editor-grid"},xa={class:"herb-editor-card__title"},ha={key:0,class:"herb-editor-card__dup-hint text-amber-600 text-xs mb-1"},ka={class:"herb-editor-card__row"},Va={class:"herb-formula-block mt-4"},wa={class:"herb-formula-block__head"},Sa={class:"herbs-editor-grid"},Na={key:0,class:"herb-editor-card__dup-hint text-amber-600 text-xs mb-1"},Ua={class:"herb-editor-card__row"},Ca={key:0,class:"text-sm text-gray-400 py-2"},$a={class:"info-section"},Da={key:3,class:"ml-2"},Ra={class:"signature-pad-wrap"},Pa={class:"signature-actions"},Ta={key:1,class:"rx-wrap"},Ia={class:"rx-toolbar"},Ea={key:0,class:"rx-status rx-status-danger"},Oa={key:1,class:"rx-status rx-status-danger"},Aa={key:0,class:"mt-1"},za={class:"prescription-preview-content"},Ha={class:"rx-notice"},La={class:"rx-notice-meta"},Ma={class:"rx-info"},Wa={class:"rx-info-row"},Fa={class:"rx-info-cell"},ja={class:"rx-val"},Ba={class:"rx-info-cell"},Ga={class:"rx-val"},Ka={class:"rx-info-cell"},qa={class:"rx-val"},Ja={class:"rx-info-cell"},Ya={class:"rx-val"},Xa={class:"rx-info-row rx-info-row-full"},Qa={class:"rx-info-cell"},Za={class:"rx-val"},el={key:0,class:"rx-info-row rx-info-row-full"},tl={key:0,class:"rx-info-cell"},sl={class:"rx-val"},al={key:1,class:"rx-info-cell"},ll={class:"rx-val"},ol={class:"rx-info-row rx-info-row-full"},nl={class:"rx-info-cell"},rl={class:"rx-val"},il={class:"rx-rp"},dl={class:"rx-herbs"},ul={class:"rx-herb-name"},cl={class:"rx-herb-total"},pl={class:"rx-herb-name"},_l={class:"rx-herb-total"},ml={class:"rx-text"},gl={key:0},fl={key:1},bl={key:2},vl={key:3},yl={key:4,class:"rx-text-warn"},xl={key:5,class:"rx-text-warn"},hl={class:"rx-bottom"},kl={class:"rx-bot-row rx-bot-row-1"},Vl={class:"rx-bot-cell rx-bot-stack rx-bot-doctor"},wl={class:"rx-bot-doctor-body"},Sl=["src"],Nl={class:"rx-bot-doctor-name"},Ul={class:"rx-bot-cell rx-bot-meta"},Cl={class:"rx-bot-meta-val"},$l={class:"rx-bot-cell rx-bot-meta"},Dl={class:"rx-bot-meta-val"},Rl={class:"rx-bot-cell rx-bot-meta"},Pl={class:"rx-bot-meta-val"},Tl={class:"case-record-a3-inner"},Il={class:"case-record-a3-title"},El={class:"case-record-a3-body"},Ol={class:"cr-section"},Al={class:"cr-grid"},zl={class:"cr-item"},Hl={class:"cr-item"},Ll={class:"cr-item"},Ml={class:"cr-item"},Wl={class:"cr-item"},Fl={class:"cr-item"},jl={class:"cr-item"},Bl={class:"cr-item"},Gl={class:"cr-item"},Kl={class:"cr-item"},ql={class:"cr-section"},Jl={class:"cr-grid"},Yl={class:"cr-item"},Xl={class:"cr-item"},Ql={class:"cr-section"},Zl={class:"cr-grid"},eo={class:"cr-item"},to={class:"cr-item"},so={class:"cr-item"},ao={class:"cr-item"},lo={class:"cr-item"},oo={class:"cr-item cr-full"},no={class:"cr-item cr-full"},ro={class:"cr-section"},io={class:"cr-grid"},uo={class:"cr-item cr-full"},co={class:"cr-item cr-full"},po={class:"cr-item cr-full"},_o={class:"cr-item cr-full"},mo={class:"cr-item cr-full"},go={class:"cr-item cr-full"},fo={class:"cr-item cr-full"},bo={class:"cr-item cr-full"},vo={class:"cr-item cr-full"},yo={class:"cr-item cr-full"},xo={class:"cr-item cr-full"},ho={class:"cr-item cr-full"},ko={class:"cr-item cr-full"},Vo={class:"cr-item cr-full"},wo={class:"cr-item cr-full"},So={class:"cr-section"},No={class:"cr-item cr-full"},Uo={class:"cr-section"},Co={class:"cr-grid"},$o={class:"cr-item"},Do={class:"cr-item"},Ro={class:"cr-item"},Po={class:"cr-item"},To={class:"cr-item"},Io={class:"cr-section"},Eo={key:0,class:"cr-grid"},Oo={class:"cr-item cr-full"},Ao={class:"cr-images"},zo=["src"],Ho={class:"cr-grid"},Lo={class:"cr-item cr-full"},Mo={key:2,class:"rx-audit"},Wo={key:0},Fo={key:0,class:"ml-2 text-gray-400"},jo={key:1,class:"mt-1"},Bo={class:"flex justify-end gap-2 mt-4"},Go={class:"inline-block"},Ko={class:"flex justify-end gap-2"},qo={class:"mb-4 flex gap-3"},Jo={class:"mb-3 flex flex-wrap items-center gap-x-4 gap-y-2"},Yo={key:0},Xo={key:1,class:"text-gray-400"},Qo={class:"flex justify-end mt-4"},Zo={class:"mt-3 flex flex-wrap items-center gap-x-4 gap-y-2"},oe=560,ne=168,en=la({__name:"index",emits:["success"],setup(tn,{expose:Nt,emit:Ut}){function O(t){return t==="辅方"?"辅方":"主方"}function Te(t){return{name:String((t==null?void 0:t.name)??"").trim(),dosage:Number(t==null?void 0:t.dosage)||0,formula_type:O(t==null?void 0:t.formula_type)}}function X(t="浓缩水丸"){return t==="饮片"?{dosage_amount:50,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:t==="浓缩水丸"?{dosage_amount:5,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:{dosage_amount:1,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}}function Ct(t,e){const n=X(e);if(!t||typeof t!="object")return{...n};const r=t;return{dosage_amount:r.dosage_amount!==null&&r.dosage_amount!==void 0&&r.dosage_amount!==""?Number(r.dosage_amount):n.dosage_amount,dosage_bag_count:r.dosage_bag_count!=null?Number(r.dosage_bag_count)||1:n.dosage_bag_count,need_decoction:r.need_decoction===1||r.need_decoction===!0,bags_per_dose:r.bags_per_dose!=null?Number(r.bags_per_dose)||1:n.bags_per_dose,times_per_day:r.times_per_day!=null?Number(r.times_per_day)||3:n.times_per_day,usage_days:r.usage_days!=null?Number(r.usage_days)||7:n.usage_days}}function Ie(t,e,n){const r=t.prescription_type||"浓缩水丸",m=Number(t.times_per_day)>0?Number(t.times_per_day):3,b=t.dosage_amount!=null?Number(t.dosage_amount):10,g=t.dosage_unit||(r==="饮片"?"ml":"g"),v=t.usage_way||e||"温水送服",w=t.usage_time||n||"",u=[];if(u.push(`每天${m}次`),r==="浓缩水丸"){const N=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;u.push(`一次${N}袋`),u.push(`每袋${b}${g}`)}else u.push(`一次${b}${g}`);return u.push(v),w&&u.push(w),u.join(", ")}const Ee=Ut,z=x(!1),$t=x(),fe=x(!1),be=x(!1),Oe=x(),Ae=x(),H=x(),re=x(null),d=x(null),ie=S(()=>{const t=d.value;return t?Number(t.audit_status)===1&&Number(t.void_status)!==1:!1}),ze=S(()=>{const t=d.value;return t?Number(t.has_prescription_order)===1:!1}),Dt=S(()=>ie.value?"查看处方":"中医处方单"),He=S(()=>{var e;const t=(e=d.value)==null?void 0:e.herbs;return Array.isArray(t)?t.filter(n=>O(n==null?void 0:n.formula_type)==="主方"):[]}),ve=S(()=>{var e;const t=(e=d.value)==null?void 0:e.herbs;return Array.isArray(t)?t.filter(n=>O(n==null?void 0:n.formula_type)==="辅方"):[]}),Le=S(()=>{const t=d.value;if(!t||!ve.value.length)return"";const e=Ct(t.aux_usage,t.prescription_type||"浓缩水丸");return Ie({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),ye=S(()=>{var e;const t=(e=d.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),de=t=>String(t).padStart(2,"0"),Rt=S(()=>{const t=d.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const n=String(e).length===10?Number(e)*1e3:Number(e),r=new Date(n);if(!isNaN(r.getTime()))return`${r.getFullYear()}-${de(r.getMonth()+1)}-${de(r.getDate())} ${de(r.getHours())}:${de(r.getMinutes())}`}return t.prescription_date||"—"}),Pt=S(()=>{const t=d.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const n=String(t.visit_no??"").trim();return n||(t.id?`G${t.id}`:"—")}),Me=S(()=>{var e;const t=Number((e=d.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Tt=S(()=>{const t=ye.value.reduce((e,n)=>e+(Number(n==null?void 0:n.dosage)||0),0);return Q(t)}),We=t=>{const e=Number(t)||0;return Q(e*Me.value)},It=S(()=>{const t=d.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return e==="饮片"?"饮片":/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),Et=S(()=>{const t=d.value;return t?t.usage_text?t.usage_text:Ie(t):"—"}),Fe=S(()=>{const t=d.value;return t&&t.medical_advice||""}),je=S(()=>{const t=d.value;if(!t)return"";const e=[];return e.push(`共${ye.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Be=S(()=>{const t=d.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),Ge=S(()=>{const t=d.value;if(!t)return"";const e=Ot(t);return e?`${e}克`:""});function Ot(t){if(!t)return"";if((t.prescription_type||"浓缩水丸")==="浓缩水丸"){const m=Number(t.usage_days??t.dose_count),b=Number(t.times_per_day),g=Number(t.dosage_amount),v=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;if(Number.isFinite(m)&&Number.isFinite(b)&&Number.isFinite(g)&&m>0&&b>0&&g>0)return Q(m*b*g*v)}const e=t.out_pellet||t.total_weight;if(e&&Number(e)>0)return Q(Number(e));const n=ye.value;if(!n.length)return"";const r=n.reduce((m,b)=>m+(Number(b==null?void 0:b.dosage)||0),0);return Q(r*Me.value)}function Q(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function At(t){var e;return t===1||t==="1"?"男":t===0||t==="0"?"女":((e=d.value)==null?void 0:e.gender_desc)||"—"}function zt(t){return t==null||t===""?"—":`${t}岁`}function Ht(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}const Ke=S(()=>a.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>O(t.formula_type)==="主方")),Z=S(()=>a.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>O(t.formula_type)==="辅方")),Lt=S(()=>Ke.value.length),Mt=S(()=>Z.value.length),xe=S(()=>{var e;const t=Number((e=Ne.userInfo)==null?void 0:e.id);return t>0?t:0}),L=x(!1),he=x(!1),ke=x([]),ee=x(""),te=x(""),B=x("replace"),G=x(!1),K=x(1),ue=x(15),Ve=x(0),q=x(!1),J=x(""),ce=x("replace"),we=x(!1),Wt=/^(用法|用量|医嘱|忌口|水煎服|空腹|饭后|温水|内服|外用|备注|顿服|分服|ml|毫升|[×xX]\s*\d)/;function Ft(t){let e=t.replace(/\r\n/g,` +import{e as xs,i as hs,D as ks,a4 as Vs,a5 as ws,B as Ss,C as Ns,h as Us,T as Cs,P as $s,Q as Ds,G as Rs,I as Ps,g as Ts,d as Is,r as Es,V as Os,L as As,N as zs,M as Hs,X as Ls}from"./element-plus-DFTWCWyi.js";import{s as le,w as Ms}from"./@vue/runtime-dom-DDAG46FW.js";import{M as xt}from"./index-DgkrquIz.js";import{u as Ws,e as Fs,i as V,m as C,_ as js}from"./index--WnM67ZH.js";import{f as Bs}from"./diabetes-discovery-display-B_wmGXQJ.js";import{Z as Gs,c as ge,_ as ht,h as Ks,i as qs,ai as Js}from"./tcm-DzAQc_oE.js";import{m as Ys}from"./medicine-KRcHi5G1.js";import kt from"./html2canvas-QH1iLAAe.js";import{E as Xs}from"./jspdf-BsthCvR5.js";import{aa as Qs,a2 as Zs,U as ea,M as ta,G as sa,N as aa}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as la,w as Vt,ak as f,I as y,F as T,a as o,M as oa,aN as i,J as l,O as _,ap as j,H as k,G as U,aP as na,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as I,n as x,r as wt}from"./@vue/reactivity-DiY1c2vO.js";import{Q as p,o as St}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";const ra={key:0,class:"prescription-edit"},ia={class:"info-section"},da={class:"info-section"},ua={class:"info-section info-section--rp"},ca={class:"rp-toolbar",role:"region","aria-label":"中药处方"},pa={class:"rp-toolbar__lead"},_a={class:"rp-toolbar__text"},ma={class:"rp-toolbar__meta"},ga={class:"rp-toolbar__actions",role:"toolbar","aria-label":"处方药材快捷操作"},fa={class:"mb-3"},ba={class:"herb-formula-block"},va={class:"herb-formula-block__head"},ya={class:"herbs-editor-grid"},xa={class:"herb-editor-card__title"},ha={key:0,class:"herb-editor-card__dup-hint text-amber-600 text-xs mb-1"},ka={class:"herb-editor-card__row"},Va={class:"herb-formula-block mt-4"},wa={class:"herb-formula-block__head"},Sa={class:"herbs-editor-grid"},Na={key:0,class:"herb-editor-card__dup-hint text-amber-600 text-xs mb-1"},Ua={class:"herb-editor-card__row"},Ca={key:0,class:"text-sm text-gray-400 py-2"},$a={class:"info-section"},Da={key:3,class:"ml-2"},Ra={class:"signature-pad-wrap"},Pa={class:"signature-actions"},Ta={key:1,class:"rx-wrap"},Ia={class:"rx-toolbar"},Ea={key:0,class:"rx-status rx-status-danger"},Oa={key:1,class:"rx-status rx-status-danger"},Aa={key:0,class:"mt-1"},za={class:"prescription-preview-content"},Ha={class:"rx-notice"},La={class:"rx-notice-meta"},Ma={class:"rx-info"},Wa={class:"rx-info-row"},Fa={class:"rx-info-cell"},ja={class:"rx-val"},Ba={class:"rx-info-cell"},Ga={class:"rx-val"},Ka={class:"rx-info-cell"},qa={class:"rx-val"},Ja={class:"rx-info-cell"},Ya={class:"rx-val"},Xa={class:"rx-info-row rx-info-row-full"},Qa={class:"rx-info-cell"},Za={class:"rx-val"},el={key:0,class:"rx-info-row rx-info-row-full"},tl={key:0,class:"rx-info-cell"},sl={class:"rx-val"},al={key:1,class:"rx-info-cell"},ll={class:"rx-val"},ol={class:"rx-info-row rx-info-row-full"},nl={class:"rx-info-cell"},rl={class:"rx-val"},il={class:"rx-rp"},dl={class:"rx-herbs"},ul={class:"rx-herb-name"},cl={class:"rx-herb-total"},pl={class:"rx-herb-name"},_l={class:"rx-herb-total"},ml={class:"rx-text"},gl={key:0},fl={key:1},bl={key:2},vl={key:3},yl={key:4,class:"rx-text-warn"},xl={key:5,class:"rx-text-warn"},hl={class:"rx-bottom"},kl={class:"rx-bot-row rx-bot-row-1"},Vl={class:"rx-bot-cell rx-bot-stack rx-bot-doctor"},wl={class:"rx-bot-doctor-body"},Sl=["src"],Nl={class:"rx-bot-doctor-name"},Ul={class:"rx-bot-cell rx-bot-meta"},Cl={class:"rx-bot-meta-val"},$l={class:"rx-bot-cell rx-bot-meta"},Dl={class:"rx-bot-meta-val"},Rl={class:"rx-bot-cell rx-bot-meta"},Pl={class:"rx-bot-meta-val"},Tl={class:"case-record-a3-inner"},Il={class:"case-record-a3-title"},El={class:"case-record-a3-body"},Ol={class:"cr-section"},Al={class:"cr-grid"},zl={class:"cr-item"},Hl={class:"cr-item"},Ll={class:"cr-item"},Ml={class:"cr-item"},Wl={class:"cr-item"},Fl={class:"cr-item"},jl={class:"cr-item"},Bl={class:"cr-item"},Gl={class:"cr-item"},Kl={class:"cr-item"},ql={class:"cr-section"},Jl={class:"cr-grid"},Yl={class:"cr-item"},Xl={class:"cr-item"},Ql={class:"cr-section"},Zl={class:"cr-grid"},eo={class:"cr-item"},to={class:"cr-item"},so={class:"cr-item"},ao={class:"cr-item"},lo={class:"cr-item"},oo={class:"cr-item cr-full"},no={class:"cr-item cr-full"},ro={class:"cr-section"},io={class:"cr-grid"},uo={class:"cr-item cr-full"},co={class:"cr-item cr-full"},po={class:"cr-item cr-full"},_o={class:"cr-item cr-full"},mo={class:"cr-item cr-full"},go={class:"cr-item cr-full"},fo={class:"cr-item cr-full"},bo={class:"cr-item cr-full"},vo={class:"cr-item cr-full"},yo={class:"cr-item cr-full"},xo={class:"cr-item cr-full"},ho={class:"cr-item cr-full"},ko={class:"cr-item cr-full"},Vo={class:"cr-item cr-full"},wo={class:"cr-item cr-full"},So={class:"cr-section"},No={class:"cr-item cr-full"},Uo={class:"cr-section"},Co={class:"cr-grid"},$o={class:"cr-item"},Do={class:"cr-item"},Ro={class:"cr-item"},Po={class:"cr-item"},To={class:"cr-item"},Io={class:"cr-section"},Eo={key:0,class:"cr-grid"},Oo={class:"cr-item cr-full"},Ao={class:"cr-images"},zo=["src"],Ho={class:"cr-grid"},Lo={class:"cr-item cr-full"},Mo={key:2,class:"rx-audit"},Wo={key:0},Fo={key:0,class:"ml-2 text-gray-400"},jo={key:1,class:"mt-1"},Bo={class:"flex justify-end gap-2 mt-4"},Go={class:"inline-block"},Ko={class:"flex justify-end gap-2"},qo={class:"mb-4 flex gap-3"},Jo={class:"mb-3 flex flex-wrap items-center gap-x-4 gap-y-2"},Yo={key:0},Xo={key:1,class:"text-gray-400"},Qo={class:"flex justify-end mt-4"},Zo={class:"mt-3 flex flex-wrap items-center gap-x-4 gap-y-2"},oe=560,ne=168,en=la({__name:"index",emits:["success"],setup(tn,{expose:Nt,emit:Ut}){function O(t){return t==="辅方"?"辅方":"主方"}function Te(t){return{name:String((t==null?void 0:t.name)??"").trim(),dosage:Number(t==null?void 0:t.dosage)||0,formula_type:O(t==null?void 0:t.formula_type)}}function X(t="浓缩水丸"){return t==="饮片"?{dosage_amount:50,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:t==="浓缩水丸"?{dosage_amount:5,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:{dosage_amount:1,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}}function Ct(t,e){const n=X(e);if(!t||typeof t!="object")return{...n};const r=t;return{dosage_amount:r.dosage_amount!==null&&r.dosage_amount!==void 0&&r.dosage_amount!==""?Number(r.dosage_amount):n.dosage_amount,dosage_bag_count:r.dosage_bag_count!=null?Number(r.dosage_bag_count)||1:n.dosage_bag_count,need_decoction:r.need_decoction===1||r.need_decoction===!0,bags_per_dose:r.bags_per_dose!=null?Number(r.bags_per_dose)||1:n.bags_per_dose,times_per_day:r.times_per_day!=null?Number(r.times_per_day)||3:n.times_per_day,usage_days:r.usage_days!=null?Number(r.usage_days)||7:n.usage_days}}function Ie(t,e,n){const r=t.prescription_type||"浓缩水丸",m=Number(t.times_per_day)>0?Number(t.times_per_day):3,b=t.dosage_amount!=null?Number(t.dosage_amount):10,g=t.dosage_unit||(r==="饮片"?"ml":"g"),v=t.usage_way||e||"温水送服",w=t.usage_time||n||"",u=[];if(u.push(`每天${m}次`),r==="浓缩水丸"){const N=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;u.push(`一次${N}袋`),u.push(`每袋${b}${g}`)}else u.push(`一次${b}${g}`);return u.push(v),w&&u.push(w),u.join(", ")}const Ee=Ut,z=x(!1),$t=x(),fe=x(!1),be=x(!1),Oe=x(),Ae=x(),H=x(),re=x(null),d=x(null),ie=S(()=>{const t=d.value;return t?Number(t.audit_status)===1&&Number(t.void_status)!==1:!1}),ze=S(()=>{const t=d.value;return t?Number(t.has_prescription_order)===1:!1}),Dt=S(()=>ie.value?"查看处方":"中医处方单"),He=S(()=>{var e;const t=(e=d.value)==null?void 0:e.herbs;return Array.isArray(t)?t.filter(n=>O(n==null?void 0:n.formula_type)==="主方"):[]}),ve=S(()=>{var e;const t=(e=d.value)==null?void 0:e.herbs;return Array.isArray(t)?t.filter(n=>O(n==null?void 0:n.formula_type)==="辅方"):[]}),Le=S(()=>{const t=d.value;if(!t||!ve.value.length)return"";const e=Ct(t.aux_usage,t.prescription_type||"浓缩水丸");return Ie({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),ye=S(()=>{var e;const t=(e=d.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),de=t=>String(t).padStart(2,"0"),Rt=S(()=>{const t=d.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const n=String(e).length===10?Number(e)*1e3:Number(e),r=new Date(n);if(!isNaN(r.getTime()))return`${r.getFullYear()}-${de(r.getMonth()+1)}-${de(r.getDate())} ${de(r.getHours())}:${de(r.getMinutes())}`}return t.prescription_date||"—"}),Pt=S(()=>{const t=d.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const n=String(t.visit_no??"").trim();return n||(t.id?`G${t.id}`:"—")}),Me=S(()=>{var e;const t=Number((e=d.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Tt=S(()=>{const t=ye.value.reduce((e,n)=>e+(Number(n==null?void 0:n.dosage)||0),0);return Q(t)}),We=t=>{const e=Number(t)||0;return Q(e*Me.value)},It=S(()=>{const t=d.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return e==="饮片"?"饮片":/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),Et=S(()=>{const t=d.value;return t?t.usage_text?t.usage_text:Ie(t):"—"}),Fe=S(()=>{const t=d.value;return t&&t.medical_advice||""}),je=S(()=>{const t=d.value;if(!t)return"";const e=[];return e.push(`共${ye.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Be=S(()=>{const t=d.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),Ge=S(()=>{const t=d.value;if(!t)return"";const e=Ot(t);return e?`${e}克`:""});function Ot(t){if(!t)return"";if((t.prescription_type||"浓缩水丸")==="浓缩水丸"){const m=Number(t.usage_days??t.dose_count),b=Number(t.times_per_day),g=Number(t.dosage_amount),v=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;if(Number.isFinite(m)&&Number.isFinite(b)&&Number.isFinite(g)&&m>0&&b>0&&g>0)return Q(m*b*g*v)}const e=t.out_pellet||t.total_weight;if(e&&Number(e)>0)return Q(Number(e));const n=ye.value;if(!n.length)return"";const r=n.reduce((m,b)=>m+(Number(b==null?void 0:b.dosage)||0),0);return Q(r*Me.value)}function Q(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function At(t){var e;return t===1||t==="1"?"男":t===0||t==="0"?"女":((e=d.value)==null?void 0:e.gender_desc)||"—"}function zt(t){return t==null||t===""?"—":`${t}岁`}function Ht(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}const Ke=S(()=>a.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>O(t.formula_type)==="主方")),Z=S(()=>a.herbs.map((t,e)=>({herb:t,index:e})).filter(({herb:t})=>O(t.formula_type)==="辅方")),Lt=S(()=>Ke.value.length),Mt=S(()=>Z.value.length),xe=S(()=>{var e;const t=Number((e=Ne.userInfo)==null?void 0:e.id);return t>0?t:0}),L=x(!1),he=x(!1),ke=x([]),ee=x(""),te=x(""),B=x("replace"),G=x(!1),K=x(1),ue=x(15),Ve=x(0),q=x(!1),J=x(""),ce=x("replace"),we=x(!1),Wt=/^(用法|用量|医嘱|忌口|水煎服|空腹|饭后|温水|内服|外用|备注|顿服|分服|ml|毫升|[×xX]\s*\d)/;function Ft(t){let e=t.replace(/\r\n/g,` `).replace(/\r/g,` `);return e=e.replace(/[0-9]/g,n=>String.fromCharCode(n.charCodeAt(0)-65296+48)),e.trim()}function jt(t){return t.replace(/^\s*Rp[::**\s]*/i,"").replace(/^\s*处方[::\s]*/,"").replace(/^\s*中药处方[::\s]*/,"").trimStart()}function Se(t){return t.replace(/([^)]*)$/u,"").replace(/\([^)]*\)$/u,"").trim()}function qe(t){const e=t.trim();if(!e||Wt.test(e)||/^\d/.test(e)||/^\d+\s*剂$/.test(e))return null;const n=e.match(/^(.+)\s*各\s*(\d+(?:\.\d+)?)\s*(?:克|g|G)?$/i);if(n){const b=parseFloat(n[2]);if(!Number.isFinite(b)||b<=0)return null;const g=n[1].split(/[、,,\s]+/).map(v=>v.trim()).filter(Boolean);return g.length?g.map(v=>({name:Se(v),dosage:b})):null}const r=e.match(/^(.+?)\s*(\d+(?:\.\d+)?)\s*(?:克|g|G|钱)?$/i);if(r){const b=Se(r[1].trim()),g=parseFloat(r[2]);return!b||!Number.isFinite(g)||g<=0?null:[{name:b,dosage:g}]}const m=Se(e);return m.length>=2&&m.length<=16?[{name:m,dosage:6}]:null}function Bt(t){const e=jt(Ft(t)),n=[];for(const r of e.split(/\n+/)){const m=r.trim();if(m)for(const b of m.split(/[、,,;;]/)){const g=b.trim();if(g)if(/\s/.test(g)&&!qe(g)){const v=g.split(/\s+(?=[\u4e00-\u9fff]{2,})/);for(const w of v){const u=w.trim();u&&n.push(u)}}else n.push(g)}}return n}function Gt(t){const e=[];for(const n of Bt(t)){const r=qe(n);r&&e.push(...r)}return e}async function Kt(t){const e=t.trim();if(!e)return null;try{const m=((await Ys({name:e,page_no:1,page_size:200,status:1})).lists||[]).find(b=>(b.name??"").trim()===e);return m?m.name.trim():null}catch{return null}}function qt(){q.value=!0}async function Jt(){const t=Gt(J.value);if(!t.length){V.msgWarning("未能从文本中解析出药材,请检查格式(药名 + 剂量,或用顿号/换行分隔)");return}we.value=!0;try{const e=[],n=[];for(const g of t){const v=await Kt(g.name);if(!v){n.push(g.name.trim());continue}e.push({name:v,dosage:g.dosage,formula_type:"主方"})}const r=[...new Set(n.filter(Boolean))];if(e.length===0){V.msgWarning(r.length?`药品库中无以下完全同名药材,未录入:${r.join("、")}`:"未能匹配到药品库中的药材");return}if(ce.value==="replace"){const g=a.herbs.filter(v=>O(v.formula_type)==="辅方");a.herbs=[...g,...e]}else a.herbs.push(...e);const m=Pe(),b=r.length>0?`;药品库未收录已跳过:${r.join("、")}`:"";m.length?V.msgWarning(`已导入 ${e.length} 味药材${b}。存在重复药名:${m.join("、")},请合并剂量或删除多余行`):r.length?V.msgSuccess(`已导入 ${e.length} 味药材${b},请核对剂量`):V.msgSuccess(`已导入 ${e.length} 味药材,请核对药名与剂量`),q.value=!1,J.value=""}finally{we.value=!1}}const Je=wt({stationName:"成都双流甄养堂互联网医院",showDisclaimer:!0,disclaimer:""}),a=wt({diagnosis_id:0,appointment_id:0,prescription_name:"",prescription_type:"浓缩水丸",dosage_amount:10,dosage_unit:"g",dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,patient_name:"",gender:0,gender_desc:"女",age:0,phone:"",visit_no:"",prescription_date:"",pulse:"",tongue:"",tongue_image:"",pulse_condition:"",clinical_diagnosis:"",case_record:null,herbs:[],dose_count:1,dose_unit:"剂",usage_days:7,times_per_day:2,usage_instruction:"",usage_time:"饭后",usage_way:"温水送服",dietary_taboo:[],usage_notes:"",amount:0,doctor_name:"",doctor_signature:"",is_shared:0,aux_usage:X("浓缩水丸")}),Ne=Ws(),Yt=Fs(),Xt=t=>{const e=typeof t=="string"?t:(t==null?void 0:t.url)??(t==null?void 0:t.uri)??(t==null?void 0:t.path)??"";return e?String(e).startsWith("http")?e:Yt.getImageUrl(e):""},Ue=x([]),Ce=x([]),Ye=x([]),Xe=x([]),Qe=x([]),Ze=x([]),et=x([]),tt=x([]),st=x([]),at=x([]),lt=x([]),ot=x([]),nt=x([]),rt=x([]),it=x([]),dt=x([]),ut=x([]),ct=x([]),A=(t,e)=>{if(!e)return"";const n=t.find(r=>r.value===e);return n?n.name:e},pt=async()=>{try{const[t,e,n,r,m,b,g,v,w,u,N,D,P,M,W,Y,se,ae]=await Promise.all([C({type:"diagnosis_type"}),C({type:"syndrome_type"}),C({type:"diabetes_type"}),C({type:"past_history"}),C({type:"appetite"}),C({type:"water_intake"}),C({type:"diet_condition"}),C({type:"weight_change"}),C({type:"body_feeling"}),C({type:"sleep_condition"}),C({type:"eye_condition"}),C({type:"head_feeling"}),C({type:"sweat_condition"}),C({type:"skin_condition"}),C({type:"urine_condition"}),C({type:"stool_condition"}),C({type:"kidney_condition"}),C({type:"fatty_liver_degree"})]);Ue.value=(t==null?void 0:t.diagnosis_type)||[],Ce.value=(e==null?void 0:e.syndrome_type)||[],Ye.value=(n==null?void 0:n.diabetes_type)||[],Xe.value=(r==null?void 0:r.past_history)||[],Qe.value=(m==null?void 0:m.appetite)||[],Ze.value=(b==null?void 0:b.water_intake)||[],et.value=(g==null?void 0:g.diet_condition)||[],tt.value=(v==null?void 0:v.weight_change)||[],st.value=(w==null?void 0:w.body_feeling)||[],at.value=(u==null?void 0:u.sleep_condition)||[],lt.value=(N==null?void 0:N.eye_condition)||[],ot.value=(D==null?void 0:D.head_feeling)||[],nt.value=(P==null?void 0:P.sweat_condition)||[],rt.value=(M==null?void 0:M.skin_condition)||[],it.value=(W==null?void 0:W.urine_condition)||[],dt.value=(Y==null?void 0:Y.stool_condition)||[],ut.value=(se==null?void 0:se.kidney_condition)||[],ct.value=(ae==null?void 0:ae.fatty_liver_degree)||[]}catch{}},R=(t,e)=>{if(!e||Array.isArray(e)&&e.length===0)return"—";const r=(Array.isArray(e)?e:typeof e=="string"?e.split(","):[]).map(m=>{const b=t.find(g=>g.value===m);return b?b.name:m}).filter(Boolean);return r.length?r.join("、"):"—"},Qt=t=>!t||Array.isArray(t)&&t.length===0?"—":(Array.isArray(t)?t:typeof t=="string"?t.split(","):[]).filter(Boolean).join("、")||"—",Zt=t=>{var m;if((m=t==null?void 0:t.symptoms)!=null&&m.trim())return t.symptoms.trim();const e=A(Ue.value,t==null?void 0:t.diagnosis_type),n=A(Ce.value,t==null?void 0:t.syndrome_type),r=[e,n].filter(Boolean);return r.length?r.join(" "):""},es=async(t,e)=>{var n;if(G.value){console.warn("处方正在打开中,请勿重复点击");return}G.value=!0;try{e!=null&&e.stationName&&(Je.stationName=e.stationName);const r=t.diagnosis||t,m=t.diagnosis_id??(r==null?void 0:r.id)??t.id;if(!m){V.msgWarning("缺少诊单信息");return}await pt();const b=Number(t.id??t.appointment_id??0);if(b)try{const v=await Gs({appointment_id:b});if(console.log("-----------",v),v!=null&&v.id){const w=await ge({id:v.id});d.value=w,z.value=!0;return}}catch{}let g=t.case_record&&Object.keys(t.case_record).length>0?t.case_record:null;if(!g&&m)try{const v=await ht({id:Number(m)});g=v&&typeof v=="object"?v:null}catch(v){console.warn("获取诊单详情失败:",v)}a.diagnosis_id=Number(m),a.appointment_id=b,a.prescription_name="",a.prescription_type="浓缩水丸",a.dosage_unit="g",a.dosage_amount=10,a.dosage_bag_count=1,a.patient_name=t.patient_name||r.patient_name||"",a.gender=t.patient_gender??r.gender??0,a.gender_desc=a.gender===1?"男":"女",a.age=t.patient_age??r.age??0,a.phone=t.patient_phone||r.phone||"",a.visit_no=t.id?`1K${String(t.id).padStart(8,"0")}`:"",a.prescription_date=new Date().toISOString().slice(0,10),a.pulse=r.pulse||"",a.tongue=r.tongue_coating||r.tongue||"",a.tongue_image="",a.pulse_condition="",a.clinical_diagnosis=Zt(r),a.case_record=g,a.herbs=[],a.dose_count=1,a.dose_unit="剂",a.usage_days=7,a.usage_instruction="",a.usage_time="饭后",a.usage_way="温水送服",a.dietary_taboo=[],a.usage_notes="",a.amount=0,a.doctor_name=((n=Ne.userInfo)==null?void 0:n.name)||"",a.doctor_signature="",a.is_shared=0,a.need_decoction=!1,a.bags_per_dose=1,a.times_per_day=2,Object.assign(a.aux_usage,X("浓缩水丸")),d.value=null,z.value=!0,setTimeout(()=>De(),100)}finally{setTimeout(()=>{G.value=!1},500)}},ts=async t=>{if(G.value){console.warn("处方正在打开中,请勿重复点击");return}G.value=!0;try{const e=await ge({id:t});d.value=e,e!=null&&e.case_record&&Object.keys(e.case_record).length>0&&await pt(),z.value=!0}catch{V.msgError("加载处方失败")}finally{setTimeout(()=>{G.value=!1},500)}},$e=()=>{z.value=!1,d.value=null},_t=t=>{const e=H.value;if(!e)return{x:0,y:0};const n=e.getBoundingClientRect();if(n.width<=0||n.height<=0)return{x:0,y:0};const r=(t.clientX-n.left)/n.width*oe,m=(t.clientY-n.top)/n.height*ne;return{x:Math.max(0,Math.min(oe,r)),y:Math.max(0,Math.min(ne,m))}},ss=()=>{const t=H.value;t&&(a.doctor_signature=t.toDataURL("image/png"))},as=t=>{if(t.pointerType==="mouse"&&t.button!==0)return;const e=H.value,n=e==null?void 0:e.getContext("2d");if(!e||!n)return;e.setPointerCapture(t.pointerId),re.value=t.pointerId;const{x:r,y:m}=_t(t);n.beginPath(),n.moveTo(r,m)},ls=t=>{var m;if(re.value!==t.pointerId)return;const e=(m=H.value)==null?void 0:m.getContext("2d");if(!e)return;const{x:n,y:r}=_t(t);e.lineTo(n,r),e.stroke(),e.beginPath(),e.moveTo(n,r)},mt=t=>{if(re.value!==t.pointerId)return;re.value=null;const e=H.value;if(e)try{e.releasePointerCapture(t.pointerId)}catch{}ss()},os=()=>{De(),a.doctor_signature=""},De=()=>{const t=H.value;if(!t)return;const e=Math.min(typeof window<"u"&&window.devicePixelRatio||1,2.5);t.style.width=`${oe}px`,t.style.height=`${ne}px`,t.width=Math.round(oe*e),t.height=Math.round(ne*e);const n=t.getContext("2d");n&&(n.setTransform(1,0,0,1,0,0),n.scale(e,e),n.fillStyle="#fff",n.fillRect(0,0,oe,ne),n.strokeStyle="#333",n.lineWidth=2.5,n.lineCap="round",n.lineJoin="round")};function Re(t){return(t??"").trim()}function pe(t){var m,b;const e=a.herbs,n=Re((m=e[t])==null?void 0:m.name);if(!n)return!1;let r=0;for(let g=0;g1}function Pe(){const t=new Map;for(const e of a.herbs){const n=Re(e==null?void 0:e.name);n&&t.set(n,(t.get(n)??0)+1)}return[...t.entries()].filter(([,e])=>e>1).map(([e])=>e)}const gt=(t="主方")=>{a.herbs.push({name:"",dosage:6,formula_type:t})},ft=t=>{a.herbs.splice(t,1)},_e=async()=>{const t=xe.value;if(!t){V.msgWarning("无法确定开方医师,无法加载处方库"),ke.value=[],Ve.value=0;return}he.value=!0;try{const e=await Ks({page_no:K.value,page_size:ue.value,prescription_name:ee.value,formula_type:te.value,prescribing_creator_id:t});ke.value=e.lists||[],Ve.value=e.count||0}catch(e){console.error("加载处方库失败:",e),V.msgError("加载处方库失败")}finally{he.value=!1}},me=()=>{K.value=1,_e()},ns=()=>{if(!xe.value){V.msgWarning("无法确定开方医师,无法从处方库导入");return}L.value=!0},rs=t=>{bt(t)},bt=t=>{if(!t.herbs||t.herbs.length===0){V.msgWarning("该处方没有药材信息");return}const e=O(t.formula_type),n=JSON.parse(JSON.stringify(t.herbs)).map(m=>({...Te(m),formula_type:e}));if(B.value==="replace"){const m=a.herbs.filter(b=>O(b.formula_type)!==e);a.herbs=[...m,...n]}else a.herbs.push(...n);const r=B.value==="append"?"(已追加)":"";Pe().length?V.msgWarning(`已导入处方「${t.prescription_name}」${r},共${n.length}味药材。存在重复药名,请合并剂量或删除多余行`):V.msgSuccess(`已导入处方「${t.prescription_name}」${r},共${n.length}味药材`),L.value=!1};Vt(L,t=>{if(t){if(!xe.value){V.msgWarning("无法确定开方医师,无法从处方库导入"),L.value=!1;return}ee.value="",te.value="",B.value="replace",K.value=1,_e()}}),Vt(()=>a.prescription_type,t=>{t==="浓缩水丸"?(a.dosage_unit="g",a.dosage_amount=10,a.dosage_bag_count=1,a.need_decoction=!1,a.bags_per_dose=1):t==="饮片"?(a.dosage_unit="ml",a.dosage_amount=50,a.dosage_bag_count=1,a.bags_per_dose=1):(a.dosage_unit="g",a.dosage_amount=void 0,a.dosage_bag_count=1,a.need_decoction=!1,a.bags_per_dose=1),Object.assign(a.aux_usage,X(t))});const is=async()=>{var e,n,r;if(!((e=a.clinical_diagnosis)!=null&&e.trim())){V.msgWarning("请输入临床诊断");return}if(a.herbs.length===0){V.msgWarning("请至少添加一味中药");return}const t=Pe();if(t.length){V.msgWarning(`存在重复药名:${t.join("、")},请合并剂量或删除多余行后再保存`);return}for(const m of a.herbs){if(!((n=m.name)!=null&&n.trim())){V.msgWarning("请填写中药名称");return}if(!m.dosage||m.dosage<=0){V.msgWarning(`请填写「${m.name}」的剂量`);return}}if(!((r=a.doctor_signature)!=null&&r.trim())){V.msgWarning("请使用电子签名板手写医师签名");return}fe.value=!0;try{const m=await qs({diagnosis_id:a.diagnosis_id,appointment_id:a.appointment_id,prescription_name:a.prescription_name,prescription_type:a.prescription_type,patient_name:a.patient_name,gender:a.gender,age:a.age,phone:a.phone,visit_no:a.visit_no,prescription_date:a.prescription_date,pulse:a.pulse,tongue:a.tongue,tongue_image:a.tongue_image,pulse_condition:a.pulse_condition,clinical_diagnosis:a.clinical_diagnosis,case_record:a.case_record,herbs:a.herbs.map(g=>Te(g)),aux_usage:Z.value.length>0?{...a.aux_usage}:null,dose_count:a.dose_count,dose_unit:a.dose_unit,dosage_amount:a.dosage_amount,dosage_unit:a.dosage_unit,dosage_bag_count:a.dosage_bag_count,need_decoction:a.need_decoction,bags_per_dose:a.bags_per_dose,usage_days:a.usage_days,times_per_day:a.times_per_day,usage_instruction:a.usage_instruction,usage_time:a.usage_time,usage_way:a.usage_way,dietary_taboo:a.dietary_taboo,usage_notes:a.usage_notes,amount:a.amount,doctor_name:a.doctor_name,doctor_signature:a.doctor_signature,is_shared:a.is_shared}),b=m==null?void 0:m.id;if(b){const g=await ge({id:b});d.value=g,Ee("success")}else V.msgError("保存失败")}catch(m){V.msgError((m==null?void 0:m.msg)||"保存失败")}finally{fe.value=!1}},ds=t=>{if(!t)return"—";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}:${String(e.getSeconds()).padStart(2,"0")}`},us=async()=>{var e,n;const t=(e=d.value)==null?void 0:e.id;if(t){if(Number((n=d.value)==null?void 0:n.has_prescription_order)===1){V.msgWarning("该处方已存在业务订单,无法作废");return}try{await V.confirm("确定要作废该处方吗?作废后不可恢复。"),be.value=!0,await Js({id:t}),V.msgSuccess("作废成功");const r=await ge({id:t});d.value=r,Ee("success")}catch(r){r!=="cancel"&&(r==null?void 0:r.message)!=="cancel"&&V.msgError((r==null?void 0:r.msg)||"作废失败")}finally{be.value=!1}}},cs=async t=>{if(!t)return null;try{const e=await ht({id:t});return e&&typeof e=="object"?e:null}catch(e){return console.warn("获取诊单详情失败:",e),null}},ps=async()=>{var e;const t=d.value;t&&(a.diagnosis_id=t.diagnosis_id??a.diagnosis_id,a.appointment_id=t.appointment_id??a.appointment_id,a.prescription_name="",a.prescription_type=t.prescription_type||"浓缩水丸",a.prescription_type==="浓缩水丸"?(a.dosage_unit="g",a.dosage_amount=10,a.dosage_bag_count=1):a.prescription_type==="饮片"?(a.dosage_unit="ml",a.dosage_amount=50,a.dosage_bag_count=1):(a.dosage_unit="g",a.dosage_amount=void 0,a.dosage_bag_count=1),a.patient_name=t.patient_name||"",a.gender=t.gender??0,a.gender_desc=t.gender===1?"男":"女",a.age=t.age??0,a.phone=t.phone||"",a.visit_no=t.visit_no||"",a.prescription_date=new Date().toISOString().slice(0,10),a.pulse=t.pulse||"",a.tongue=t.tongue||"",a.tongue_image="",a.pulse_condition="",a.clinical_diagnosis=t.clinical_diagnosis||"",a.dose_count=1,a.dose_unit=t.dose_unit||"剂",a.usage_days=7,a.usage_instruction="",a.usage_time="饭后",a.usage_way="温水送服",a.dietary_taboo=[],a.usage_notes="",a.amount=0,a.doctor_name=((e=Ne.userInfo)==null?void 0:e.name)||t.doctor_name||"",a.doctor_signature="",a.is_shared=0,a.herbs=[],Object.assign(a.aux_usage,X(a.prescription_type||"浓缩水丸")),a.case_record=t.case_record&&Object.keys(t.case_record).length>0?t.case_record:await cs(Number(a.diagnosis_id)),setTimeout(()=>De(),100)),d.value=null},vt=async()=>{const t=Oe.value;if(!t)throw new Error("未找到处方内容");return kt(t,{scale:2,useCORS:!0,logging:!1,backgroundColor:"#ffffff"})},_s=async t=>{const e=t.querySelectorAll('img[src^="http"]'),n=Array.from(e).map(async r=>{try{const m=await fetch(r.src,{mode:"cors"});if(!m.ok)return;const b=await m.blob(),g=await new Promise((v,w)=>{const u=new FileReader;u.onload=()=>v(u.result),u.onerror=w,u.readAsDataURL(b)});r.src=g}catch{}});await Promise.allSettled(n)},ms=async()=>{const t=Ae.value;return t?(t.scrollIntoView({behavior:"instant",block:"nearest"}),await _s(t),await new Promise(e=>setTimeout(e,200)),kt(t,{scale:2,useCORS:!0,logging:!1,backgroundColor:"#ffffff"})):null},gs=async()=>{var t;try{const e=await vt(),n=document.createElement("a");n.download=`处方_${((t=d.value)==null?void 0:t.patient_name)||"未命名"}_${Date.now()}.png`,n.href=e.toDataURL("image/png"),n.click(),V.msgSuccess("图片已下载")}catch{V.msgError("下载图片失败")}},fs=async()=>{var t;try{const e=await vt(),n=e.toDataURL("image/png"),r=new Xs({orientation:"portrait",unit:"mm",format:"a5"}),m=r.internal.pageSize.getWidth(),b=r.internal.pageSize.getHeight(),g=Math.min(m/e.width,b/e.height),v=e.width*g,w=e.height*g;r.addImage(n,"PNG",0,0,v,w);const u=await ms();if(u){r.addPage("a3","p");const P=Math.min(297/u.width,420/u.height),M=u.width*P,W=u.height*P;r.addImage(u.toDataURL("image/png"),"PNG",0,0,M,W)}r.save(`处方_${((t=d.value)==null?void 0:t.patient_name)||"未命名"}_${Date.now()}.pdf`),V.msgSuccess("PDF已下载")}catch{V.msgError("下载PDF失败")}};return Nt({open:es,openById:ts}),(t,e)=>{const n=Ss,r=ws,m=Ns,b=Vs,g=hs,v=Us,w=Cs,u=Ds,N=$s,D=Ps,P=Rs,M=Ts,W=ks,Y=Is,se=Es,ae=xs,F=zs,bs=Hs,vs=Ls,yt=Os,ys=As;return f(),y(T,null,[o(ae,{modelValue:s(z),"onUpdate:modelValue":e[31]||(e[31]=h=>I(z)?z.value=h:null),title:s(Dt),size:"1200px","close-on-click-modal":!1,onClose:$e},oa({default:i(()=>{var h,E;return[s(d)?(f(),y("div",Ta,[l("div",Ia,[s(d).void_status===1?(f(),U(w,{key:0,type:"danger",size:"small"},{default:i(()=>[...e[68]||(e[68]=[_("已作废",-1)])]),_:1})):s(ie)?(f(),U(w,{key:1,type:"success",size:"small"},{default:i(()=>[...e[69]||(e[69]=[_("已通过",-1)])]),_:1})):Number(s(d).audit_status)===0?(f(),U(w,{key:2,type:"warning",size:"small"},{default:i(()=>[...e[70]||(e[70]=[_("待审核",-1)])]),_:1})):Number(s(d).audit_status)===2?(f(),U(w,{key:3,type:"danger",size:"small"},{default:i(()=>[...e[71]||(e[71]=[_("已驳回",-1)])]),_:1})):k("",!0),e[72]||(e[72]=l("div",{class:"flex-1"},null,-1))]),s(d).void_status===1?(f(),y("div",Ea," 作废人:"+p(s(d).void_by_name||"—")+",作废时间:"+p(ds(s(d).void_time)),1)):Number(s(d).audit_status)===2?(f(),y("div",Oa,[e[73]||(e[73]=l("div",{class:"font-medium"},"处方审核:已驳回",-1)),s(d).audit_remark?(f(),y("div",Aa,"驳回意见:"+p(s(d).audit_remark),1)):k("",!0)])):k("",!0),l("div",za,[s(d)?(f(),y("div",{key:0,ref_key:"prescriptionPrintRef",ref:Oe,class:"rx-paper"},[l("div",Ha,[e[74]||(e[74]=l("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),l("span",La,[l("span",null,"日期:"+p(s(Rt)),1),l("span",null,"编号:"+p(s(Pt)),1)])]),l("div",Ma,[l("div",Wa,[l("div",Fa,[e[75]||(e[75]=l("span",{class:"rx-key"},"姓名",-1)),l("span",ja,p(s(d).patient_name||"—"),1)]),l("div",Ba,[e[76]||(e[76]=l("span",{class:"rx-key"},"性别",-1)),l("span",Ga,p(At(s(d).gender)),1)]),l("div",Ka,[e[77]||(e[77]=l("span",{class:"rx-key"},"年龄",-1)),l("span",qa,p(zt(s(d).age)),1)]),l("div",Ja,[e[78]||(e[78]=l("span",{class:"rx-key"},"电话",-1)),l("span",Ya,p(s(d).phone||"—"),1)])]),l("div",Xa,[l("div",Qa,[e[79]||(e[79]=l("span",{class:"rx-key"},"门诊号",-1)),l("span",Za,p(s(d).visit_no||"—"),1)])]),s(d).pulse||s(d).tongue?(f(),y("div",el,[s(d).pulse?(f(),y("div",tl,[e[80]||(e[80]=l("span",{class:"rx-key"},"面象",-1)),l("span",sl,p(s(d).pulse),1)])):k("",!0),s(d).tongue?(f(),y("div",al,[e[81]||(e[81]=l("span",{class:"rx-key"},"舌象",-1)),l("span",ll,p(s(d).tongue),1)])):k("",!0)])):k("",!0),l("div",ol,[l("div",nl,[e[82]||(e[82]=l("span",{class:"rx-key"},"临床诊断",-1)),l("span",rl,p(s(d).clinical_diagnosis||"—"),1)])])]),l("div",il,[e[85]||(e[85]=l("div",{class:"rx-watermark"},"药房联",-1)),e[86]||(e[86]=l("div",{class:"rx-rp-head"},[l("div",{class:"rx-rp-label"},"Rp."),l("div",{class:"rx-rp-cols-head"},[l("div",{class:"rx-rp-col-head"},[l("span",null,"用药 (单剂)"),l("span",null,"总量")]),l("div",{class:"rx-rp-col-head"},[l("span",null,"用药 (单剂)"),l("span",null,"总量")])])],-1)),l("div",dl,[s(He).length?(f(),y(T,{key:0},[e[83]||(e[83]=l("div",{class:"rx-herb-section-label"},"主方",-1)),(f(!0),y(T,null,j(s(He),(c,$)=>(f(),y("div",{key:"main-"+$,class:"rx-herb-cell"},[l("span",ul,p(c.name)+" ("+p(c.dosage)+"克)",1),l("span",cl,p(We(c.dosage))+"克",1)]))),128))],64)):k("",!0),s(ve).length?(f(),y(T,{key:1},[e[84]||(e[84]=l("div",{class:"rx-herb-section-label rx-herb-section-label--aux"},"辅方",-1)),(f(!0),y(T,null,j(s(ve),(c,$)=>(f(),y("div",{key:"aux-"+$,class:"rx-herb-cell"},[l("span",pl,p(c.name)+" ("+p(c.dosage)+"克)",1),l("span",_l,p(We(c.dosage))+"克",1)]))),128))],64)):k("",!0)])]),l("div",ml,[l("p",null,"主方服法:"+p(s(Et)),1),s(Le)?(f(),y("p",gl,"辅方服法:"+p(s(Le)),1)):k("",!0),s(Fe)?(f(),y("p",fl,"医嘱:"+p(s(Fe)),1)):k("",!0),s(je)?(f(),y("p",bl,"备注:"+p(s(je)),1)):k("",!0),s(d).dietary_taboo&&s(d).dietary_taboo.length?(f(),y("p",vl," 忌口:"+p(Array.isArray(s(d).dietary_taboo)?s(d).dietary_taboo.join("、"):s(d).dietary_taboo),1)):k("",!0),s(Be)?(f(),y("p",yl,"药房备注:"+p(s(Be)),1)):k("",!0),s(Ge)&&s(d).prescription_type!=="饮片"?(f(),y("p",xl," 出丸:"+p(s(Ge)),1)):k("",!0)]),l("div",hl,[l("div",kl,[l("div",Vl,[e[87]||(e[87]=l("div",{class:"rx-bot-label"},"医师",-1)),l("div",wl,[s(d).doctor_signature?(f(),y("img",{key:0,src:s(d).doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,Sl)):k("",!0),l("div",Nl,p(s(d).doctor_name||"—"),1)])]),l("div",Ul,[e[88]||(e[88]=l("span",{class:"rx-bot-meta-key"},"类型:",-1)),l("span",Cl,p(s(It)),1)]),l("div",$l,[e[89]||(e[89]=l("span",{class:"rx-bot-meta-key"},"天数:",-1)),l("span",Dl,p(s(d).dose_count||"—")+"剂",1)]),l("div",Rl,[e[90]||(e[90]=l("span",{class:"rx-bot-meta-key"},"单剂量:",-1)),l("span",Pl,p(s(Tt))+"克",1)])])])],512)):k("",!0),s(d).case_record?(f(),y("div",{key:1,ref_key:"caseRecordPrintRef",ref:Ae,class:"case-record-a3"},[l("div",Tl,[l("h2",Il,p(s(Je).stationName)+" 详细病历",1),l("div",El,[l("div",Ol,[e[101]||(e[101]=l("div",{class:"cr-section-title"},"基本信息",-1)),l("div",Al,[l("div",zl,[e[91]||(e[91]=l("span",{class:"cr-label"},"诊单ID",-1)),_(p(s(d).case_record.patient_id||"—"),1)]),l("div",Hl,[e[92]||(e[92]=l("span",{class:"cr-label"},"姓名",-1)),_(p(s(d).case_record.patient_name||"—"),1)]),l("div",Ll,[e[93]||(e[93]=l("span",{class:"cr-label"},"身份证号",-1)),_(p(s(d).case_record.id_card||"—"),1)]),l("div",Ml,[e[94]||(e[94]=l("span",{class:"cr-label"},"手机号",-1)),_(p(s(d).case_record.phone||"—"),1)]),l("div",Wl,[e[95]||(e[95]=l("span",{class:"cr-label"},"性别",-1)),_(p(s(d).gender_desc),1)]),l("div",Fl,[e[96]||(e[96]=l("span",{class:"cr-label"},"年龄",-1)),_(p(s(d).case_record.age??"—")+"岁",1)]),l("div",jl,[e[97]||(e[97]=l("span",{class:"cr-label"},"婚姻状态",-1)),_(p(["未婚","已婚","离异"][s(d).case_record.marital_status]??"—"),1)]),l("div",Bl,[e[98]||(e[98]=l("span",{class:"cr-label"},"身高",-1)),_(p(s(d).case_record.height??"—")+"cm",1)]),l("div",Gl,[e[99]||(e[99]=l("span",{class:"cr-label"},"体重",-1)),_(p(s(d).case_record.weight??"—")+"kg",1)]),l("div",Kl,[e[100]||(e[100]=l("span",{class:"cr-label"},"地区",-1)),_(p(s(d).case_record.region||"—"),1)])])]),l("div",ql,[e[104]||(e[104]=l("div",{class:"cr-section-title"},"生命体征",-1)),l("div",Jl,[l("div",Yl,[e[102]||(e[102]=l("span",{class:"cr-label"},"血压",-1)),_(p(s(d).case_record.systolic_pressure!=null&&s(d).case_record.diastolic_pressure!=null?s(d).case_record.systolic_pressure+"/"+s(d).case_record.diastolic_pressure+" mmHg":"—"),1)]),l("div",Xl,[e[103]||(e[103]=l("span",{class:"cr-label"},"空腹血糖",-1)),_(p(s(d).case_record.fasting_blood_sugar!=null?s(d).case_record.fasting_blood_sugar+" mmol/L":"—"),1)])])]),l("div",Ql,[e[112]||(e[112]=l("div",{class:"cr-section-title"},"主诉",-1)),l("div",Zl,[l("div",eo,[e[105]||(e[105]=l("span",{class:"cr-label"},"诊断日期",-1)),_(p(s(d).case_record.diagnosis_date||"—"),1)]),l("div",to,[e[106]||(e[106]=l("span",{class:"cr-label"},"诊断类型",-1)),_(p(A(s(Ue),s(d).case_record.diagnosis_type)||"—"),1)]),l("div",so,[e[107]||(e[107]=l("span",{class:"cr-label"},"证型",-1)),_(p(A(s(Ce),s(d).case_record.syndrome_type)||"—"),1)]),l("div",ao,[e[108]||(e[108]=l("span",{class:"cr-label"},"糖尿病期数",-1)),_(p(A(s(Ye),s(d).case_record.diabetes_type)||"—"),1)]),l("div",lo,[e[109]||(e[109]=l("span",{class:"cr-label"},"发现糖尿病患病史",-1)),_(p(s(Bs)((h=s(d).case_record)==null?void 0:h.diabetes_discovery_year)),1)]),l("div",oo,[e[110]||(e[110]=l("span",{class:"cr-label"},"当地医院诊断",-1)),_(p(Qt(s(d).case_record.local_hospital_diagnosis)),1)]),l("div",no,[e[111]||(e[111]=l("span",{class:"cr-label"},"当地就诊医院",-1)),_(p(s(d).case_record.local_hospital_name||"—"),1)])])]),l("div",ro,[e[128]||(e[128]=l("div",{class:"cr-section-title"},"现病史",-1)),l("div",io,[l("div",uo,[e[113]||(e[113]=l("span",{class:"cr-label"},"口腔感觉",-1)),_(p(R(s(Qe),s(d).case_record.appetite)),1)]),l("div",co,[e[114]||(e[114]=l("span",{class:"cr-label"},"每日饮水量",-1)),_(p(A(s(Ze),s(d).case_record.water_intake)||"—"),1)]),l("div",po,[e[115]||(e[115]=l("span",{class:"cr-label"},"体重变化",-1)),_(p(A(s(tt),s(d).case_record.weight_change)||"—"),1)]),l("div",_o,[e[116]||(e[116]=l("span",{class:"cr-label"},"脂肪肝程度",-1)),_(p(A(s(ct),s(d).case_record.fatty_liver_degree)||"—"),1)]),l("div",mo,[e[117]||(e[117]=l("span",{class:"cr-label"},"饮食情况",-1)),_(p(R(s(et),s(d).case_record.diet_condition)),1)]),l("div",go,[e[118]||(e[118]=l("span",{class:"cr-label"},"肢体感觉",-1)),_(p(R(s(st),s(d).case_record.body_feeling)),1)]),l("div",fo,[e[119]||(e[119]=l("span",{class:"cr-label"},"睡眠情况",-1)),_(p(R(s(at),s(d).case_record.sleep_condition)),1)]),l("div",bo,[e[120]||(e[120]=l("span",{class:"cr-label"},"眼睛情况",-1)),_(p(R(s(lt),s(d).case_record.eye_condition)),1)]),l("div",vo,[e[121]||(e[121]=l("span",{class:"cr-label"},"头部感觉",-1)),_(p(R(s(ot),s(d).case_record.head_feeling)),1)]),l("div",yo,[e[122]||(e[122]=l("span",{class:"cr-label"},"出汗情况",-1)),_(p(R(s(nt),s(d).case_record.sweat_condition)),1)]),l("div",xo,[e[123]||(e[123]=l("span",{class:"cr-label"},"皮肤情况",-1)),_(p(R(s(rt),s(d).case_record.skin_condition)),1)]),l("div",ho,[e[124]||(e[124]=l("span",{class:"cr-label"},"小便情况",-1)),_(p(R(s(it),s(d).case_record.urine_condition)),1)]),l("div",ko,[e[125]||(e[125]=l("span",{class:"cr-label"},"大便情况",-1)),_(p(R(s(dt),s(d).case_record.stool_condition)),1)]),l("div",Vo,[e[126]||(e[126]=l("span",{class:"cr-label"},"腰肾情况",-1)),_(p(R(s(ut),s(d).case_record.kidney_condition)),1)]),l("div",wo,[e[127]||(e[127]=l("span",{class:"cr-label"},"其他补充",-1)),_(p(s(d).case_record.symptoms||"—"),1)])])]),l("div",So,[e[130]||(e[130]=l("div",{class:"cr-section-title"},"既往史",-1)),l("div",No,[e[129]||(e[129]=l("span",{class:"cr-label"},null,-1)),_(p(R(s(Xe),s(d).case_record.past_history)),1)])]),l("div",Uo,[e[136]||(e[136]=l("div",{class:"cr-section-title"},"其他病史",-1)),l("div",Co,[l("div",$o,[e[131]||(e[131]=l("span",{class:"cr-label"},"外伤史",-1)),_(p(s(d).case_record.trauma_history===1?"有":"无"),1)]),l("div",Do,[e[132]||(e[132]=l("span",{class:"cr-label"},"手术史",-1)),_(p(s(d).case_record.surgery_history===1?"有":"无"),1)]),l("div",Ro,[e[133]||(e[133]=l("span",{class:"cr-label"},"过敏史",-1)),_(p(s(d).case_record.allergy_history===1?"有":"无"),1)]),l("div",Po,[e[134]||(e[134]=l("span",{class:"cr-label"},"家族病史",-1)),_(p(s(d).case_record.family_history===1?"有":"无"),1)]),l("div",To,[e[135]||(e[135]=l("span",{class:"cr-label"},"妊娠哺乳史",-1)),_(p(s(d).case_record.pregnancy_history===1?"有":"无"),1)])])]),l("div",Io,[e[139]||(e[139]=l("div",{class:"cr-section-title"},"诊断信息",-1)),(E=s(d).case_record.tongue_images)!=null&&E.length?(f(),y("div",Eo,[l("div",Oo,[e[137]||(e[137]=l("span",{class:"cr-label"},"舌苔照片",-1)),l("div",Ao,[(f(!0),y(T,null,j(s(d).case_record.tongue_images,(c,$)=>(f(),y("img",{key:$,src:Xt(c),class:"cr-img",crossorigin:"anonymous"},null,8,zo))),128))])])])):k("",!0),l("div",Ho,[l("div",Lo,[e[138]||(e[138]=l("span",{class:"cr-label"},"舌象",-1)),_(p(s(d).case_record.tongue_coating||"—"),1)])])])])])],512)):k("",!0)]),s(d)&&(s(d).audit_by_name||s(d).audit_remark)?(f(),y("div",Mo,[s(d).audit_by_name?(f(),y("div",Wo,[_(" 审核人:"+p(s(d).audit_by_name)+" ",1),s(d).audit_time?(f(),y("span",Fo,p(Ht(s(d).audit_time)),1)):k("",!0)])):k("",!0),s(d).audit_remark?(f(),y("div",jo,"审核意见:"+p(s(d).audit_remark),1)):k("",!0)])):k("",!0),l("div",Bo,[o(g,{onClick:gs},{default:i(()=>[o(Y,null,{default:i(()=>[o(s(ta))]),_:1}),e[140]||(e[140]=_(" 下载图片 ",-1))]),_:1}),o(g,{type:"primary",onClick:fs},{default:i(()=>[o(Y,null,{default:i(()=>[o(s(sa))]),_:1}),e[141]||(e[141]=_(" 下载PDF ",-1))]),_:1}),s(d).void_status!==1&&!s(ie)?(f(),U(se,{key:0,disabled:!s(ze),content:"该处方已存在业务订单,无法作废,请前往已开处方里修改",placement:"top"},{default:i(()=>[l("span",Go,[o(g,{type:"danger",plain:"",disabled:s(ze),loading:s(be),onClick:us},{default:i(()=>[...e[142]||(e[142]=[_(" 作废处方 ",-1)])]),_:1},8,["disabled","loading"])])]),_:1},8,["disabled"])):k("",!0),s(ie)?k("",!0):(f(),U(g,{key:1,onClick:ps},{default:i(()=>[...e[143]||(e[143]=[_("新建处方",-1)])]),_:1})),o(g,{onClick:$e},{default:i(()=>[...e[144]||(e[144]=[_("关闭",-1)])]),_:1})])])):(f(),y("div",ra,[o(W,{ref_key:"formRef",ref:$t,model:s(a),"label-width":"100px",class:"prescription-form"},{default:i(()=>[l("div",ia,[e[43]||(e[43]=l("div",{class:"section-title"},"患者信息",-1)),o(b,{gutter:16},{default:i(()=>[o(r,{span:8},{default:i(()=>[o(n,{label:"姓名"},{default:i(()=>[l("span",null,p(s(a).patient_name),1)]),_:1})]),_:1}),o(r,{span:8},{default:i(()=>[o(n,{label:"性别"},{default:i(()=>[l("span",null,p(s(a).gender_desc),1)]),_:1})]),_:1}),o(r,{span:8},{default:i(()=>[o(n,{label:"年龄"},{default:i(()=>[l("span",null,p(s(a).age),1)]),_:1})]),_:1}),o(r,{span:12},{default:i(()=>[o(n,{label:"电话"},{default:i(()=>[l("span",null,p(s(a).phone),1)]),_:1})]),_:1}),o(r,{span:12},{default:i(()=>[o(n,{label:"门诊号"},{default:i(()=>[o(m,{modelValue:s(a).visit_no,"onUpdate:modelValue":e[0]||(e[0]=c=>s(a).visit_no=c),placeholder:"门诊号"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),l("div",da,[e[44]||(e[44]=l("div",{class:"section-title"},"诊断信息",-1)),o(b,{gutter:16},{default:i(()=>[o(r,{span:12},{default:i(()=>[o(n,{label:"面象",prop:"pulse"},{default:i(()=>[o(m,{modelValue:s(a).pulse,"onUpdate:modelValue":e[1]||(e[1]=c=>s(a).pulse=c),placeholder:"面象"},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:12},{default:i(()=>[o(n,{label:"舌象",prop:"tongue"},{default:i(()=>[o(m,{modelValue:s(a).tongue,"onUpdate:modelValue":e[2]||(e[2]=c=>s(a).tongue=c),placeholder:"舌象"},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:24},{default:i(()=>[o(n,{label:"临床诊断",prop:"clinical_diagnosis"},{default:i(()=>[o(m,{modelValue:s(a).clinical_diagnosis,"onUpdate:modelValue":e[3]||(e[3]=c=>s(a).clinical_diagnosis=c),type:"textarea",rows:2,placeholder:"请输入临床诊断"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),l("div",ua,[l("div",ca,[l("div",pa,[e[47]||(e[47]=l("span",{class:"rp-toolbar__marker","aria-hidden":"true"},null,-1)),l("div",_a,[e[46]||(e[46]=l("h3",{class:"rp-toolbar__heading"},[_(" 中药处方 "),l("span",{class:"rp-toolbar__abbr"},"(RP)")],-1)),l("p",ma,[e[45]||(e[45]=_(" 共 ",-1)),l("strong",null,p(s(a).herbs.length),1),_(" 味(主方 "+p(s(Lt))+" / 辅方 "+p(s(Mt))+")· 可手动添加、从处方库或粘贴药方批量录入 ",1)])])]),l("div",ga,[o(g,{type:"primary",size:"small",icon:s(Qs),onClick:e[4]||(e[4]=c=>gt("主方"))},{default:i(()=>[...e[48]||(e[48]=[_(" 添加主方 ",-1)])]),_:1},8,["icon"]),o(g,{type:"primary",plain:"",size:"small",onClick:e[5]||(e[5]=c=>gt("辅方"))},{default:i(()=>[...e[49]||(e[49]=[_(" 添加辅方 ",-1)])]),_:1}),o(g,{type:"primary",plain:"",size:"small",icon:s(Zs),onClick:ns},{default:i(()=>[...e[50]||(e[50]=[_(" 从处方库导入 ",-1)])]),_:1},8,["icon"]),o(g,{type:"primary",plain:"",size:"small",icon:s(ea),onClick:qt},{default:i(()=>[...e[51]||(e[51]=[_(" 导入药方 ",-1)])]),_:1},8,["icon"])])]),l("div",fa,[o(n,{label:"处方价格",prop:"amount",class:"!mb-0"},{default:i(()=>[o(v,{modelValue:s(a).amount,"onUpdate:modelValue":e[6]||(e[6]=c=>s(a).amount=c),min:0,precision:2,placeholder:"请输入处方总价(元)",class:"!w-40"},null,8,["modelValue"]),e[52]||(e[52]=l("span",{class:"ml-2 text-gray-500"},"元",-1))]),_:1})]),l("div",ba,[l("div",va,[o(w,{type:"primary",size:"small"},{default:i(()=>[...e[53]||(e[53]=[_("主方",-1)])]),_:1})]),l("div",ya,[(f(!0),y(T,null,j(s(Ke),c=>(f(),y("div",{key:"main-"+c.index,class:St(["herb-editor-card",{"herb-editor-card--dup":pe(c.index)}])},[l("div",xa,"主方 "+p(c.index+1),1),o(xt,{modelValue:s(a).herbs[c.index].name,"onUpdate:modelValue":$=>s(a).herbs[c.index].name=$,class:"herb-editor-card__select"},null,8,["modelValue","onUpdate:modelValue"]),pe(c.index)?(f(),y("div",ha," 该药名与其他行重复,请合并剂量或删除多余行 ")):k("",!0),l("div",ka,[o(v,{modelValue:s(a).herbs[c.index].dosage,"onUpdate:modelValue":$=>s(a).herbs[c.index].dosage=$,min:.1,step:1,precision:1,placeholder:"剂量(克)",class:"herb-editor-card__dose"},null,8,["modelValue","onUpdate:modelValue"]),e[55]||(e[55]=l("span",{class:"text-gray-500 shrink-0"},"克",-1)),o(g,{type:"danger",size:"small",link:"",onClick:$=>ft(c.index)},{default:i(()=>[...e[54]||(e[54]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])])],2))),128))])]),l("div",Va,[l("div",wa,[o(w,{type:"warning",size:"small"},{default:i(()=>[...e[56]||(e[56]=[_("辅方",-1)])]),_:1})]),l("div",Sa,[(f(!0),y(T,null,j(s(Z),c=>(f(),y("div",{key:"aux-"+c.index,class:St(["herb-editor-card",{"herb-editor-card--dup":pe(c.index)}])},[e[59]||(e[59]=l("div",{class:"herb-editor-card__title"},"辅方",-1)),o(xt,{modelValue:s(a).herbs[c.index].name,"onUpdate:modelValue":$=>s(a).herbs[c.index].name=$,class:"herb-editor-card__select"},null,8,["modelValue","onUpdate:modelValue"]),pe(c.index)?(f(),y("div",Na," 该药名与其他行重复,请合并剂量或删除多余行 ")):k("",!0),l("div",Ua,[o(v,{modelValue:s(a).herbs[c.index].dosage,"onUpdate:modelValue":$=>s(a).herbs[c.index].dosage=$,min:.1,step:1,precision:1,placeholder:"剂量(克)",class:"herb-editor-card__dose"},null,8,["modelValue","onUpdate:modelValue"]),e[58]||(e[58]=l("span",{class:"text-gray-500 shrink-0"},"克",-1)),o(g,{type:"danger",size:"small",link:"",onClick:$=>ft(c.index)},{default:i(()=>[...e[57]||(e[57]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])])],2))),128)),s(Z).length?k("",!0):(f(),y("p",Ca,"暂无辅方药材"))])])]),l("div",$a,[o(b,{gutter:16},{default:i(()=>[o(r,{span:8},{default:i(()=>[o(n,{label:"处方类型",prop:"prescription_type"},{default:i(()=>[o(N,{modelValue:s(a).prescription_type,"onUpdate:modelValue":e[7]||(e[7]=c=>s(a).prescription_type=c),placeholder:"请选择处方类型",class:"!w-full"},{default:i(()=>[o(u,{label:"浓缩水丸",value:"浓缩水丸"}),o(u,{label:"饮片",value:"饮片"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(r,{span:24},{default:i(()=>[...e[60]||(e[60]=[l("div",{class:"usage-formula-title usage-formula-title--main"},"主方用法",-1)])]),_:1}),o(r,{span:8},{default:i(()=>[o(n,{label:"用量",prop:"dosage_amount"},{default:i(()=>[s(a).prescription_type==="浓缩水丸"?(f(),U(N,{key:0,modelValue:s(a).dosage_amount,"onUpdate:modelValue":e[8]||(e[8]=c=>s(a).dosage_amount=c),placeholder:"请选择用量",class:"!w-full"},{default:i(()=>[o(u,{label:"1g",value:1}),o(u,{label:"2g",value:2}),o(u,{label:"3g",value:3}),o(u,{label:"4g",value:4}),o(u,{label:"5g",value:5}),o(u,{label:"6g",value:6}),o(u,{label:"7g",value:7}),o(u,{label:"8g",value:8}),o(u,{label:"9g",value:9}),o(u,{label:"10g",value:10})]),_:1},8,["modelValue"])):s(a).prescription_type==="饮片"?(f(),U(N,{key:1,modelValue:s(a).dosage_amount,"onUpdate:modelValue":e[9]||(e[9]=c=>s(a).dosage_amount=c),placeholder:"请选择用量",class:"!w-full"},{default:i(()=>[o(u,{label:"50ml",value:50}),o(u,{label:"100ml",value:100}),o(u,{label:"120ml",value:120}),o(u,{label:"150ml",value:150}),o(u,{label:"180ml",value:180}),o(u,{label:"200ml",value:200}),o(u,{label:"250ml",value:250})]),_:1},8,["modelValue"])):(f(),U(v,{key:2,modelValue:s(a).dosage_amount,"onUpdate:modelValue":e[10]||(e[10]=c=>s(a).dosage_amount=c),min:0,precision:2,class:"!w-full"},null,8,["modelValue"])),s(a).prescription_type!=="浓缩水丸"&&s(a).prescription_type!=="饮片"?(f(),y("span",Da,p(s(a).dosage_unit),1)):k("",!0)]),_:1})]),_:1}),s(a).prescription_type==="浓缩水丸"?(f(),U(r,{key:0,span:8},{default:i(()=>[o(n,{label:" ",prop:"dosage_bag_count","label-width":"12px"},{default:i(()=>[o(N,{modelValue:s(a).dosage_bag_count,"onUpdate:modelValue":e[11]||(e[11]=c=>s(a).dosage_bag_count=c),placeholder:"请选择袋数",class:"!w-[120px]"},{default:i(()=>[o(u,{label:"1袋",value:1}),o(u,{label:"2袋",value:2}),o(u,{label:"3袋",value:3}),o(u,{label:"4袋",value:4}),o(u,{label:"5袋",value:5})]),_:1},8,["modelValue"])]),_:1})]),_:1})):k("",!0),s(a).prescription_type==="饮片"?(f(),U(r,{key:1,span:8},{default:i(()=>[o(n,{label:"每贴出包数",prop:"bags_per_dose"},{default:i(()=>[o(N,{modelValue:s(a).bags_per_dose,"onUpdate:modelValue":e[12]||(e[12]=c=>s(a).bags_per_dose=c),placeholder:"请选择",class:"!w-full"},{default:i(()=>[o(u,{label:"1包",value:1}),o(u,{label:"2包",value:2}),o(u,{label:"3包",value:3}),o(u,{label:"4包",value:4}),o(u,{label:"5包",value:5}),o(u,{label:"6包",value:6}),o(u,{label:"7包",value:7}),o(u,{label:"8包",value:8}),o(u,{label:"9包",value:9})]),_:1},8,["modelValue"])]),_:1})]),_:1})):k("",!0),s(a).prescription_type==="饮片"?(f(),U(r,{key:2,span:8},{default:i(()=>[o(n,{label:"是否代煎",prop:"need_decoction"},{default:i(()=>[o(P,{modelValue:s(a).need_decoction,"onUpdate:modelValue":e[13]||(e[13]=c=>s(a).need_decoction=c)},{default:i(()=>[o(D,{label:!0},{default:i(()=>[...e[61]||(e[61]=[_("代煎",-1)])]),_:1}),o(D,{label:!1},{default:i(()=>[...e[62]||(e[62]=[_("不代煎",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})):k("",!0),o(r,{span:8},{default:i(()=>[o(n,{label:"服用天数",prop:"usage_days"},{default:i(()=>[o(v,{modelValue:s(a).usage_days,"onUpdate:modelValue":e[14]||(e[14]=c=>s(a).usage_days=c),min:1,max:365,class:"!w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:8},{default:i(()=>[o(n,{label:"每天几次",prop:"times_per_day"},{default:i(()=>[o(v,{modelValue:s(a).times_per_day,"onUpdate:modelValue":e[15]||(e[15]=c=>s(a).times_per_day=c),min:1,max:6,class:"!w-full",placeholder:"每天服用次数"},null,8,["modelValue"])]),_:1})]),_:1}),s(Z).length>0?(f(),y(T,{key:3},[o(r,{span:24},{default:i(()=>[...e[63]||(e[63]=[l("div",{class:"usage-formula-title usage-formula-title--aux"},"辅方用法",-1)])]),_:1}),o(r,{span:8},{default:i(()=>[o(n,{label:"用量"},{default:i(()=>[s(a).prescription_type==="浓缩水丸"?(f(),U(N,{key:0,modelValue:s(a).aux_usage.dosage_amount,"onUpdate:modelValue":e[16]||(e[16]=c=>s(a).aux_usage.dosage_amount=c),placeholder:"请选择用量",class:"!w-full"},{default:i(()=>[(f(),y(T,null,j(10,c=>o(u,{key:c,label:c+"g",value:c},null,8,["label","value"])),64))]),_:1},8,["modelValue"])):s(a).prescription_type==="饮片"?(f(),U(N,{key:1,modelValue:s(a).aux_usage.dosage_amount,"onUpdate:modelValue":e[17]||(e[17]=c=>s(a).aux_usage.dosage_amount=c),placeholder:"请选择用量",class:"!w-full"},{default:i(()=>[o(u,{label:"50ml",value:50}),o(u,{label:"100ml",value:100}),o(u,{label:"120ml",value:120}),o(u,{label:"150ml",value:150}),o(u,{label:"180ml",value:180}),o(u,{label:"200ml",value:200}),o(u,{label:"250ml",value:250})]),_:1},8,["modelValue"])):(f(),U(v,{key:2,modelValue:s(a).aux_usage.dosage_amount,"onUpdate:modelValue":e[18]||(e[18]=c=>s(a).aux_usage.dosage_amount=c),min:0,precision:2,class:"!w-full"},null,8,["modelValue"]))]),_:1})]),_:1}),s(a).prescription_type==="浓缩水丸"?(f(),U(r,{key:0,span:8},{default:i(()=>[o(n,{label:" ","label-width":"12px"},{default:i(()=>[o(N,{modelValue:s(a).aux_usage.dosage_bag_count,"onUpdate:modelValue":e[19]||(e[19]=c=>s(a).aux_usage.dosage_bag_count=c),placeholder:"请选择袋数",class:"!w-[120px]"},{default:i(()=>[o(u,{label:"1袋",value:1}),o(u,{label:"2袋",value:2}),o(u,{label:"3袋",value:3}),o(u,{label:"4袋",value:4}),o(u,{label:"5袋",value:5})]),_:1},8,["modelValue"])]),_:1})]),_:1})):k("",!0),s(a).prescription_type==="饮片"?(f(),U(r,{key:1,span:8},{default:i(()=>[o(n,{label:"是否代煎"},{default:i(()=>[o(P,{modelValue:s(a).aux_usage.need_decoction,"onUpdate:modelValue":e[20]||(e[20]=c=>s(a).aux_usage.need_decoction=c)},{default:i(()=>[o(D,{label:!0},{default:i(()=>[...e[64]||(e[64]=[_("代煎",-1)])]),_:1}),o(D,{label:!1},{default:i(()=>[...e[65]||(e[65]=[_("不代煎",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})):k("",!0),s(a).prescription_type==="饮片"?(f(),U(r,{key:2,span:8},{default:i(()=>[o(n,{label:"每贴出包数"},{default:i(()=>[o(N,{modelValue:s(a).aux_usage.bags_per_dose,"onUpdate:modelValue":e[21]||(e[21]=c=>s(a).aux_usage.bags_per_dose=c),placeholder:"请选择",class:"!w-full"},{default:i(()=>[(f(),y(T,null,j(9,c=>o(u,{key:c,label:c+"包",value:c},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1})]),_:1})):k("",!0),o(r,{span:8},{default:i(()=>[o(n,{label:"每天几次"},{default:i(()=>[o(v,{modelValue:s(a).aux_usage.times_per_day,"onUpdate:modelValue":e[22]||(e[22]=c=>s(a).aux_usage.times_per_day=c),min:1,max:6,class:"!w-full",placeholder:"每天服用次数"},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:8},{default:i(()=>[o(n,{label:"服用天数"},{default:i(()=>[o(v,{modelValue:s(a).aux_usage.usage_days,"onUpdate:modelValue":e[23]||(e[23]=c=>s(a).aux_usage.usage_days=c),min:1,max:365,class:"!w-full"},null,8,["modelValue"])]),_:1})]),_:1})],64)):k("",!0),o(r,{span:24},{default:i(()=>[o(n,{label:"用法",prop:"usage_instruction"},{default:i(()=>[o(m,{modelValue:s(a).usage_instruction,"onUpdate:modelValue":e[24]||(e[24]=c=>s(a).usage_instruction=c),placeholder:"",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:12},{default:i(()=>[o(n,{label:"服用时间",prop:"usage_time"},{default:i(()=>[o(N,{modelValue:s(a).usage_time,"onUpdate:modelValue":e[25]||(e[25]=c=>s(a).usage_time=c),placeholder:"请选择服用时间",class:"!w-full"},{default:i(()=>[o(u,{label:"饭前",value:"饭前"}),o(u,{label:"饭后",value:"饭后"}),o(u,{label:"饭中",value:"饭中"}),o(u,{label:"空腹",value:"空腹"}),o(u,{label:"睡前",value:"睡前"}),o(u,{label:"晨起",value:"晨起"}),o(u,{label:"随时",value:"随时"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(r,{span:12},{default:i(()=>[o(n,{label:"服用方式",prop:"usage_way"},{default:i(()=>[o(N,{modelValue:s(a).usage_way,"onUpdate:modelValue":e[26]||(e[26]=c=>s(a).usage_way=c),placeholder:"请选择服用方式",class:"!w-full"},{default:i(()=>[o(u,{label:"温水送服",value:"温水送服"}),o(u,{label:"开水冲服",value:"开水冲服"}),o(u,{label:"黄酒送服",value:"黄酒送服"}),o(u,{label:"淡盐水送服",value:"淡盐水送服"}),o(u,{label:"米汤送服",value:"米汤送服"}),o(u,{label:"嚼服",value:"嚼服"}),o(u,{label:"含化",value:"含化"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(r,{span:24},{default:i(()=>[o(n,{label:"忌口",prop:"dietary_taboo"},{default:i(()=>[o(N,{modelValue:s(a).dietary_taboo,"onUpdate:modelValue":e[27]||(e[27]=c=>s(a).dietary_taboo=c),multiple:"",placeholder:"请选择忌口内容(可多选)",class:"!w-full"},{default:i(()=>[o(u,{label:"辛辣食物",value:"辛辣食物"}),o(u,{label:"生冷食物",value:"生冷食物"}),o(u,{label:"油腻食物",value:"油腻食物"}),o(u,{label:"海鲜",value:"海鲜"}),o(u,{label:"牛羊肉",value:"牛羊肉"}),o(u,{label:"鸡蛋",value:"鸡蛋"}),o(u,{label:"豆制品",value:"豆制品"}),o(u,{label:"酒类",value:"酒类"}),o(u,{label:"浓茶",value:"浓茶"}),o(u,{label:"咖啡",value:"咖啡"}),o(u,{label:"烟草",value:"烟草"}),o(u,{label:"萝卜",value:"萝卜"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(r,{span:24},{default:i(()=>[o(n,{label:"其他说明",prop:"usage_notes"},{default:i(()=>[o(m,{modelValue:s(a).usage_notes,"onUpdate:modelValue":e[28]||(e[28]=c=>s(a).usage_notes=c),type:"textarea",rows:2,placeholder:"其他服用注意事项",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:12},{default:i(()=>[o(n,{label:"医师",prop:"doctor_name"},{default:i(()=>[o(m,{modelValue:s(a).doctor_name,"onUpdate:modelValue":e[29]||(e[29]=c=>s(a).doctor_name=c),placeholder:"医师姓名"},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:12},{default:i(()=>[o(n,{label:"是否共享",prop:"is_shared"},{default:i(()=>[o(M,{modelValue:s(a).is_shared,"onUpdate:modelValue":e[30]||(e[30]=c=>s(a).is_shared=c),"active-value":1,"inactive-value":0,"active-text":"所有人可见","inactive-text":"仅自己可见"},null,8,["modelValue"])]),_:1})]),_:1}),o(r,{span:24},{default:i(()=>[o(n,{label:"医师签名",prop:"doctor_signature",required:""},{default:i(()=>[l("div",Ra,[l("canvas",{ref_key:"signatureCanvasRef",ref:H,class:"signature-canvas",onPointerdown:le(as,["prevent"]),onPointermove:le(ls,["prevent"]),onPointerup:le(mt,["prevent"]),onPointercancel:le(mt,["prevent"])},null,544),l("div",Pa,[o(g,{size:"small",onClick:os},{default:i(()=>[...e[66]||(e[66]=[_("清空签名",-1)])]),_:1})])]),e[67]||(e[67]=l("div",{class:"text-xs text-amber-600 mt-1"},"* 必填,请在框内手写医师签名",-1))]),_:1})]),_:1})]),_:1})])]),_:1},8,["model"])]))]}),_:2},[s(d)?void 0:{name:"footer",fn:i(()=>[l("div",Ko,[o(g,{onClick:$e},{default:i(()=>[...e[145]||(e[145]=[_("取消",-1)])]),_:1}),o(g,{type:"primary",onClick:is,loading:s(fe)},{default:i(()=>[...e[146]||(e[146]=[_("保存处方",-1)])]),_:1},8,["loading"])])]),key:"0"}]),1032,["modelValue","title"]),o(yt,{modelValue:s(L),"onUpdate:modelValue":e[37]||(e[37]=h=>I(L)?L.value=h:null),title:"从处方库导入",width:"800px","close-on-click-modal":!1},{default:i(()=>[l("div",qo,[o(m,{modelValue:s(ee),"onUpdate:modelValue":e[32]||(e[32]=h=>I(ee)?ee.value=h:null),class:"flex-1",placeholder:"请输入处方名称搜索",clearable:"",onKeyup:Ms(me,["enter"]),onClear:me},{append:i(()=>[o(g,{icon:s(aa),onClick:me},null,8,["icon"])]),_:1},8,["modelValue"]),o(N,{modelValue:s(te),"onUpdate:modelValue":e[33]||(e[33]=h=>I(te)?te.value=h:null),placeholder:"处方类型",clearable:"",class:"w-[140px]",onChange:me},{default:i(()=>[o(u,{label:"全部",value:""}),o(u,{label:"主方",value:"主方"}),o(u,{label:"辅方",value:"辅方"})]),_:1},8,["modelValue"])]),l("div",Jo,[e[149]||(e[149]=l("span",{class:"text-sm text-gray-600 shrink-0"},"导入方式",-1)),o(P,{modelValue:s(B),"onUpdate:modelValue":e[34]||(e[34]=h=>I(B)?B.value=h:null)},{default:i(()=>[o(D,{label:"replace"},{default:i(()=>[...e[147]||(e[147]=[_("覆盖同类型药材",-1)])]),_:1}),o(D,{label:"append"},{default:i(()=>[...e[148]||(e[148]=[_("追加到末尾",-1)])]),_:1})]),_:1},8,["modelValue"])]),na((f(),U(bs,{data:s(ke),height:"400",onRowClick:rs,style:{cursor:"pointer"}},{default:i(()=>[o(F,{label:"处方名称",prop:"prescription_name","min-width":"150","show-overflow-tooltip":""}),o(F,{label:"处方类型",width:"90"},{default:i(({row:h})=>[o(w,{type:h.formula_type==="辅方"?"warning":"primary",size:"small"},{default:i(()=>[_(p(h.formula_type||"主方"),1)]),_:2},1032,["type"])]),_:1}),o(F,{label:"药材数量",width:"100"},{default:i(({row:h})=>{var E;return[_(p(((E=h.herbs)==null?void 0:E.length)||0)+"味 ",1)]}),_:1}),o(F,{label:"药材明细","min-width":"300","show-overflow-tooltip":""},{default:i(({row:h})=>[h.herbs&&h.herbs.length>0?(f(),y("span",Yo,p(h.herbs.map(E=>`${E.name} ${E.dosage}g`).join("、")),1)):(f(),y("span",Xo,"暂无药材"))]),_:1}),o(F,{label:"是否公开",width:"110"},{default:i(({row:h})=>[o(w,{type:h.is_public?"success":"info",size:"small"},{default:i(()=>[_(p(h.is_public?"所有人可见":"仅自己可见"),1)]),_:2},1032,["type"])]),_:1}),o(F,{label:"创建人",prop:"creator_name",width:"100"}),o(F,{label:"操作",width:"100",fixed:"right"},{default:i(({row:h})=>[o(g,{type:"primary",link:"",onClick:le(E=>bt(h),["stop"])},{default:i(()=>[...e[150]||(e[150]=[_(" 导入 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[ys,s(he)]]),l("div",Qo,[o(vs,{"current-page":s(K),"onUpdate:currentPage":e[35]||(e[35]=h=>I(K)?K.value=h:null),"page-size":s(ue),"onUpdate:pageSize":e[36]||(e[36]=h=>I(ue)?ue.value=h:null),total:s(Ve),"page-sizes":[10,15,20,50],layout:"total, sizes, prev, pager, next",onCurrentChange:_e,onSizeChange:_e},null,8,["current-page","page-size","total"])])]),_:1},8,["modelValue"]),o(yt,{modelValue:s(q),"onUpdate:modelValue":e[41]||(e[41]=h=>I(q)?q.value=h:null),title:"导入药方(识别药材)",width:"560px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[42]||(e[42]=h=>J.value="")},{footer:i(()=>[o(g,{onClick:e[40]||(e[40]=h=>q.value=!1)},{default:i(()=>[...e[155]||(e[155]=[_("取消",-1)])]),_:1}),o(g,{type:"primary",loading:s(we),onClick:Jt},{default:i(()=>[...e[156]||(e[156]=[_(" 识别并导入 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[e[157]||(e[157]=l("p",{class:"text-gray-500 text-sm mb-2 leading-relaxed"}," 粘贴整张药方文本,系统按「药名 + 剂量」解析;药名须与药品库中名称完全一致才会录入,否则跳过。支持顿号/逗号/换行分隔;单行可用空格分味(如「黄芪15g 白术10g」);「黄芪、党参各10克」等同剂量写法亦可识别。 ",-1)),o(m,{modelValue:s(J),"onUpdate:modelValue":e[38]||(e[38]=h=>I(J)?J.value=h:null),type:"textarea",rows:10,placeholder:`示例: 黄芪15 党参12 茯苓10 diff --git a/server/public/admin/assets/index-DMnmuOhU.js b/server/public/admin/assets/index-C6BRrxYh.js similarity index 96% rename from server/public/admin/assets/index-DMnmuOhU.js rename to server/public/admin/assets/index-C6BRrxYh.js index 5cfcd836..c6c937c8 100644 --- a/server/public/admin/assets/index-DMnmuOhU.js +++ b/server/public/admin/assets/index-C6BRrxYh.js @@ -1 +1 @@ -var A=Object.defineProperty;var F=(e,r,s)=>r in e?A(e,r,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[r]=s;var U=(e,r,s)=>F(e,typeof r!="symbol"?r+"":r,s);import{$ as M,a0 as N,V}from"./element-plus-DFTWCWyi.js";import{u as j,e as K,q as _,R as b,i as w,_ as H}from"./index-Nt5zMHcc.js";import{C as x}from"./cos-js-sdk-v5-DSMN0LUT.js";import{j as J,k as X}from"./file-dC1LMm1W.js";import{f as G,A as C,ak as E,I as $,a as z,aN as D,aq as Q,G as W,J as P,F as Y,ap as Z,H as ee}from"./@vue/runtime-core-C6bnekPw.js";import{n as L,q as re}from"./@vue/reactivity-DiY1c2vO.js";import{Q as ae}from"./@vue/shared-mAAVTE9n.js";const te=5*1024*1024,se=3;function le(e,r){const s=(r.name.split(".").pop()||"mp4").toLowerCase(),S=Date.now(),p=Math.random().toString(36).slice(2,10);return`${e}${S}-${p}.${s}`}async function ne(e){var o,d;const r=await J({type:e.type});if(r.fallback)throw((o=e.onFallback)==null?void 0:o.call(e,r.provider))??!1?new T(r.provider):new T(r.provider);if(!r.credentials||!r.bucket||!r.region||!r.key_prefix)throw new Error("STS 凭证返回缺失字段");if(r.max_size&&e.file.size>r.max_size){const m=Math.round(r.max_size/1024/1024);throw new Error(`视频体积超出上限(${m}MB)`)}const s=r.credentials,S=r.expired_time??0,p=r.start_time??Math.floor(Date.now()/1e3),y=new x({getAuthorization(m,i){i({TmpSecretId:s.tmpSecretId,TmpSecretKey:s.tmpSecretKey,SecurityToken:s.sessionToken,StartTime:p,ExpiredTime:S})}}),h=le(r.key_prefix,e.file);await new Promise((m,i)=>{y.uploadFile({Bucket:r.bucket,Region:r.region,Key:h,Body:e.file,SliceSize:te,AsyncLimit:se,onProgress(f){if(!e.onProgress)return;const k=f.total||e.file.size;e.onProgress({percent:Math.min(99,Math.round((f.percent||0)*100)),loaded:f.loaded||0,total:k,speed:f.speed||0})}},f=>{if(f){i(f);return}m()})});const u=await X({type:e.type,key:h,name:e.file.name,size:e.file.size,content_type:e.file.type||"",cid:e.cid??0});return(d=e.onProgress)==null||d.call(e,{percent:100,loaded:e.file.size,total:e.file.size,speed:0}),u}class T extends Error{constructor(s){super(`COS 直传不可用,当前驱动: ${s}`);U(this,"provider");this.name="DirectUploadFallbackError",this.provider=s}}const ce=G({components:{},props:{type:{type:String,default:"image"},multiple:{type:Boolean,default:!0},limit:{type:Number,default:10},data:{type:Object,default:()=>({})},showProgress:{type:Boolean,default:!1},direct:{type:Boolean,default:!1}},emits:["change","error","success","allSuccess"],setup(e,{emit:r}){const s=j(),S=K(),p=re(),y=L(`${_.baseUrl}${_.urlPrefix}/upload/${e.type}`),h=C(()=>({token:s.token,version:S.config.version})),u=L(!1),o=L([]),d=C(()=>e.direct&&e.type==="video"),m=()=>{u.value=!0};let i=0;const f=(a,n)=>{i++,i==o.value.length&&(i=0,o.value=[],r("allSuccess")),r("change",n),a.code==b.SUCCESS&&r("success",a),a.code==b.FAIL&&a.msg&&w.msgError(a.msg)},k=(a,n)=>{var l;i++,i==o.value.length&&(i=0,o.value=[],r("allSuccess")),w.msgError(`${n.name}文件上传失败`),(l=p.value)==null||l.abort(n),u.value=!1,r("change",n),r("error",n)},q=()=>{w.msgError(`超出上传上限${e.limit},请重新上传`)},B=()=>{o.value=[],u.value=!1},R=C(()=>{switch(e.type){case"image":return".jpg,.png,.gif,.jpeg,.ico";case"video":return".wmv,.avi,.mpg,.mpeg,.3gp,.mov,.mp4,.flv,.rmvb,.mkv";default:return"*"}}),I=async a=>{var n,l,v;u.value=!0;try{const t=await ne({file:a.file,type:"video",cid:Number(((n=a.data)==null?void 0:n.cid)??0),onProgress(c){var g;(g=a.onProgress)==null||g.call(a,{percent:c.percent,loaded:c.loaded,total:c.total})}});(l=a.onSuccess)==null||l.call(a,{code:b.SUCCESS,msg:"ok",data:t})}catch(t){if(t instanceof T){w.msgWarning("当前存储不支持直传,已切换为普通上传"),await O(a);return}(v=a.onError)==null||v.call(a,t instanceof Error?t:new Error(String((t==null?void 0:t.message)??t)))}},O=a=>new Promise(n=>{const l=new XMLHttpRequest;l.open("POST",y.value),Object.entries(h.value).forEach(([t,c])=>l.setRequestHeader(t,String(c??""))),l.upload.onprogress=t=>{var g;if(!t.lengthComputable)return;const c=t.loaded/t.total*100;(g=a.onProgress)==null||g.call(a,{percent:c,loaded:t.loaded,total:t.total})},l.onload=()=>{var t,c;try{const g=JSON.parse(l.responseText);(t=a.onSuccess)==null||t.call(a,g)}catch{(c=a.onError)==null||c.call(a,new Error("上传响应解析失败"))}n()},l.onerror=()=>{var t;(t=a.onError)==null||t.call(a,new Error("网络错误")),n()};const v=new FormData;v.append("file",a.file),Object.entries(a.data||{}).forEach(([t,c])=>v.append(t,String(c))),l.send(v)});return{uploadRefs:p,action:y,headers:h,visible:u,fileList:o,useDirect:d,httpRequest:I,getAccept:R,handleProgress:m,handleSuccess:f,handleError:k,handleExceed:q,handleClose:B}}}),oe={class:"upload"},de={class:"file-list p-4"},ie={class:"flex-1"};function ue(e,r,s,S,p,y){const h=M,u=N,o=V;return E(),$("div",oe,[z(h,{"file-list":e.fileList,"onUpdate:fileList":r[0]||(r[0]=d=>e.fileList=d),ref:"uploadRefs",action:e.action,multiple:e.multiple,limit:e.limit,"show-file-list":!1,headers:e.headers,data:e.data,"http-request":e.useDirect?e.httpRequest:void 0,"on-progress":e.handleProgress,"on-success":e.handleSuccess,"on-exceed":e.handleExceed,"on-error":e.handleError,accept:e.getAccept},{default:D(()=>[Q(e.$slots,"default")]),_:3},8,["file-list","action","multiple","limit","headers","data","http-request","on-progress","on-success","on-exceed","on-error","accept"]),e.showProgress&&e.fileList.length?(E(),W(o,{key:0,modelValue:e.visible,"onUpdate:modelValue":r[1]||(r[1]=d=>e.visible=d),title:"上传进度","close-on-click-modal":!1,width:"500px",modal:!1,onClose:e.handleClose},{default:D(()=>[P("div",de,[(E(!0),$(Y,null,Z(e.fileList,(d,m)=>(E(),$("div",{key:m,class:"mb-5"},[P("div",null,ae(d.name),1),P("div",ie,[z(u,{percentage:parseInt(d.percentage)},null,8,["percentage"])])]))),128))])]),_:1},8,["modelValue","onClose"])):ee("",!0)])}const we=H(ce,[["render",ue]]);export{we as U}; +var A=Object.defineProperty;var F=(e,r,s)=>r in e?A(e,r,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[r]=s;var U=(e,r,s)=>F(e,typeof r!="symbol"?r+"":r,s);import{$ as M,a0 as N,V}from"./element-plus-DFTWCWyi.js";import{u as j,e as K,q as _,R as b,i as w,_ as H}from"./index--WnM67ZH.js";import{C as x}from"./cos-js-sdk-v5-DSMN0LUT.js";import{j as J,k as X}from"./file-B0kKUfF_.js";import{f as G,A as C,ak as E,I as $,a as z,aN as D,aq as Q,G as W,J as P,F as Y,ap as Z,H as ee}from"./@vue/runtime-core-C6bnekPw.js";import{n as L,q as re}from"./@vue/reactivity-DiY1c2vO.js";import{Q as ae}from"./@vue/shared-mAAVTE9n.js";const te=5*1024*1024,se=3;function le(e,r){const s=(r.name.split(".").pop()||"mp4").toLowerCase(),S=Date.now(),p=Math.random().toString(36).slice(2,10);return`${e}${S}-${p}.${s}`}async function ne(e){var o,d;const r=await J({type:e.type});if(r.fallback)throw((o=e.onFallback)==null?void 0:o.call(e,r.provider))??!1?new T(r.provider):new T(r.provider);if(!r.credentials||!r.bucket||!r.region||!r.key_prefix)throw new Error("STS 凭证返回缺失字段");if(r.max_size&&e.file.size>r.max_size){const m=Math.round(r.max_size/1024/1024);throw new Error(`视频体积超出上限(${m}MB)`)}const s=r.credentials,S=r.expired_time??0,p=r.start_time??Math.floor(Date.now()/1e3),y=new x({getAuthorization(m,i){i({TmpSecretId:s.tmpSecretId,TmpSecretKey:s.tmpSecretKey,SecurityToken:s.sessionToken,StartTime:p,ExpiredTime:S})}}),h=le(r.key_prefix,e.file);await new Promise((m,i)=>{y.uploadFile({Bucket:r.bucket,Region:r.region,Key:h,Body:e.file,SliceSize:te,AsyncLimit:se,onProgress(f){if(!e.onProgress)return;const k=f.total||e.file.size;e.onProgress({percent:Math.min(99,Math.round((f.percent||0)*100)),loaded:f.loaded||0,total:k,speed:f.speed||0})}},f=>{if(f){i(f);return}m()})});const u=await X({type:e.type,key:h,name:e.file.name,size:e.file.size,content_type:e.file.type||"",cid:e.cid??0});return(d=e.onProgress)==null||d.call(e,{percent:100,loaded:e.file.size,total:e.file.size,speed:0}),u}class T extends Error{constructor(s){super(`COS 直传不可用,当前驱动: ${s}`);U(this,"provider");this.name="DirectUploadFallbackError",this.provider=s}}const ce=G({components:{},props:{type:{type:String,default:"image"},multiple:{type:Boolean,default:!0},limit:{type:Number,default:10},data:{type:Object,default:()=>({})},showProgress:{type:Boolean,default:!1},direct:{type:Boolean,default:!1}},emits:["change","error","success","allSuccess"],setup(e,{emit:r}){const s=j(),S=K(),p=re(),y=L(`${_.baseUrl}${_.urlPrefix}/upload/${e.type}`),h=C(()=>({token:s.token,version:S.config.version})),u=L(!1),o=L([]),d=C(()=>e.direct&&e.type==="video"),m=()=>{u.value=!0};let i=0;const f=(a,n)=>{i++,i==o.value.length&&(i=0,o.value=[],r("allSuccess")),r("change",n),a.code==b.SUCCESS&&r("success",a),a.code==b.FAIL&&a.msg&&w.msgError(a.msg)},k=(a,n)=>{var l;i++,i==o.value.length&&(i=0,o.value=[],r("allSuccess")),w.msgError(`${n.name}文件上传失败`),(l=p.value)==null||l.abort(n),u.value=!1,r("change",n),r("error",n)},q=()=>{w.msgError(`超出上传上限${e.limit},请重新上传`)},B=()=>{o.value=[],u.value=!1},R=C(()=>{switch(e.type){case"image":return".jpg,.png,.gif,.jpeg,.ico";case"video":return".wmv,.avi,.mpg,.mpeg,.3gp,.mov,.mp4,.flv,.rmvb,.mkv";default:return"*"}}),I=async a=>{var n,l,v;u.value=!0;try{const t=await ne({file:a.file,type:"video",cid:Number(((n=a.data)==null?void 0:n.cid)??0),onProgress(c){var g;(g=a.onProgress)==null||g.call(a,{percent:c.percent,loaded:c.loaded,total:c.total})}});(l=a.onSuccess)==null||l.call(a,{code:b.SUCCESS,msg:"ok",data:t})}catch(t){if(t instanceof T){w.msgWarning("当前存储不支持直传,已切换为普通上传"),await O(a);return}(v=a.onError)==null||v.call(a,t instanceof Error?t:new Error(String((t==null?void 0:t.message)??t)))}},O=a=>new Promise(n=>{const l=new XMLHttpRequest;l.open("POST",y.value),Object.entries(h.value).forEach(([t,c])=>l.setRequestHeader(t,String(c??""))),l.upload.onprogress=t=>{var g;if(!t.lengthComputable)return;const c=t.loaded/t.total*100;(g=a.onProgress)==null||g.call(a,{percent:c,loaded:t.loaded,total:t.total})},l.onload=()=>{var t,c;try{const g=JSON.parse(l.responseText);(t=a.onSuccess)==null||t.call(a,g)}catch{(c=a.onError)==null||c.call(a,new Error("上传响应解析失败"))}n()},l.onerror=()=>{var t;(t=a.onError)==null||t.call(a,new Error("网络错误")),n()};const v=new FormData;v.append("file",a.file),Object.entries(a.data||{}).forEach(([t,c])=>v.append(t,String(c))),l.send(v)});return{uploadRefs:p,action:y,headers:h,visible:u,fileList:o,useDirect:d,httpRequest:I,getAccept:R,handleProgress:m,handleSuccess:f,handleError:k,handleExceed:q,handleClose:B}}}),oe={class:"upload"},de={class:"file-list p-4"},ie={class:"flex-1"};function ue(e,r,s,S,p,y){const h=M,u=N,o=V;return E(),$("div",oe,[z(h,{"file-list":e.fileList,"onUpdate:fileList":r[0]||(r[0]=d=>e.fileList=d),ref:"uploadRefs",action:e.action,multiple:e.multiple,limit:e.limit,"show-file-list":!1,headers:e.headers,data:e.data,"http-request":e.useDirect?e.httpRequest:void 0,"on-progress":e.handleProgress,"on-success":e.handleSuccess,"on-exceed":e.handleExceed,"on-error":e.handleError,accept:e.getAccept},{default:D(()=>[Q(e.$slots,"default")]),_:3},8,["file-list","action","multiple","limit","headers","data","http-request","on-progress","on-success","on-exceed","on-error","accept"]),e.showProgress&&e.fileList.length?(E(),W(o,{key:0,modelValue:e.visible,"onUpdate:modelValue":r[1]||(r[1]=d=>e.visible=d),title:"上传进度","close-on-click-modal":!1,width:"500px",modal:!1,onClose:e.handleClose},{default:D(()=>[P("div",de,[(E(!0),$(Y,null,Z(e.fileList,(d,m)=>(E(),$("div",{key:m,class:"mb-5"},[P("div",null,ae(d.name),1),P("div",ie,[z(u,{percentage:parseInt(d.percentage)},null,8,["percentage"])])]))),128))])]),_:1},8,["modelValue","onClose"])):ee("",!0)])}const we=H(ce,[["render",ue]]);export{we as U}; diff --git a/server/public/admin/assets/index-CQ2KSFsf.js b/server/public/admin/assets/index-CBm-WmPc.js similarity index 87% rename from server/public/admin/assets/index-CQ2KSFsf.js rename to server/public/admin/assets/index-CBm-WmPc.js index 04b071cf..3e34f11d 100644 --- a/server/public/admin/assets/index-CQ2KSFsf.js +++ b/server/public/admin/assets/index-CBm-WmPc.js @@ -1 +1 @@ -import{m as c,l as f,J as u}from"./element-plus-DFTWCWyi.js";import{a as y}from"./index--GZeyamQ.js";import{f as i,ak as m,I as a,a as o,aN as p,F as b,ap as x}from"./@vue/runtime-core-C6bnekPw.js";import{a as g,y as v,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{_ as E}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-BQY2-_X1.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const V={class:"material-index"},z=i({name:"material"}),C=i({...z,setup(T){const n=[{type:"image",name:"图片"},{type:"video",name:"视频"},{type:"file",name:"文件"}],e=k("image");return(h,r)=>{const s=y,l=f,_=c,d=u;return m(),a("div",V,[o(d,{class:"!border-none",shadow:"never"},{default:p(()=>[o(_,{modelValue:v(e),"onUpdate:modelValue":r[0]||(r[0]=t=>g(e)?e.value=t:null)},{default:p(()=>[(m(),a(b,null,x(n,t=>o(l,{label:t.name,name:t.type,index:t.type,key:t.type,lazy:""},{default:p(()=>[o(s,{type:t.type,mode:"page","file-size":"120px",limit:-1,"page-size":20},null,8,["type"])]),_:2},1032,["label","name","index"])),64))]),_:1},8,["modelValue"])]),_:1})])}}}),vt=E(C,[["__scopeId","data-v-01f37926"]]);export{vt as default}; +import{m as c,l as f,J as u}from"./element-plus-DFTWCWyi.js";import{a as y}from"./index-CH2au-Zf.js";import{f as i,ak as m,I as a,a as o,aN as p,F as b,ap as x}from"./@vue/runtime-core-C6bnekPw.js";import{a as g,y as v,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{_ as E}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-SocYjCJ1.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const V={class:"material-index"},z=i({name:"material"}),C=i({...z,setup(T){const n=[{type:"image",name:"图片"},{type:"video",name:"视频"},{type:"file",name:"文件"}],e=k("image");return(h,r)=>{const s=y,l=f,_=c,d=u;return m(),a("div",V,[o(d,{class:"!border-none",shadow:"never"},{default:p(()=>[o(_,{modelValue:v(e),"onUpdate:modelValue":r[0]||(r[0]=t=>g(e)?e.value=t:null)},{default:p(()=>[(m(),a(b,null,x(n,t=>o(l,{label:t.name,name:t.type,index:t.type,key:t.type,lazy:""},{default:p(()=>[o(s,{type:t.type,mode:"page","file-size":"120px",limit:-1,"page-size":20},null,8,["type"])]),_:2},1032,["label","name","index"])),64))]),_:1},8,["modelValue"])]),_:1})])}}}),vt=E(C,[["__scopeId","data-v-01f37926"]]);export{vt as default}; diff --git a/server/public/admin/assets/index-CPlRrjKY.js b/server/public/admin/assets/index-CEfu2Pd8.js similarity index 95% rename from server/public/admin/assets/index-CPlRrjKY.js rename to server/public/admin/assets/index-CEfu2Pd8.js index 621c987c..81bd960b 100644 --- a/server/public/admin/assets/index-CPlRrjKY.js +++ b/server/public/admin/assets/index-CEfu2Pd8.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-CsfWrQHN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DCW3HTOw.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/patient-BKtZKzsB.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-D9Zbpq2C.js","assets/appointment-BiJAofxT.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-D7UD5Dzu.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]); -import{_ as _e}from"./jspdf-BsthCvR5.js";import{a2 as _a,C as ga,i as fa,d as va,P as ya,Q as ha,J as ka,M as ba,N as Ca,T as xa,r as Da,p as Va,n as Aa,o as Ea,L as wa,R as Ra,ac as Ia,ad as $a,e as Sa,V as La,D as Na,B as za,h as Pa,aa as Ta,ab as Wa,U as Fa,v as Ma}from"./element-plus-DFTWCWyi.js";import{_ as Ya}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as yt,q as Oa,s as Ze}from"./@vue/runtime-dom-DDAG46FW.js";import{aj as W,a as Ua,K as qa,ak as Se,al as Qa,am as Ba,Y as ht,an as kt,ao as Ga,ap as Ha,aq as Ka,ar as ja}from"./tcm-DCW3HTOw.js";import{i as Ja}from"./order-6mkZv6ss.js";import{m as bt}from"./doctor-B7qEhSpt.js";import{u as Xa}from"./usePaging-VsbTxSU0.js";import{u as Za,m as Ct,i as g,_ as es}from"./index-Nt5zMHcc.js";import{g as xt}from"./weapp-BTxqP8mz.js";import{h as F}from"./perm-DkIPMPyD.js";import{e as Dt,X as ts,ab as ns,O as Vt,b as as,a7 as ss,G as is,H as ls,l as os}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as ds,a as rs}from"./vue-router-QlpZ4wdW.js";import{d as Le}from"./dayjs-DG77mNTn.js";import{f as At,w as us,b as ms,d as ps,as as cs,ak as o,I as u,a as i,aN as s,J as d,F as A,ap as $,O as m,H as C,aP as w,G as f,P as ge,A as X}from"./@vue/runtime-core-C6bnekPw.js";import{o as M,Q as p}from"./@vue/shared-mAAVTE9n.js";import{y as a,a as B,r as et,n as c}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const _s={class:"tcm-diagnosis"},gs={class:"filter-main"},fs={class:"date-chips"},vs=["onClick"],ys={key:0},hs={key:0},ks={key:0},bs={class:"pending-assign-wrap"},Cs={key:0},xs={class:"search-row"},Ds={class:"filter-chips"},Vs=["onClick"],As=["onClick"],Es={class:"filter-more"},ws={class:"list-header"},Rs={class:"list-actions"},Is={key:0,class:"list-selected"},$s={class:"table-wrap px-4"},Ss={class:"patient-cell"},Ls={class:"patient-info"},Ns={class:"patient-name"},zs={class:"patient-cell"},Ps={class:"patient-info"},Ts={class:"patient-name"},Ws={class:"apt-badge"},Fs={class:"apt-doctor"},Ms={class:"apt-time"},Ys={key:0,class:"apt-actions"},Os={class:"apt-badge"},Us={class:"apt-doctor"},qs={class:"apt-time"},Qs={key:1,class:"apt-none"},Bs={key:0,class:"status-confirmed"},Gs={key:1,class:"status-unconfirmed"},Hs={key:0,class:"followup-cell"},Ks={class:"followup-time"},js={class:"followup-doctor"},Js={key:1,class:"followup-none"},Xs={class:"assistant-cell"},Zs={key:0,class:"status-prescribed"},ei={key:1,class:"status-unprescribed"},ti={key:1,class:"unserved-days unserved-muted"},ni={class:"video-watch-col"},ai={class:"video-watch-trigger"},si={key:1,class:"video-watch-muted"},ii={key:1,class:"video-watch-muted"},li={class:"pagination-wrap"},oi={class:"min-h-[100px]"},di={key:0,class:"text-sm text-gray-600 mb-4 pb-3 border-b border-gray-100"},ri={class:"font-medium text-gray-800"},ui={class:"flex flex-wrap items-center gap-2"},mi={class:"text-sm font-medium text-gray-800"},pi={class:"text-xs text-gray-600 mt-1.5 leading-relaxed"},ci={class:"flex flex-col items-center justify-center py-4"},_i={key:0,class:"text-center"},gi={key:1,class:"text-center"},fi=["src"],vi={class:"mt-4 text-sm text-gray-600"},yi={class:"mt-2"},hi={key:2,class:"text-center text-gray-500"},ki={class:"text-gray-500"},bi={class:"text-gray-500"},Ci={class:"font-medium"},xi={class:"font-medium"},Di={key:0,class:"mb-4"},Vi={key:0},Ai={key:0,class:"mt-2"},Ei={key:1,class:"mt-2"},wi={class:"mb-4"},Ri={class:"flex gap-2"},Ii={key:0,class:"text-center text-gray-400 py-10"},$i={key:1,class:"record-list"},Si={class:"record-header"},Li={class:"flex items-center gap-2"},Ni={class:"font-medium text-sm"},zi={class:"flex items-center gap-2"},Pi={class:"text-xs text-gray-400"},Ti={class:"record-content"},Wi={key:0,class:"mt-1"},Fi={key:2,class:"text-center mt-4"},Mi=At({name:"tcmDiagnosis"}),Yi=At({...Mi,setup(Oi){const Et=ge(()=>_e(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),wt=ge(()=>_e(()=>import("./detail-D9Zbpq2C.js"),__vite__mapDeps([99,45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,46,15]))),Rt=ge(()=>_e(()=>import("./index-5vSbbrqK.js"),__vite__mapDeps([90,1,2,3,4,5,6,7,8,9,10,11,12,13,14,91,92,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,93,94,15,95,96]))),It=ge(()=>_e(()=>import("./appointment-BiJAofxT.js"),__vite__mapDeps([100,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,83,101]))),$t=ge(()=>_e(()=>import("./AssistantWatchCallDialog-D7UD5Dzu.js"),__vite__mapDeps([102,1,2,3,4,5,6,7,8,9,10,11,12,13,14,103,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,104]))),St=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return Le(e).format("YYYY-MM-DD HH:mm:ss")},tt=t=>!t||t.length<11?t:t.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),l=et({keyword:"",diagnosis_type:"",syndrome_type:"",assistant_id:"",start_time:"",end_time:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",pending_assign:"",pending_booking:"",completed_appointment:"",pending_assign_order_month:"",pending_assign_keyword:""}),nt=c("all"),re=c(!1),Lt=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],Nt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],zt=t=>{l.has_appointment=t,l.pending_booking="",l.completed_appointment="",D.page=1,x(),E()},Pt=t=>{l.diagnosis_confirmed=t,l.pending_booking="",l.completed_appointment="",D.page=1,x(),E()};function Tt(t){if(!(t.pending_assign==="1"||t.pending_assign===1))return!1;const r=String(t.pending_assign_keyword??"").trim(),_=String(t.keyword??"").trim();return r!==""||_!==""}function at(t){if(!Tt(t))return t;const e=String(t.pending_assign_keyword??"").trim(),r=String(t.keyword??"").trim(),_=e!==""?e:r;return{page_no:t.page_no,page_size:t.page_size,pending_assign:1,pending_assign_keyword:_}}function Wt(){const t=String(l.pending_assign_order_month??"").trim();return t!==""?t:l.pending_assign==="1"?"":Le().format("YYYY-MM")}function Ft(){return at({...l,page_no:1,page_size:1,pending_assign:1,appointment_date:"",has_appointment:"",pending_booking:"",completed_appointment:"",pending_assign_order_month:Wt()})}const Mt=t=>W(at(t));function Yt(){if(l.pending_assign!=="1")return;const t=(l.pending_assign_keyword??"").trim(),e=(l.keyword??"").trim();t===""&&e===""||(l.appointment_date="",l.pending_booking="",l.completed_appointment="",l.diagnosis_confirmed="",l.has_appointment="",l.diagnosis_type="",l.syndrome_type="",l.assistant_id="",l.start_time="",l.end_time="",l.pending_assign_order_month="",nt.value="all",t!==""&&(l.keyword=""))}const Z=()=>{Yt(),D.page=1,x(),E()},Ot=X(()=>[{label:"昨天挂号",value:Me.value},{label:"前天挂号",value:Ye.value},{label:"当天挂号",value:ve.value},{label:"明天挂号",value:We.value},{label:"后天挂号",value:Fe.value},{label:"全部",value:""}]),Ne=c({}),ze=c(void 0),Pe=c(void 0),Te=c(void 0),Ut=async t=>{l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="",l.completed_appointment="",l.has_appointment="",l.appointment_date=t,D.page=1,await x(),E()},qt=async()=>{l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="1",l.completed_appointment="",l.appointment_date="",l.has_appointment="0",D.page=1,await x(),E()},Qt=async()=>{l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="",l.completed_appointment="1",l.has_appointment="",l.appointment_date="",D.page=1,await x(),E()},Bt=async()=>{l.pending_assign="1",l.pending_booking="",l.completed_appointment="",l.has_appointment="",l.appointment_date="",l.pending_assign_order_month||(l.pending_assign_order_month=Le().format("YYYY-MM")),D.page=1,await x(),E()},Gt=async t=>{l.pending_assign_order_month=t||"",l.pending_assign==="1"&&(D.page=1,await x(),E())},E=async()=>{try{const[t,e,r,_,v,h,V,q,de]=await Promise.all([W({appointment_date:Me.value,page_no:1,page_size:1}),W({appointment_date:Ye.value,page_no:1,page_size:1}),W({appointment_date:ve.value,page_no:1,page_size:1}),W({appointment_date:We.value,page_no:1,page_size:1}),W({appointment_date:Fe.value,page_no:1,page_size:1}),W({page_no:1,page_size:1}),W({has_appointment:0,page_no:1,page_size:1}),W({completed_appointment:1,page_no:1,page_size:1}),W(Ft())]);Ne.value={[Me.value]:(t==null?void 0:t.count)??0,[Ye.value]:(e==null?void 0:e.count)??0,[ve.value]:(r==null?void 0:r.count)??0,[We.value]:(_==null?void 0:_.count)??0,[Fe.value]:(v==null?void 0:v.count)??0,"":(h==null?void 0:h.count)??0},ze.value=(V==null?void 0:V.count)??0,Pe.value=(q==null?void 0:q.count)??0,Te.value=(de==null?void 0:de.count)??0}catch(t){console.error("获取日期数量失败",t)}};function Ht(){const t=()=>E();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const Kt=2e4;let fe=null;function jt(){typeof document<"u"&&document.hidden||(x({silent:!0}).catch(()=>{}),E())}const N=t=>String(t).padStart(2,"0"),ve=X(()=>{const t=new Date;return`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),We=X(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),Fe=X(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),Me=X(()=>{const t=new Date;return t.setDate(t.getDate()-1),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),Ye=X(()=>{const t=new Date;return t.setDate(t.getDate()-2),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),st=c([]),it=c([]),ue=c([]),Jt=async()=>{try{const[t,e,r]=await Promise.all([Ct({type:"diagnosis_type"}),Ct({type:"syndrome_type"}),Ua()]);st.value=(t==null?void 0:t.diagnosis_type)||[],it.value=(e==null?void 0:e.syndrome_type)||[],ue.value=r||[]}catch(t){console.error("获取字典数据失败:",t)}},Xt=t=>{if(!t&&t!==0)return"-";const e=typeof t=="string"?parseInt(t):t;if(ue.value.length===0)return"...";const r=ue.value.find(_=>(typeof _.id=="string"?parseInt(_.id):_.id)===e);return r?r.name:"-"},{pager:D,getLists:x}=Xa({fetchFun:Mt,params:l}),Zt=()=>x({silent:!0}),en=()=>{nt.value="all",l.keyword="",l.diagnosis_type="",l.syndrome_type="",l.assistant_id="",l.diagnosis_confirmed="",l.appointment_date="",l.has_appointment="",l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="",l.completed_appointment="",D.page=1,x(),E()},lt=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(r=>r.is_confirmed==1)},tn=t=>{if(t==null)return"unserved-muted";const e=Number(t);return Number.isFinite(e)?e>=7?"unserved-red":e>=3?"unserved-orange":"unserved-green":"unserved-muted"},nn=({row:t})=>lt(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",ae=c(),an=c(),ot=c(),dt=c(),ye=c(null),he=Za();us([ae,ye],()=>{const t=ye.value,e=ae.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),ye.value=null)},{flush:"post"});const ke=c(!1),rt=c(0),sn=t=>{var r;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((r=he.userInfo)==null?void 0:r.id)},ln=t=>{rt.value=Number(t.id)||0,ke.value=!0},on=t=>sn(t)&&F(["tcm.diagnosis/watchCall"]),be=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},dn=t=>{const e=t.video_call_hint,r="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${r}。开始时间:${St(e.start_time)}`:r},rn=t=>{const e=be(t);return e==="live"||e==="pending_room"},un=t=>be(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":dn(t),mn=t=>{if(be(t)!=="live"){g.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}ln(t)},pn=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},cn=t=>{const e=be(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const r=t.video_call_hint;return(r==null?void 0:r.label)||"—"},se=c(!1),Ce=c(),Oe=c(!1),y=et({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),_n={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},gn=t=>{var e;y.patient_id=t.patient_id||t.id,y.patient_name=t.patient_name,y.phone=t.phone||"",y.order_type="",y.amount=0,y.remark="",y.has_appointment=!!t.has_appointment,y.appointment_time_text=t.appointment_time_text||"",(e=Ce.value)==null||e.clearValidate(),se.value=!0},fn=()=>{var t;y.patient_id="",y.patient_name="",y.phone="",y.order_type="",y.amount=0,y.remark="",y.has_appointment=!1,y.appointment_time_text="",(t=Ce.value)==null||t.clearValidate()},vn=async()=>{var t;try{await((t=Ce.value)==null?void 0:t.validate()),Oe.value=!0;const e=await Ja({patient_id:y.patient_id,order_type:y.order_type,amount:y.amount,remark:y.remark});se.value=!1,x();const r=e==null?void 0:e.order_no;if(r){Y.value=!0,G.value=!0,H.value="",K.value={patient_name:y.patient_name,has_appointment:y.has_appointment,appointment_time_text:y.appointment_time_text};try{const _=await qa({order_no:r});_!=null&&_.qrcode_url?H.value=_.qrcode_url:g.msgError("二维码生成失败")}catch(_){g.msgError((_==null?void 0:_.msg)||"生成二维码失败")}finally{G.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Oe.value=!1}},Y=c(!1),G=c(!1),H=c(""),K=c(null),yn=X(()=>{const t=K.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Ue=c("小程序二维码"),qe=c("confirm"),R=c([]),ie=c([]),ee=c(!1),Qe=c(!1),me=c("batch"),pe=c(null),O=c({assistant_id:null});function hn(){ie.value=[],O.value.assistant_id=null}const kn=t=>{R.value=t.map(e=>e.id)},xe=t=>Number((t==null?void 0:t.assistant_id)??(t==null?void 0:t.assistant)??0)>0,bn=X(()=>{if(!R.value.length)return!1;const t=new Set(R.value);return D.lists.some(e=>t.has(e.id)&&xe(e))}),Cn=t=>{me.value="single",pe.value=t,ie.value=[],O.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,ee.value=!0},xn=()=>{if(R.value.length===0){g.msgWarning("请先选择要指派的诊单");return}me.value="batch",pe.value=null,O.value.assistant_id=null,ie.value=[...R.value],ee.value=!0},Dn=async()=>{if(!O.value.assistant_id){g.msgWarning("请选择医助");return}Qe.value=!0;try{if(me.value==="single")await Se({id:pe.value.id,assistant_id:O.value.assistant_id});else{const t=ie.value;if(!t.length){g.msgWarning("没有可指派的诊单,请关闭后重新勾选");return}for(const e of t)await Se({id:e,assistant_id:O.value.assistant_id});R.value=[],ie.value=[]}ee.value=!1,x()}catch(t){console.error("指派失败:",t)}finally{Qe.value=!1}},Vn=async t=>{if(!(t!=null&&t.id)||!xe(t)){g.msgWarning("该诊单未指派医助");return}await g.confirm("确定取消该诊单的医助指派吗?"),await Se({id:t.id,assistant_id:0}),x()},An=async()=>{if(!R.value.length){g.msgWarning("请先选择诊单");return}const t=new Set(R.value),e=D.lists.filter(r=>t.has(r.id)&&xe(r));if(!e.length){g.msgWarning("所选诊单中没有已指派医助的记录");return}await g.confirm(`确定取消 ${e.length} 条诊单的医助指派吗?`),await Promise.all(e.map(r=>Se({id:r.id,assistant_id:0}))),R.value=[],x()},En=()=>{ae.value.open("add")},wn=t=>{ae.value.open("edit",t)};function Rn(t){return l.pending_assign==="1"?"开方":Number(t==null?void 0:t.prescription_audit_status)===1&&Number(t==null?void 0:t.prescription_void_status)!==1?"查看":"开方"}const In=t=>{var e;if(!(t!=null&&t.id)){g.msgWarning("诊单信息不完整");return}(e=ot.value)==null||e.open({...t,diagnosis_id:t.id,id:t.appointment_id||0})},$n=()=>{var t,e;x(),(e=(t=ae.value)==null?void 0:t.refreshCaseList)==null||e.call(t)},Sn=async t=>{await g.confirm("确定要删除该诊单吗?"),await Ka({id:t}),x()},Ln=(t,e)=>{switch(t){case"assign":Cn(e);break;case"cancelAssign":Vn(e);break;case"videoQr":if(!ce(e)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}pt(e);break;case"confirmQr":ct(e);break;case"cancelApt":Fn(e);break;case"guahaoLogs":Un(e);break;case"order":gn(e);break;case"delete":Sn(e.id);break}},Nn=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},zn=t=>{const e=Number(t);return e===3?"已完成":e===4?"已过号":"已挂号"},De=t=>{const e=Array.isArray(t.appointments)?t.appointments:[];return e.length>0?e:t.has_appointment?[{id:t.appointment_id,status:t.appointment_status,doctor_id:t.appointment_doctor_id,doctor_name:t.appointment_doctor_name,time_text:t.appointment_time_text}]:[]},Pn=t=>{const e=Number(t==null?void 0:t.status);return{"apt-item-done":e===3,"apt-item-missed":e===4,"apt-item-active":e===1}},Tn=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},ce=t=>t.has_appointment&&Number(t.appointment_status)===1,ut=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},Be=t=>{const e=Number(t==null?void 0:t.status);return!!(t!=null&&t.id&&(e===1||e===4))},Wn=t=>ut(t)?De(t).length<=1:!1,Fn=async t=>{var v;if(!ut(t)){const h=Number(t.appointment_status);t.has_appointment&&h===3?g.msgWarning("已完成就诊,无法取消挂号"):g.msgWarning("该诊单未挂号或挂号信息异常");return}const e=De(t),r=e.length===1?e[0]:null,_=r!=null&&r.id&&Be(r)?r.id:t.appointment_id;try{await g.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await bt({id:_}),g.msgSuccess("取消挂号成功"),x(),E(),te.value&&((v=U.value)==null?void 0:v.id)===t.id&&await Ae(t.id)}catch(h){h!=="cancel"&&g.msgError((h==null?void 0:h.msg)||"取消挂号失败")}},Mn=async(t,e)=>{var v;if(!Be(e)){Number(e==null?void 0:e.status)===3?g.msgWarning("已完成就诊,无法取消挂号"):g.msgWarning("该挂号无法取消");return}const r=e.doctor_name||"—",_=e.time_text||"—";try{await g.confirm(`确定取消「${r}」${_} 的挂号吗?(患者:${t.patient_name||"—"})`),await bt({id:e.id}),g.msgSuccess("取消挂号成功"),x(),E(),te.value&&((v=U.value)==null?void 0:v.id)===t.id&&await Ae(t.id)}catch(h){h!=="cancel"&&g.msgError((h==null?void 0:h.msg)||"取消挂号失败")}},te=c(!1),Ve=c(!1),le=c([]),U=c(null);function Yn(){le.value=[],U.value=null}function On(t){const e=String((t==null?void 0:t.admin_name)||"").trim(),r=Number(t==null?void 0:t.admin_id);return e||(r>0?`管理员 #${r}`:"—")}async function Ae(t){Ve.value=!0;try{const e=await Qa({id:t});le.value=Array.isArray(e==null?void 0:e.data)?e.data:Array.isArray(e)?e:[]}catch{le.value=[]}finally{Ve.value=!1}}async function Un(t){if(!(t!=null&&t.id)){g.msgWarning("诊单信息不完整");return}U.value=t,te.value=!0,await Ae(Number(t.id))}async function qn(){var t;await x({silent:!0}),E(),te.value&&((t=U.value)!=null&&t.id)&&await Ae(Number(U.value.id))}const Qn=t=>{var e;if(!t.patient_id){g.msgWarning("患者信息不完整");return}(e=dt.value)==null||e.open(t)},oe=c(!1),Ge=c(!1),mt=c(),z=et({id:0,patient_name:"",id_card:""}),Bn={id_card:[{required:!0,validator:(t,e,r)=>{if(!e){r(new Error("请输入身份证号"));return}const _=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),v=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);_||v?r():r(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},Gn=t=>{z.id=t.id,z.patient_name=t.patient_name||"-",z.id_card=t.id_card||"",oe.value=!0},Hn=async()=>{var t;await((t=mt.value)==null?void 0:t.validate()),Ge.value=!0;try{await Ba({id:z.id,id_card:z.id_card}),g.msgSuccess("补全成功,年龄已自动更新"),oe.value=!1,x()}catch(e){g.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ge.value=!1}},pt=async t=>{var e;if(!ce(t)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}qe.value="video",K.value=t,Y.value=!0,G.value=!0,H.value="",Ue.value="视频二维码";try{const r=await xt();if(!(r!=null&&r.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),Y.value=!1;return}const _=await ht({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=he.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});_!=null&&_.qrcode_url?H.value=_.qrcode_url:g.msgError("二维码生成失败")}catch(r){g.msgError((r==null?void 0:r.msg)||"生成二维码失败,请重试")}finally{G.value=!1}},ct=async t=>{if(!ce(t)){g.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}qe.value="confirm",K.value=t,Y.value=!0,G.value=!0,H.value="",Ue.value="诊单二维码";try{const e=await xt();if(!(e!=null&&e.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),Y.value=!1;return}const r=he.userInfo,_=await ht({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(r==null?void 0:r.id)||""});_!=null&&_.qrcode_url?H.value=_.qrcode_url:g.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),g.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{G.value=!1}},Kn=()=>{K.value&&(qe.value==="video"?pt(K.value):ct(K.value))},Ee=c(!1),S=c(null),j=c([]),we=c(0),He=c(!1),L=c(null),ne=c(""),Ke=c(!1),je=c(1),jn=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return Le(e).format("YYYY-MM-DD HH:mm")},Jn=async t=>{S.value=t,Ee.value=!0,j.value=[],we.value=0,L.value=null,ne.value="",je.value=1,He.value=!0;try{const[e,r]=await Promise.all([kt({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),ja({patient_id:t.patient_id||t.id}).catch(()=>null)]);j.value=(e==null?void 0:e.lists)||[],we.value=(e==null?void 0:e.count)||0,L.value=r}catch(e){console.error("加载企业微信记录失败:",e)}finally{He.value=!1}},Xn=async()=>{if(S.value){je.value++;try{const t=await kt({diagnosis_id:S.value.id,patient_id:S.value.patient_id,page_no:je.value,page_size:20});j.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},Zn=async()=>{var t;if(!ne.value.trim()){g.msgWarning("请输入内容");return}Ke.value=!0;try{await Ga({diagnosis_id:S.value.id,patient_id:S.value.patient_id,content:ne.value.trim(),msg_type:"note",staff_name:((t=he.userInfo)==null?void 0:t.name)||"",external_name:S.value.patient_name||""}),ne.value="",Jn(S.value)}catch(e){g.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Ke.value=!1}},ea=async t=>{await g.confirm("确定删除该记录吗?");try{await Ha({id:t}),j.value=j.value.filter(e=>e.id!==t),we.value--}catch(e){g.msgError((e==null?void 0:e.msg)||"删除失败")}},ta=ds(),na=rs(),_t=t=>{if(!F(["tcm.diagnosis/readonlyDetail"]))return;const e=Number(t==null?void 0:t.id);!e||e<=0||na.push({path:"/tcm/diagnosis-readonly",query:{id:String(e)}})};return ms(()=>{l.appointment_date=ve.value,Jt(),x(),Ht(),fe=setInterval(jt,Kt);const t=ta.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(ye.value=e)}}),ps(()=>{fe!=null&&(clearInterval(fe),fe=null)}),(t,e)=>{var vt;const r=_a,_=ga,v=fa,h=va,V=ha,q=ya,de=ka,I=Ca,P=xa,gt=Da,J=Ea,aa=Aa,sa=Va,ia=ba,la=Ya,oa=Ra,da=$a,ra=Ia,ft=Sa,Re=La,Q=za,Je=Na,ua=Pa,Ie=Wa,ma=Ta,pa=Fa,ca=Ma,T=cs("perms"),Xe=wa;return o(),u("div",_s,[i(de,{class:"filter-card !border-none",shadow:"never"},{default:s(()=>[d("div",gs,[d("div",fs,[(o(!0),u(A,null,$(Ot.value,n=>(o(),u("span",{key:n.value,class:M(["chip",{active:a(l).pending_assign!=="1"&&a(l).pending_booking!=="1"&&a(l).completed_appointment!=="1"&&a(l).appointment_date===n.value}]),onClick:k=>Ut(n.value)},[m(p(n.label)+" ",1),a(Ne)[n.value]!==void 0?(o(),u("em",ys,p(a(Ne)[n.value]),1)):C("",!0)],10,vs))),128)),d("span",{class:M(["chip","chip-pending-booking",{active:a(l).pending_booking==="1"}]),onClick:qt},[e[28]||(e[28]=m(" 待预约 ",-1)),a(ze)!==void 0?(o(),u("em",hs,p(a(ze)),1)):C("",!0)],2),d("span",{class:M(["chip","chip-completed-visit",{active:a(l).completed_appointment==="1"}]),onClick:Qt},[e[29]||(e[29]=m(" 已完成 ",-1)),a(Pe)!==void 0?(o(),u("em",ks,p(a(Pe)),1)):C("",!0)],2),w((o(),u("span",bs,[d("span",{class:M(["chip","chip-pending",{active:a(l).pending_assign==="1"}]),onClick:Bt},[e[30]||(e[30]=m(" 待分配医助 ",-1)),a(Te)!==void 0?(o(),u("em",Cs,p(a(Te)),1)):C("",!0)],2),a(l).pending_assign==="1"?(o(),f(r,{key:0,modelValue:a(l).pending_assign_order_month,"onUpdate:modelValue":e[0]||(e[0]=n=>a(l).pending_assign_order_month=n),type:"month",placeholder:"订单月份","value-format":"YYYY-MM",clearable:"",class:"pending-assign-month",onChange:Gt},null,8,["modelValue"])):C("",!0),a(l).pending_assign==="1"?(o(),f(_,{key:1,modelValue:a(l).pending_assign_keyword,"onUpdate:modelValue":e[1]||(e[1]=n=>a(l).pending_assign_keyword=n),placeholder:"搜身份证/诊单ID/患者号/备注…",clearable:"",class:"pending-assign-search",onKeyup:yt(Z,["enter"]),onClear:Z},null,8,["modelValue"])):C("",!0)])),[[T,["tcm.diagnosis/assign"]]])]),d("div",xs,[i(_,{modelValue:a(l).keyword,"onUpdate:modelValue":e[2]||(e[2]=n=>a(l).keyword=n),placeholder:"患者姓名 / 手机号",clearable:"",class:"search-input",onKeyup:yt(Z,["enter"])},null,8,["modelValue"]),i(v,{type:"primary",onClick:Z},{default:s(()=>[...e[31]||(e[31]=[m("查询",-1)])]),_:1})])]),d("div",Ds,[e[32]||(e[32]=d("span",{class:"chip-label"},"挂号:",-1)),(o(),u(A,null,$(Lt,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(l).has_appointment===n.value}]),onClick:k=>zt(n.value)},p(n.label),11,Vs)),64)),e[33]||(e[33]=d("span",{class:"chip-divider"},null,-1)),e[34]||(e[34]=d("span",{class:"chip-label"},"确认:",-1)),(o(),u(A,null,$(Nt,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(l).diagnosis_confirmed===n.value}]),onClick:k=>Pt(n.value)},p(n.label),11,As)),64)),i(v,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[3]||(e[3]=n=>re.value=!a(re))},{default:s(()=>[m(p(a(re)?"收起":"更多筛选")+" ",1),i(h,{class:M({"rotate-180":a(re)})},{default:s(()=>[i(a(Dt))]),_:1},8,["class"])]),_:1})]),w(d("div",Es,[i(q,{modelValue:a(l).diagnosis_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(l).diagnosis_type=n),placeholder:"诊断类型",clearable:"",size:"small",onChange:Z},{default:s(()=>[(o(!0),u(A,null,$(a(st),n=>(o(),f(V,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),i(q,{modelValue:a(l).syndrome_type,"onUpdate:modelValue":e[5]||(e[5]=n=>a(l).syndrome_type=n),placeholder:"证型",clearable:"",size:"small",onChange:Z},{default:s(()=>[(o(!0),u(A,null,$(a(it),n=>(o(),f(V,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),i(q,{modelValue:a(l).assistant_id,"onUpdate:modelValue":e[6]||(e[6]=n=>a(l).assistant_id=n),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:Z},{default:s(()=>[(o(!0),u(A,null,$(a(ue),n=>(o(),f(V,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),i(v,{size:"small",onClick:en},{default:s(()=>[...e[35]||(e[35]=[m("重置",-1)])]),_:1})],512),[[Oa,a(re)]])]),_:1}),i(de,{class:"!border-none mt-3 list-card",shadow:"never"},{default:s(()=>[d("div",ws,[d("div",Rs,[w((o(),f(v,{type:"primary",onClick:En},{default:s(()=>[...e[36]||(e[36]=[m("新增诊单",-1)])]),_:1})),[[T,["tcm.diagnosis/add"]]]),w((o(),f(v,{type:"success",onClick:xn,disabled:a(R).length===0},{default:s(()=>[...e[37]||(e[37]=[m(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[T,["tcm.diagnosis/assign"]]]),w((o(),f(v,{type:"warning",plain:"",onClick:An,disabled:!bn.value},{default:s(()=>[...e[38]||(e[38]=[m(" 批量取消指派 ",-1)])]),_:1},8,["disabled"])),[[T,["tcm.diagnosis/assign"]]])]),a(R).length>0?(o(),u("div",Is,"已选 "+p(a(R).length)+" 条",1)):C("",!0)]),d("div",$s,[w((o(),f(ia,{data:a(D).lists,"row-key":"id",size:"default",onSelectionChange:kn,onRowDblclick:_t,"row-class-name":nn,class:"diagnosis-table",stripe:""},{default:s(()=>[i(I,{type:"selection",width:"48",align:"center"}),i(I,{label:"ID","min-width":"70"},{default:s(({row:n})=>[d("div",Ss,[d("div",Ls,[d("div",Ns,[m(p(n.id)+" ",1),n.assign_read_at===null&&n.assistant_id>0?(o(),f(P,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:s(()=>[...e[39]||(e[39]=[m("NEW",-1)])]),_:1})):C("",!0)])])])]),_:1}),i(I,{label:"患者","min-width":"60"},{default:s(({row:n})=>[d("div",zs,[d("div",Ps,[d("div",Ts,p(n.patient_name),1)])])]),_:1}),i(I,{label:" 性别 / 年龄",width:"100",align:"left"},{default:s(({row:n})=>[d("div",null,p(n.gender_desc||"-")+" · "+p(n.age??"-")+"岁",1)]),_:1}),i(I,{label:"挂号","min-width":"175"},{default:s(({row:n})=>[d("div",{class:M(["appointment-cell",Tn(n)])},[n.has_appointment?(o(),u(A,{key:0},[De(n).length?(o(!0),u(A,{key:0},$(De(n),k=>(o(),u("div",{key:k.id||`${k.doctor_id}-${k.time_text}`,class:M(["apt-item",Pn(k)])},[d("div",Ws,p(zn(k.status)),1),d("div",Fs,p(k.doctor_name||"-"),1),d("div",Ms,p(k.time_text||"-"),1),Be(k)?(o(),u("div",Ys,[w((o(),f(v,{type:"danger",link:"",size:"small",onClick:Ze(b=>Mn(n,k),["stop"])},{default:s(()=>[...e[40]||(e[40]=[m(" 取消挂号 ",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/guahao"]]])])):C("",!0)],2))),128)):(o(),u(A,{key:1},[d("div",Os,p(Nn(n)),1),d("div",Us,p(n.appointment_doctor_name||"-"),1),d("div",qs,p(n.appointment_time_text||"-"),1)],64))],64)):(o(),u("span",Qs,"未挂号"))],2)]),_:1}),i(I,{label:"确认",width:"88",align:"center"},{default:s(({row:n})=>[lt(n)?(o(),u("span",Bs,"已确认")):(o(),u("span",Gs,"未确认"))]),_:1}),i(I,{label:"复诊","min-width":"120"},{default:s(({row:n})=>[n.has_prescription?(o(),u("div",Hs,[d("div",Ks,p(n.followup_time_text||"—"),1),d("div",js,p(n.followup_doctor_name||"—"),1),n.followup_rx_voided?(o(),f(P,{key:0,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:s(()=>[...e[41]||(e[41]=[m(" 处方已作废 ",-1)])]),_:1})):C("",!0)])):(o(),u("span",Js,"无"))]),_:1}),i(I,{label:"助理",width:"100","show-overflow-tooltip":""},{default:s(({row:n})=>[d("span",Xs,p(Xt(n.assistant_id||n.assistant)),1)]),_:1}),i(I,{label:"开方",width:"72",align:"center"},{default:s(({row:n})=>[n.has_prescription?(o(),u("span",Zs,"已开方")):(o(),u("span",ei,"未开方"))]),_:1}),i(I,{label:"未服务天数",width:"110",align:"center"},{default:s(({row:n})=>[n.last_blood_record_at?(o(),f(gt,{key:0,content:`最近一次健康打卡:${n.last_blood_record_at}`,placement:"top"},{default:s(()=>[d("span",{class:M(["unserved-days",tn(n.unserved_days)])},p(n.unserved_days??"—"),3)]),_:2},1032,["content"])):(o(),u("span",ti,"—"))]),_:1}),i(I,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:s(({row:n})=>[d("div",ni,[on(n)?(o(),u(A,{key:0},[rn(n)?(o(),f(gt,{key:0,content:un(n),placement:"top"},{default:s(()=>[d("span",ai,[i(v,{type:"primary",link:"",size:"small",onClick:k=>mn(n)},{default:s(()=>[...e[42]||(e[42]=[m(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(o(),u("span",si,p(pn(n)),1))],64)):(o(),u("span",ii,p(cn(n)),1))])]),_:1}),i(I,{label:"操作",width:"340",fixed:"right",align:"left"},{default:s(({row:n})=>[d("div",{class:"action-cell",onClick:e[7]||(e[7]=Ze(()=>{},["stop"])),onDblclick:e[8]||(e[8]=Ze(()=>{},["stop"]))},[w((o(),f(v,{type:"primary",link:"",size:"small",onClick:k=>_t(n)},{default:s(()=>[...e[43]||(e[43]=[m(" 查看 ",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/readonlyDetail"]]]),w((o(),f(v,{type:"primary",link:"",size:"small",onClick:k=>wn(n.id)},{default:s(()=>[...e[44]||(e[44]=[m("诊单",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/edit"]]]),w((o(),f(v,{type:"primary",link:"",size:"small",onClick:k=>In(n)},{default:s(()=>[m(p(Rn(n)),1)]),_:2},1032,["onClick"])),[[T,["tcm.diagnosis/kaifang"]]]),w((o(),f(v,{type:"success",link:"",size:"small",onClick:k=>Qn(n)},{default:s(()=>[...e[45]||(e[45]=[m("预约",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/guahao"]]]),w((o(),f(v,{type:"warning",link:"",size:"small",onClick:k=>Gn(n)},{default:s(()=>[...e[46]||(e[46]=[m("补全身份证",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/edit"]]]),i(sa,{trigger:"click",onCommand:k=>Ln(k,n),placement:"bottom-end"},{dropdown:s(()=>[i(aa,null,{default:s(()=>[a(F)(["tcm.diagnosis/assign"])?(o(),f(J,{key:0,command:"assign"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ts))]),_:1}),e[48]||(e[48]=m("指派",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/assign"])&&xe(n)?(o(),f(J,{key:1,command:"cancelAssign"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ns))]),_:1}),e[49]||(e[49]=m("取消指派 ",-1))]),_:1})):C("",!0),ce(n)&&a(F)(["tcm.diagnosis/videoQr"])?(o(),f(J,{key:2,command:"videoQr"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(Vt))]),_:1}),e[50]||(e[50]=m("视频二维码",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/guahao"])&&ce(n)?(o(),f(J,{key:3,command:"confirmQr"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(Vt))]),_:1}),e[51]||(e[51]=m("二维码",-1))]),_:1})):C("",!0),Wn(n)&&a(F)(["tcm.diagnosis/guahao"])?(o(),f(J,{key:4,command:"cancelApt"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(as))]),_:1}),e[52]||(e[52]=m("取消挂号 ",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/guahaoLogList"])?(o(),f(J,{key:5,command:"guahaoLogs"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ss))]),_:1}),e[53]||(e[53]=m("挂号日志",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/order"])?(o(),f(J,{key:6,command:"order"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(is))]),_:1}),e[54]||(e[54]=m("创建订单",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/delete"])?(o(),f(J,{key:7,command:"delete",divided:""},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ls))]),_:1}),e[55]||(e[55]=d("span",{class:"text-danger"},"删除",-1))]),_:1})):C("",!0)]),_:2},1024)]),default:s(()=>[i(v,{type:"info",link:"",size:"small"},{default:s(()=>[e[47]||(e[47]=m("更多",-1)),i(h,{class:"el-icon--right"},{default:s(()=>[i(a(Dt))]),_:1})]),_:1})]),_:2},1032,["onCommand"])],32)]),_:1})]),_:1},8,["data"])),[[Xe,a(D).loading]]),d("div",li,[i(la,{modelValue:a(D),"onUpdate:modelValue":e[9]||(e[9]=n=>B(D)?D.value=n:null),onChange:a(x)},null,8,["modelValue","onChange"])])])]),_:1}),i(a(Et),{ref_key:"editRef",ref:ae,onSuccess:Zt},null,512),i(a(wt),{ref_key:"detailRef",ref:an},null,512),i(a(Rt),{ref_key:"prescriptionRef",ref:ot,onSuccess:$n},null,512),i(a(It),{ref_key:"appointmentRef",ref:dt,onSuccess:qn},null,512),i(a($t),{modelValue:a(ke),"onUpdate:modelValue":e[10]||(e[10]=n=>B(ke)?ke.value=n:null),"diagnosis-id":a(rt),onClosed:a(x)},null,8,["modelValue","diagnosis-id","onClosed"]),i(ft,{modelValue:a(te),"onUpdate:modelValue":e[11]||(e[11]=n=>B(te)?te.value=n:null),title:"挂号操作日志",size:"460px","destroy-on-close":"",onClosed:Yn},{default:s(()=>[w((o(),u("div",oi,[a(U)?(o(),u("div",di,[d("span",ri,p(a(U).patient_name),1),e[56]||(e[56]=d("span",{class:"mx-2 text-gray-300"},"|",-1)),d("span",null,"诊单 #"+p(a(U).id),1)])):C("",!0),!a(Ve)&&a(le).length===0?(o(),f(oa,{key:1,description:"暂无挂号/取消挂号操作记录"})):a(le).length>0?(o(),f(ra,{key:2},{default:s(()=>[(o(!0),u(A,null,$(a(le),(n,k)=>(o(),f(da,{key:n.id??k,timestamp:n.create_time_text||"—",placement:"top"},{default:s(()=>[d("div",ui,[i(P,{size:"small",type:"info"},{default:s(()=>[m(p(n.action_desc),1)]),_:2},1024),d("span",mi,p(On(n)),1)]),d("div",pi,p(n.summary),1)]),_:2},1032,["timestamp"]))),128))]),_:1})):C("",!0)])),[[Xe,a(Ve)]])]),_:1},8,["modelValue"]),i(Re,{modelValue:a(Y),"onUpdate:modelValue":e[13]||(e[13]=n=>B(Y)?Y.value=n:null),title:a(Ue),width:"400px","close-on-click-modal":!1},{footer:s(()=>[i(v,{onClick:e[12]||(e[12]=n=>Y.value=!1)},{default:s(()=>[...e[59]||(e[59]=[m("关闭",-1)])]),_:1}),a(G)?C("",!0):(o(),f(v,{key:0,type:"primary",onClick:Kn},{default:s(()=>[...e[60]||(e[60]=[m(" 重新生成 ",-1)])]),_:1}))]),default:s(()=>{var n;return[d("div",ci,[a(G)?(o(),u("div",_i,[i(h,{class:"is-loading",size:40},{default:s(()=>[i(a(os))]),_:1}),e[57]||(e[57]=d("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):a(H)?(o(),u("div",gi,[d("img",{src:a(H),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,fi),d("div",vi,[d("div",null,"患者:"+p((n=a(K))==null?void 0:n.patient_name),1),d("div",yi,"挂号时间:"+p(yn.value),1),e[58]||(e[58]=d("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(o(),u("div",hi," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),i(Re,{modelValue:a(ee),"onUpdate:modelValue":e[16]||(e[16]=n=>B(ee)?ee.value=n:null),title:a(me)==="batch"?"批量指派医助":"指派医助",width:"500px",onClosed:hn},{footer:s(()=>[i(v,{onClick:e[15]||(e[15]=n=>ee.value=!1)},{default:s(()=>[...e[61]||(e[61]=[m("取消",-1)])]),_:1}),i(v,{type:"primary",onClick:Dn,loading:a(Qe)},{default:s(()=>[...e[62]||(e[62]=[m(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[i(Je,{model:a(O),"label-width":"100px"},{default:s(()=>[i(Q,{label:"选择医助",required:""},{default:s(()=>[i(q,{modelValue:a(O).assistant_id,"onUpdate:modelValue":e[14]||(e[14]=n=>a(O).assistant_id=n),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:""},{default:s(()=>[(o(!0),u(A,null,$(a(ue),n=>(o(),f(V,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(me)==="batch"?(o(),f(Q,{key:0,label:"已选择"},{default:s(()=>[d("div",ki,p(a(ie).length)+" 条诊单记录",1)]),_:1})):(o(),f(Q,{key:1,label:"诊单信息"},{default:s(()=>{var n,k;return[d("div",bi,[d("div",null,"患者:"+p((n=a(pe))==null?void 0:n.patient_name),1),d("div",null,"诊断日期:"+p((k=a(pe))==null?void 0:k.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),i(Re,{modelValue:a(se),"onUpdate:modelValue":e[21]||(e[21]=n=>B(se)?se.value=n:null),title:"创建订单",width:"600px",onClose:fn},{footer:s(()=>[i(v,{onClick:e[20]||(e[20]=n=>se.value=!1)},{default:s(()=>[...e[63]||(e[63]=[m("取消",-1)])]),_:1}),i(v,{type:"primary",onClick:vn,loading:a(Oe)},{default:s(()=>[...e[64]||(e[64]=[m("创建订单",-1)])]),_:1},8,["loading"])]),default:s(()=>[i(Je,{ref_key:"orderFormRef",ref:Ce,model:a(y),rules:_n,"label-width":"100px"},{default:s(()=>[i(Q,{label:"患者"},{default:s(()=>[d("span",Ci,p(a(y).patient_name)+" ("+p(tt(a(y).phone))+")",1)]),_:1}),i(Q,{label:"订单类型",prop:"order_type"},{default:s(()=>[i(q,{modelValue:a(y).order_type,"onUpdate:modelValue":e[17]||(e[17]=n=>a(y).order_type=n),placeholder:"请选择",class:"w-full"},{default:s(()=>[i(V,{label:"挂号费",value:1}),i(V,{label:"问诊费",value:2}),i(V,{label:"药品费用",value:3}),i(V,{label:"首付费用",value:4}),i(V,{label:"尾款费用",value:5}),i(V,{label:"其他费用",value:6}),i(V,{label:"全部费用",value:7}),i(V,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),i(Q,{label:"订单金额",prop:"amount"},{default:s(()=>[i(ua,{modelValue:a(y).amount,"onUpdate:modelValue":e[18]||(e[18]=n=>a(y).amount=n),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),i(Q,{label:"备注",prop:"remark"},{default:s(()=>[i(_,{modelValue:a(y).remark,"onUpdate:modelValue":e[19]||(e[19]=n=>a(y).remark=n),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),i(Re,{modelValue:a(oe),"onUpdate:modelValue":e[24]||(e[24]=n=>B(oe)?oe.value=n:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[25]||(e[25]=n=>a(z).id_card="")},{footer:s(()=>[i(v,{onClick:e[23]||(e[23]=n=>oe.value=!1)},{default:s(()=>[...e[65]||(e[65]=[m("取消",-1)])]),_:1}),i(v,{type:"primary",onClick:Hn,loading:a(Ge)},{default:s(()=>[...e[66]||(e[66]=[m("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:s(()=>[i(Je,{ref_key:"fillIdCardFormRef",ref:mt,model:a(z),rules:Bn,"label-width":"80px"},{default:s(()=>[i(Q,{label:"患者"},{default:s(()=>[d("span",xi,p(a(z).patient_name),1)]),_:1}),i(Q,{label:"身份证号",prop:"id_card"},{default:s(()=>[i(_,{modelValue:a(z).id_card,"onUpdate:modelValue":e[22]||(e[22]=n=>a(z).id_card=n),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),i(ft,{modelValue:a(Ee),"onUpdate:modelValue":e[27]||(e[27]=n=>B(Ee)?Ee.value=n:null),title:`企业微信记录 - ${((vt=a(S))==null?void 0:vt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:s(()=>{var n,k;return[a(L)?(o(),u("div",Di,[i(ma,{column:2,border:"",size:"small"},{default:s(()=>[i(Ie,{label:"患者姓名"},{default:s(()=>{var b;return[m(p((b=a(S))==null?void 0:b.patient_name),1)]}),_:1}),i(Ie,{label:"手机号"},{default:s(()=>[m(p(tt(a(L).phone)||"-"),1)]),_:1}),i(Ie,{label:"企微联系人ID"},{default:s(()=>[a(L).external_userid?(o(),u("span",Vi,p(a(L).external_userid),1)):(o(),f(P,{key:1,type:"info",size:"small"},{default:s(()=>[...e[67]||(e[67]=[m("未关联",-1)])]),_:1}))]),_:1}),i(Ie,{label:"会话存档"},{default:s(()=>[a(L).msgaudit_enabled?(o(),f(P,{key:0,type:"success",size:"small"},{default:s(()=>[...e[68]||(e[68]=[m("已开通",-1)])]),_:1})):(o(),f(P,{key:1,type:"info",size:"small"},{default:s(()=>[...e[69]||(e[69]=[m("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(n=a(L).permit_users)!=null&&n.length?(o(),u("div",Ai,[e[70]||(e[70]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(o(!0),u(A,null,$(a(L).permit_users,b=>(o(),f(P,{key:b,size:"small",class:"mr-1"},{default:s(()=>[m(p(b),1)]),_:2},1024))),128))])):C("",!0),(k=a(L).msgaudit_agree)!=null&&k.length?(o(),u("div",Ei,[e[71]||(e[71]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(o(!0),u(A,null,$(a(L).msgaudit_agree,(b,$e)=>(o(),f(P,{key:$e,type:b.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:s(()=>[m(p(b.userid)+": "+p(b.agree_status==="Agree"?"已同意":b.agree_status),1)]),_:2},1032,["type"]))),128))])):C("",!0)])):C("",!0),i(pa),d("div",wi,[d("div",Ri,[i(_,{modelValue:a(ne),"onUpdate:modelValue":e[26]||(e[26]=b=>B(ne)?ne.value=b:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),i(v,{type:"primary",onClick:Zn,loading:a(Ke),class:"self-end"},{default:s(()=>[...e[72]||(e[72]=[m(" 添加 ",-1)])]),_:1},8,["loading"])])]),w((o(),u("div",null,[a(j).length===0?(o(),u("div",Ii," 暂无聊天记录 ")):(o(),u("div",$i,[(o(!0),u(A,null,$(a(j),b=>{var $e;return o(),u("div",{key:b.id,class:"record-item"},[d("div",Si,[d("div",Li,[i(P,{type:b.direction===0?"primary":"success",size:"small"},{default:s(()=>[m(p(b.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),d("span",Ni,p(b.direction===0?b.staff_name:b.external_name||(($e=a(S))==null?void 0:$e.patient_name)),1),b.msg_type==="note"?(o(),f(P,{key:0,type:"warning",size:"small"},{default:s(()=>[...e[73]||(e[73]=[m("备注",-1)])]),_:1})):C("",!0)]),d("div",zi,[d("span",Pi,p(jn(b.chat_time)),1),i(v,{type:"danger",link:"",size:"small",onClick:qi=>ea(b.id)},{default:s(()=>[...e[74]||(e[74]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])])]),d("div",Ti,p(b.content),1),b.media_url?(o(),u("div",Wi,[i(ca,{src:b.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[b.media_url]},null,8,["src","preview-src-list"])])):C("",!0)])}),128))])),a(we)>a(j).length?(o(),u("div",Fi,[i(v,{link:"",type:"primary",onClick:Xn},{default:s(()=>[...e[75]||(e[75]=[m("加载更多",-1)])]),_:1})])):C("",!0)])),[[Xe,a(He)]])]}),_:1},8,["modelValue","title"])])}}}),zl=es(Yi,[["__scopeId","data-v-e31af008"]]);export{zl as default}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DiacXhqZ.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DzAQc_oE.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/patient-BNjmKCvA.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-BIA4i862.js","assets/appointment-CmXNV-jm.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-4k1wpmUn.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]); +import{_ as _e}from"./jspdf-BsthCvR5.js";import{a2 as _a,C as ga,i as fa,d as va,P as ya,Q as ha,J as ka,M as ba,N as Ca,T as xa,r as Da,p as Va,n as Aa,o as Ea,L as wa,R as Ra,ac as Ia,ad as $a,e as Sa,V as La,D as Na,B as za,h as Pa,aa as Ta,ab as Wa,U as Fa,v as Ma}from"./element-plus-DFTWCWyi.js";import{_ as Ya}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as yt,q as Oa,s as Ze}from"./@vue/runtime-dom-DDAG46FW.js";import{aj as W,a as Ua,K as qa,ak as Se,al as Qa,am as Ba,Y as ht,an as kt,ao as Ga,ap as Ha,aq as Ka,ar as ja}from"./tcm-DzAQc_oE.js";import{i as Ja}from"./order-BqE0MdhI.js";import{m as bt}from"./doctor-BlvK2TEo.js";import{u as Xa}from"./usePaging-VsbTxSU0.js";import{u as Za,m as Ct,i as g,_ as es}from"./index--WnM67ZH.js";import{g as xt}from"./weapp-zf27P1tb.js";import{h as F}from"./perm-CLhA0PJe.js";import{e as Dt,X as ts,ab as ns,O as Vt,b as as,a7 as ss,G as is,H as ls,l as os}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as ds,a as rs}from"./vue-router-QlpZ4wdW.js";import{d as Le}from"./dayjs-DG77mNTn.js";import{f as At,w as us,b as ms,d as ps,as as cs,ak as o,I as u,a as i,aN as s,J as d,F as A,ap as $,O as m,H as C,aP as w,G as f,P as ge,A as X}from"./@vue/runtime-core-C6bnekPw.js";import{o as M,Q as p}from"./@vue/shared-mAAVTE9n.js";import{y as a,a as B,r as et,n as c}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const _s={class:"tcm-diagnosis"},gs={class:"filter-main"},fs={class:"date-chips"},vs=["onClick"],ys={key:0},hs={key:0},ks={key:0},bs={class:"pending-assign-wrap"},Cs={key:0},xs={class:"search-row"},Ds={class:"filter-chips"},Vs=["onClick"],As=["onClick"],Es={class:"filter-more"},ws={class:"list-header"},Rs={class:"list-actions"},Is={key:0,class:"list-selected"},$s={class:"table-wrap px-4"},Ss={class:"patient-cell"},Ls={class:"patient-info"},Ns={class:"patient-name"},zs={class:"patient-cell"},Ps={class:"patient-info"},Ts={class:"patient-name"},Ws={class:"apt-badge"},Fs={class:"apt-doctor"},Ms={class:"apt-time"},Ys={key:0,class:"apt-actions"},Os={class:"apt-badge"},Us={class:"apt-doctor"},qs={class:"apt-time"},Qs={key:1,class:"apt-none"},Bs={key:0,class:"status-confirmed"},Gs={key:1,class:"status-unconfirmed"},Hs={key:0,class:"followup-cell"},Ks={class:"followup-time"},js={class:"followup-doctor"},Js={key:1,class:"followup-none"},Xs={class:"assistant-cell"},Zs={key:0,class:"status-prescribed"},ei={key:1,class:"status-unprescribed"},ti={key:1,class:"unserved-days unserved-muted"},ni={class:"video-watch-col"},ai={class:"video-watch-trigger"},si={key:1,class:"video-watch-muted"},ii={key:1,class:"video-watch-muted"},li={class:"pagination-wrap"},oi={class:"min-h-[100px]"},di={key:0,class:"text-sm text-gray-600 mb-4 pb-3 border-b border-gray-100"},ri={class:"font-medium text-gray-800"},ui={class:"flex flex-wrap items-center gap-2"},mi={class:"text-sm font-medium text-gray-800"},pi={class:"text-xs text-gray-600 mt-1.5 leading-relaxed"},ci={class:"flex flex-col items-center justify-center py-4"},_i={key:0,class:"text-center"},gi={key:1,class:"text-center"},fi=["src"],vi={class:"mt-4 text-sm text-gray-600"},yi={class:"mt-2"},hi={key:2,class:"text-center text-gray-500"},ki={class:"text-gray-500"},bi={class:"text-gray-500"},Ci={class:"font-medium"},xi={class:"font-medium"},Di={key:0,class:"mb-4"},Vi={key:0},Ai={key:0,class:"mt-2"},Ei={key:1,class:"mt-2"},wi={class:"mb-4"},Ri={class:"flex gap-2"},Ii={key:0,class:"text-center text-gray-400 py-10"},$i={key:1,class:"record-list"},Si={class:"record-header"},Li={class:"flex items-center gap-2"},Ni={class:"font-medium text-sm"},zi={class:"flex items-center gap-2"},Pi={class:"text-xs text-gray-400"},Ti={class:"record-content"},Wi={key:0,class:"mt-1"},Fi={key:2,class:"text-center mt-4"},Mi=At({name:"tcmDiagnosis"}),Yi=At({...Mi,setup(Oi){const Et=ge(()=>_e(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),wt=ge(()=>_e(()=>import("./detail-BIA4i862.js"),__vite__mapDeps([99,45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,46,15]))),Rt=ge(()=>_e(()=>import("./index-C5tKSXIA.js"),__vite__mapDeps([90,1,2,3,4,5,6,7,8,9,10,11,12,13,14,91,92,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,93,94,15,95,96]))),It=ge(()=>_e(()=>import("./appointment-CmXNV-jm.js"),__vite__mapDeps([100,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,83,101]))),$t=ge(()=>_e(()=>import("./AssistantWatchCallDialog-4k1wpmUn.js"),__vite__mapDeps([102,1,2,3,4,5,6,7,8,9,10,11,12,13,14,103,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,104]))),St=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return Le(e).format("YYYY-MM-DD HH:mm:ss")},tt=t=>!t||t.length<11?t:t.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),l=et({keyword:"",diagnosis_type:"",syndrome_type:"",assistant_id:"",start_time:"",end_time:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",pending_assign:"",pending_booking:"",completed_appointment:"",pending_assign_order_month:"",pending_assign_keyword:""}),nt=c("all"),re=c(!1),Lt=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],Nt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],zt=t=>{l.has_appointment=t,l.pending_booking="",l.completed_appointment="",D.page=1,x(),E()},Pt=t=>{l.diagnosis_confirmed=t,l.pending_booking="",l.completed_appointment="",D.page=1,x(),E()};function Tt(t){if(!(t.pending_assign==="1"||t.pending_assign===1))return!1;const r=String(t.pending_assign_keyword??"").trim(),_=String(t.keyword??"").trim();return r!==""||_!==""}function at(t){if(!Tt(t))return t;const e=String(t.pending_assign_keyword??"").trim(),r=String(t.keyword??"").trim(),_=e!==""?e:r;return{page_no:t.page_no,page_size:t.page_size,pending_assign:1,pending_assign_keyword:_}}function Wt(){const t=String(l.pending_assign_order_month??"").trim();return t!==""?t:l.pending_assign==="1"?"":Le().format("YYYY-MM")}function Ft(){return at({...l,page_no:1,page_size:1,pending_assign:1,appointment_date:"",has_appointment:"",pending_booking:"",completed_appointment:"",pending_assign_order_month:Wt()})}const Mt=t=>W(at(t));function Yt(){if(l.pending_assign!=="1")return;const t=(l.pending_assign_keyword??"").trim(),e=(l.keyword??"").trim();t===""&&e===""||(l.appointment_date="",l.pending_booking="",l.completed_appointment="",l.diagnosis_confirmed="",l.has_appointment="",l.diagnosis_type="",l.syndrome_type="",l.assistant_id="",l.start_time="",l.end_time="",l.pending_assign_order_month="",nt.value="all",t!==""&&(l.keyword=""))}const Z=()=>{Yt(),D.page=1,x(),E()},Ot=X(()=>[{label:"昨天挂号",value:Me.value},{label:"前天挂号",value:Ye.value},{label:"当天挂号",value:ve.value},{label:"明天挂号",value:We.value},{label:"后天挂号",value:Fe.value},{label:"全部",value:""}]),Ne=c({}),ze=c(void 0),Pe=c(void 0),Te=c(void 0),Ut=async t=>{l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="",l.completed_appointment="",l.has_appointment="",l.appointment_date=t,D.page=1,await x(),E()},qt=async()=>{l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="1",l.completed_appointment="",l.appointment_date="",l.has_appointment="0",D.page=1,await x(),E()},Qt=async()=>{l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="",l.completed_appointment="1",l.has_appointment="",l.appointment_date="",D.page=1,await x(),E()},Bt=async()=>{l.pending_assign="1",l.pending_booking="",l.completed_appointment="",l.has_appointment="",l.appointment_date="",l.pending_assign_order_month||(l.pending_assign_order_month=Le().format("YYYY-MM")),D.page=1,await x(),E()},Gt=async t=>{l.pending_assign_order_month=t||"",l.pending_assign==="1"&&(D.page=1,await x(),E())},E=async()=>{try{const[t,e,r,_,v,h,V,q,de]=await Promise.all([W({appointment_date:Me.value,page_no:1,page_size:1}),W({appointment_date:Ye.value,page_no:1,page_size:1}),W({appointment_date:ve.value,page_no:1,page_size:1}),W({appointment_date:We.value,page_no:1,page_size:1}),W({appointment_date:Fe.value,page_no:1,page_size:1}),W({page_no:1,page_size:1}),W({has_appointment:0,page_no:1,page_size:1}),W({completed_appointment:1,page_no:1,page_size:1}),W(Ft())]);Ne.value={[Me.value]:(t==null?void 0:t.count)??0,[Ye.value]:(e==null?void 0:e.count)??0,[ve.value]:(r==null?void 0:r.count)??0,[We.value]:(_==null?void 0:_.count)??0,[Fe.value]:(v==null?void 0:v.count)??0,"":(h==null?void 0:h.count)??0},ze.value=(V==null?void 0:V.count)??0,Pe.value=(q==null?void 0:q.count)??0,Te.value=(de==null?void 0:de.count)??0}catch(t){console.error("获取日期数量失败",t)}};function Ht(){const t=()=>E();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const Kt=2e4;let fe=null;function jt(){typeof document<"u"&&document.hidden||(x({silent:!0}).catch(()=>{}),E())}const N=t=>String(t).padStart(2,"0"),ve=X(()=>{const t=new Date;return`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),We=X(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),Fe=X(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),Me=X(()=>{const t=new Date;return t.setDate(t.getDate()-1),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),Ye=X(()=>{const t=new Date;return t.setDate(t.getDate()-2),`${t.getFullYear()}-${N(t.getMonth()+1)}-${N(t.getDate())}`}),st=c([]),it=c([]),ue=c([]),Jt=async()=>{try{const[t,e,r]=await Promise.all([Ct({type:"diagnosis_type"}),Ct({type:"syndrome_type"}),Ua()]);st.value=(t==null?void 0:t.diagnosis_type)||[],it.value=(e==null?void 0:e.syndrome_type)||[],ue.value=r||[]}catch(t){console.error("获取字典数据失败:",t)}},Xt=t=>{if(!t&&t!==0)return"-";const e=typeof t=="string"?parseInt(t):t;if(ue.value.length===0)return"...";const r=ue.value.find(_=>(typeof _.id=="string"?parseInt(_.id):_.id)===e);return r?r.name:"-"},{pager:D,getLists:x}=Xa({fetchFun:Mt,params:l}),Zt=()=>x({silent:!0}),en=()=>{nt.value="all",l.keyword="",l.diagnosis_type="",l.syndrome_type="",l.assistant_id="",l.diagnosis_confirmed="",l.appointment_date="",l.has_appointment="",l.pending_assign="",l.pending_assign_order_month="",l.pending_assign_keyword="",l.pending_booking="",l.completed_appointment="",D.page=1,x(),E()},lt=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(r=>r.is_confirmed==1)},tn=t=>{if(t==null)return"unserved-muted";const e=Number(t);return Number.isFinite(e)?e>=7?"unserved-red":e>=3?"unserved-orange":"unserved-green":"unserved-muted"},nn=({row:t})=>lt(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",ae=c(),an=c(),ot=c(),dt=c(),ye=c(null),he=Za();us([ae,ye],()=>{const t=ye.value,e=ae.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),ye.value=null)},{flush:"post"});const ke=c(!1),rt=c(0),sn=t=>{var r;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((r=he.userInfo)==null?void 0:r.id)},ln=t=>{rt.value=Number(t.id)||0,ke.value=!0},on=t=>sn(t)&&F(["tcm.diagnosis/watchCall"]),be=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},dn=t=>{const e=t.video_call_hint,r="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${r}。开始时间:${St(e.start_time)}`:r},rn=t=>{const e=be(t);return e==="live"||e==="pending_room"},un=t=>be(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":dn(t),mn=t=>{if(be(t)!=="live"){g.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}ln(t)},pn=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},cn=t=>{const e=be(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const r=t.video_call_hint;return(r==null?void 0:r.label)||"—"},se=c(!1),Ce=c(),Oe=c(!1),y=et({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),_n={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},gn=t=>{var e;y.patient_id=t.patient_id||t.id,y.patient_name=t.patient_name,y.phone=t.phone||"",y.order_type="",y.amount=0,y.remark="",y.has_appointment=!!t.has_appointment,y.appointment_time_text=t.appointment_time_text||"",(e=Ce.value)==null||e.clearValidate(),se.value=!0},fn=()=>{var t;y.patient_id="",y.patient_name="",y.phone="",y.order_type="",y.amount=0,y.remark="",y.has_appointment=!1,y.appointment_time_text="",(t=Ce.value)==null||t.clearValidate()},vn=async()=>{var t;try{await((t=Ce.value)==null?void 0:t.validate()),Oe.value=!0;const e=await Ja({patient_id:y.patient_id,order_type:y.order_type,amount:y.amount,remark:y.remark});se.value=!1,x();const r=e==null?void 0:e.order_no;if(r){Y.value=!0,G.value=!0,H.value="",K.value={patient_name:y.patient_name,has_appointment:y.has_appointment,appointment_time_text:y.appointment_time_text};try{const _=await qa({order_no:r});_!=null&&_.qrcode_url?H.value=_.qrcode_url:g.msgError("二维码生成失败")}catch(_){g.msgError((_==null?void 0:_.msg)||"生成二维码失败")}finally{G.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Oe.value=!1}},Y=c(!1),G=c(!1),H=c(""),K=c(null),yn=X(()=>{const t=K.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Ue=c("小程序二维码"),qe=c("confirm"),R=c([]),ie=c([]),ee=c(!1),Qe=c(!1),me=c("batch"),pe=c(null),O=c({assistant_id:null});function hn(){ie.value=[],O.value.assistant_id=null}const kn=t=>{R.value=t.map(e=>e.id)},xe=t=>Number((t==null?void 0:t.assistant_id)??(t==null?void 0:t.assistant)??0)>0,bn=X(()=>{if(!R.value.length)return!1;const t=new Set(R.value);return D.lists.some(e=>t.has(e.id)&&xe(e))}),Cn=t=>{me.value="single",pe.value=t,ie.value=[],O.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,ee.value=!0},xn=()=>{if(R.value.length===0){g.msgWarning("请先选择要指派的诊单");return}me.value="batch",pe.value=null,O.value.assistant_id=null,ie.value=[...R.value],ee.value=!0},Dn=async()=>{if(!O.value.assistant_id){g.msgWarning("请选择医助");return}Qe.value=!0;try{if(me.value==="single")await Se({id:pe.value.id,assistant_id:O.value.assistant_id});else{const t=ie.value;if(!t.length){g.msgWarning("没有可指派的诊单,请关闭后重新勾选");return}for(const e of t)await Se({id:e,assistant_id:O.value.assistant_id});R.value=[],ie.value=[]}ee.value=!1,x()}catch(t){console.error("指派失败:",t)}finally{Qe.value=!1}},Vn=async t=>{if(!(t!=null&&t.id)||!xe(t)){g.msgWarning("该诊单未指派医助");return}await g.confirm("确定取消该诊单的医助指派吗?"),await Se({id:t.id,assistant_id:0}),x()},An=async()=>{if(!R.value.length){g.msgWarning("请先选择诊单");return}const t=new Set(R.value),e=D.lists.filter(r=>t.has(r.id)&&xe(r));if(!e.length){g.msgWarning("所选诊单中没有已指派医助的记录");return}await g.confirm(`确定取消 ${e.length} 条诊单的医助指派吗?`),await Promise.all(e.map(r=>Se({id:r.id,assistant_id:0}))),R.value=[],x()},En=()=>{ae.value.open("add")},wn=t=>{ae.value.open("edit",t)};function Rn(t){return l.pending_assign==="1"?"开方":Number(t==null?void 0:t.prescription_audit_status)===1&&Number(t==null?void 0:t.prescription_void_status)!==1?"查看":"开方"}const In=t=>{var e;if(!(t!=null&&t.id)){g.msgWarning("诊单信息不完整");return}(e=ot.value)==null||e.open({...t,diagnosis_id:t.id,id:t.appointment_id||0})},$n=()=>{var t,e;x(),(e=(t=ae.value)==null?void 0:t.refreshCaseList)==null||e.call(t)},Sn=async t=>{await g.confirm("确定要删除该诊单吗?"),await Ka({id:t}),x()},Ln=(t,e)=>{switch(t){case"assign":Cn(e);break;case"cancelAssign":Vn(e);break;case"videoQr":if(!ce(e)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}pt(e);break;case"confirmQr":ct(e);break;case"cancelApt":Fn(e);break;case"guahaoLogs":Un(e);break;case"order":gn(e);break;case"delete":Sn(e.id);break}},Nn=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},zn=t=>{const e=Number(t);return e===3?"已完成":e===4?"已过号":"已挂号"},De=t=>{const e=Array.isArray(t.appointments)?t.appointments:[];return e.length>0?e:t.has_appointment?[{id:t.appointment_id,status:t.appointment_status,doctor_id:t.appointment_doctor_id,doctor_name:t.appointment_doctor_name,time_text:t.appointment_time_text}]:[]},Pn=t=>{const e=Number(t==null?void 0:t.status);return{"apt-item-done":e===3,"apt-item-missed":e===4,"apt-item-active":e===1}},Tn=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},ce=t=>t.has_appointment&&Number(t.appointment_status)===1,ut=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},Be=t=>{const e=Number(t==null?void 0:t.status);return!!(t!=null&&t.id&&(e===1||e===4))},Wn=t=>ut(t)?De(t).length<=1:!1,Fn=async t=>{var v;if(!ut(t)){const h=Number(t.appointment_status);t.has_appointment&&h===3?g.msgWarning("已完成就诊,无法取消挂号"):g.msgWarning("该诊单未挂号或挂号信息异常");return}const e=De(t),r=e.length===1?e[0]:null,_=r!=null&&r.id&&Be(r)?r.id:t.appointment_id;try{await g.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await bt({id:_}),g.msgSuccess("取消挂号成功"),x(),E(),te.value&&((v=U.value)==null?void 0:v.id)===t.id&&await Ae(t.id)}catch(h){h!=="cancel"&&g.msgError((h==null?void 0:h.msg)||"取消挂号失败")}},Mn=async(t,e)=>{var v;if(!Be(e)){Number(e==null?void 0:e.status)===3?g.msgWarning("已完成就诊,无法取消挂号"):g.msgWarning("该挂号无法取消");return}const r=e.doctor_name||"—",_=e.time_text||"—";try{await g.confirm(`确定取消「${r}」${_} 的挂号吗?(患者:${t.patient_name||"—"})`),await bt({id:e.id}),g.msgSuccess("取消挂号成功"),x(),E(),te.value&&((v=U.value)==null?void 0:v.id)===t.id&&await Ae(t.id)}catch(h){h!=="cancel"&&g.msgError((h==null?void 0:h.msg)||"取消挂号失败")}},te=c(!1),Ve=c(!1),le=c([]),U=c(null);function Yn(){le.value=[],U.value=null}function On(t){const e=String((t==null?void 0:t.admin_name)||"").trim(),r=Number(t==null?void 0:t.admin_id);return e||(r>0?`管理员 #${r}`:"—")}async function Ae(t){Ve.value=!0;try{const e=await Qa({id:t});le.value=Array.isArray(e==null?void 0:e.data)?e.data:Array.isArray(e)?e:[]}catch{le.value=[]}finally{Ve.value=!1}}async function Un(t){if(!(t!=null&&t.id)){g.msgWarning("诊单信息不完整");return}U.value=t,te.value=!0,await Ae(Number(t.id))}async function qn(){var t;await x({silent:!0}),E(),te.value&&((t=U.value)!=null&&t.id)&&await Ae(Number(U.value.id))}const Qn=t=>{var e;if(!t.patient_id){g.msgWarning("患者信息不完整");return}(e=dt.value)==null||e.open(t)},oe=c(!1),Ge=c(!1),mt=c(),z=et({id:0,patient_name:"",id_card:""}),Bn={id_card:[{required:!0,validator:(t,e,r)=>{if(!e){r(new Error("请输入身份证号"));return}const _=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),v=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);_||v?r():r(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},Gn=t=>{z.id=t.id,z.patient_name=t.patient_name||"-",z.id_card=t.id_card||"",oe.value=!0},Hn=async()=>{var t;await((t=mt.value)==null?void 0:t.validate()),Ge.value=!0;try{await Ba({id:z.id,id_card:z.id_card}),g.msgSuccess("补全成功,年龄已自动更新"),oe.value=!1,x()}catch(e){g.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ge.value=!1}},pt=async t=>{var e;if(!ce(t)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}qe.value="video",K.value=t,Y.value=!0,G.value=!0,H.value="",Ue.value="视频二维码";try{const r=await xt();if(!(r!=null&&r.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),Y.value=!1;return}const _=await ht({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=he.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});_!=null&&_.qrcode_url?H.value=_.qrcode_url:g.msgError("二维码生成失败")}catch(r){g.msgError((r==null?void 0:r.msg)||"生成二维码失败,请重试")}finally{G.value=!1}},ct=async t=>{if(!ce(t)){g.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}qe.value="confirm",K.value=t,Y.value=!0,G.value=!0,H.value="",Ue.value="诊单二维码";try{const e=await xt();if(!(e!=null&&e.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),Y.value=!1;return}const r=he.userInfo,_=await ht({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(r==null?void 0:r.id)||""});_!=null&&_.qrcode_url?H.value=_.qrcode_url:g.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),g.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{G.value=!1}},Kn=()=>{K.value&&(qe.value==="video"?pt(K.value):ct(K.value))},Ee=c(!1),S=c(null),j=c([]),we=c(0),He=c(!1),L=c(null),ne=c(""),Ke=c(!1),je=c(1),jn=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return Le(e).format("YYYY-MM-DD HH:mm")},Jn=async t=>{S.value=t,Ee.value=!0,j.value=[],we.value=0,L.value=null,ne.value="",je.value=1,He.value=!0;try{const[e,r]=await Promise.all([kt({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),ja({patient_id:t.patient_id||t.id}).catch(()=>null)]);j.value=(e==null?void 0:e.lists)||[],we.value=(e==null?void 0:e.count)||0,L.value=r}catch(e){console.error("加载企业微信记录失败:",e)}finally{He.value=!1}},Xn=async()=>{if(S.value){je.value++;try{const t=await kt({diagnosis_id:S.value.id,patient_id:S.value.patient_id,page_no:je.value,page_size:20});j.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},Zn=async()=>{var t;if(!ne.value.trim()){g.msgWarning("请输入内容");return}Ke.value=!0;try{await Ga({diagnosis_id:S.value.id,patient_id:S.value.patient_id,content:ne.value.trim(),msg_type:"note",staff_name:((t=he.userInfo)==null?void 0:t.name)||"",external_name:S.value.patient_name||""}),ne.value="",Jn(S.value)}catch(e){g.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Ke.value=!1}},ea=async t=>{await g.confirm("确定删除该记录吗?");try{await Ha({id:t}),j.value=j.value.filter(e=>e.id!==t),we.value--}catch(e){g.msgError((e==null?void 0:e.msg)||"删除失败")}},ta=ds(),na=rs(),_t=t=>{if(!F(["tcm.diagnosis/readonlyDetail"]))return;const e=Number(t==null?void 0:t.id);!e||e<=0||na.push({path:"/tcm/diagnosis-readonly",query:{id:String(e)}})};return ms(()=>{l.appointment_date=ve.value,Jt(),x(),Ht(),fe=setInterval(jt,Kt);const t=ta.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(ye.value=e)}}),ps(()=>{fe!=null&&(clearInterval(fe),fe=null)}),(t,e)=>{var vt;const r=_a,_=ga,v=fa,h=va,V=ha,q=ya,de=ka,I=Ca,P=xa,gt=Da,J=Ea,aa=Aa,sa=Va,ia=ba,la=Ya,oa=Ra,da=$a,ra=Ia,ft=Sa,Re=La,Q=za,Je=Na,ua=Pa,Ie=Wa,ma=Ta,pa=Fa,ca=Ma,T=cs("perms"),Xe=wa;return o(),u("div",_s,[i(de,{class:"filter-card !border-none",shadow:"never"},{default:s(()=>[d("div",gs,[d("div",fs,[(o(!0),u(A,null,$(Ot.value,n=>(o(),u("span",{key:n.value,class:M(["chip",{active:a(l).pending_assign!=="1"&&a(l).pending_booking!=="1"&&a(l).completed_appointment!=="1"&&a(l).appointment_date===n.value}]),onClick:k=>Ut(n.value)},[m(p(n.label)+" ",1),a(Ne)[n.value]!==void 0?(o(),u("em",ys,p(a(Ne)[n.value]),1)):C("",!0)],10,vs))),128)),d("span",{class:M(["chip","chip-pending-booking",{active:a(l).pending_booking==="1"}]),onClick:qt},[e[28]||(e[28]=m(" 待预约 ",-1)),a(ze)!==void 0?(o(),u("em",hs,p(a(ze)),1)):C("",!0)],2),d("span",{class:M(["chip","chip-completed-visit",{active:a(l).completed_appointment==="1"}]),onClick:Qt},[e[29]||(e[29]=m(" 已完成 ",-1)),a(Pe)!==void 0?(o(),u("em",ks,p(a(Pe)),1)):C("",!0)],2),w((o(),u("span",bs,[d("span",{class:M(["chip","chip-pending",{active:a(l).pending_assign==="1"}]),onClick:Bt},[e[30]||(e[30]=m(" 待分配医助 ",-1)),a(Te)!==void 0?(o(),u("em",Cs,p(a(Te)),1)):C("",!0)],2),a(l).pending_assign==="1"?(o(),f(r,{key:0,modelValue:a(l).pending_assign_order_month,"onUpdate:modelValue":e[0]||(e[0]=n=>a(l).pending_assign_order_month=n),type:"month",placeholder:"订单月份","value-format":"YYYY-MM",clearable:"",class:"pending-assign-month",onChange:Gt},null,8,["modelValue"])):C("",!0),a(l).pending_assign==="1"?(o(),f(_,{key:1,modelValue:a(l).pending_assign_keyword,"onUpdate:modelValue":e[1]||(e[1]=n=>a(l).pending_assign_keyword=n),placeholder:"搜身份证/诊单ID/患者号/备注…",clearable:"",class:"pending-assign-search",onKeyup:yt(Z,["enter"]),onClear:Z},null,8,["modelValue"])):C("",!0)])),[[T,["tcm.diagnosis/assign"]]])]),d("div",xs,[i(_,{modelValue:a(l).keyword,"onUpdate:modelValue":e[2]||(e[2]=n=>a(l).keyword=n),placeholder:"患者姓名 / 手机号",clearable:"",class:"search-input",onKeyup:yt(Z,["enter"])},null,8,["modelValue"]),i(v,{type:"primary",onClick:Z},{default:s(()=>[...e[31]||(e[31]=[m("查询",-1)])]),_:1})])]),d("div",Ds,[e[32]||(e[32]=d("span",{class:"chip-label"},"挂号:",-1)),(o(),u(A,null,$(Lt,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(l).has_appointment===n.value}]),onClick:k=>zt(n.value)},p(n.label),11,Vs)),64)),e[33]||(e[33]=d("span",{class:"chip-divider"},null,-1)),e[34]||(e[34]=d("span",{class:"chip-label"},"确认:",-1)),(o(),u(A,null,$(Nt,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(l).diagnosis_confirmed===n.value}]),onClick:k=>Pt(n.value)},p(n.label),11,As)),64)),i(v,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[3]||(e[3]=n=>re.value=!a(re))},{default:s(()=>[m(p(a(re)?"收起":"更多筛选")+" ",1),i(h,{class:M({"rotate-180":a(re)})},{default:s(()=>[i(a(Dt))]),_:1},8,["class"])]),_:1})]),w(d("div",Es,[i(q,{modelValue:a(l).diagnosis_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(l).diagnosis_type=n),placeholder:"诊断类型",clearable:"",size:"small",onChange:Z},{default:s(()=>[(o(!0),u(A,null,$(a(st),n=>(o(),f(V,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),i(q,{modelValue:a(l).syndrome_type,"onUpdate:modelValue":e[5]||(e[5]=n=>a(l).syndrome_type=n),placeholder:"证型",clearable:"",size:"small",onChange:Z},{default:s(()=>[(o(!0),u(A,null,$(a(it),n=>(o(),f(V,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),i(q,{modelValue:a(l).assistant_id,"onUpdate:modelValue":e[6]||(e[6]=n=>a(l).assistant_id=n),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:Z},{default:s(()=>[(o(!0),u(A,null,$(a(ue),n=>(o(),f(V,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),i(v,{size:"small",onClick:en},{default:s(()=>[...e[35]||(e[35]=[m("重置",-1)])]),_:1})],512),[[Oa,a(re)]])]),_:1}),i(de,{class:"!border-none mt-3 list-card",shadow:"never"},{default:s(()=>[d("div",ws,[d("div",Rs,[w((o(),f(v,{type:"primary",onClick:En},{default:s(()=>[...e[36]||(e[36]=[m("新增诊单",-1)])]),_:1})),[[T,["tcm.diagnosis/add"]]]),w((o(),f(v,{type:"success",onClick:xn,disabled:a(R).length===0},{default:s(()=>[...e[37]||(e[37]=[m(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[T,["tcm.diagnosis/assign"]]]),w((o(),f(v,{type:"warning",plain:"",onClick:An,disabled:!bn.value},{default:s(()=>[...e[38]||(e[38]=[m(" 批量取消指派 ",-1)])]),_:1},8,["disabled"])),[[T,["tcm.diagnosis/assign"]]])]),a(R).length>0?(o(),u("div",Is,"已选 "+p(a(R).length)+" 条",1)):C("",!0)]),d("div",$s,[w((o(),f(ia,{data:a(D).lists,"row-key":"id",size:"default",onSelectionChange:kn,onRowDblclick:_t,"row-class-name":nn,class:"diagnosis-table",stripe:""},{default:s(()=>[i(I,{type:"selection",width:"48",align:"center"}),i(I,{label:"ID","min-width":"70"},{default:s(({row:n})=>[d("div",Ss,[d("div",Ls,[d("div",Ns,[m(p(n.id)+" ",1),n.assign_read_at===null&&n.assistant_id>0?(o(),f(P,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:s(()=>[...e[39]||(e[39]=[m("NEW",-1)])]),_:1})):C("",!0)])])])]),_:1}),i(I,{label:"患者","min-width":"60"},{default:s(({row:n})=>[d("div",zs,[d("div",Ps,[d("div",Ts,p(n.patient_name),1)])])]),_:1}),i(I,{label:" 性别 / 年龄",width:"100",align:"left"},{default:s(({row:n})=>[d("div",null,p(n.gender_desc||"-")+" · "+p(n.age??"-")+"岁",1)]),_:1}),i(I,{label:"挂号","min-width":"175"},{default:s(({row:n})=>[d("div",{class:M(["appointment-cell",Tn(n)])},[n.has_appointment?(o(),u(A,{key:0},[De(n).length?(o(!0),u(A,{key:0},$(De(n),k=>(o(),u("div",{key:k.id||`${k.doctor_id}-${k.time_text}`,class:M(["apt-item",Pn(k)])},[d("div",Ws,p(zn(k.status)),1),d("div",Fs,p(k.doctor_name||"-"),1),d("div",Ms,p(k.time_text||"-"),1),Be(k)?(o(),u("div",Ys,[w((o(),f(v,{type:"danger",link:"",size:"small",onClick:Ze(b=>Mn(n,k),["stop"])},{default:s(()=>[...e[40]||(e[40]=[m(" 取消挂号 ",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/guahao"]]])])):C("",!0)],2))),128)):(o(),u(A,{key:1},[d("div",Os,p(Nn(n)),1),d("div",Us,p(n.appointment_doctor_name||"-"),1),d("div",qs,p(n.appointment_time_text||"-"),1)],64))],64)):(o(),u("span",Qs,"未挂号"))],2)]),_:1}),i(I,{label:"确认",width:"88",align:"center"},{default:s(({row:n})=>[lt(n)?(o(),u("span",Bs,"已确认")):(o(),u("span",Gs,"未确认"))]),_:1}),i(I,{label:"复诊","min-width":"120"},{default:s(({row:n})=>[n.has_prescription?(o(),u("div",Hs,[d("div",Ks,p(n.followup_time_text||"—"),1),d("div",js,p(n.followup_doctor_name||"—"),1),n.followup_rx_voided?(o(),f(P,{key:0,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:s(()=>[...e[41]||(e[41]=[m(" 处方已作废 ",-1)])]),_:1})):C("",!0)])):(o(),u("span",Js,"无"))]),_:1}),i(I,{label:"助理",width:"100","show-overflow-tooltip":""},{default:s(({row:n})=>[d("span",Xs,p(Xt(n.assistant_id||n.assistant)),1)]),_:1}),i(I,{label:"开方",width:"72",align:"center"},{default:s(({row:n})=>[n.has_prescription?(o(),u("span",Zs,"已开方")):(o(),u("span",ei,"未开方"))]),_:1}),i(I,{label:"未服务天数",width:"110",align:"center"},{default:s(({row:n})=>[n.last_blood_record_at?(o(),f(gt,{key:0,content:`最近一次健康打卡:${n.last_blood_record_at}`,placement:"top"},{default:s(()=>[d("span",{class:M(["unserved-days",tn(n.unserved_days)])},p(n.unserved_days??"—"),3)]),_:2},1032,["content"])):(o(),u("span",ti,"—"))]),_:1}),i(I,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:s(({row:n})=>[d("div",ni,[on(n)?(o(),u(A,{key:0},[rn(n)?(o(),f(gt,{key:0,content:un(n),placement:"top"},{default:s(()=>[d("span",ai,[i(v,{type:"primary",link:"",size:"small",onClick:k=>mn(n)},{default:s(()=>[...e[42]||(e[42]=[m(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(o(),u("span",si,p(pn(n)),1))],64)):(o(),u("span",ii,p(cn(n)),1))])]),_:1}),i(I,{label:"操作",width:"340",fixed:"right",align:"left"},{default:s(({row:n})=>[d("div",{class:"action-cell",onClick:e[7]||(e[7]=Ze(()=>{},["stop"])),onDblclick:e[8]||(e[8]=Ze(()=>{},["stop"]))},[w((o(),f(v,{type:"primary",link:"",size:"small",onClick:k=>_t(n)},{default:s(()=>[...e[43]||(e[43]=[m(" 查看 ",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/readonlyDetail"]]]),w((o(),f(v,{type:"primary",link:"",size:"small",onClick:k=>wn(n.id)},{default:s(()=>[...e[44]||(e[44]=[m("诊单",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/edit"]]]),w((o(),f(v,{type:"primary",link:"",size:"small",onClick:k=>In(n)},{default:s(()=>[m(p(Rn(n)),1)]),_:2},1032,["onClick"])),[[T,["tcm.diagnosis/kaifang"]]]),w((o(),f(v,{type:"success",link:"",size:"small",onClick:k=>Qn(n)},{default:s(()=>[...e[45]||(e[45]=[m("预约",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/guahao"]]]),w((o(),f(v,{type:"warning",link:"",size:"small",onClick:k=>Gn(n)},{default:s(()=>[...e[46]||(e[46]=[m("补全身份证",-1)])]),_:1},8,["onClick"])),[[T,["tcm.diagnosis/edit"]]]),i(sa,{trigger:"click",onCommand:k=>Ln(k,n),placement:"bottom-end"},{dropdown:s(()=>[i(aa,null,{default:s(()=>[a(F)(["tcm.diagnosis/assign"])?(o(),f(J,{key:0,command:"assign"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ts))]),_:1}),e[48]||(e[48]=m("指派",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/assign"])&&xe(n)?(o(),f(J,{key:1,command:"cancelAssign"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ns))]),_:1}),e[49]||(e[49]=m("取消指派 ",-1))]),_:1})):C("",!0),ce(n)&&a(F)(["tcm.diagnosis/videoQr"])?(o(),f(J,{key:2,command:"videoQr"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(Vt))]),_:1}),e[50]||(e[50]=m("视频二维码",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/guahao"])&&ce(n)?(o(),f(J,{key:3,command:"confirmQr"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(Vt))]),_:1}),e[51]||(e[51]=m("二维码",-1))]),_:1})):C("",!0),Wn(n)&&a(F)(["tcm.diagnosis/guahao"])?(o(),f(J,{key:4,command:"cancelApt"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(as))]),_:1}),e[52]||(e[52]=m("取消挂号 ",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/guahaoLogList"])?(o(),f(J,{key:5,command:"guahaoLogs"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ss))]),_:1}),e[53]||(e[53]=m("挂号日志",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/order"])?(o(),f(J,{key:6,command:"order"},{default:s(()=>[i(h,null,{default:s(()=>[i(a(is))]),_:1}),e[54]||(e[54]=m("创建订单",-1))]),_:1})):C("",!0),a(F)(["tcm.diagnosis/delete"])?(o(),f(J,{key:7,command:"delete",divided:""},{default:s(()=>[i(h,null,{default:s(()=>[i(a(ls))]),_:1}),e[55]||(e[55]=d("span",{class:"text-danger"},"删除",-1))]),_:1})):C("",!0)]),_:2},1024)]),default:s(()=>[i(v,{type:"info",link:"",size:"small"},{default:s(()=>[e[47]||(e[47]=m("更多",-1)),i(h,{class:"el-icon--right"},{default:s(()=>[i(a(Dt))]),_:1})]),_:1})]),_:2},1032,["onCommand"])],32)]),_:1})]),_:1},8,["data"])),[[Xe,a(D).loading]]),d("div",li,[i(la,{modelValue:a(D),"onUpdate:modelValue":e[9]||(e[9]=n=>B(D)?D.value=n:null),onChange:a(x)},null,8,["modelValue","onChange"])])])]),_:1}),i(a(Et),{ref_key:"editRef",ref:ae,onSuccess:Zt},null,512),i(a(wt),{ref_key:"detailRef",ref:an},null,512),i(a(Rt),{ref_key:"prescriptionRef",ref:ot,onSuccess:$n},null,512),i(a(It),{ref_key:"appointmentRef",ref:dt,onSuccess:qn},null,512),i(a($t),{modelValue:a(ke),"onUpdate:modelValue":e[10]||(e[10]=n=>B(ke)?ke.value=n:null),"diagnosis-id":a(rt),onClosed:a(x)},null,8,["modelValue","diagnosis-id","onClosed"]),i(ft,{modelValue:a(te),"onUpdate:modelValue":e[11]||(e[11]=n=>B(te)?te.value=n:null),title:"挂号操作日志",size:"460px","destroy-on-close":"",onClosed:Yn},{default:s(()=>[w((o(),u("div",oi,[a(U)?(o(),u("div",di,[d("span",ri,p(a(U).patient_name),1),e[56]||(e[56]=d("span",{class:"mx-2 text-gray-300"},"|",-1)),d("span",null,"诊单 #"+p(a(U).id),1)])):C("",!0),!a(Ve)&&a(le).length===0?(o(),f(oa,{key:1,description:"暂无挂号/取消挂号操作记录"})):a(le).length>0?(o(),f(ra,{key:2},{default:s(()=>[(o(!0),u(A,null,$(a(le),(n,k)=>(o(),f(da,{key:n.id??k,timestamp:n.create_time_text||"—",placement:"top"},{default:s(()=>[d("div",ui,[i(P,{size:"small",type:"info"},{default:s(()=>[m(p(n.action_desc),1)]),_:2},1024),d("span",mi,p(On(n)),1)]),d("div",pi,p(n.summary),1)]),_:2},1032,["timestamp"]))),128))]),_:1})):C("",!0)])),[[Xe,a(Ve)]])]),_:1},8,["modelValue"]),i(Re,{modelValue:a(Y),"onUpdate:modelValue":e[13]||(e[13]=n=>B(Y)?Y.value=n:null),title:a(Ue),width:"400px","close-on-click-modal":!1},{footer:s(()=>[i(v,{onClick:e[12]||(e[12]=n=>Y.value=!1)},{default:s(()=>[...e[59]||(e[59]=[m("关闭",-1)])]),_:1}),a(G)?C("",!0):(o(),f(v,{key:0,type:"primary",onClick:Kn},{default:s(()=>[...e[60]||(e[60]=[m(" 重新生成 ",-1)])]),_:1}))]),default:s(()=>{var n;return[d("div",ci,[a(G)?(o(),u("div",_i,[i(h,{class:"is-loading",size:40},{default:s(()=>[i(a(os))]),_:1}),e[57]||(e[57]=d("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):a(H)?(o(),u("div",gi,[d("img",{src:a(H),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,fi),d("div",vi,[d("div",null,"患者:"+p((n=a(K))==null?void 0:n.patient_name),1),d("div",yi,"挂号时间:"+p(yn.value),1),e[58]||(e[58]=d("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(o(),u("div",hi," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),i(Re,{modelValue:a(ee),"onUpdate:modelValue":e[16]||(e[16]=n=>B(ee)?ee.value=n:null),title:a(me)==="batch"?"批量指派医助":"指派医助",width:"500px",onClosed:hn},{footer:s(()=>[i(v,{onClick:e[15]||(e[15]=n=>ee.value=!1)},{default:s(()=>[...e[61]||(e[61]=[m("取消",-1)])]),_:1}),i(v,{type:"primary",onClick:Dn,loading:a(Qe)},{default:s(()=>[...e[62]||(e[62]=[m(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[i(Je,{model:a(O),"label-width":"100px"},{default:s(()=>[i(Q,{label:"选择医助",required:""},{default:s(()=>[i(q,{modelValue:a(O).assistant_id,"onUpdate:modelValue":e[14]||(e[14]=n=>a(O).assistant_id=n),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:""},{default:s(()=>[(o(!0),u(A,null,$(a(ue),n=>(o(),f(V,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(me)==="batch"?(o(),f(Q,{key:0,label:"已选择"},{default:s(()=>[d("div",ki,p(a(ie).length)+" 条诊单记录",1)]),_:1})):(o(),f(Q,{key:1,label:"诊单信息"},{default:s(()=>{var n,k;return[d("div",bi,[d("div",null,"患者:"+p((n=a(pe))==null?void 0:n.patient_name),1),d("div",null,"诊断日期:"+p((k=a(pe))==null?void 0:k.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),i(Re,{modelValue:a(se),"onUpdate:modelValue":e[21]||(e[21]=n=>B(se)?se.value=n:null),title:"创建订单",width:"600px",onClose:fn},{footer:s(()=>[i(v,{onClick:e[20]||(e[20]=n=>se.value=!1)},{default:s(()=>[...e[63]||(e[63]=[m("取消",-1)])]),_:1}),i(v,{type:"primary",onClick:vn,loading:a(Oe)},{default:s(()=>[...e[64]||(e[64]=[m("创建订单",-1)])]),_:1},8,["loading"])]),default:s(()=>[i(Je,{ref_key:"orderFormRef",ref:Ce,model:a(y),rules:_n,"label-width":"100px"},{default:s(()=>[i(Q,{label:"患者"},{default:s(()=>[d("span",Ci,p(a(y).patient_name)+" ("+p(tt(a(y).phone))+")",1)]),_:1}),i(Q,{label:"订单类型",prop:"order_type"},{default:s(()=>[i(q,{modelValue:a(y).order_type,"onUpdate:modelValue":e[17]||(e[17]=n=>a(y).order_type=n),placeholder:"请选择",class:"w-full"},{default:s(()=>[i(V,{label:"挂号费",value:1}),i(V,{label:"问诊费",value:2}),i(V,{label:"药品费用",value:3}),i(V,{label:"首付费用",value:4}),i(V,{label:"尾款费用",value:5}),i(V,{label:"其他费用",value:6}),i(V,{label:"全部费用",value:7}),i(V,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),i(Q,{label:"订单金额",prop:"amount"},{default:s(()=>[i(ua,{modelValue:a(y).amount,"onUpdate:modelValue":e[18]||(e[18]=n=>a(y).amount=n),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),i(Q,{label:"备注",prop:"remark"},{default:s(()=>[i(_,{modelValue:a(y).remark,"onUpdate:modelValue":e[19]||(e[19]=n=>a(y).remark=n),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),i(Re,{modelValue:a(oe),"onUpdate:modelValue":e[24]||(e[24]=n=>B(oe)?oe.value=n:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[25]||(e[25]=n=>a(z).id_card="")},{footer:s(()=>[i(v,{onClick:e[23]||(e[23]=n=>oe.value=!1)},{default:s(()=>[...e[65]||(e[65]=[m("取消",-1)])]),_:1}),i(v,{type:"primary",onClick:Hn,loading:a(Ge)},{default:s(()=>[...e[66]||(e[66]=[m("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:s(()=>[i(Je,{ref_key:"fillIdCardFormRef",ref:mt,model:a(z),rules:Bn,"label-width":"80px"},{default:s(()=>[i(Q,{label:"患者"},{default:s(()=>[d("span",xi,p(a(z).patient_name),1)]),_:1}),i(Q,{label:"身份证号",prop:"id_card"},{default:s(()=>[i(_,{modelValue:a(z).id_card,"onUpdate:modelValue":e[22]||(e[22]=n=>a(z).id_card=n),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),i(ft,{modelValue:a(Ee),"onUpdate:modelValue":e[27]||(e[27]=n=>B(Ee)?Ee.value=n:null),title:`企业微信记录 - ${((vt=a(S))==null?void 0:vt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:s(()=>{var n,k;return[a(L)?(o(),u("div",Di,[i(ma,{column:2,border:"",size:"small"},{default:s(()=>[i(Ie,{label:"患者姓名"},{default:s(()=>{var b;return[m(p((b=a(S))==null?void 0:b.patient_name),1)]}),_:1}),i(Ie,{label:"手机号"},{default:s(()=>[m(p(tt(a(L).phone)||"-"),1)]),_:1}),i(Ie,{label:"企微联系人ID"},{default:s(()=>[a(L).external_userid?(o(),u("span",Vi,p(a(L).external_userid),1)):(o(),f(P,{key:1,type:"info",size:"small"},{default:s(()=>[...e[67]||(e[67]=[m("未关联",-1)])]),_:1}))]),_:1}),i(Ie,{label:"会话存档"},{default:s(()=>[a(L).msgaudit_enabled?(o(),f(P,{key:0,type:"success",size:"small"},{default:s(()=>[...e[68]||(e[68]=[m("已开通",-1)])]),_:1})):(o(),f(P,{key:1,type:"info",size:"small"},{default:s(()=>[...e[69]||(e[69]=[m("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(n=a(L).permit_users)!=null&&n.length?(o(),u("div",Ai,[e[70]||(e[70]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(o(!0),u(A,null,$(a(L).permit_users,b=>(o(),f(P,{key:b,size:"small",class:"mr-1"},{default:s(()=>[m(p(b),1)]),_:2},1024))),128))])):C("",!0),(k=a(L).msgaudit_agree)!=null&&k.length?(o(),u("div",Ei,[e[71]||(e[71]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(o(!0),u(A,null,$(a(L).msgaudit_agree,(b,$e)=>(o(),f(P,{key:$e,type:b.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:s(()=>[m(p(b.userid)+": "+p(b.agree_status==="Agree"?"已同意":b.agree_status),1)]),_:2},1032,["type"]))),128))])):C("",!0)])):C("",!0),i(pa),d("div",wi,[d("div",Ri,[i(_,{modelValue:a(ne),"onUpdate:modelValue":e[26]||(e[26]=b=>B(ne)?ne.value=b:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),i(v,{type:"primary",onClick:Zn,loading:a(Ke),class:"self-end"},{default:s(()=>[...e[72]||(e[72]=[m(" 添加 ",-1)])]),_:1},8,["loading"])])]),w((o(),u("div",null,[a(j).length===0?(o(),u("div",Ii," 暂无聊天记录 ")):(o(),u("div",$i,[(o(!0),u(A,null,$(a(j),b=>{var $e;return o(),u("div",{key:b.id,class:"record-item"},[d("div",Si,[d("div",Li,[i(P,{type:b.direction===0?"primary":"success",size:"small"},{default:s(()=>[m(p(b.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),d("span",Ni,p(b.direction===0?b.staff_name:b.external_name||(($e=a(S))==null?void 0:$e.patient_name)),1),b.msg_type==="note"?(o(),f(P,{key:0,type:"warning",size:"small"},{default:s(()=>[...e[73]||(e[73]=[m("备注",-1)])]),_:1})):C("",!0)]),d("div",zi,[d("span",Pi,p(jn(b.chat_time)),1),i(v,{type:"danger",link:"",size:"small",onClick:qi=>ea(b.id)},{default:s(()=>[...e[74]||(e[74]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])])]),d("div",Ti,p(b.content),1),b.media_url?(o(),u("div",Wi,[i(ca,{src:b.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[b.media_url]},null,8,["src","preview-src-list"])])):C("",!0)])}),128))])),a(we)>a(j).length?(o(),u("div",Fi,[i(v,{link:"",type:"primary",onClick:Xn},{default:s(()=>[...e[75]||(e[75]=[m("加载更多",-1)])]),_:1})])):C("",!0)])),[[Xe,a(He)]])]}),_:1},8,["modelValue","title"])])}}}),zl=es(Yi,[["__scopeId","data-v-e31af008"]]);export{zl as default}; diff --git a/server/public/admin/assets/index--GZeyamQ.js b/server/public/admin/assets/index-CH2au-Zf.js similarity index 98% rename from server/public/admin/assets/index--GZeyamQ.js rename to server/public/admin/assets/index-CH2au-Zf.js index 6086d62f..fbd8ac60 100644 --- a/server/public/admin/assets/index--GZeyamQ.js +++ b/server/public/admin/assets/index-CH2au-Zf.js @@ -1 +1 @@ -import{v as Ye,E as Re,V as qe,Y as Ke,L as Qe,s as Ze,Z as Je,n as He,o as Oe,i as Xe,P as et,C as tt,r as lt,H as nt,M as st,N as at,_ as ot,p as it,Q as dt}from"./element-plus-DFTWCWyi.js";import{_ as ut}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as rt}from"./index-D18gAY1e.js";import{_ as De,c as Ie,i as ce,p as ct}from"./index-Nt5zMHcc.js";import{_ as mt}from"./index-BQY2-_X1.js";import{U as ft}from"./index-DMnmuOhU.js";import{_ as pt}from"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import{q as me,s as K,w as vt}from"./@vue/runtime-dom-DDAG46FW.js";import{f as fe,ak as i,I as m,J as o,G as h,a as n,H as p,aq as yt,w as Q,n as Ee,aP as Z,aN as s,A as Le,a5 as _t,b as gt,O as r,F as D,ap as W}from"./@vue/runtime-core-C6bnekPw.js";import{p as Te,o as ze,Q as ue}from"./@vue/shared-mAAVTE9n.js";import{f as Ct,b as ht,c as kt,d as $e,e as wt,g as bt,h as xt,i as At}from"./file-dC1LMm1W.js";import{u as St}from"./usePaging-VsbTxSU0.js";import{n as E,q as pe,r as Vt,y as l,a as T,K as Et}from"./@vue/reactivity-DiY1c2vO.js";const zt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAgCAYAAABgrToAAAACJElEQVRYR+2YMWsUURSFz3m7s+nskjUIQSutbMRi7WzUVjSadMHCbVLkByjmLygaCVYWRqMEUhkFS9Gg0cJfYCPZjYUQFbPs+I7c2R1Q2ZjZfRNYYS4MAzPv3vnmvDvL3kMA2Hl5/CjLI9ckf4ZwY3Zt15C+gfwIao3So0rt3XsJtPUk9M/cAW6y9ap2DIyfAjgCwANwGeoYiEFtk/5e5CvXeer1D2neATcGgiTZM4+t9RNLEKcBtAFEGeBsiRWzl7EoSXo+8rV9gWc/fDc1B1VSEoEnDpj0KTB33tS26DGaEezvZQZpRxmODyoT5+vwBwS3zeTcT4yjTdZNJEiPSykk1bjZX6HeD/WQJ1zUApgq2w+etcsniBuAVlH9vELOx6Yo1VywgkmTB4X1kEGGhyAtg/Ecq3NNqnknDwVTrNBaactEts88OHs5b8Bw/Tof4M+kr4WrwwhoL9n5uRPWhxWwsxPEl+EGNMacP5I8evCPGgVgqKSFgoWCoQqE5hc9WCgYqkBoftGDeSiYz1/+UJLe+foftvh2A2B1fwQIrapkaFoDcK4PVyH0qVnyU4fjGdW4NQ2WlgDE5hLkMoJmQdh9zW9Dk59K5lhtLjyE01TX/jDILP5MGEbvbFPOJroIXvc5PjvTBbx7GM4vAjjd9WdSc2g/IPaqaTv5Aq58haP1TSb2Au20GGErvgTxIqiTAA7tVSnn+2Z9vAXdCsa4bD6Nsf0C/gYA5PMzcW0AAAAASUVORK5CYII=",$t=fe({props:{uri:{type:String},fileSize:{type:String,default:"100px"},width:{type:String,default:""},height:{type:String,default:""},type:{type:String,default:"image"}},emits:["close"]}),Rt=["src"],Dt={key:3,class:"absolute left-1/2 top-1/2 translate-x-[-50%] translate-y-[-50%] rounded-full w-5 h-5 flex justify-center items-center bg-[rgba(0,0,0,0.3)]"};function It(a,$,x,_,k,z){const A=Ye,u=Ie;return i(),m("div",null,[o("div",{class:"file-item relative",style:Te({height:a.height||a.fileSize,width:a.width||a.fileSize})},[a.type=="image"?(i(),h(A,{key:0,class:"image",fit:"contain",src:a.uri},null,8,["src"])):a.type=="video"?(i(),m("video",{key:1,class:"video",src:a.uri},null,8,Rt)):(i(),h(A,{key:2,class:"image",src:"https://img95.699pic.com/element/40103/3946.png_860.png"})),a.type=="video"?(i(),m("div",Dt,[n(u,{name:"el-icon-CaretRight",size:18,color:"#fff"})])):p("",!0),yt(a.$slots,"default",{},void 0,!0)],4)])}const re=De($t,[["render",It],["__scopeId","data-v-60d59d9e"]]);function Lt(a){const $=pe(),x=E([]),_=E(""),k=async()=>{const f=await Ct({page_type:0,type:a}),C=[{name:"全部",id:""},{name:"未分组",id:0}];x.value=f.lists,x.value.unshift(...C),setTimeout(()=>{var w;(w=$.value)==null||w.setCurrentKey(_.value)},0)};return{treeRef:$,cateId:_,cateLists:x,handleAddCate:async f=>{await $e({type:a,name:f,pid:0}),k()},handleAddChildCate:async(f,C)=>{await $e({type:a,name:f,pid:C}),k()},handleEditCate:async(f,C)=>{await kt({id:C,name:f}),k()},handleDeleteCate:async(f,C)=>{C?await ce.confirm("删除文件夹将会永久删除文件夹及其所有内容。您确定要继续吗?"):await ce.confirm("确定要删除?"),await ht({id:f}),_.value="",k()},getCateLists:k,handleCatSelect:f=>{_.value=f.id}}}function Tt(a,$,x,_){const k=pe(),z=E("normal"),A=E(0),u=E([]),R=E(!1),g=E(!1),f=Vt({name:"",type:$,cid:a,source:""}),{pager:C,getLists:w,resetPage:j}=St({fetchFun:At,params:f,firstLoading:!0,size:_}),F=()=>{w()},J=()=>{j()},H=c=>!!u.value.find(d=>d.id==c),O=async c=>{await ce.confirm("确认删除后,本地或云存储文件也将同步删除,如文件已被使用,请谨慎操作!");const d=c||u.value.map(V=>V.id);await xt({ids:d}),F(),U()},X=async()=>{const c=u.value.map(d=>d.id);await bt({ids:c,cid:A.value}),A.value=0,F(),U()},ee=c=>{const d=u.value.findIndex(V=>V.id==c.id);if(d!=-1){u.value.splice(d,1);return}if(u.value.length==x.value){if(x.value==1){u.value=[],u.value.push(c);return}Re.warning("已达到选择上限");return}u.value.push(c)},U=()=>{u.value=[]};return{listShowType:z,tableRef:k,moveId:A,pager:C,fileParams:f,select:u,isCheckAll:R,isIndeterminate:g,getFileList:F,refresh:J,batchFileDelete:O,batchFileMove:X,selectFile:ee,isSelect:H,clearSelect:U,cancelSelete:c=>{u.value=u.value.filter(d=>d.id!=c)},selectAll:c=>{var d;if(g.value=!1,(d=k.value)==null||d.toggleAllSelection(),c){u.value=[...C.lists];return}U()},handleFileRename:async(c,d)=>{await wt({id:d,name:c}),F()}}}const Ft={key:0},Ut={key:1},Pt={class:"aspect-video overflow-hidden"},jt={class:"size-full",controls:""},Mt=["src"],Bt=fe({__name:"preview",props:{modelValue:{type:Boolean,default:!1},url:{type:String,default:""},type:{type:String,default:"image"}},emits:["update:modelValue"],setup(a,{emit:$}){const x=a,_=$,k=pe(),z=Le({get(){return x.modelValue},set(R){_("update:modelValue",R)}}),A=()=>{_("update:modelValue",!1)},u=E([]);return Q(()=>x.modelValue,R=>{R?Ee(()=>{var g;u.value=[x.url],(g=k.value)==null||g.play()}):Ee(()=>{var g;u.value=[],(g=k.value)==null||g.pause()})}),(R,g)=>{const f=Ke,C=qe;return Z((i(),m("div",null,[a.type=="image"?(i(),m("div",Ft,[l(u).length?(i(),h(f,{key:0,"url-list":l(u),"hide-on-click-modal":"",onClose:A},null,8,["url-list"])):p("",!0)])):p("",!0),a.type=="video"?(i(),m("div",Ut,[n(C,{modelValue:l(z),"onUpdate:modelValue":g[0]||(g[0]=w=>T(z)?z.value=w:null),width:"740px",title:"视频预览","before-close":A},{default:s(()=>[o("div",Pt,[o("video",jt,[o("source",{src:a.url,type:"video/mp4"},null,8,Mt)])])]),_:1},8,["modelValue"])])):p("",!0)],512)),[[me,a.modelValue]])}}}),Nt={class:"material"},Gt={class:"material__left"},Wt={class:"flex-1 min-h-0"},Yt={class:"material-left__content pt-4 p-b-4"},qt={class:"flex flex-1 items-center min-w-0 pr-4"},Kt={class:"flex-1 truncate mr-2"},Qt=["onClick"],Zt={class:"flex justify-center p-2 border-t border-br"},Jt={class:"material__center flex flex-col"},Ht={class:"operate-btn flex"},Ot={class:"flex-1 flex"},Xt={class:"flex items-center ml-2"},el={key:0,class:"mt-3"},tl={class:"material-center__content flex flex-col flex-1 mb-1 min-h-0"},ll={class:"file-list flex flex-wrap mt-4"},nl={key:0,class:"item-selected"},sl={class:"operation-btns flex items-center"},al={class:"inline-block"},ol={class:"inline-block"},il={class:"inline-block"},dl={key:1,class:"flex flex-1 justify-center items-center"},ul={class:"material-center__footer flex justify-between items-center mt-2"},rl={class:"flex"},cl={class:"mr-3"},ml={key:0,class:"material__right"},fl={class:"flex justify-between p-2 flex-wrap"},pl={class:"sm flex items-center"},vl={key:0},yl={class:"flex-1 min-h-0"},_l={class:"select-lists flex flex-col p-t-3"},gl={class:"select-item"},Cl=fe({__name:"index",props:{fileSize:{type:String,default:"100px"},limit:{type:Number,default:1},type:{type:String,default:"image"},mode:{type:String,default:"picker"},pageSize:{type:Number,default:15}},emits:["change"],setup(a,{expose:$,emit:x}){const _=a,k=x,{limit:z}=Et(_),A=Le(()=>{switch(_.type){case"image":return 10;case"video":return 20;case"file":return 30;default:return 0}}),u=[{value:"0",label:"后台上传"},{value:"1",label:"前端上传"}],R=_t("visible",E(!1)),g=E(""),f=E(!1),{treeRef:C,cateId:w,cateLists:j,handleAddCate:F,handleAddChildCate:J,handleEditCate:H,handleDeleteCate:O,getCateLists:X,handleCatSelect:ee}=Lt(A.value),{tableRef:U,listShowType:I,moveId:L,pager:S,fileParams:c,select:d,isCheckAll:V,isIndeterminate:M,getFileList:ve,refresh:P,batchFileDelete:Y,batchFileMove:ye,selectFile:te,isSelect:_e,clearSelect:ge,cancelSelete:Fe,selectAll:Ce,handleFileRename:he}=Tt(w,A,z,_.pageSize),ke=async()=>{var b;await X(),(b=C.value)==null||b.setCurrentKey(w.value),ve()},le=b=>{g.value=b,f.value=!0};Q(()=>R.value,async b=>{b&&ke()},{immediate:!0}),Q(w,()=>{c.name="",P()}),Q(d,b=>{if(k("change",b),b.length==S.lists.length&&b.length!==0){M.value=!1,V.value=!0;return}b.length>0?M.value=!0:(V.value=!1,M.value=!1)},{deep:!0}),gt(()=>{_.mode=="page"&&ke()}),$({clearSelect:ge});const we=E(),Ue=b=>{const e=b,B=we.value;B.value=e,B.select(),document.execCommand("copy"),Re({message:"地址复制成功",type:"success"})};return(b,e)=>{const B=ct,ne=Oe,N=pt,Pe=He,je=it,Me=Je,se=Ze,y=Xe,ae=ft,oe=dt,ie=et,be=mt,q=Ie,Be=tt,xe=lt,de=nt,Ae=rt,Se=ot,G=at,Ne=st,Ge=ut,We=Qe;return Z((i(),m("div",Nt,[o("div",Gt,[o("div",Wt,[n(se,null,{default:s(()=>[o("div",Yt,[n(Me,{ref_key:"treeRef",ref:C,"node-key":"id",data:l(j),"empty-text":"","highlight-current":!0,"expand-on-click-node":!1,"current-node-key":l(w),onNodeClick:l(ee)},{default:s(({data:t})=>[o("div",qt,[e[16]||(e[16]=o("img",{class:"w-[20px] h-[16px] mr-3",src:zt},null,-1)),o("span",Kt,[n(B,{content:t.name},null,8,["content"])]),t.id>0?(i(),h(je,{key:0,"hide-on-click":!1},{dropdown:s(()=>[n(Pe,null,{default:s(()=>[n(N,{onConfirm:v=>l(H)(v,t.id),size:"default",value:t.name,width:"400px",limit:20,"show-limit":"",teleported:""},{default:s(()=>[o("div",null,[n(ne,null,{default:s(()=>[...e[12]||(e[12]=[r(" 命名分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm","value"]),n(N,{onConfirm:v=>l(J)(v,t.id),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:s(()=>[o("div",null,[n(ne,null,{default:s(()=>[...e[13]||(e[13]=[r(" 添加分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm"]),o("div",{onClick:v=>{var Ve;return l(O)(t.id,(Ve=t==null?void 0:t.children)==null?void 0:Ve.length)}},[n(ne,null,{default:s(()=>[...e[14]||(e[14]=[r("删除分组",-1)])]),_:1})],8,Qt)]),_:2},1024)]),default:s(()=>[e[15]||(e[15]=o("span",{class:"muted m-r-10"},"···",-1))]),_:2},1024)):p("",!0)])]),_:1},8,["data","current-node-key","onNodeClick"])])]),_:1})]),o("div",Zt,[n(N,{onConfirm:l(F),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:s(()=>[n(y,null,{default:s(()=>[...e[17]||(e[17]=[r(" 添加分组 ",-1)])]),_:1})]),_:1},8,["onConfirm"])])]),o("div",Jt,[o("div",Ht,[o("div",Ot,[a.type=="image"?(i(),h(ae,{key:0,class:"mr-3",data:{cid:l(w)},type:a.type,"show-progress":!0,onChange:l(P)},{default:s(()=>[n(y,{type:"primary"},{default:s(()=>[...e[18]||(e[18]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onChange"])):p("",!0),a.type=="video"?(i(),h(ae,{key:1,class:"mr-3",data:{cid:l(w)},type:a.type,"show-progress":!0,onAllSuccess:l(P)},{default:s(()=>[n(y,{type:"primary"},{default:s(()=>[...e[19]||(e[19]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),a.type=="file"?(i(),h(ae,{key:2,class:"mr-3",data:{cid:l(w)},type:a.type,"show-progress":!0,onAllSuccess:l(P)},{default:s(()=>[n(y,{type:"primary"},{default:s(()=>[...e[20]||(e[20]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),a.mode=="page"?(i(),h(y,{key:3,disabled:!l(d).length,onClick:e[0]||(e[0]=K(t=>l(Y)(),["stop"]))},{default:s(()=>[...e[21]||(e[21]=[r(" 删除 ",-1)])]),_:1},8,["disabled"])):p("",!0),a.mode=="page"?(i(),h(be,{key:4,class:"ml-3",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:s(()=>[n(y,{disabled:!l(d).length},{default:s(()=>[...e[22]||(e[22]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:s(()=>[o("div",null,[e[23]||(e[23]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(L),"onUpdate:modelValue":e[1]||(e[1]=t=>T(L)?L.value=t:null),placeholder:"请选择"},{default:s(()=>[(i(!0),m(D,null,W(l(j),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])):p("",!0)]),n(ie,{modelValue:l(c).source,"onUpdate:modelValue":e[2]||(e[2]=t=>l(c).source=t),placeholder:"请选择文件来源",clearable:"",style:{"margin-right":"20px"},class:"max-w-52 ml-3"},{default:s(()=>[(i(),m(D,null,W(u,t=>n(oe,{key:t.value,label:t.label,value:t.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),n(Be,{class:"w-60",placeholder:"请输入名称",modelValue:l(c).name,"onUpdate:modelValue":e[3]||(e[3]=t=>l(c).name=t),onKeyup:vt(l(P),["enter"])},{append:s(()=>[n(y,{onClick:l(P)},{icon:s(()=>[n(q,{name:"el-icon-Search"})]),_:1},8,["onClick"])]),_:1},8,["modelValue","onKeyup"]),o("div",Xt,[n(xe,{content:"列表视图",placement:"top"},{default:s(()=>[o("div",{class:ze(["list-icon",{select:l(I)=="table"}]),onClick:e[4]||(e[4]=t=>I.value="table")},[n(q,{name:"local-icon-list-2",size:18})],2)]),_:1}),n(xe,{content:"平铺视图",placement:"top"},{default:s(()=>[o("div",{class:ze(["list-icon",{select:l(I)=="normal"}]),onClick:e[5]||(e[5]=t=>I.value="normal")},[n(q,{name:"el-icon-Menu",size:18})],2)]),_:1})])]),a.mode=="page"?(i(),m("div",el,[n(de,{disabled:!l(S).lists.length,modelValue:l(V),"onUpdate:modelValue":e[6]||(e[6]=t=>T(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(M)},{default:s(()=>[...e[24]||(e[24]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])])):p("",!0),o("div",tl,[l(S).lists.length?Z((i(),h(se,{key:0},{default:s(()=>[o("ul",ll,[(i(!0),m(D,null,W(l(S).lists,t=>(i(),m("li",{class:"file-item-wrap",key:t.id,style:Te({width:a.fileSize})},[n(Ae,{onClose:v=>l(Y)([t.id])},{default:s(()=>[n(re,{uri:t.url,"file-size":a.fileSize,type:a.type,onClick:v=>l(te)(t)},{default:s(()=>[l(_e)(t.id)?(i(),m("div",nl,[n(q,{size:24,name:"el-icon-Check",color:"#fff"})])):p("",!0)]),_:2},1032,["uri","file-size","type","onClick"])]),_:2},1032,["onClose"]),n(B,{class:"mt-1",content:t.name},null,8,["content"]),o("div",sl,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:s(()=>[n(y,{type:"primary",link:""},{default:s(()=>[...e[25]||(e[25]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"]),t.type===10||t.type===20?(i(),h(y,{key:0,type:"primary",link:"",onClick:v=>le(t.url)},{default:s(()=>[...e[26]||(e[26]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])):p("",!0),t.type===10||t.type===20?(i(),h(y,{key:1,type:"primary",link:"",onClick:v=>Ue(t.url),style:{"margin-left":"1px"}},{default:s(()=>[...e[27]||(e[27]=[r("地址",-1)])]),_:1},8,["onClick"])):(i(),h(Se,{key:2,type:"primary",underline:!1,style:{"margin-left":"25px"},href:t.url},{default:s(()=>[...e[28]||(e[28]=[r("下载",-1)])]),_:1},8,["href"]))])],4))),128))])]),_:1},512)),[[me,l(I)=="normal"]]):p("",!0),Z(n(Ne,{ref_key:"tableRef",ref:U,class:"mt-4",data:l(S).lists,width:"100%",height:"100%",size:"large",onRowClick:l(te)},{default:s(()=>[n(G,{width:"55"},{default:s(({row:t})=>[n(de,{modelValue:l(_e)(t.id),onChange:v=>l(te)(t)},null,8,["modelValue","onChange"])]),_:1}),n(G,{label:"图片",width:"100"},{default:s(({row:t})=>[n(re,{uri:t.url,"file-size":"50px",type:a.type},null,8,["uri","type"])]),_:1}),n(G,{label:"名称","min-width":"100","show-overflow-tooltip":""},{default:s(({row:t})=>[n(Se,{onClick:K(v=>le(t.url),["stop"]),underline:!1},{default:s(()=>[r(ue(t.name),1)]),_:2},1032,["onClick"])]),_:1}),n(G,{prop:"create_time",label:"上传时间","min-width":"100"}),n(G,{label:"操作",width:"150",fixed:"right"},{default:s(({row:t})=>[o("div",al,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:s(()=>[n(y,{type:"primary",link:""},{default:s(()=>[...e[29]||(e[29]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"])]),o("div",ol,[n(y,{type:"primary",link:"",onClick:K(v=>le(t.url),["stop"])},{default:s(()=>[...e[30]||(e[30]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])]),o("div",il,[n(y,{type:"primary",link:"",onClick:K(v=>l(Y)([t.id]),["stop"])},{default:s(()=>[...e[31]||(e[31]=[r(" 删除 ",-1)])]),_:1},8,["onClick"])])]),_:1})]),_:1},8,["data","onRowClick"]),[[me,l(I)=="table"]]),!l(S).loading&&!l(S).lists.length?(i(),m("div",dl," 暂无数据~ ")):p("",!0)]),o("div",ul,[o("div",rl,[a.mode=="page"?(i(),m(D,{key:0},[o("span",cl,[n(de,{disabled:!l(S).lists.length,modelValue:l(V),"onUpdate:modelValue":e[7]||(e[7]=t=>T(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(M)},{default:s(()=>[...e[32]||(e[32]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])]),n(y,{disabled:!l(d).length,onClick:e[8]||(e[8]=t=>l(Y)())},{default:s(()=>[...e[33]||(e[33]=[r(" 删除 ",-1)])]),_:1},8,["disabled"]),n(be,{class:"ml-3 inline",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:s(()=>[n(y,{disabled:!l(d).length},{default:s(()=>[...e[34]||(e[34]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:s(()=>[o("div",null,[e[35]||(e[35]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(L),"onUpdate:modelValue":e[9]||(e[9]=t=>T(L)?L.value=t:null),placeholder:"请选择"},{default:s(()=>[(i(!0),m(D,null,W(l(j),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])],64)):p("",!0)]),n(Ge,{modelValue:l(S),"onUpdate:modelValue":e[10]||(e[10]=t=>T(S)?S.value=t:null),onChange:l(ve),layout:"total, prev, pager, next, jumper"},null,8,["modelValue","onChange"])])]),a.mode=="picker"?(i(),m("div",ml,[o("div",fl,[o("div",pl,[r(" 已选择 "+ue(l(d).length)+" ",1),l(z)?(i(),m("span",vl,"/"+ue(l(z)),1)):p("",!0)]),n(y,{type:"primary",link:"",onClick:l(ge)},{default:s(()=>[...e[36]||(e[36]=[r("清空",-1)])]),_:1},8,["onClick"])]),o("div",yl,[n(se,{class:"ls-scrollbar"},{default:s(()=>[o("ul",_l,[(i(!0),m(D,null,W(l(d),t=>(i(),m("li",{class:"mb-4",key:t.id},[o("div",gl,[n(Ae,{onClose:v=>l(Fe)(t.id)},{default:s(()=>[n(re,{uri:t.url,"file-size":"100px",type:a.type},null,8,["uri","type"])]),_:2},1032,["onClose"])])]))),128))])]),_:1})])])):p("",!0),n(Bt,{modelValue:l(f),"onUpdate:modelValue":e[11]||(e[11]=t=>T(f)?f.value=t:null),url:l(g),type:a.type},null,8,["modelValue","url","type"]),o("input",{ref_key:"textCopys",ref:we,id:"textCopys",value:"",style:{opacity:"0",position:"absolute"}},null,512)])),[[We,l(S).loading]])}}}),Il=De(Cl,[["__scopeId","data-v-1e1d2cd0"]]);export{re as F,Bt as _,Il as a}; +import{v as Ye,E as Re,V as qe,Y as Ke,L as Qe,s as Ze,Z as Je,n as He,o as Oe,i as Xe,P as et,C as tt,r as lt,H as nt,M as st,N as at,_ as ot,p as it,Q as dt}from"./element-plus-DFTWCWyi.js";import{_ as ut}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as rt}from"./index-BtiRSS_3.js";import{_ as De,c as Ie,i as ce,p as ct}from"./index--WnM67ZH.js";import{_ as mt}from"./index-SocYjCJ1.js";import{U as ft}from"./index-C6BRrxYh.js";import{_ as pt}from"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import{q as me,s as K,w as vt}from"./@vue/runtime-dom-DDAG46FW.js";import{f as fe,ak as i,I as m,J as o,G as h,a as n,H as p,aq as yt,w as Q,n as Ee,aP as Z,aN as s,A as Le,a5 as _t,b as gt,O as r,F as D,ap as W}from"./@vue/runtime-core-C6bnekPw.js";import{p as Te,o as ze,Q as ue}from"./@vue/shared-mAAVTE9n.js";import{f as Ct,b as ht,c as kt,d as $e,e as wt,g as bt,h as xt,i as At}from"./file-B0kKUfF_.js";import{u as St}from"./usePaging-VsbTxSU0.js";import{n as E,q as pe,r as Vt,y as l,a as T,K as Et}from"./@vue/reactivity-DiY1c2vO.js";const zt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAgCAYAAABgrToAAAACJElEQVRYR+2YMWsUURSFz3m7s+nskjUIQSutbMRi7WzUVjSadMHCbVLkByjmLygaCVYWRqMEUhkFS9Gg0cJfYCPZjYUQFbPs+I7c2R1Q2ZjZfRNYYS4MAzPv3vnmvDvL3kMA2Hl5/CjLI9ckf4ZwY3Zt15C+gfwIao3So0rt3XsJtPUk9M/cAW6y9ap2DIyfAjgCwANwGeoYiEFtk/5e5CvXeer1D2neATcGgiTZM4+t9RNLEKcBtAFEGeBsiRWzl7EoSXo+8rV9gWc/fDc1B1VSEoEnDpj0KTB33tS26DGaEezvZQZpRxmODyoT5+vwBwS3zeTcT4yjTdZNJEiPSykk1bjZX6HeD/WQJ1zUApgq2w+etcsniBuAVlH9vELOx6Yo1VywgkmTB4X1kEGGhyAtg/Ecq3NNqnknDwVTrNBaactEts88OHs5b8Bw/Tof4M+kr4WrwwhoL9n5uRPWhxWwsxPEl+EGNMacP5I8evCPGgVgqKSFgoWCoQqE5hc9WCgYqkBoftGDeSiYz1/+UJLe+foftvh2A2B1fwQIrapkaFoDcK4PVyH0qVnyU4fjGdW4NQ2WlgDE5hLkMoJmQdh9zW9Dk59K5lhtLjyE01TX/jDILP5MGEbvbFPOJroIXvc5PjvTBbx7GM4vAjjd9WdSc2g/IPaqaTv5Aq58haP1TSb2Au20GGErvgTxIqiTAA7tVSnn+2Z9vAXdCsa4bD6Nsf0C/gYA5PMzcW0AAAAASUVORK5CYII=",$t=fe({props:{uri:{type:String},fileSize:{type:String,default:"100px"},width:{type:String,default:""},height:{type:String,default:""},type:{type:String,default:"image"}},emits:["close"]}),Rt=["src"],Dt={key:3,class:"absolute left-1/2 top-1/2 translate-x-[-50%] translate-y-[-50%] rounded-full w-5 h-5 flex justify-center items-center bg-[rgba(0,0,0,0.3)]"};function It(a,$,x,_,k,z){const A=Ye,u=Ie;return i(),m("div",null,[o("div",{class:"file-item relative",style:Te({height:a.height||a.fileSize,width:a.width||a.fileSize})},[a.type=="image"?(i(),h(A,{key:0,class:"image",fit:"contain",src:a.uri},null,8,["src"])):a.type=="video"?(i(),m("video",{key:1,class:"video",src:a.uri},null,8,Rt)):(i(),h(A,{key:2,class:"image",src:"https://img95.699pic.com/element/40103/3946.png_860.png"})),a.type=="video"?(i(),m("div",Dt,[n(u,{name:"el-icon-CaretRight",size:18,color:"#fff"})])):p("",!0),yt(a.$slots,"default",{},void 0,!0)],4)])}const re=De($t,[["render",It],["__scopeId","data-v-60d59d9e"]]);function Lt(a){const $=pe(),x=E([]),_=E(""),k=async()=>{const f=await Ct({page_type:0,type:a}),C=[{name:"全部",id:""},{name:"未分组",id:0}];x.value=f.lists,x.value.unshift(...C),setTimeout(()=>{var w;(w=$.value)==null||w.setCurrentKey(_.value)},0)};return{treeRef:$,cateId:_,cateLists:x,handleAddCate:async f=>{await $e({type:a,name:f,pid:0}),k()},handleAddChildCate:async(f,C)=>{await $e({type:a,name:f,pid:C}),k()},handleEditCate:async(f,C)=>{await kt({id:C,name:f}),k()},handleDeleteCate:async(f,C)=>{C?await ce.confirm("删除文件夹将会永久删除文件夹及其所有内容。您确定要继续吗?"):await ce.confirm("确定要删除?"),await ht({id:f}),_.value="",k()},getCateLists:k,handleCatSelect:f=>{_.value=f.id}}}function Tt(a,$,x,_){const k=pe(),z=E("normal"),A=E(0),u=E([]),R=E(!1),g=E(!1),f=Vt({name:"",type:$,cid:a,source:""}),{pager:C,getLists:w,resetPage:j}=St({fetchFun:At,params:f,firstLoading:!0,size:_}),F=()=>{w()},J=()=>{j()},H=c=>!!u.value.find(d=>d.id==c),O=async c=>{await ce.confirm("确认删除后,本地或云存储文件也将同步删除,如文件已被使用,请谨慎操作!");const d=c||u.value.map(V=>V.id);await xt({ids:d}),F(),U()},X=async()=>{const c=u.value.map(d=>d.id);await bt({ids:c,cid:A.value}),A.value=0,F(),U()},ee=c=>{const d=u.value.findIndex(V=>V.id==c.id);if(d!=-1){u.value.splice(d,1);return}if(u.value.length==x.value){if(x.value==1){u.value=[],u.value.push(c);return}Re.warning("已达到选择上限");return}u.value.push(c)},U=()=>{u.value=[]};return{listShowType:z,tableRef:k,moveId:A,pager:C,fileParams:f,select:u,isCheckAll:R,isIndeterminate:g,getFileList:F,refresh:J,batchFileDelete:O,batchFileMove:X,selectFile:ee,isSelect:H,clearSelect:U,cancelSelete:c=>{u.value=u.value.filter(d=>d.id!=c)},selectAll:c=>{var d;if(g.value=!1,(d=k.value)==null||d.toggleAllSelection(),c){u.value=[...C.lists];return}U()},handleFileRename:async(c,d)=>{await wt({id:d,name:c}),F()}}}const Ft={key:0},Ut={key:1},Pt={class:"aspect-video overflow-hidden"},jt={class:"size-full",controls:""},Mt=["src"],Bt=fe({__name:"preview",props:{modelValue:{type:Boolean,default:!1},url:{type:String,default:""},type:{type:String,default:"image"}},emits:["update:modelValue"],setup(a,{emit:$}){const x=a,_=$,k=pe(),z=Le({get(){return x.modelValue},set(R){_("update:modelValue",R)}}),A=()=>{_("update:modelValue",!1)},u=E([]);return Q(()=>x.modelValue,R=>{R?Ee(()=>{var g;u.value=[x.url],(g=k.value)==null||g.play()}):Ee(()=>{var g;u.value=[],(g=k.value)==null||g.pause()})}),(R,g)=>{const f=Ke,C=qe;return Z((i(),m("div",null,[a.type=="image"?(i(),m("div",Ft,[l(u).length?(i(),h(f,{key:0,"url-list":l(u),"hide-on-click-modal":"",onClose:A},null,8,["url-list"])):p("",!0)])):p("",!0),a.type=="video"?(i(),m("div",Ut,[n(C,{modelValue:l(z),"onUpdate:modelValue":g[0]||(g[0]=w=>T(z)?z.value=w:null),width:"740px",title:"视频预览","before-close":A},{default:s(()=>[o("div",Pt,[o("video",jt,[o("source",{src:a.url,type:"video/mp4"},null,8,Mt)])])]),_:1},8,["modelValue"])])):p("",!0)],512)),[[me,a.modelValue]])}}}),Nt={class:"material"},Gt={class:"material__left"},Wt={class:"flex-1 min-h-0"},Yt={class:"material-left__content pt-4 p-b-4"},qt={class:"flex flex-1 items-center min-w-0 pr-4"},Kt={class:"flex-1 truncate mr-2"},Qt=["onClick"],Zt={class:"flex justify-center p-2 border-t border-br"},Jt={class:"material__center flex flex-col"},Ht={class:"operate-btn flex"},Ot={class:"flex-1 flex"},Xt={class:"flex items-center ml-2"},el={key:0,class:"mt-3"},tl={class:"material-center__content flex flex-col flex-1 mb-1 min-h-0"},ll={class:"file-list flex flex-wrap mt-4"},nl={key:0,class:"item-selected"},sl={class:"operation-btns flex items-center"},al={class:"inline-block"},ol={class:"inline-block"},il={class:"inline-block"},dl={key:1,class:"flex flex-1 justify-center items-center"},ul={class:"material-center__footer flex justify-between items-center mt-2"},rl={class:"flex"},cl={class:"mr-3"},ml={key:0,class:"material__right"},fl={class:"flex justify-between p-2 flex-wrap"},pl={class:"sm flex items-center"},vl={key:0},yl={class:"flex-1 min-h-0"},_l={class:"select-lists flex flex-col p-t-3"},gl={class:"select-item"},Cl=fe({__name:"index",props:{fileSize:{type:String,default:"100px"},limit:{type:Number,default:1},type:{type:String,default:"image"},mode:{type:String,default:"picker"},pageSize:{type:Number,default:15}},emits:["change"],setup(a,{expose:$,emit:x}){const _=a,k=x,{limit:z}=Et(_),A=Le(()=>{switch(_.type){case"image":return 10;case"video":return 20;case"file":return 30;default:return 0}}),u=[{value:"0",label:"后台上传"},{value:"1",label:"前端上传"}],R=_t("visible",E(!1)),g=E(""),f=E(!1),{treeRef:C,cateId:w,cateLists:j,handleAddCate:F,handleAddChildCate:J,handleEditCate:H,handleDeleteCate:O,getCateLists:X,handleCatSelect:ee}=Lt(A.value),{tableRef:U,listShowType:I,moveId:L,pager:S,fileParams:c,select:d,isCheckAll:V,isIndeterminate:M,getFileList:ve,refresh:P,batchFileDelete:Y,batchFileMove:ye,selectFile:te,isSelect:_e,clearSelect:ge,cancelSelete:Fe,selectAll:Ce,handleFileRename:he}=Tt(w,A,z,_.pageSize),ke=async()=>{var b;await X(),(b=C.value)==null||b.setCurrentKey(w.value),ve()},le=b=>{g.value=b,f.value=!0};Q(()=>R.value,async b=>{b&&ke()},{immediate:!0}),Q(w,()=>{c.name="",P()}),Q(d,b=>{if(k("change",b),b.length==S.lists.length&&b.length!==0){M.value=!1,V.value=!0;return}b.length>0?M.value=!0:(V.value=!1,M.value=!1)},{deep:!0}),gt(()=>{_.mode=="page"&&ke()}),$({clearSelect:ge});const we=E(),Ue=b=>{const e=b,B=we.value;B.value=e,B.select(),document.execCommand("copy"),Re({message:"地址复制成功",type:"success"})};return(b,e)=>{const B=ct,ne=Oe,N=pt,Pe=He,je=it,Me=Je,se=Ze,y=Xe,ae=ft,oe=dt,ie=et,be=mt,q=Ie,Be=tt,xe=lt,de=nt,Ae=rt,Se=ot,G=at,Ne=st,Ge=ut,We=Qe;return Z((i(),m("div",Nt,[o("div",Gt,[o("div",Wt,[n(se,null,{default:s(()=>[o("div",Yt,[n(Me,{ref_key:"treeRef",ref:C,"node-key":"id",data:l(j),"empty-text":"","highlight-current":!0,"expand-on-click-node":!1,"current-node-key":l(w),onNodeClick:l(ee)},{default:s(({data:t})=>[o("div",qt,[e[16]||(e[16]=o("img",{class:"w-[20px] h-[16px] mr-3",src:zt},null,-1)),o("span",Kt,[n(B,{content:t.name},null,8,["content"])]),t.id>0?(i(),h(je,{key:0,"hide-on-click":!1},{dropdown:s(()=>[n(Pe,null,{default:s(()=>[n(N,{onConfirm:v=>l(H)(v,t.id),size:"default",value:t.name,width:"400px",limit:20,"show-limit":"",teleported:""},{default:s(()=>[o("div",null,[n(ne,null,{default:s(()=>[...e[12]||(e[12]=[r(" 命名分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm","value"]),n(N,{onConfirm:v=>l(J)(v,t.id),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:s(()=>[o("div",null,[n(ne,null,{default:s(()=>[...e[13]||(e[13]=[r(" 添加分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm"]),o("div",{onClick:v=>{var Ve;return l(O)(t.id,(Ve=t==null?void 0:t.children)==null?void 0:Ve.length)}},[n(ne,null,{default:s(()=>[...e[14]||(e[14]=[r("删除分组",-1)])]),_:1})],8,Qt)]),_:2},1024)]),default:s(()=>[e[15]||(e[15]=o("span",{class:"muted m-r-10"},"···",-1))]),_:2},1024)):p("",!0)])]),_:1},8,["data","current-node-key","onNodeClick"])])]),_:1})]),o("div",Zt,[n(N,{onConfirm:l(F),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:s(()=>[n(y,null,{default:s(()=>[...e[17]||(e[17]=[r(" 添加分组 ",-1)])]),_:1})]),_:1},8,["onConfirm"])])]),o("div",Jt,[o("div",Ht,[o("div",Ot,[a.type=="image"?(i(),h(ae,{key:0,class:"mr-3",data:{cid:l(w)},type:a.type,"show-progress":!0,onChange:l(P)},{default:s(()=>[n(y,{type:"primary"},{default:s(()=>[...e[18]||(e[18]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onChange"])):p("",!0),a.type=="video"?(i(),h(ae,{key:1,class:"mr-3",data:{cid:l(w)},type:a.type,"show-progress":!0,onAllSuccess:l(P)},{default:s(()=>[n(y,{type:"primary"},{default:s(()=>[...e[19]||(e[19]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),a.type=="file"?(i(),h(ae,{key:2,class:"mr-3",data:{cid:l(w)},type:a.type,"show-progress":!0,onAllSuccess:l(P)},{default:s(()=>[n(y,{type:"primary"},{default:s(()=>[...e[20]||(e[20]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),a.mode=="page"?(i(),h(y,{key:3,disabled:!l(d).length,onClick:e[0]||(e[0]=K(t=>l(Y)(),["stop"]))},{default:s(()=>[...e[21]||(e[21]=[r(" 删除 ",-1)])]),_:1},8,["disabled"])):p("",!0),a.mode=="page"?(i(),h(be,{key:4,class:"ml-3",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:s(()=>[n(y,{disabled:!l(d).length},{default:s(()=>[...e[22]||(e[22]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:s(()=>[o("div",null,[e[23]||(e[23]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(L),"onUpdate:modelValue":e[1]||(e[1]=t=>T(L)?L.value=t:null),placeholder:"请选择"},{default:s(()=>[(i(!0),m(D,null,W(l(j),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])):p("",!0)]),n(ie,{modelValue:l(c).source,"onUpdate:modelValue":e[2]||(e[2]=t=>l(c).source=t),placeholder:"请选择文件来源",clearable:"",style:{"margin-right":"20px"},class:"max-w-52 ml-3"},{default:s(()=>[(i(),m(D,null,W(u,t=>n(oe,{key:t.value,label:t.label,value:t.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),n(Be,{class:"w-60",placeholder:"请输入名称",modelValue:l(c).name,"onUpdate:modelValue":e[3]||(e[3]=t=>l(c).name=t),onKeyup:vt(l(P),["enter"])},{append:s(()=>[n(y,{onClick:l(P)},{icon:s(()=>[n(q,{name:"el-icon-Search"})]),_:1},8,["onClick"])]),_:1},8,["modelValue","onKeyup"]),o("div",Xt,[n(xe,{content:"列表视图",placement:"top"},{default:s(()=>[o("div",{class:ze(["list-icon",{select:l(I)=="table"}]),onClick:e[4]||(e[4]=t=>I.value="table")},[n(q,{name:"local-icon-list-2",size:18})],2)]),_:1}),n(xe,{content:"平铺视图",placement:"top"},{default:s(()=>[o("div",{class:ze(["list-icon",{select:l(I)=="normal"}]),onClick:e[5]||(e[5]=t=>I.value="normal")},[n(q,{name:"el-icon-Menu",size:18})],2)]),_:1})])]),a.mode=="page"?(i(),m("div",el,[n(de,{disabled:!l(S).lists.length,modelValue:l(V),"onUpdate:modelValue":e[6]||(e[6]=t=>T(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(M)},{default:s(()=>[...e[24]||(e[24]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])])):p("",!0),o("div",tl,[l(S).lists.length?Z((i(),h(se,{key:0},{default:s(()=>[o("ul",ll,[(i(!0),m(D,null,W(l(S).lists,t=>(i(),m("li",{class:"file-item-wrap",key:t.id,style:Te({width:a.fileSize})},[n(Ae,{onClose:v=>l(Y)([t.id])},{default:s(()=>[n(re,{uri:t.url,"file-size":a.fileSize,type:a.type,onClick:v=>l(te)(t)},{default:s(()=>[l(_e)(t.id)?(i(),m("div",nl,[n(q,{size:24,name:"el-icon-Check",color:"#fff"})])):p("",!0)]),_:2},1032,["uri","file-size","type","onClick"])]),_:2},1032,["onClose"]),n(B,{class:"mt-1",content:t.name},null,8,["content"]),o("div",sl,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:s(()=>[n(y,{type:"primary",link:""},{default:s(()=>[...e[25]||(e[25]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"]),t.type===10||t.type===20?(i(),h(y,{key:0,type:"primary",link:"",onClick:v=>le(t.url)},{default:s(()=>[...e[26]||(e[26]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])):p("",!0),t.type===10||t.type===20?(i(),h(y,{key:1,type:"primary",link:"",onClick:v=>Ue(t.url),style:{"margin-left":"1px"}},{default:s(()=>[...e[27]||(e[27]=[r("地址",-1)])]),_:1},8,["onClick"])):(i(),h(Se,{key:2,type:"primary",underline:!1,style:{"margin-left":"25px"},href:t.url},{default:s(()=>[...e[28]||(e[28]=[r("下载",-1)])]),_:1},8,["href"]))])],4))),128))])]),_:1},512)),[[me,l(I)=="normal"]]):p("",!0),Z(n(Ne,{ref_key:"tableRef",ref:U,class:"mt-4",data:l(S).lists,width:"100%",height:"100%",size:"large",onRowClick:l(te)},{default:s(()=>[n(G,{width:"55"},{default:s(({row:t})=>[n(de,{modelValue:l(_e)(t.id),onChange:v=>l(te)(t)},null,8,["modelValue","onChange"])]),_:1}),n(G,{label:"图片",width:"100"},{default:s(({row:t})=>[n(re,{uri:t.url,"file-size":"50px",type:a.type},null,8,["uri","type"])]),_:1}),n(G,{label:"名称","min-width":"100","show-overflow-tooltip":""},{default:s(({row:t})=>[n(Se,{onClick:K(v=>le(t.url),["stop"]),underline:!1},{default:s(()=>[r(ue(t.name),1)]),_:2},1032,["onClick"])]),_:1}),n(G,{prop:"create_time",label:"上传时间","min-width":"100"}),n(G,{label:"操作",width:"150",fixed:"right"},{default:s(({row:t})=>[o("div",al,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:s(()=>[n(y,{type:"primary",link:""},{default:s(()=>[...e[29]||(e[29]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"])]),o("div",ol,[n(y,{type:"primary",link:"",onClick:K(v=>le(t.url),["stop"])},{default:s(()=>[...e[30]||(e[30]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])]),o("div",il,[n(y,{type:"primary",link:"",onClick:K(v=>l(Y)([t.id]),["stop"])},{default:s(()=>[...e[31]||(e[31]=[r(" 删除 ",-1)])]),_:1},8,["onClick"])])]),_:1})]),_:1},8,["data","onRowClick"]),[[me,l(I)=="table"]]),!l(S).loading&&!l(S).lists.length?(i(),m("div",dl," 暂无数据~ ")):p("",!0)]),o("div",ul,[o("div",rl,[a.mode=="page"?(i(),m(D,{key:0},[o("span",cl,[n(de,{disabled:!l(S).lists.length,modelValue:l(V),"onUpdate:modelValue":e[7]||(e[7]=t=>T(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(M)},{default:s(()=>[...e[32]||(e[32]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])]),n(y,{disabled:!l(d).length,onClick:e[8]||(e[8]=t=>l(Y)())},{default:s(()=>[...e[33]||(e[33]=[r(" 删除 ",-1)])]),_:1},8,["disabled"]),n(be,{class:"ml-3 inline",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:s(()=>[n(y,{disabled:!l(d).length},{default:s(()=>[...e[34]||(e[34]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:s(()=>[o("div",null,[e[35]||(e[35]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(L),"onUpdate:modelValue":e[9]||(e[9]=t=>T(L)?L.value=t:null),placeholder:"请选择"},{default:s(()=>[(i(!0),m(D,null,W(l(j),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])],64)):p("",!0)]),n(Ge,{modelValue:l(S),"onUpdate:modelValue":e[10]||(e[10]=t=>T(S)?S.value=t:null),onChange:l(ve),layout:"total, prev, pager, next, jumper"},null,8,["modelValue","onChange"])])]),a.mode=="picker"?(i(),m("div",ml,[o("div",fl,[o("div",pl,[r(" 已选择 "+ue(l(d).length)+" ",1),l(z)?(i(),m("span",vl,"/"+ue(l(z)),1)):p("",!0)]),n(y,{type:"primary",link:"",onClick:l(ge)},{default:s(()=>[...e[36]||(e[36]=[r("清空",-1)])]),_:1},8,["onClick"])]),o("div",yl,[n(se,{class:"ls-scrollbar"},{default:s(()=>[o("ul",_l,[(i(!0),m(D,null,W(l(d),t=>(i(),m("li",{class:"mb-4",key:t.id},[o("div",gl,[n(Ae,{onClose:v=>l(Fe)(t.id)},{default:s(()=>[n(re,{uri:t.url,"file-size":"100px",type:a.type},null,8,["uri","type"])]),_:2},1032,["onClose"])])]))),128))])]),_:1})])])):p("",!0),n(Bt,{modelValue:l(f),"onUpdate:modelValue":e[11]||(e[11]=t=>T(f)?f.value=t:null),url:l(g),type:a.type},null,8,["modelValue","url","type"]),o("input",{ref_key:"textCopys",ref:we,id:"textCopys",value:"",style:{opacity:"0",position:"absolute"}},null,512)])),[[We,l(S).loading]])}}}),Il=De(Cl,[["__scopeId","data-v-1e1d2cd0"]]);export{re as F,Bt as _,Il as a}; diff --git a/server/public/admin/assets/index-COkWbhdj.js b/server/public/admin/assets/index-CSxkUFTY.js similarity index 96% rename from server/public/admin/assets/index-COkWbhdj.js rename to server/public/admin/assets/index-CSxkUFTY.js index d25f4b7d..d38e6736 100644 --- a/server/public/admin/assets/index-COkWbhdj.js +++ b/server/public/admin/assets/index-CSxkUFTY.js @@ -1 +1 @@ -import{D as he,B as we,G as Ce,F as Ee,a2 as Ve,W as xe,i as Se,J as je,M as De,N as Oe,r as Re,L as We,E as Fe}from"./element-plus-DFTWCWyi.js";import{_ as Ne}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as Te,k as Ye,i as $e,_ as Me}from"./index-Nt5zMHcc.js";import{d as Be,e as Ie}from"./self_input_stats-DMYot1WP.js";import{d as Pe}from"./department-CSUh_x-a.js";import{u as Ae}from"./usePaging-VsbTxSU0.js";import{_ as Le}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{_ as Ue}from"./yeji-edit.vue_vue_type_script_setup_true_lang-jHpHbOvC.js";import{u as ze}from"./useMediaSourceOptions-6f8jf4SK.js";import{a as Ge}from"./vue-router-QlpZ4wdW.js";import{f as J,b as A,as as qe,ak as i,I as v,a as n,aN as o,O as d,G as c,H as W,J as m,F as L,ap as U,aP as w,A as C,n as z}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as G,q as Je,n as F,r as q}from"./@vue/reactivity-DiY1c2vO.js";import{Q as g,o as Qe}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const He={class:"self-input-stats-page"},Ke={class:"stats-kpi-grid"},Xe={class:"stats-kpi-label"},Ze={class:"card-header"},et={class:"card-header-main"},tt={class:"card-hint"},at={class:"card-header-actions"},ot={class:"dept-cell"},nt={key:1},lt={key:2,class:"text-gray-400"},it={class:"flex justify-end mt-4"},st=J({name:"selfInputStats"}),rt=J({...st,setup(dt){const Q=Ge(),E=Je(),V=F(!1),u=F([]),S=F([]),{mediaSourceOptions:N,mediaSourceLoading:T,loadMediaSourceOptions:H,refreshMediaSourceOptions:j}=ze(),K={value:"id",label:"name",children:"children"},f=q({date_range:[],summary:{},can_view_finance:!1}),Y=new Set(["account_cost","cash_cost","roi"]),$=C(()=>!!f.can_view_finance),s=q({media_source:"",dept_id:void 0,time_type:"today",start_date:"",end_date:""}),D=C(()=>Ye("stats.personal_account_cost/lists")||""),X=()=>{D.value&&Q.push(D.value)},Z=async t=>{s.time_type==="custom"&&(t.start_date=u.value[0]||"",t.end_date=u.value[1]||"");const e=await Be(t);return Object.assign(f,(e==null?void 0:e.extend)||{}),e},ee=async()=>{try{const t=await Pe({apply_data_scope:1});Array.isArray(t)&&(S.value=t)}catch{S.value=[]}},te=t=>{t&&j()},ae=async()=>{await j(),await _()};A(()=>{ee(),H()});const{pager:p,getLists:oe}=Ae({fetchFun:Z,params:s,firstLoading:!0}),M=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"order_amount",label:"订单金额",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],B=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"order_amount",label:"订单金额",type:"money",minWidth:110},{key:"account_cost",label:"账户消耗",type:"money",minWidth:110},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:110},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",minWidth:110},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:120},{key:"open_receive_rate",label:"开口接诊率",type:"percent",minWidth:110},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:100},{key:"cash_cost",label:"现金成本",type:"money",minWidth:100},{key:"roi",label:"ROI",type:"ratio",minWidth:80}],ne=C(()=>$.value?M:M.filter(t=>!Y.has(t.key))),le=C(()=>$.value?B:B.filter(t=>!Y.has(t.key))),ie=C(()=>{var t;return(t=f.date_range)!=null&&t.length?`${f.date_range[0]} 至 ${f.date_range[1]}`:"未选择"}),_=async()=>{try{await oe()}catch(t){console.error("获取自录转化统计失败:",t),Fe.error((t==null?void 0:t.msg)||"获取统计数据失败")}},se=()=>{s.time_type!=="custom"&&(u.value=[],p.page=1,_())},re=()=>{u.value.length===2&&(p.page=1,_())},O=()=>{p.page=1,_()},de=()=>{s.media_source="",s.dept_id=void 0,s.time_type="today",u.value=[],p.page=1,p.size=15,_()},I=(t,e,r="count")=>{const b=(e==null?void 0:e[t])??0;return r==="money"?`¥${Number(b||0).toFixed(2)}`:r==="percent"?`${Number(b||0).toFixed(2)}%`:r==="ratio"?Number(b||0).toFixed(2):String(b??0)},pe=async()=>{var t;await j(),V.value=!0,await z(),(t=E.value)==null||t.open("add")},me=async t=>{var e,r;V.value=!0,await z(),(e=E.value)==null||e.open("edit"),(r=E.value)==null||r.setFormData(t)},ce=async t=>{await $e.confirm("确定删除该业绩记录?"),await Ie({id:t}),_()};return A(async()=>{await _()}),(t,e)=>{const r=Ee,b=Ce,h=we,ue=Ve,_e=xe,k=Se,ye=he,P=je,fe=Te,y=Oe,be=Re,ke=De,ve=Ne,x=qe("perms"),ge=We;return i(),v("div",He,[n(P,{class:"!border-none",shadow:"never"},{default:o(()=>[n(ye,{inline:!0,model:l(s),class:"stats-filter-form"},{default:o(()=>[n(h,{label:"时间范围"},{default:o(()=>[n(b,{modelValue:l(s).time_type,"onUpdate:modelValue":e[0]||(e[0]=a=>l(s).time_type=a),onChange:se},{default:o(()=>[n(r,{label:"today"},{default:o(()=>[...e[6]||(e[6]=[d("今天",-1)])]),_:1}),n(r,{label:"yesterday"},{default:o(()=>[...e[7]||(e[7]=[d("昨天",-1)])]),_:1}),n(r,{label:"week"},{default:o(()=>[...e[8]||(e[8]=[d("最近7天",-1)])]),_:1}),n(r,{label:"month"},{default:o(()=>[...e[9]||(e[9]=[d("最近30天",-1)])]),_:1}),n(r,{label:"custom"},{default:o(()=>[...e[10]||(e[10]=[d("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(s).time_type==="custom"?(i(),c(h,{key:0},{default:o(()=>[n(ue,{modelValue:l(u),"onUpdate:modelValue":e[1]||(e[1]=a=>G(u)?u.value=a:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:re},null,8,["modelValue"])]),_:1})):W("",!0),n(h,{label:"部门"},{default:o(()=>[n(_e,{modelValue:l(s).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>l(s).dept_id=a),data:l(S),"node-key":"id",props:K,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",style:{width:"220px"},onChange:O},null,8,["modelValue","data"])]),_:1}),n(h,{label:"自媒体来源"},{default:o(()=>[n(Le,{modelValue:l(s).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>l(s).media_source=a),options:l(N),loading:l(T),placeholder:"全部来源","allow-create":!1,"select-style":"width: 220px",onChange:O,onVisibleChange:te},null,8,["modelValue","options","loading"])]),_:1}),n(h,null,{default:o(()=>[n(k,{type:"primary",loading:l(p).loading,onClick:O},{default:o(()=>[...e[11]||(e[11]=[d("查询",-1)])]),_:1},8,["loading"]),n(k,{onClick:de},{default:o(()=>[...e[12]||(e[12]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),m("div",Ke,[(i(!0),v(L,null,U(l(ne),a=>(i(),v("div",{key:a.key,class:"stats-kpi-card"},[m("div",Xe,g(a.label),1),m("div",{class:Qe(["stats-kpi-value",{"is-money":a.type==="money"}])},g(I(a.key,l(f).summary,a.type)),3)]))),128))]),n(P,{class:"!border-none mt-4 stats-detail-card",shadow:"never"},{header:o(()=>[m("div",Ze,[m("div",et,[e[13]||(e[13]=m("span",{class:"card-title"},"业绩明细",-1)),m("span",tt,g(l(ie)),1)]),m("div",at,[w((i(),c(k,{type:"primary",onClick:pe},{icon:o(()=>[n(fe,{name:"el-icon-Plus"})]),default:o(()=>[e[14]||(e[14]=d(" 新增业绩 ",-1))]),_:1})),[[x,["stats.personal_yeji/add"]]]),l(D)?w((i(),c(k,{key:0,onClick:X},{default:o(()=>[...e[15]||(e[15]=[d(" 账户消耗录入 ",-1)])]),_:1})),[[x,["stats.personal_account_cost/lists"]]]):W("",!0)])])]),default:o(()=>[w((i(),c(ke,{data:l(p).lists,border:"",size:"large","max-height":"640"},{default:o(()=>[n(y,{label:"日期",prop:"yeji_date","min-width":"110",fixed:"left"}),n(y,{label:"自媒体来源",prop:"media_source","min-width":"140","show-overflow-tooltip":""}),n(y,{label:"录入人",prop:"creator_name","min-width":"100"}),n(y,{label:"部门",prop:"dept_name","min-width":"140"},{default:o(({row:a})=>[a.dept_path?(i(),c(be,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:o(()=>[m("span",ot,g(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(i(),v("span",nt,g(a.dept_name),1)):(i(),v("span",lt,"未分配"))]),_:1}),(i(!0),v(L,null,U(l(le),a=>(i(),c(y,{key:a.key,label:a.label,"min-width":a.minWidth||100,align:"right"},{default:o(({row:R})=>[d(g(I(a.key,R,a.type)),1)]),_:2},1032,["label","min-width"]))),128)),n(y,{label:"备注",prop:"remark","min-width":"160","show-overflow-tooltip":""}),n(y,{label:"操作",width:"140",fixed:"right"},{default:o(({row:a})=>[w((i(),c(k,{type:"primary",link:"",onClick:R=>me(a)},{default:o(()=>[...e[16]||(e[16]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/edit"]]]),w((i(),c(k,{type:"danger",link:"",onClick:R=>ce(a.id)},{default:o(()=>[...e[17]||(e[17]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/delete"]]])]),_:1})]),_:1},8,["data"])),[[ge,l(p).loading]]),m("div",it,[n(ve,{modelValue:l(p),"onUpdate:modelValue":e[4]||(e[4]=a=>G(p)?p.value=a:null),onChange:_},null,8,["modelValue"])])]),_:1}),l(V)?(i(),c(Ue,{key:0,ref_key:"yejiEditRef",ref:E,"media-source-options":l(N),"media-source-loading":l(T),onSuccess:ae,onClose:e[5]||(e[5]=a=>V.value=!1)},null,8,["media-source-options","media-source-loading"])):W("",!0)])}}}),ta=Me(rt,[["__scopeId","data-v-22466ca2"]]);export{ta as default}; +import{D as he,B as we,G as Ce,F as Ee,a2 as Ve,W as xe,i as Se,J as je,M as De,N as Oe,r as Re,L as We,E as Fe}from"./element-plus-DFTWCWyi.js";import{_ as Ne}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as Te,k as Ye,i as $e,_ as Me}from"./index--WnM67ZH.js";import{d as Be,e as Ie}from"./self_input_stats-C4Lr_Fd7.js";import{d as Pe}from"./department-D5OVad_r.js";import{u as Ae}from"./usePaging-VsbTxSU0.js";import{_ as Le}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{_ as Ue}from"./yeji-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js";import{u as ze}from"./useMediaSourceOptions-D92lCyJY.js";import{a as Ge}from"./vue-router-QlpZ4wdW.js";import{f as J,b as A,as as qe,ak as i,I as v,a as n,aN as o,O as d,G as c,H as W,J as m,F as L,ap as U,aP as w,A as C,n as z}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as G,q as Je,n as F,r as q}from"./@vue/reactivity-DiY1c2vO.js";import{Q as g,o as Qe}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const He={class:"self-input-stats-page"},Ke={class:"stats-kpi-grid"},Xe={class:"stats-kpi-label"},Ze={class:"card-header"},et={class:"card-header-main"},tt={class:"card-hint"},at={class:"card-header-actions"},ot={class:"dept-cell"},nt={key:1},lt={key:2,class:"text-gray-400"},it={class:"flex justify-end mt-4"},st=J({name:"selfInputStats"}),rt=J({...st,setup(dt){const Q=Ge(),E=Je(),V=F(!1),u=F([]),S=F([]),{mediaSourceOptions:N,mediaSourceLoading:T,loadMediaSourceOptions:H,refreshMediaSourceOptions:j}=ze(),K={value:"id",label:"name",children:"children"},f=q({date_range:[],summary:{},can_view_finance:!1}),Y=new Set(["account_cost","cash_cost","roi"]),$=C(()=>!!f.can_view_finance),s=q({media_source:"",dept_id:void 0,time_type:"today",start_date:"",end_date:""}),D=C(()=>Ye("stats.personal_account_cost/lists")||""),X=()=>{D.value&&Q.push(D.value)},Z=async t=>{s.time_type==="custom"&&(t.start_date=u.value[0]||"",t.end_date=u.value[1]||"");const e=await Be(t);return Object.assign(f,(e==null?void 0:e.extend)||{}),e},ee=async()=>{try{const t=await Pe({apply_data_scope:1});Array.isArray(t)&&(S.value=t)}catch{S.value=[]}},te=t=>{t&&j()},ae=async()=>{await j(),await _()};A(()=>{ee(),H()});const{pager:p,getLists:oe}=Ae({fetchFun:Z,params:s,firstLoading:!0}),M=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"order_amount",label:"订单金额",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],B=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"order_amount",label:"订单金额",type:"money",minWidth:110},{key:"account_cost",label:"账户消耗",type:"money",minWidth:110},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:110},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",minWidth:110},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:120},{key:"open_receive_rate",label:"开口接诊率",type:"percent",minWidth:110},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:100},{key:"cash_cost",label:"现金成本",type:"money",minWidth:100},{key:"roi",label:"ROI",type:"ratio",minWidth:80}],ne=C(()=>$.value?M:M.filter(t=>!Y.has(t.key))),le=C(()=>$.value?B:B.filter(t=>!Y.has(t.key))),ie=C(()=>{var t;return(t=f.date_range)!=null&&t.length?`${f.date_range[0]} 至 ${f.date_range[1]}`:"未选择"}),_=async()=>{try{await oe()}catch(t){console.error("获取自录转化统计失败:",t),Fe.error((t==null?void 0:t.msg)||"获取统计数据失败")}},se=()=>{s.time_type!=="custom"&&(u.value=[],p.page=1,_())},re=()=>{u.value.length===2&&(p.page=1,_())},O=()=>{p.page=1,_()},de=()=>{s.media_source="",s.dept_id=void 0,s.time_type="today",u.value=[],p.page=1,p.size=15,_()},I=(t,e,r="count")=>{const b=(e==null?void 0:e[t])??0;return r==="money"?`¥${Number(b||0).toFixed(2)}`:r==="percent"?`${Number(b||0).toFixed(2)}%`:r==="ratio"?Number(b||0).toFixed(2):String(b??0)},pe=async()=>{var t;await j(),V.value=!0,await z(),(t=E.value)==null||t.open("add")},me=async t=>{var e,r;V.value=!0,await z(),(e=E.value)==null||e.open("edit"),(r=E.value)==null||r.setFormData(t)},ce=async t=>{await $e.confirm("确定删除该业绩记录?"),await Ie({id:t}),_()};return A(async()=>{await _()}),(t,e)=>{const r=Ee,b=Ce,h=we,ue=Ve,_e=xe,k=Se,ye=he,P=je,fe=Te,y=Oe,be=Re,ke=De,ve=Ne,x=qe("perms"),ge=We;return i(),v("div",He,[n(P,{class:"!border-none",shadow:"never"},{default:o(()=>[n(ye,{inline:!0,model:l(s),class:"stats-filter-form"},{default:o(()=>[n(h,{label:"时间范围"},{default:o(()=>[n(b,{modelValue:l(s).time_type,"onUpdate:modelValue":e[0]||(e[0]=a=>l(s).time_type=a),onChange:se},{default:o(()=>[n(r,{label:"today"},{default:o(()=>[...e[6]||(e[6]=[d("今天",-1)])]),_:1}),n(r,{label:"yesterday"},{default:o(()=>[...e[7]||(e[7]=[d("昨天",-1)])]),_:1}),n(r,{label:"week"},{default:o(()=>[...e[8]||(e[8]=[d("最近7天",-1)])]),_:1}),n(r,{label:"month"},{default:o(()=>[...e[9]||(e[9]=[d("最近30天",-1)])]),_:1}),n(r,{label:"custom"},{default:o(()=>[...e[10]||(e[10]=[d("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(s).time_type==="custom"?(i(),c(h,{key:0},{default:o(()=>[n(ue,{modelValue:l(u),"onUpdate:modelValue":e[1]||(e[1]=a=>G(u)?u.value=a:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:re},null,8,["modelValue"])]),_:1})):W("",!0),n(h,{label:"部门"},{default:o(()=>[n(_e,{modelValue:l(s).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>l(s).dept_id=a),data:l(S),"node-key":"id",props:K,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",style:{width:"220px"},onChange:O},null,8,["modelValue","data"])]),_:1}),n(h,{label:"自媒体来源"},{default:o(()=>[n(Le,{modelValue:l(s).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>l(s).media_source=a),options:l(N),loading:l(T),placeholder:"全部来源","allow-create":!1,"select-style":"width: 220px",onChange:O,onVisibleChange:te},null,8,["modelValue","options","loading"])]),_:1}),n(h,null,{default:o(()=>[n(k,{type:"primary",loading:l(p).loading,onClick:O},{default:o(()=>[...e[11]||(e[11]=[d("查询",-1)])]),_:1},8,["loading"]),n(k,{onClick:de},{default:o(()=>[...e[12]||(e[12]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),m("div",Ke,[(i(!0),v(L,null,U(l(ne),a=>(i(),v("div",{key:a.key,class:"stats-kpi-card"},[m("div",Xe,g(a.label),1),m("div",{class:Qe(["stats-kpi-value",{"is-money":a.type==="money"}])},g(I(a.key,l(f).summary,a.type)),3)]))),128))]),n(P,{class:"!border-none mt-4 stats-detail-card",shadow:"never"},{header:o(()=>[m("div",Ze,[m("div",et,[e[13]||(e[13]=m("span",{class:"card-title"},"业绩明细",-1)),m("span",tt,g(l(ie)),1)]),m("div",at,[w((i(),c(k,{type:"primary",onClick:pe},{icon:o(()=>[n(fe,{name:"el-icon-Plus"})]),default:o(()=>[e[14]||(e[14]=d(" 新增业绩 ",-1))]),_:1})),[[x,["stats.personal_yeji/add"]]]),l(D)?w((i(),c(k,{key:0,onClick:X},{default:o(()=>[...e[15]||(e[15]=[d(" 账户消耗录入 ",-1)])]),_:1})),[[x,["stats.personal_account_cost/lists"]]]):W("",!0)])])]),default:o(()=>[w((i(),c(ke,{data:l(p).lists,border:"",size:"large","max-height":"640"},{default:o(()=>[n(y,{label:"日期",prop:"yeji_date","min-width":"110",fixed:"left"}),n(y,{label:"自媒体来源",prop:"media_source","min-width":"140","show-overflow-tooltip":""}),n(y,{label:"录入人",prop:"creator_name","min-width":"100"}),n(y,{label:"部门",prop:"dept_name","min-width":"140"},{default:o(({row:a})=>[a.dept_path?(i(),c(be,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:o(()=>[m("span",ot,g(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(i(),v("span",nt,g(a.dept_name),1)):(i(),v("span",lt,"未分配"))]),_:1}),(i(!0),v(L,null,U(l(le),a=>(i(),c(y,{key:a.key,label:a.label,"min-width":a.minWidth||100,align:"right"},{default:o(({row:R})=>[d(g(I(a.key,R,a.type)),1)]),_:2},1032,["label","min-width"]))),128)),n(y,{label:"备注",prop:"remark","min-width":"160","show-overflow-tooltip":""}),n(y,{label:"操作",width:"140",fixed:"right"},{default:o(({row:a})=>[w((i(),c(k,{type:"primary",link:"",onClick:R=>me(a)},{default:o(()=>[...e[16]||(e[16]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/edit"]]]),w((i(),c(k,{type:"danger",link:"",onClick:R=>ce(a.id)},{default:o(()=>[...e[17]||(e[17]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/delete"]]])]),_:1})]),_:1},8,["data"])),[[ge,l(p).loading]]),m("div",it,[n(ve,{modelValue:l(p),"onUpdate:modelValue":e[4]||(e[4]=a=>G(p)?p.value=a:null),onChange:_},null,8,["modelValue"])])]),_:1}),l(V)?(i(),c(Ue,{key:0,ref_key:"yejiEditRef",ref:E,"media-source-options":l(N),"media-source-loading":l(T),onSuccess:ae,onClose:e[5]||(e[5]=a=>V.value=!1)},null,8,["media-source-options","media-source-loading"])):W("",!0)])}}}),ta=Me(rt,[["__scopeId","data-v-22466ca2"]]);export{ta as default}; diff --git a/server/public/admin/assets/index-0_hM_7FR.js b/server/public/admin/assets/index-CazqMJ8f.js similarity index 93% rename from server/public/admin/assets/index-0_hM_7FR.js rename to server/public/admin/assets/index-CazqMJ8f.js index 5d880176..dbbfbf99 100644 --- a/server/public/admin/assets/index-0_hM_7FR.js +++ b/server/public/admin/assets/index-CazqMJ8f.js @@ -1 +1 @@ -import{K as L,J as R,L as T,i as P,M as U,N as A,g as J}from"./element-plus-DFTWCWyi.js";import{_ as j}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as q,i as z}from"./index-Nt5zMHcc.js";import{a as F,b as G,c as H}from"./article-nZc1fauP.js";import{u as I}from"./usePaging-VsbTxSU0.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-B1Ws5Kwo.js";import{f as k,as as M,ak as l,I as O,a as t,aN as i,aP as d,G as u,J as h,O as g,H as Q,n as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as r,a as W,q as X,n as Y}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const Z={class:"flex justify-end mt-4"},ee=k({name:"articleColumn"}),He=k({...ee,setup(te){const _=X(),f=Y(!1),{pager:s,getLists:n}=I({fetchFun:F}),y=async()=>{var o;f.value=!0,await b(),(o=_.value)==null||o.open("add")},V=async o=>{var e,m;f.value=!0,await b(),(e=_.value)==null||e.open("edit"),(m=_.value)==null||m.getDetail(o)},E=async o=>{await z.confirm("确定要删除?"),await G({id:o}),n()},x=async(o,e)=>{try{await H({id:e,is_show:o}),n()}catch{n()}};return n(),(o,e)=>{const m=L,w=R,$=q,C=P,p=A,N=J,S=U,B=j,v=M("perms"),D=T;return l(),O("div",null,[t(w,{class:"!border-none",shadow:"never"},{default:i(()=>[t(m,{type:"warning",title:"温馨提示:用于管理网站的分类,只可添加到一级",closable:!1,"show-icon":""})]),_:1}),d((l(),u(w,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[h("div",null,[d((l(),u(C,{class:"mb-4",type:"primary",onClick:e[0]||(e[0]=a=>y())},{icon:i(()=>[t($,{name:"el-icon-Plus"})]),default:i(()=>[e[3]||(e[3]=g(" 新增 ",-1))]),_:1})),[[v,["article.articleCate/add"]]])]),t(S,{size:"large",data:r(s).lists},{default:i(()=>[t(p,{label:"栏目名称",prop:"name","min-width":"120"}),t(p,{label:"文章数",prop:"article_count","min-width":"120"}),t(p,{label:"状态","min-width":"120"},{default:i(({row:a})=>[d(t(N,{modelValue:a.is_show,"onUpdate:modelValue":c=>a.is_show=c,"active-value":1,"inactive-value":0,onChange:c=>x(c,a.id)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[v,["article.articleCate/updateStatus"]]])]),_:1}),t(p,{label:"排序",prop:"sort","min-width":"120"}),t(p,{label:"操作",width:"120",fixed:"right"},{default:i(({row:a})=>[d((l(),u(C,{type:"primary",link:"",onClick:c=>V(a)},{default:i(()=>[...e[4]||(e[4]=[g(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[v,["article.articleCate/edit"]]]),d((l(),u(C,{type:"danger",link:"",onClick:c=>E(a.id)},{default:i(()=>[...e[5]||(e[5]=[g(" 删除 ",-1)])]),_:1},8,["onClick"])),[[v,["article.articleCate/delete"]]])]),_:1})]),_:1},8,["data"]),h("div",Z,[t(B,{modelValue:r(s),"onUpdate:modelValue":e[1]||(e[1]=a=>W(s)?s.value=a:null),onChange:r(n)},null,8,["modelValue","onChange"])])]),_:1})),[[D,r(s).loading]]),r(f)?(l(),u(K,{key:0,ref_key:"editRef",ref:_,onSuccess:r(n),onClose:e[2]||(e[2]=a=>f.value=!1)},null,8,["onSuccess"])):Q("",!0)])}}});export{He as default}; +import{K as L,J as R,L as T,i as P,M as U,N as A,g as J}from"./element-plus-DFTWCWyi.js";import{_ as j}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as q,i as z}from"./index--WnM67ZH.js";import{a as F,b as G,c as H}from"./article-CrrySQF9.js";import{u as I}from"./usePaging-VsbTxSU0.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_name_articleColumnEdit_lang-UYXt-4aq.js";import{f as k,as as M,ak as l,I as O,a as t,aN as i,aP as d,G as u,J as h,O as g,H as Q,n as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as r,a as W,q as X,n as Y}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const Z={class:"flex justify-end mt-4"},ee=k({name:"articleColumn"}),He=k({...ee,setup(te){const _=X(),f=Y(!1),{pager:s,getLists:n}=I({fetchFun:F}),y=async()=>{var o;f.value=!0,await b(),(o=_.value)==null||o.open("add")},V=async o=>{var e,m;f.value=!0,await b(),(e=_.value)==null||e.open("edit"),(m=_.value)==null||m.getDetail(o)},E=async o=>{await z.confirm("确定要删除?"),await G({id:o}),n()},x=async(o,e)=>{try{await H({id:e,is_show:o}),n()}catch{n()}};return n(),(o,e)=>{const m=L,w=R,$=q,C=P,p=A,N=J,S=U,B=j,v=M("perms"),D=T;return l(),O("div",null,[t(w,{class:"!border-none",shadow:"never"},{default:i(()=>[t(m,{type:"warning",title:"温馨提示:用于管理网站的分类,只可添加到一级",closable:!1,"show-icon":""})]),_:1}),d((l(),u(w,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[h("div",null,[d((l(),u(C,{class:"mb-4",type:"primary",onClick:e[0]||(e[0]=a=>y())},{icon:i(()=>[t($,{name:"el-icon-Plus"})]),default:i(()=>[e[3]||(e[3]=g(" 新增 ",-1))]),_:1})),[[v,["article.articleCate/add"]]])]),t(S,{size:"large",data:r(s).lists},{default:i(()=>[t(p,{label:"栏目名称",prop:"name","min-width":"120"}),t(p,{label:"文章数",prop:"article_count","min-width":"120"}),t(p,{label:"状态","min-width":"120"},{default:i(({row:a})=>[d(t(N,{modelValue:a.is_show,"onUpdate:modelValue":c=>a.is_show=c,"active-value":1,"inactive-value":0,onChange:c=>x(c,a.id)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[v,["article.articleCate/updateStatus"]]])]),_:1}),t(p,{label:"排序",prop:"sort","min-width":"120"}),t(p,{label:"操作",width:"120",fixed:"right"},{default:i(({row:a})=>[d((l(),u(C,{type:"primary",link:"",onClick:c=>V(a)},{default:i(()=>[...e[4]||(e[4]=[g(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[v,["article.articleCate/edit"]]]),d((l(),u(C,{type:"danger",link:"",onClick:c=>E(a.id)},{default:i(()=>[...e[5]||(e[5]=[g(" 删除 ",-1)])]),_:1},8,["onClick"])),[[v,["article.articleCate/delete"]]])]),_:1})]),_:1},8,["data"]),h("div",Z,[t(B,{modelValue:r(s),"onUpdate:modelValue":e[1]||(e[1]=a=>W(s)?s.value=a:null),onChange:r(n)},null,8,["modelValue","onChange"])])]),_:1})),[[D,r(s).loading]]),r(f)?(l(),u(K,{key:0,ref_key:"editRef",ref:_,onSuccess:r(n),onClose:e[2]||(e[2]=a=>f.value=!1)},null,8,["onSuccess"])):Q("",!0)])}}});export{He as default}; diff --git a/server/public/admin/assets/index-CcVG7h8J.js b/server/public/admin/assets/index-Cc-ZnmoQ.js similarity index 99% rename from server/public/admin/assets/index-CcVG7h8J.js rename to server/public/admin/assets/index-Cc-ZnmoQ.js index 899f8551..b38b368d 100644 --- a/server/public/admin/assets/index-CcVG7h8J.js +++ b/server/public/admin/assets/index-Cc-ZnmoQ.js @@ -1 +1 @@ -import{_ as Te}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{D as we,B as Ne,ak as Pe,W as We,P as ze,Q as De,G as Fe,F as Le,a2 as Re,i as Ie,J as Me,a5 as Be,R as Ue,a4 as $e,M as He,N as Ye,d as Ge,T as Qe,E as je}from"./element-plus-DFTWCWyi.js";import{X as Je}from"./@element-plus/icons-vue-HOEUG8sr.js";import{H as F}from"./vue-echarts-BNtg2q_G.js";import{r as qe}from"./stats-BCrGkFwR.js";import{u as Ke}from"./usePaging-VsbTxSU0.js";import{f as X,b as Xe,ak as r,I as C,a as o,aN as n,G as d,F as N,ap as P,O as y,H as A,J as i,A as f}from"./@vue/runtime-core-C6bnekPw.js";import{y as h,a as Ze,n as k,r as q}from"./@vue/reactivity-DiY1c2vO.js";import{Q as v,o as K}from"./@vue/shared-mAAVTE9n.js";import{_ as et}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const tt={class:"conversion-stats-page"},at={class:"stats-kpi-grid"},nt={class:"stats-kpi-label"},lt={class:"card-header"},ot={class:"card-hint"},st={class:"card-header"},rt={class:"card-header-main"},it={class:"card-hint"},dt=["title"],pt={class:"entity-name"},ut={class:"mt-4 flex justify-end"},mt=X({name:"conversionStatsPage"}),ct=X({...mt,setup(_t){const g=k([]),L=k([]),R=k([]),I=k([]),M=k([]),B=k([]),U=k(!1),_=q({dimension:"dept",date_range:[],summary:{},charts:{ranking:{names:[],amounts:[],order_counts:[],fan_counts:[],rois:[]},amount_share:[],fan_share:[]}}),l=q({dimension:"dept",dept_id:void 0,assistant_id:void 0,doctor_id:void 0,media_channel_code:"",time_type:"today",start_date:"",end_date:""}),Z=async e=>{var s;e.include_filters=U.value?0:1,l.time_type==="custom"&&(e.start_date=g.value[0]||"",e.end_date=g.value[1]||"");const t=await qe(e);return Object.assign(_,(t==null?void 0:t.extend)||{}),me((s=t==null?void 0:t.extend)==null?void 0:s.filters),t},{pager:p,getLists:$}=Ke({fetchFun:Z,params:l,firstLoading:!0}),ee=[{label:"部门",value:"dept"},{label:"医助",value:"assistant"},{label:"医生",value:"doctor"}],te={value:"id",label:"name",children:"children"},ae={children:"children"},x=f(()=>l.dimension==="assistant"?"医助":l.dimension==="doctor"?"医生":"部门"),ne=f(()=>l.dimension==="assistant"?I.value:l.dimension==="doctor"?M.value:R.value),S=f({get:()=>l.dimension==="assistant"?l.assistant_id:l.dimension==="doctor"?l.doctor_id:l.dept_id,set:e=>{if(l.dimension==="assistant"){l.assistant_id=e;return}if(l.dimension==="doctor"){l.doctor_id=e;return}l.dept_id=e}}),le=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"business_order_amount",label:"业务订单额",type:"money"},{key:"completed_order_amount",label:"诊单金额",type:"money"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],oe=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count",placeholder:!0},{key:"unreplied_count",label:"未回复",type:"count",placeholder:!0},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"completed_order_amount",label:"诊单金额",type:"money",minWidth:120},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:120},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",placeholder:!0,minWidth:120},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:130},{key:"open_receive_rate",label:"开口接诊率",type:"percent",placeholder:!0,minWidth:120},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:110},{key:"cash_cost",label:"现金成本",type:"money",minWidth:110},{key:"roi",label:"ROI",type:"ratio",minWidth:90}],H=f(()=>{var e;return(e=_.date_range)!=null&&e.length?`${_.date_range[0]} 至 ${_.date_range[1]}`:"未选择"}),se=f(()=>_.charts.ranking.names.length>0),re=f(()=>_.charts.amount_share.length>0),ie=f(()=>_.charts.fan_share.length>0),E=f(()=>{var u;const e=((u=_.charts)==null?void 0:u.ranking)||{},t=Array.isArray(e.names)?e.names:[],s=m=>t.map((c,T)=>Number((m==null?void 0:m[T])??0));return{names:t,amounts:s(Array.isArray(e.amounts)?e.amounts:[]),orderCounts:s(Array.isArray(e.order_counts)?e.order_counts:[]),fanCounts:s(Array.isArray(e.fan_counts)?e.fan_counts:[])}}),de=f(()=>({tooltip:{trigger:"axis"},legend:{data:["诊单金额","接诊诊单","加粉数"]},grid:{left:48,right:24,top:48,bottom:48},xAxis:{type:"category",data:E.value.names,axisLabel:{interval:0,rotate:E.value.names.length>6?25:0}},yAxis:[{type:"value",name:"金额 / 数量"}],series:[{name:"诊单金额",type:"bar",barMaxWidth:36,data:E.value.amounts,itemStyle:{color:"#4a78ff"}},{name:"接诊诊单",type:"line",smooth:!0,showSymbol:!0,symbolSize:8,lineStyle:{width:3},data:E.value.orderCounts,itemStyle:{color:"#15b8a6"}},{name:"加粉数",type:"line",smooth:!0,showSymbol:!0,symbolSize:8,lineStyle:{width:3},data:E.value.fanCounts,itemStyle:{color:"#ff9f43"}}]})),pe=f(()=>({tooltip:{trigger:"item"},legend:{bottom:0,type:"scroll",pageIconColor:"#409eff",pageTextStyle:{color:"#909399"}},series:[{name:"诊单金额",type:"pie",radius:["42%","70%"],center:["50%","42%"],avoidLabelOverlap:!0,minAngle:3,label:{show:!0,formatter:"{b}",overflow:"truncate",width:90},labelLayout:{hideOverlap:!0},data:_.charts.amount_share}]})),ue=f(()=>({tooltip:{trigger:"item"},legend:{bottom:0,type:"scroll",pageIconColor:"#409eff",pageTextStyle:{color:"#909399"}},series:[{name:"加粉数",type:"pie",radius:["42%","70%"],center:["50%","42%"],avoidLabelOverlap:!0,minAngle:3,label:{show:!0,formatter:"{b}",overflow:"truncate",width:90},labelLayout:{hideOverlap:!0},data:_.charts.fan_share}]})),Y=e=>{let t=[];return e.forEach(s=>{t.push({id:Number(s.id),name:s.name}),Array.isArray(s.children)&&s.children.length>0&&(t=t.concat(Y(s.children)))}),t},me=e=>{if(!e)return;U.value=!0;const t=Array.isArray(e.departments)?e.departments:[],s=Array.isArray(e.assistants)?e.assistants:[],u=Array.isArray(e.doctors)?e.doctors:[],m=Array.isArray(e.media_channels)?e.media_channels:[];L.value=t,R.value=Y(t),I.value=s.map(c=>({id:Number(c.id),name:c.name})),M.value=u.map(c=>({id:Number(c.id),name:c.name})),B.value=m.map(c=>({code:String(c.code||""),name:String(c.name||"")}))},b=async()=>{try{await $()}catch(e){console.error("获取统计概览失败:",e),je.error((e==null?void 0:e.msg)||"获取统计数据失败")}},ce=()=>{l.dept_id=void 0,l.assistant_id=void 0,l.doctor_id=void 0,p.page=1,b()},G=()=>{p.page=1,b()},_e=()=>{p.page=1,b()},ye=()=>{l.time_type!=="custom"&&(g.value=[],p.page=1,b())},fe=()=>{g.value.length===2&&(p.page=1,b())},be=()=>{p.page=1,b()},he=()=>{l.dimension="dept",l.dept_id=void 0,l.assistant_id=void 0,l.doctor_id=void 0,l.media_channel_code="",l.time_type="today",g.value=[],p.page=1,p.size=15,b()},Q=(e,t,s="count",u=!1)=>{if(u)return"—";const m=(t==null?void 0:t[e])??0;return s==="money"?`¥${Number(m||0).toFixed(2)}`:s==="percent"?`${Number(m||0).toFixed(2)}%`:s==="ratio"?Number(m||0).toFixed(2):String(m??0)},ve=e=>(e==null?void 0:e.id)!==void 0&&(e==null?void 0:e.id)!==null?String(e.id):"",ge=e=>(e==null?void 0:e.type)==="member"||(e==null?void 0:e.type)==="unbound",ke=({row:e})=>(e==null?void 0:e.type)==="unbound"?"member-row member-row--unbound":(e==null?void 0:e.type)==="member"?e.is_leader?"member-row member-row--leader":"member-row":"";return Xe(async()=>{await b()}),(e,t)=>{const s=Pe,u=Ne,m=We,c=De,T=ze,O=Le,Ce=Fe,xe=Re,j=Ie,Ee=we,V=Me,W=Ue,w=Be,z=$e,Oe=Ge,D=Qe,J=Ye,Ve=He,Ae=Te;return r(),C("div",tt,[o(V,{class:"!border-none",shadow:"never"},{default:n(()=>[o(Ee,{inline:!0,model:l,class:"stats-filter-form"},{default:n(()=>[o(u,{label:"统计维度"},{default:n(()=>[o(s,{modelValue:l.dimension,"onUpdate:modelValue":t[0]||(t[0]=a=>l.dimension=a),options:ee,onChange:ce},null,8,["modelValue"])]),_:1}),o(u,{label:x.value},{default:n(()=>[l.dimension==="dept"?(r(),d(m,{key:0,modelValue:S.value,"onUpdate:modelValue":t[1]||(t[1]=a=>S.value=a),data:L.value,placeholder:`全部${x.value}`,clearable:"",filterable:"","node-key":"id","check-strictly":"","default-expand-all":!0,props:te,style:{width:"220px"},onChange:G},null,8,["modelValue","data","placeholder"])):(r(),d(T,{key:1,modelValue:S.value,"onUpdate:modelValue":t[2]||(t[2]=a=>S.value=a),placeholder:`全部${x.value}`,clearable:"",filterable:"",style:{width:"220px"},onChange:G},{default:n(()=>[(r(!0),C(N,null,P(ne.value,a=>(r(),d(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"]))]),_:1},8,["label"]),o(u,{label:"自媒体渠道"},{default:n(()=>[o(T,{modelValue:l.media_channel_code,"onUpdate:modelValue":t[3]||(t[3]=a=>l.media_channel_code=a),placeholder:"全部渠道",clearable:"",filterable:"",style:{width:"220px"},onChange:_e},{default:n(()=>[(r(!0),C(N,null,P(B.value,a=>(r(),d(c,{key:a.code,label:a.name,value:a.code},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(u,{label:"时间范围"},{default:n(()=>[o(Ce,{modelValue:l.time_type,"onUpdate:modelValue":t[4]||(t[4]=a=>l.time_type=a),onChange:ye},{default:n(()=>[o(O,{label:"today"},{default:n(()=>[...t[7]||(t[7]=[y("今天",-1)])]),_:1}),o(O,{label:"yesterday"},{default:n(()=>[...t[8]||(t[8]=[y("昨天",-1)])]),_:1}),o(O,{label:"week"},{default:n(()=>[...t[9]||(t[9]=[y("最近7天",-1)])]),_:1}),o(O,{label:"month"},{default:n(()=>[...t[10]||(t[10]=[y("最近30天",-1)])]),_:1}),o(O,{label:"custom"},{default:n(()=>[...t[11]||(t[11]=[y("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l.time_type==="custom"?(r(),d(u,{key:0},{default:n(()=>[o(xe,{modelValue:g.value,"onUpdate:modelValue":t[5]||(t[5]=a=>g.value=a),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:fe},null,8,["modelValue"])]),_:1})):A("",!0),o(u,null,{default:n(()=>[o(j,{type:"primary",loading:h(p).loading,onClick:be},{default:n(()=>[...t[12]||(t[12]=[y("查询",-1)])]),_:1},8,["loading"]),o(j,{onClick:he},{default:n(()=>[...t[13]||(t[13]=[y("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),i("div",at,[(r(),C(N,null,P(le,a=>i("div",{key:a.key,class:"stats-kpi-card"},[i("div",nt,v(a.label),1),i("div",{class:K(["stats-kpi-value",{"is-money":a.type==="money"}])},v(Q(a.key,_.summary,a.type,a.placeholder)),3)])),64))]),o(z,{gutter:20,class:"mt-4"},{default:n(()=>[o(w,{span:24},{default:n(()=>[o(V,{class:"!border-none",shadow:"never"},{header:n(()=>[i("div",lt,[t[14]||(t[14]=i("span",null,"转化排行",-1)),i("span",ot,v(H.value)+" · TOP 10",1)])]),default:n(()=>[se.value?(r(),d(h(F),{key:0,class:"stats-chart stats-chart-wide",option:de.value,autoresize:""},null,8,["option"])):(r(),d(W,{key:1,description:"暂无图表数据"}))]),_:1})]),_:1})]),_:1}),o(z,{gutter:20,class:"mt-4"},{default:n(()=>[o(w,{xs:24,lg:12},{default:n(()=>[o(V,{class:"!border-none",shadow:"never"},{header:n(()=>[...t[15]||(t[15]=[i("div",{class:"card-header"},[i("span",null,"诊单金额占比"),i("span",{class:"card-hint"},"TOP 10")],-1)])]),default:n(()=>[re.value?(r(),d(h(F),{key:0,class:"stats-chart",option:pe.value,autoresize:""},null,8,["option"])):(r(),d(W,{key:1,description:"暂无金额数据"}))]),_:1})]),_:1}),o(w,{xs:24,lg:12},{default:n(()=>[o(V,{class:"!border-none",shadow:"never"},{header:n(()=>[...t[16]||(t[16]=[i("div",{class:"card-header"},[i("span",null,"加粉占比"),i("span",{class:"card-hint"},"TOP 10")],-1)])]),default:n(()=>[ie.value?(r(),d(h(F),{key:0,class:"stats-chart",option:ue.value,autoresize:""},null,8,["option"])):(r(),d(W,{key:1,description:"暂无加粉数据"}))]),_:1})]),_:1})]),_:1}),o(z,{gutter:20,class:"mt-4"},{default:n(()=>[o(w,{span:24},{default:n(()=>[o(V,{class:"!border-none stats-detail-card",shadow:"never"},{header:n(()=>[i("div",st,[i("div",rt,[t[17]||(t[17]=i("span",{class:"card-title"},"明细列表",-1)),i("span",it,v(x.value)+"维度 · "+v(H.value),1)])])]),default:n(()=>[o(Ve,{data:h(p).lists,"row-key":ve,"tree-props":l.dimension==="dept"?ae:void 0,"default-expand-all":!1,indent:20,"row-class-name":ke,size:"default",style:{width:"100%"},"max-height":"640",border:""},{default:n(()=>[o(J,{label:x.value,prop:"name",fixed:"left","min-width":"300","class-name":"dept-name-column"},{default:n(({row:a})=>[i("div",{class:"dept-name-cell",title:a.name},[ge(a)?(r(),C("span",{key:0,class:K(["member-icon",{"is-leader":a.is_leader,"is-unbound":a.type==="unbound"}])},[o(Oe,null,{default:n(()=>[o(h(Je))]),_:1})],2)):A("",!0),i("span",pt,v(a.name),1),a.type==="member"&&a.is_leader?(r(),d(D,{key:1,size:"small",type:"warning",effect:"light",round:"",class:"role-tag"},{default:n(()=>[...t[18]||(t[18]=[y(" 组长 ",-1)])]),_:1})):A("",!0),a.type==="member"&&a.role?(r(),d(D,{key:2,size:"small",type:a.role==="医生"?"success":"info",effect:"plain",round:"",class:"role-tag"},{default:n(()=>[y(v(a.role),1)]),_:2},1032,["type"])):A("",!0),a.type==="unbound"?(r(),d(D,{key:3,size:"small",type:"danger",effect:"plain",round:"",class:"role-tag"},{default:n(()=>[...t[19]||(t[19]=[y(" 未绑定 ",-1)])]),_:1})):A("",!0)],8,dt)]),_:1},8,["label"]),(r(),C(N,null,P(oe,a=>o(J,{key:a.key,label:a.label,"min-width":a.minWidth||110,width:a.width,align:a.align||"center"},{default:n(({row:Se})=>[y(v(Q(a.key,Se,a.type,a.placeholder)),1)]),_:2},1032,["label","min-width","width","align"])),64))]),_:1},8,["data","tree-props"]),i("div",ut,[o(Ae,{modelValue:h(p),"onUpdate:modelValue":t[6]||(t[6]=a=>Ze(p)?p.value=a:null),onChange:h($)},null,8,["modelValue","onChange"])])]),_:1})]),_:1})]),_:1})])}}}),na=et(ct,[["__scopeId","data-v-c0358d92"]]);export{na as default}; +import{_ as Te}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{D as we,B as Ne,ak as Pe,W as We,P as ze,Q as De,G as Fe,F as Le,a2 as Re,i as Ie,J as Me,a5 as Be,R as Ue,a4 as $e,M as He,N as Ye,d as Ge,T as Qe,E as je}from"./element-plus-DFTWCWyi.js";import{X as Je}from"./@element-plus/icons-vue-HOEUG8sr.js";import{H as F}from"./vue-echarts-BNtg2q_G.js";import{r as qe}from"./stats-CxdEJGSN.js";import{u as Ke}from"./usePaging-VsbTxSU0.js";import{f as X,b as Xe,ak as r,I as C,a as o,aN as n,G as d,F as N,ap as P,O as y,H as A,J as i,A as f}from"./@vue/runtime-core-C6bnekPw.js";import{y as h,a as Ze,n as k,r as q}from"./@vue/reactivity-DiY1c2vO.js";import{Q as v,o as K}from"./@vue/shared-mAAVTE9n.js";import{_ as et}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const tt={class:"conversion-stats-page"},at={class:"stats-kpi-grid"},nt={class:"stats-kpi-label"},lt={class:"card-header"},ot={class:"card-hint"},st={class:"card-header"},rt={class:"card-header-main"},it={class:"card-hint"},dt=["title"],pt={class:"entity-name"},ut={class:"mt-4 flex justify-end"},mt=X({name:"conversionStatsPage"}),ct=X({...mt,setup(_t){const g=k([]),L=k([]),R=k([]),I=k([]),M=k([]),B=k([]),U=k(!1),_=q({dimension:"dept",date_range:[],summary:{},charts:{ranking:{names:[],amounts:[],order_counts:[],fan_counts:[],rois:[]},amount_share:[],fan_share:[]}}),l=q({dimension:"dept",dept_id:void 0,assistant_id:void 0,doctor_id:void 0,media_channel_code:"",time_type:"today",start_date:"",end_date:""}),Z=async e=>{var s;e.include_filters=U.value?0:1,l.time_type==="custom"&&(e.start_date=g.value[0]||"",e.end_date=g.value[1]||"");const t=await qe(e);return Object.assign(_,(t==null?void 0:t.extend)||{}),me((s=t==null?void 0:t.extend)==null?void 0:s.filters),t},{pager:p,getLists:$}=Ke({fetchFun:Z,params:l,firstLoading:!0}),ee=[{label:"部门",value:"dept"},{label:"医助",value:"assistant"},{label:"医生",value:"doctor"}],te={value:"id",label:"name",children:"children"},ae={children:"children"},x=f(()=>l.dimension==="assistant"?"医助":l.dimension==="doctor"?"医生":"部门"),ne=f(()=>l.dimension==="assistant"?I.value:l.dimension==="doctor"?M.value:R.value),S=f({get:()=>l.dimension==="assistant"?l.assistant_id:l.dimension==="doctor"?l.doctor_id:l.dept_id,set:e=>{if(l.dimension==="assistant"){l.assistant_id=e;return}if(l.dimension==="doctor"){l.doctor_id=e;return}l.dept_id=e}}),le=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"business_order_amount",label:"业务订单额",type:"money"},{key:"completed_order_amount",label:"诊单金额",type:"money"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],oe=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count",placeholder:!0},{key:"unreplied_count",label:"未回复",type:"count",placeholder:!0},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"completed_order_amount",label:"诊单金额",type:"money",minWidth:120},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:120},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",placeholder:!0,minWidth:120},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:130},{key:"open_receive_rate",label:"开口接诊率",type:"percent",placeholder:!0,minWidth:120},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:110},{key:"cash_cost",label:"现金成本",type:"money",minWidth:110},{key:"roi",label:"ROI",type:"ratio",minWidth:90}],H=f(()=>{var e;return(e=_.date_range)!=null&&e.length?`${_.date_range[0]} 至 ${_.date_range[1]}`:"未选择"}),se=f(()=>_.charts.ranking.names.length>0),re=f(()=>_.charts.amount_share.length>0),ie=f(()=>_.charts.fan_share.length>0),E=f(()=>{var u;const e=((u=_.charts)==null?void 0:u.ranking)||{},t=Array.isArray(e.names)?e.names:[],s=m=>t.map((c,T)=>Number((m==null?void 0:m[T])??0));return{names:t,amounts:s(Array.isArray(e.amounts)?e.amounts:[]),orderCounts:s(Array.isArray(e.order_counts)?e.order_counts:[]),fanCounts:s(Array.isArray(e.fan_counts)?e.fan_counts:[])}}),de=f(()=>({tooltip:{trigger:"axis"},legend:{data:["诊单金额","接诊诊单","加粉数"]},grid:{left:48,right:24,top:48,bottom:48},xAxis:{type:"category",data:E.value.names,axisLabel:{interval:0,rotate:E.value.names.length>6?25:0}},yAxis:[{type:"value",name:"金额 / 数量"}],series:[{name:"诊单金额",type:"bar",barMaxWidth:36,data:E.value.amounts,itemStyle:{color:"#4a78ff"}},{name:"接诊诊单",type:"line",smooth:!0,showSymbol:!0,symbolSize:8,lineStyle:{width:3},data:E.value.orderCounts,itemStyle:{color:"#15b8a6"}},{name:"加粉数",type:"line",smooth:!0,showSymbol:!0,symbolSize:8,lineStyle:{width:3},data:E.value.fanCounts,itemStyle:{color:"#ff9f43"}}]})),pe=f(()=>({tooltip:{trigger:"item"},legend:{bottom:0,type:"scroll",pageIconColor:"#409eff",pageTextStyle:{color:"#909399"}},series:[{name:"诊单金额",type:"pie",radius:["42%","70%"],center:["50%","42%"],avoidLabelOverlap:!0,minAngle:3,label:{show:!0,formatter:"{b}",overflow:"truncate",width:90},labelLayout:{hideOverlap:!0},data:_.charts.amount_share}]})),ue=f(()=>({tooltip:{trigger:"item"},legend:{bottom:0,type:"scroll",pageIconColor:"#409eff",pageTextStyle:{color:"#909399"}},series:[{name:"加粉数",type:"pie",radius:["42%","70%"],center:["50%","42%"],avoidLabelOverlap:!0,minAngle:3,label:{show:!0,formatter:"{b}",overflow:"truncate",width:90},labelLayout:{hideOverlap:!0},data:_.charts.fan_share}]})),Y=e=>{let t=[];return e.forEach(s=>{t.push({id:Number(s.id),name:s.name}),Array.isArray(s.children)&&s.children.length>0&&(t=t.concat(Y(s.children)))}),t},me=e=>{if(!e)return;U.value=!0;const t=Array.isArray(e.departments)?e.departments:[],s=Array.isArray(e.assistants)?e.assistants:[],u=Array.isArray(e.doctors)?e.doctors:[],m=Array.isArray(e.media_channels)?e.media_channels:[];L.value=t,R.value=Y(t),I.value=s.map(c=>({id:Number(c.id),name:c.name})),M.value=u.map(c=>({id:Number(c.id),name:c.name})),B.value=m.map(c=>({code:String(c.code||""),name:String(c.name||"")}))},b=async()=>{try{await $()}catch(e){console.error("获取统计概览失败:",e),je.error((e==null?void 0:e.msg)||"获取统计数据失败")}},ce=()=>{l.dept_id=void 0,l.assistant_id=void 0,l.doctor_id=void 0,p.page=1,b()},G=()=>{p.page=1,b()},_e=()=>{p.page=1,b()},ye=()=>{l.time_type!=="custom"&&(g.value=[],p.page=1,b())},fe=()=>{g.value.length===2&&(p.page=1,b())},be=()=>{p.page=1,b()},he=()=>{l.dimension="dept",l.dept_id=void 0,l.assistant_id=void 0,l.doctor_id=void 0,l.media_channel_code="",l.time_type="today",g.value=[],p.page=1,p.size=15,b()},Q=(e,t,s="count",u=!1)=>{if(u)return"—";const m=(t==null?void 0:t[e])??0;return s==="money"?`¥${Number(m||0).toFixed(2)}`:s==="percent"?`${Number(m||0).toFixed(2)}%`:s==="ratio"?Number(m||0).toFixed(2):String(m??0)},ve=e=>(e==null?void 0:e.id)!==void 0&&(e==null?void 0:e.id)!==null?String(e.id):"",ge=e=>(e==null?void 0:e.type)==="member"||(e==null?void 0:e.type)==="unbound",ke=({row:e})=>(e==null?void 0:e.type)==="unbound"?"member-row member-row--unbound":(e==null?void 0:e.type)==="member"?e.is_leader?"member-row member-row--leader":"member-row":"";return Xe(async()=>{await b()}),(e,t)=>{const s=Pe,u=Ne,m=We,c=De,T=ze,O=Le,Ce=Fe,xe=Re,j=Ie,Ee=we,V=Me,W=Ue,w=Be,z=$e,Oe=Ge,D=Qe,J=Ye,Ve=He,Ae=Te;return r(),C("div",tt,[o(V,{class:"!border-none",shadow:"never"},{default:n(()=>[o(Ee,{inline:!0,model:l,class:"stats-filter-form"},{default:n(()=>[o(u,{label:"统计维度"},{default:n(()=>[o(s,{modelValue:l.dimension,"onUpdate:modelValue":t[0]||(t[0]=a=>l.dimension=a),options:ee,onChange:ce},null,8,["modelValue"])]),_:1}),o(u,{label:x.value},{default:n(()=>[l.dimension==="dept"?(r(),d(m,{key:0,modelValue:S.value,"onUpdate:modelValue":t[1]||(t[1]=a=>S.value=a),data:L.value,placeholder:`全部${x.value}`,clearable:"",filterable:"","node-key":"id","check-strictly":"","default-expand-all":!0,props:te,style:{width:"220px"},onChange:G},null,8,["modelValue","data","placeholder"])):(r(),d(T,{key:1,modelValue:S.value,"onUpdate:modelValue":t[2]||(t[2]=a=>S.value=a),placeholder:`全部${x.value}`,clearable:"",filterable:"",style:{width:"220px"},onChange:G},{default:n(()=>[(r(!0),C(N,null,P(ne.value,a=>(r(),d(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"]))]),_:1},8,["label"]),o(u,{label:"自媒体渠道"},{default:n(()=>[o(T,{modelValue:l.media_channel_code,"onUpdate:modelValue":t[3]||(t[3]=a=>l.media_channel_code=a),placeholder:"全部渠道",clearable:"",filterable:"",style:{width:"220px"},onChange:_e},{default:n(()=>[(r(!0),C(N,null,P(B.value,a=>(r(),d(c,{key:a.code,label:a.name,value:a.code},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(u,{label:"时间范围"},{default:n(()=>[o(Ce,{modelValue:l.time_type,"onUpdate:modelValue":t[4]||(t[4]=a=>l.time_type=a),onChange:ye},{default:n(()=>[o(O,{label:"today"},{default:n(()=>[...t[7]||(t[7]=[y("今天",-1)])]),_:1}),o(O,{label:"yesterday"},{default:n(()=>[...t[8]||(t[8]=[y("昨天",-1)])]),_:1}),o(O,{label:"week"},{default:n(()=>[...t[9]||(t[9]=[y("最近7天",-1)])]),_:1}),o(O,{label:"month"},{default:n(()=>[...t[10]||(t[10]=[y("最近30天",-1)])]),_:1}),o(O,{label:"custom"},{default:n(()=>[...t[11]||(t[11]=[y("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l.time_type==="custom"?(r(),d(u,{key:0},{default:n(()=>[o(xe,{modelValue:g.value,"onUpdate:modelValue":t[5]||(t[5]=a=>g.value=a),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:fe},null,8,["modelValue"])]),_:1})):A("",!0),o(u,null,{default:n(()=>[o(j,{type:"primary",loading:h(p).loading,onClick:be},{default:n(()=>[...t[12]||(t[12]=[y("查询",-1)])]),_:1},8,["loading"]),o(j,{onClick:he},{default:n(()=>[...t[13]||(t[13]=[y("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),i("div",at,[(r(),C(N,null,P(le,a=>i("div",{key:a.key,class:"stats-kpi-card"},[i("div",nt,v(a.label),1),i("div",{class:K(["stats-kpi-value",{"is-money":a.type==="money"}])},v(Q(a.key,_.summary,a.type,a.placeholder)),3)])),64))]),o(z,{gutter:20,class:"mt-4"},{default:n(()=>[o(w,{span:24},{default:n(()=>[o(V,{class:"!border-none",shadow:"never"},{header:n(()=>[i("div",lt,[t[14]||(t[14]=i("span",null,"转化排行",-1)),i("span",ot,v(H.value)+" · TOP 10",1)])]),default:n(()=>[se.value?(r(),d(h(F),{key:0,class:"stats-chart stats-chart-wide",option:de.value,autoresize:""},null,8,["option"])):(r(),d(W,{key:1,description:"暂无图表数据"}))]),_:1})]),_:1})]),_:1}),o(z,{gutter:20,class:"mt-4"},{default:n(()=>[o(w,{xs:24,lg:12},{default:n(()=>[o(V,{class:"!border-none",shadow:"never"},{header:n(()=>[...t[15]||(t[15]=[i("div",{class:"card-header"},[i("span",null,"诊单金额占比"),i("span",{class:"card-hint"},"TOP 10")],-1)])]),default:n(()=>[re.value?(r(),d(h(F),{key:0,class:"stats-chart",option:pe.value,autoresize:""},null,8,["option"])):(r(),d(W,{key:1,description:"暂无金额数据"}))]),_:1})]),_:1}),o(w,{xs:24,lg:12},{default:n(()=>[o(V,{class:"!border-none",shadow:"never"},{header:n(()=>[...t[16]||(t[16]=[i("div",{class:"card-header"},[i("span",null,"加粉占比"),i("span",{class:"card-hint"},"TOP 10")],-1)])]),default:n(()=>[ie.value?(r(),d(h(F),{key:0,class:"stats-chart",option:ue.value,autoresize:""},null,8,["option"])):(r(),d(W,{key:1,description:"暂无加粉数据"}))]),_:1})]),_:1})]),_:1}),o(z,{gutter:20,class:"mt-4"},{default:n(()=>[o(w,{span:24},{default:n(()=>[o(V,{class:"!border-none stats-detail-card",shadow:"never"},{header:n(()=>[i("div",st,[i("div",rt,[t[17]||(t[17]=i("span",{class:"card-title"},"明细列表",-1)),i("span",it,v(x.value)+"维度 · "+v(H.value),1)])])]),default:n(()=>[o(Ve,{data:h(p).lists,"row-key":ve,"tree-props":l.dimension==="dept"?ae:void 0,"default-expand-all":!1,indent:20,"row-class-name":ke,size:"default",style:{width:"100%"},"max-height":"640",border:""},{default:n(()=>[o(J,{label:x.value,prop:"name",fixed:"left","min-width":"300","class-name":"dept-name-column"},{default:n(({row:a})=>[i("div",{class:"dept-name-cell",title:a.name},[ge(a)?(r(),C("span",{key:0,class:K(["member-icon",{"is-leader":a.is_leader,"is-unbound":a.type==="unbound"}])},[o(Oe,null,{default:n(()=>[o(h(Je))]),_:1})],2)):A("",!0),i("span",pt,v(a.name),1),a.type==="member"&&a.is_leader?(r(),d(D,{key:1,size:"small",type:"warning",effect:"light",round:"",class:"role-tag"},{default:n(()=>[...t[18]||(t[18]=[y(" 组长 ",-1)])]),_:1})):A("",!0),a.type==="member"&&a.role?(r(),d(D,{key:2,size:"small",type:a.role==="医生"?"success":"info",effect:"plain",round:"",class:"role-tag"},{default:n(()=>[y(v(a.role),1)]),_:2},1032,["type"])):A("",!0),a.type==="unbound"?(r(),d(D,{key:3,size:"small",type:"danger",effect:"plain",round:"",class:"role-tag"},{default:n(()=>[...t[19]||(t[19]=[y(" 未绑定 ",-1)])]),_:1})):A("",!0)],8,dt)]),_:1},8,["label"]),(r(),C(N,null,P(oe,a=>o(J,{key:a.key,label:a.label,"min-width":a.minWidth||110,width:a.width,align:a.align||"center"},{default:n(({row:Se})=>[y(v(Q(a.key,Se,a.type,a.placeholder)),1)]),_:2},1032,["label","min-width","width","align"])),64))]),_:1},8,["data","tree-props"]),i("div",ut,[o(Ae,{modelValue:h(p),"onUpdate:modelValue":t[6]||(t[6]=a=>Ze(p)?p.value=a:null),onChange:h($)},null,8,["modelValue","onChange"])])]),_:1})]),_:1})]),_:1})])}}}),na=et(ct,[["__scopeId","data-v-c0358d92"]]);export{na as default}; diff --git a/server/public/admin/assets/index-DZEYWGUh.js b/server/public/admin/assets/index-Ci3dXrw6.js similarity index 99% rename from server/public/admin/assets/index-DZEYWGUh.js rename to server/public/admin/assets/index-Ci3dXrw6.js index 670c3a2c..fb706f66 100644 --- a/server/public/admin/assets/index-DZEYWGUh.js +++ b/server/public/admin/assets/index-Ci3dXrw6.js @@ -1,4 +1,4 @@ -import{i as nt,d as dt,Q as ct,P as pt,a5 as ut,a4 as bt,R as mt}from"./element-plus-DFTWCWyi.js";import{H as O}from"./vue-echarts-BNtg2q_G.js";import{L as Q,ae as _t,af as ht,a4 as yt}from"./@element-plus/icons-vue-HOEUG8sr.js";import{l as wt,O as V,Q as ft,_ as vt}from"./index-Nt5zMHcc.js";import{at as gt}from"./tcm-DCW3HTOw.js";import{u as kt}from"./order-6mkZv6ss.js";import{u as U}from"./getExposeType-MUpmx9zy.js";import{f as Y,w as xt,b as St,ak as l,I as c,J as t,a,aN as r,O as C,F as A,ap as D,G as w,H as B,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{r as M,y as f,n as J}from"./@vue/reactivity-DiY1c2vO.js";import{Q as n}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ot={class:"workbench-page"},Ct={class:"wb-hero"},At={class:"wb-section wb-section--order"},Dt={class:"wb-section-head"},Nt={class:"wb-section-title"},$t={class:"wb-section-icon wb-section-icon--violet"},zt={class:"wb-section-sub"},Et={class:"wb-toolbar"},Lt={class:"wb-section-body"},Vt={class:"wb-kpi wb-kpi--violet"},Rt={class:"wb-kpi-value"},Pt={class:"wb-kpi wb-kpi--amber"},Ft={class:"wb-kpi-value wb-kpi-value--sm"},Wt={class:"wb-rank-strip wb-rank-strip--compact"},Bt={key:0,class:"wb-rank-chips"},Ht={key:1,class:"wb-rank-empty"},Tt={class:"wb-chart-card"},It={class:"wb-chart-card"},Qt={class:"wb-chart-card"},Ut={class:"wb-chart-card wb-ranking-card"},Mt={key:0,class:"wb-ranking-list"},jt={class:"wb-ranking-rank"},Gt={class:"wb-ranking-name"},Jt={class:"wb-ranking-meta"},Yt={class:"wb-ranking-money"},qt={key:0,class:"wb-dept-block"},Kt={class:"wb-dept-card wb-dept-card--order"},Xt={class:"wb-dept-card-head"},Zt={class:"wb-dept-total"},te={class:"wb-dept-list"},ee={class:"wb-dept-num"},se={key:0,class:"wb-dept-empty"},ae={class:"wb-section wb-section--diagnosis"},oe={class:"wb-section-head"},le={class:"wb-section-title"},re={class:"wb-section-icon wb-section-icon--blue"},ie={class:"wb-section-sub"},ne={class:"wb-toolbar"},de={class:"wb-section-body"},ce={class:"wb-kpi wb-kpi--blue"},pe={class:"wb-kpi-value"},ue={class:"wb-rank-strip"},be={key:0,class:"wb-rank-chips"},me={key:1,class:"wb-rank-empty"},_e={class:"wb-chart-card"},he={class:"wb-chart-card"},ye={key:0,class:"wb-dept-block"},we={class:"wb-dept-card"},fe={class:"wb-dept-card-head"},ve={class:"wb-dept-total"},ge={class:"wb-dept-list"},ke={class:"wb-dept-num"},xe={key:0,class:"wb-dept-empty"},Se={class:"wb-section wb-section--trend"},Oe={class:"wb-section-head"},Ce={class:"wb-section-title"},Ae={class:"wb-section-icon wb-section-icon--teal"},De={class:"wb-section-body wb-trend-body"},Ne={class:"wb-chart-card wb-trend-card"},$e={class:"wb-chart-card wb-trend-card"},ze=Y({name:"workbench"}),Ee=Y({...ze,setup(Le){const g=wt(),H=U(),T=U(),q=U(),I=["#5b7cfa","#36cfc9","#ffc53d","#ff7a45","#b37feb","#597ef7","#73d13d","#ff85c0"];function j(s){if(s==null)return 0;const e=parseFloat(String(s).replace(/,/g,""));return Number.isFinite(e)?e:0}const p=M({days:0,departments:[],today_ranking:[],ranking:[],chart:{xAxis:[],series:[]}}),K=S(()=>(p.departments||[]).some(s=>Number(s.total)>0)),X=S(()=>{const s=(p.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:I,tooltip:{trigger:"item",formatter:"{b}
{c} 单 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"诊单",type:"pie",radius:["46%","72%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} +import{i as nt,d as dt,Q as ct,P as pt,a5 as ut,a4 as bt,R as mt}from"./element-plus-DFTWCWyi.js";import{H as O}from"./vue-echarts-BNtg2q_G.js";import{L as Q,ae as _t,af as ht,a4 as yt}from"./@element-plus/icons-vue-HOEUG8sr.js";import{l as wt,O as V,Q as ft,_ as vt}from"./index--WnM67ZH.js";import{at as gt}from"./tcm-DzAQc_oE.js";import{u as kt}from"./order-BqE0MdhI.js";import{u as U}from"./getExposeType-MUpmx9zy.js";import{f as Y,w as xt,b as St,ak as l,I as c,J as t,a,aN as r,O as C,F as A,ap as D,G as w,H as B,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{r as M,y as f,n as J}from"./@vue/reactivity-DiY1c2vO.js";import{Q as n}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ot={class:"workbench-page"},Ct={class:"wb-hero"},At={class:"wb-section wb-section--order"},Dt={class:"wb-section-head"},Nt={class:"wb-section-title"},$t={class:"wb-section-icon wb-section-icon--violet"},zt={class:"wb-section-sub"},Et={class:"wb-toolbar"},Lt={class:"wb-section-body"},Vt={class:"wb-kpi wb-kpi--violet"},Rt={class:"wb-kpi-value"},Pt={class:"wb-kpi wb-kpi--amber"},Ft={class:"wb-kpi-value wb-kpi-value--sm"},Wt={class:"wb-rank-strip wb-rank-strip--compact"},Bt={key:0,class:"wb-rank-chips"},Ht={key:1,class:"wb-rank-empty"},Tt={class:"wb-chart-card"},It={class:"wb-chart-card"},Qt={class:"wb-chart-card"},Ut={class:"wb-chart-card wb-ranking-card"},Mt={key:0,class:"wb-ranking-list"},jt={class:"wb-ranking-rank"},Gt={class:"wb-ranking-name"},Jt={class:"wb-ranking-meta"},Yt={class:"wb-ranking-money"},qt={key:0,class:"wb-dept-block"},Kt={class:"wb-dept-card wb-dept-card--order"},Xt={class:"wb-dept-card-head"},Zt={class:"wb-dept-total"},te={class:"wb-dept-list"},ee={class:"wb-dept-num"},se={key:0,class:"wb-dept-empty"},ae={class:"wb-section wb-section--diagnosis"},oe={class:"wb-section-head"},le={class:"wb-section-title"},re={class:"wb-section-icon wb-section-icon--blue"},ie={class:"wb-section-sub"},ne={class:"wb-toolbar"},de={class:"wb-section-body"},ce={class:"wb-kpi wb-kpi--blue"},pe={class:"wb-kpi-value"},ue={class:"wb-rank-strip"},be={key:0,class:"wb-rank-chips"},me={key:1,class:"wb-rank-empty"},_e={class:"wb-chart-card"},he={class:"wb-chart-card"},ye={key:0,class:"wb-dept-block"},we={class:"wb-dept-card"},fe={class:"wb-dept-card-head"},ve={class:"wb-dept-total"},ge={class:"wb-dept-list"},ke={class:"wb-dept-num"},xe={key:0,class:"wb-dept-empty"},Se={class:"wb-section wb-section--trend"},Oe={class:"wb-section-head"},Ce={class:"wb-section-title"},Ae={class:"wb-section-icon wb-section-icon--teal"},De={class:"wb-section-body wb-trend-body"},Ne={class:"wb-chart-card wb-trend-card"},$e={class:"wb-chart-card wb-trend-card"},ze=Y({name:"workbench"}),Ee=Y({...ze,setup(Le){const g=wt(),H=U(),T=U(),q=U(),I=["#5b7cfa","#36cfc9","#ffc53d","#ff7a45","#b37feb","#597ef7","#73d13d","#ff85c0"];function j(s){if(s==null)return 0;const e=parseFloat(String(s).replace(/,/g,""));return Number.isFinite(e)?e:0}const p=M({days:0,departments:[],today_ranking:[],ranking:[],chart:{xAxis:[],series:[]}}),K=S(()=>(p.departments||[]).some(s=>Number(s.total)>0)),X=S(()=>{const s=(p.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:I,tooltip:{trigger:"item",formatter:"{b}
{c} 单 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"诊单",type:"pie",radius:["46%","72%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} {c}`},data:s}]}}),Z=S(()=>{var b;const s=g.theme,e=(p.chart.series||[]).map(i=>({...i,name:i.name||"诊单数",type:"bar",barWidth:"46%",itemStyle:{borderRadius:[8,8,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(s,.75)},{offset:1,color:s}]}}})),h=((b=e[0])==null?void 0:b.data)||[];return{color:[s,"#f0b429"],legend:{data:["诊单数","趋势"],top:4},xAxis:{type:"category",data:p.chart.xAxis||[],axisLabel:{rotate:28,fontSize:11},axisLine:{lineStyle:{color:"#e4e7ec"}}},yAxis:{type:"value",name:"诊单数",splitLine:{lineStyle:{type:"dashed",color:"#eef0f4"}}},tooltip:{trigger:"axis"},grid:{left:"2%",right:"2%",bottom:"12%",top:48,containLabel:!0},series:[...e,{name:"趋势",type:"line",smooth:.35,symbol:"circle",symbolSize:7,lineStyle:{width:3,color:"#f0b429"},itemStyle:{color:"#f0b429"},data:h}]}}),R=()=>{gt({days:p.days}).then(s=>{p.date_range=s.date_range,p.today_total=s.today_total??0,p.today_ranking=s.today_ranking||[],p.departments=s.departments||[],p.ranking=s.ranking||[],p.chart=s.chart||{xAxis:[],series:[]}}).catch(()=>{})},P=J(-1),F=J(0),_=M({order_type_name:"",date_range:[],today_total:0,today_amount:"0.00",today_ranking:[],departments:[],ranking:[],chart:{xAxis:[],series:[]}}),tt=S(()=>(_.departments||[]).some(s=>Number(s.total)>0)),et=S(()=>(_.departments||[]).some(s=>j(s.amount)>0)),st=S(()=>{const s=(_.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:I,tooltip:{trigger:"item",formatter:"{b}
{c} 单 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"单数",type:"pie",radius:["44%","70%"],center:["50%","46%"],itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} {c}`},data:s}]}}),at=S(()=>{const s=(_.departments||[]).map(e=>({name:e.dept_name||"—",value:j(e.amount)})).filter(e=>e.value>0);return{color:I,tooltip:{trigger:"item",formatter:e=>{const h=e.value;return`${e.name}
¥${Number(h).toFixed(2)} (${e.percent}%)`}},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"金额",type:"pie",radius:["44%","70%"],center:["50%","46%"],itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:e=>`${e.name} ¥${Number(e.value).toFixed(0)}`},data:s}]}}),ot=S(()=>{const s=_.date_range;if((s==null?void 0:s.length)>=2)return`${s[0]} 至 ${s[1]}`;const e=F.value,h=new Date,b=new Date;return e===0?(b.setHours(0,0,0,0),`${W(b)} 至 ${W(h)}`):(b.setDate(b.getDate()-(e||7)),`${W(b)} 至 ${W(h)}`)});function W(s){return s.getFullYear()+"-"+String(s.getMonth()+1).padStart(2,"0")+"-"+String(s.getDate()).padStart(2,"0")}const lt=S(()=>{var b,i,k;const s=g.theme,e=(((b=_.chart)==null?void 0:b.series)||[]).map(m=>({...m,name:m.name||"单数",type:"bar",barWidth:"46%",itemStyle:{borderRadius:[8,8,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(s,.72)},{offset:1,color:s}]}}})),h=((i=e[0])==null?void 0:i.data)||[];return{color:[s,"#fa8c16"],legend:{data:["单数","趋势"],top:4},xAxis:{type:"category",data:((k=_.chart)==null?void 0:k.xAxis)||[],axisLabel:{rotate:28,fontSize:11},axisLine:{lineStyle:{color:"#e4e7ec"}}},yAxis:{type:"value",name:"单数",splitLine:{lineStyle:{type:"dashed",color:"#eef0f4"}}},tooltip:{trigger:"axis"},grid:{left:"2%",right:"2%",bottom:"12%",top:48,containLabel:!0},series:[...e,{name:"趋势",type:"line",smooth:.35,symbol:"circle",symbolSize:7,lineStyle:{width:3,color:"#fa8c16"},itemStyle:{color:"#fa8c16"},data:h}]}}),N=()=>{kt({order_type:P.value,days:F.value}).then(s=>{Object.assign(_,{order_type_name:s.order_type_name??"",date_range:s.date_range||[],today_total:s.today_total??0,today_amount:s.today_amount??"0.00",today_ranking:s.today_ranking||[],departments:s.departments||[],ranking:s.ranking||[],chart:s.chart||{xAxis:[],series:[]}})}).catch(()=>{})},rt=()=>{G(),R(),N()};xt(()=>g.theme,()=>{it()});const u=M({version:{version:"",website:"",based:"",channel:{gitee:"",website:""}},support:[],today:{},menu:[],visitor:[],article:[],visitorOption:{xAxis:{type:"category",data:[]},yAxis:{type:"value"},legend:{data:["访问量"],top:8},tooltip:{trigger:"axis"},grid:{left:"2%",right:"3%",bottom:"3%",top:40,containLabel:!0},series:[{name:"访问量",data:[],type:"line",smooth:!0,color:g.theme,lineStyle:{color:g.theme,width:2},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:g.theme},{offset:1,color:g.theme}]},opacity:.12}}]},saleOption:{xAxis:{type:"category",data:[]},yAxis:{type:"value",name:"万"},tooltip:{trigger:"axis"},grid:{left:"2%",right:"3%",bottom:"3%",top:36,containLabel:!0},series:[{name:"销售量",data:[],type:"bar",showBackground:!0,backgroundStyle:{color:"rgba(120, 130, 150, 0.08)",borderRadius:[10,10,0,0]},barWidth:"42%",itemStyle:{borderRadius:[10,10,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(g.theme,.65)},{offset:1,color:g.theme}]}}}]}}),G=()=>{ft().then(s=>{var e,h,b,i,k,m,v,x,$,z,E,L;u.version=s.version,u.today=s.today,u.menu=s.menu,u.visitor=s.visitor,u.support=s.support,u.visitorOption.xAxis.data=[],u.visitorOption.series[0].data=[],u.saleOption.xAxis.data=[],u.saleOption.series[0].data=[],(h=(e=s.visitor)==null?void 0:e.date)==null||h.reverse().forEach(o=>{u.visitorOption.xAxis.data.push(o)}),(m=(k=(i=(b=s.visitor)==null?void 0:b.list)==null?void 0:i[0])==null?void 0:k.data)==null||m.forEach(o=>{u.visitorOption.series[0].data.push(o)}),(x=(v=s.sale)==null?void 0:v.date)==null||x.reverse().forEach(o=>{u.saleOption.xAxis.data.push(o)}),(L=(E=(z=($=s.sale)==null?void 0:$.list)==null?void 0:z[0])==null?void 0:E.data)==null||L.forEach(o=>{let d=o;o<=50&&(d={value:o,itemStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V("#ff8729",.7)},{offset:1,color:"#ff8729"}]}}}),u.saleOption.series[0].data.push(d)})}).catch(s=>{console.log("err",s)})},it=()=>{var e,h,b,i;const s=g.theme;u.visitorOption.series[0].color=s,u.visitorOption.series[0].lineStyle.color=s,u.visitorOption.series[0].areaStyle.color.colorStops=[{offset:0,color:s},{offset:1,color:s}],u.saleOption.series[0].itemStyle.color.colorStops=[{offset:0,color:V(s,.65)},{offset:1,color:s}],(e=H.value)==null||e.clear(),(h=T.value)==null||h.clear(),(b=H.value)==null||b.setOption(u.saleOption),(i=T.value)==null||i.setOption(u.visitorOption)};return St(()=>{G(),R(),N()}),(s,e)=>{var $,z,E,L;const h=nt,b=dt,i=ct,k=pt,m=ut,v=bt,x=mt;return l(),c("div",Ot,[t("header",Ct,[e[4]||(e[4]=t("div",{class:"wb-hero-text"},[t("h1",{class:"wb-hero-title"},"数据工作台"),t("p",{class:"wb-hero-desc"},"医助诊单、订单营收与运营趋势一屏掌握")],-1)),a(h,{type:"primary",icon:f(Q),round:"",class:"wb-refresh-btn",onClick:rt},{default:r(()=>[...e[3]||(e[3]=[C(" 刷新全部 ",-1)])]),_:1},8,["icon"])]),t("section",At,[t("div",Dt,[t("div",Nt,[t("span",$t,[a(b,null,{default:r(()=>[a(f(_t))]),_:1})]),t("div",null,[e[5]||(e[5]=t("div",{class:"wb-section-name"},"订单统计",-1)),t("div",zt,n(ot.value)+" · "+n(_.order_type_name||"—"),1)])]),t("div",Et,[a(k,{modelValue:P.value,"onUpdate:modelValue":e[0]||(e[0]=o=>P.value=o),class:"wb-select wb-select--wide",onChange:N},{default:r(()=>[a(i,{label:"全部(已支付)",value:-1}),a(i,{label:"挂号费",value:1}),a(i,{label:"问诊费",value:2}),a(i,{label:"药品费用",value:3}),a(i,{label:"首付费用",value:4}),a(i,{label:"尾款费用",value:5}),a(i,{label:"其他费用",value:6}),a(i,{label:"全部费用",value:7}),a(i,{label:"驼奶费用",value:8}),a(i,{label:"退款统计",value:0})]),_:1},8,["modelValue"]),a(k,{modelValue:F.value,"onUpdate:modelValue":e[1]||(e[1]=o=>F.value=o),class:"wb-select",onChange:N},{default:r(()=>[a(i,{label:"今天",value:0}),a(i,{label:"最近7天",value:7}),a(i,{label:"最近30天",value:30})]),_:1},8,["modelValue"]),a(h,{icon:f(Q),circle:"",onClick:N},null,8,["icon"])])]),t("div",Lt,[a(v,{gutter:16,class:"wb-kpi-row"},{default:r(()=>[a(m,{xs:24,sm:8},{default:r(()=>[t("div",Vt,[e[6]||(e[6]=t("div",{class:"wb-kpi-label"},"今日单数",-1)),t("div",Rt,n(_.today_total??0),1)])]),_:1}),a(m,{xs:24,sm:8},{default:r(()=>[t("div",Pt,[e[7]||(e[7]=t("div",{class:"wb-kpi-label"},"今日金额",-1)),t("div",Ft,"¥"+n(_.today_amount??"0.00"),1)])]),_:1}),a(m,{xs:24,sm:8},{default:r(()=>{var o;return[t("div",Wt,[e[8]||(e[8]=t("span",{class:"wb-rank-strip-label"},"今日 TOP",-1)),(o=_.today_ranking)!=null&&o.length?(l(),c("div",Bt,[(l(!0),c(A,null,D(_.today_ranking.slice(0,4),(d,y)=>(l(),c("span",{key:d.id,class:"wb-rank-chip wb-rank-chip--dense"},[t("em",null,n(Number(y)+1),1),C(" "+n(d.name)+" ",1),t("strong",null,n(d.count),1),t("small",null,"¥"+n(d.amount),1)]))),128))])):(l(),c("span",Ht,"暂无"))])]}),_:1})]),_:1}),a(v,{gutter:20,class:"wb-chart-row"},{default:r(()=>[a(m,{xs:24,lg:10},{default:r(()=>[t("div",Tt,[e[9]||(e[9]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门单数占比")],-1)),tt.value?(l(),w(f(O),{key:0,class:"wb-chart",style:{height:"300px"},option:st.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:r(()=>{var o,d;return[t("div",It,[e[10]||(e[10]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"开单人 · 单数排行"),t("span",{class:"wb-chart-hint"},"柱状 + 趋势")],-1)),(d=(o=_.chart)==null?void 0:o.xAxis)!=null&&d.length?(l(),w(f(O),{key:"order-bar-"+P.value,class:"wb-chart",style:{height:"300px"},option:lt.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1})]),_:1}),a(v,{gutter:20,class:"wb-chart-row"},{default:r(()=>[a(m,{xs:24,lg:10},{default:r(()=>[t("div",Qt,[e[11]||(e[11]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门金额占比")],-1)),et.value?(l(),w(f(O),{key:0,class:"wb-chart",style:{height:"300px"},option:at.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:r(()=>{var o;return[t("div",Ut,[e[13]||(e[13]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"周期内排行"),t("span",{class:"wb-chart-hint"},"单数 / 金额")],-1)),(o=_.ranking)!=null&&o.length?(l(),c("div",Mt,[(l(!0),c(A,null,D(_.ranking,(d,y)=>(l(),c("div",{key:d.id,class:"wb-ranking-item"},[t("span",jt,n(Number(y)+1),1),t("span",Gt,n(d.name),1),t("span",Jt,[t("b",null,n(d.count),1),e[12]||(e[12]=C(" 单 ",-1)),t("span",Yt,"¥"+n(d.amount),1)])]))),128))])):(l(),w(x,{key:1,description:"暂无排行"}))])]}),_:1})]),_:1}),($=_.departments)!=null&&$.length?(l(),c("div",qt,[e[14]||(e[14]=t("div",{class:"wb-dept-title"},"按部门统计",-1)),a(v,{gutter:16},{default:r(()=>[(l(!0),c(A,null,D(_.departments,o=>(l(),w(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:r(()=>{var d;return[t("div",Kt,[t("div",Xt,[C(n(o.dept_name)+" ",1),t("span",Zt,n(o.total)+" 单 · ¥"+n(o.amount),1)]),t("div",te,[(l(!0),c(A,null,D(o.members,y=>(l(),c("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,n(y.name),1),t("span",ee,[C(n(y.count)+" ",1),t("small",null,"¥"+n(y.amount),1)])]))),128)),(d=o.members)!=null&&d.length?B("",!0):(l(),c("div",se,"暂无"))])])]}),_:2},1024))),128))]),_:1})])):B("",!0)])]),t("section",ae,[t("div",oe,[t("div",le,[t("span",re,[a(b,null,{default:r(()=>[a(f(ht))]),_:1})]),t("div",null,[e[15]||(e[15]=t("div",{class:"wb-section-name"},"医助理诊单统计",-1)),t("div",ie,n((z=p.date_range)==null?void 0:z[0])+" 至 "+n((E=p.date_range)==null?void 0:E[1]),1)])]),t("div",ne,[a(k,{modelValue:p.days,"onUpdate:modelValue":e[2]||(e[2]=o=>p.days=o),class:"wb-select",onChange:R},{default:r(()=>[a(i,{label:"今天",value:0}),a(i,{label:"最近7天",value:7}),a(i,{label:"最近14天",value:14}),a(i,{label:"最近30天",value:30})]),_:1},8,["modelValue"]),a(h,{icon:f(Q),circle:"",onClick:R},null,8,["icon"])])]),t("div",de,[a(v,{gutter:16,class:"wb-kpi-row"},{default:r(()=>[a(m,{xs:24,sm:8,lg:6},{default:r(()=>[t("div",ce,[e[16]||(e[16]=t("div",{class:"wb-kpi-label"},"今日创建诊单",-1)),t("div",pe,n(p.today_total??0),1),e[17]||(e[17]=t("div",{class:"wb-kpi-hint"},"当日新增总量",-1))])]),_:1}),a(m,{xs:24,sm:16,lg:18},{default:r(()=>{var o;return[t("div",ue,[e[18]||(e[18]=t("span",{class:"wb-rank-strip-label"},"今日排行",-1)),(o=p.today_ranking)!=null&&o.length?(l(),c("div",be,[(l(!0),c(A,null,D(p.today_ranking.slice(0,6),(d,y)=>(l(),c("span",{key:d.id,class:"wb-rank-chip"},[t("em",null,n(y+1),1),C(" "+n(d.name)+" ",1),t("strong",null,n(d.count),1)]))),128))])):(l(),c("span",me,"暂无排行数据"))])]}),_:1})]),_:1}),a(v,{gutter:20,class:"wb-chart-row"},{default:r(()=>[a(m,{xs:24,lg:15},{default:r(()=>{var o;return[t("div",_e,[e[19]||(e[19]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"诊单量分布"),t("span",{class:"wb-chart-hint"},"柱状 + 趋势线")],-1)),(o=p.chart.xAxis)!=null&&o.length?(l(),w(f(O),{key:0,ref_key:"assistantChart",ref:q,class:"wb-chart",style:{height:"340px"},option:Z.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1}),a(m,{xs:24,lg:9},{default:r(()=>[t("div",he,[e[20]||(e[20]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门占比"),t("span",{class:"wb-chart-hint"},"按诊单数")],-1)),K.value?(l(),w(f(O),{key:0,class:"wb-chart",style:{height:"340px"},option:X.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无部门数据"}))])]),_:1})]),_:1}),(L=p.departments)!=null&&L.length?(l(),c("div",ye,[e[21]||(e[21]=t("div",{class:"wb-dept-title"},"按部门明细",-1)),a(v,{gutter:16},{default:r(()=>[(l(!0),c(A,null,D(p.departments,o=>(l(),w(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:r(()=>{var d;return[t("div",we,[t("div",fe,[C(n(o.dept_name)+" ",1),t("span",ve,"共 "+n(o.total),1)]),t("div",ge,[(l(!0),c(A,null,D(o.assistants,y=>(l(),c("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,n(y.name),1),t("span",ke,n(y.count),1)]))),128)),(d=o.assistants)!=null&&d.length?B("",!0):(l(),c("div",xe,"暂无医助"))])])]}),_:2},1024))),128))]),_:1})])):B("",!0)])]),t("section",Se,[t("div",Oe,[t("div",Ce,[t("span",Ae,[a(b,null,{default:r(()=>[a(f(yt))]),_:1})]),e[22]||(e[22]=t("div",null,[t("div",{class:"wb-section-name"},"运营趋势"),t("div",{class:"wb-section-sub"},"访问量与销售额走势")],-1))])]),t("div",De,[a(v,{gutter:20},{default:r(()=>[a(m,{xs:24,lg:14},{default:r(()=>[t("div",Ne,[e[23]||(e[23]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"访问量趋势")],-1)),a(f(O),{ref_key:"visitorChart",ref:T,class:"wb-chart",style:{height:"320px"},option:u.visitorOption,autoresize:!0},null,8,["option"])])]),_:1}),a(m,{xs:24,lg:10},{default:r(()=>[t("div",$e,[e[24]||(e[24]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"销售额趋势"),t("span",{class:"wb-chart-hint"},"单位(万)")],-1)),a(f(O),{ref_key:"saleChart",ref:H,class:"wb-chart",style:{height:"320px"},option:u.saleOption,autoresize:!0},null,8,["option"])])]),_:1})]),_:1})])])])}}}),ks=vt(Ee,[["__scopeId","data-v-2f6eaa33"]]);export{ks as default}; diff --git a/server/public/admin/assets/index-CEGMPJ75.js b/server/public/admin/assets/index-Cj72c8kg.js similarity index 99% rename from server/public/admin/assets/index-CEGMPJ75.js rename to server/public/admin/assets/index-Cj72c8kg.js index cf51145d..db8bc43a 100644 --- a/server/public/admin/assets/index-CEGMPJ75.js +++ b/server/public/admin/assets/index-Cj72c8kg.js @@ -1 +1 @@ -import{D as Jt,B as Xt,C as Ht,P as Zt,Q as el,i as tl,J as ll,m as al,l as ol,M as nl,N as sl,T as rl,L as il,aa as dl,ab as ul,U as pl,X as ml,V as fl,a2 as yl,K as _l,G as vl,I as gl,g as cl,h as bl,d as kl}from"./element-plus-DFTWCWyi.js";import{_ as Vl}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as xl}from"./index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js";import{_ as wl}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as rt,s as it}from"./@vue/runtime-dom-DDAG46FW.js";import{u as Cl}from"./usePaging-VsbTxSU0.js";import{o as Sl,a as Tl,b as Dl,c as El,d as Ul,e as $l,s as dt,f as Pl,g as hl,h as Ll,i as Ol,j as Al,k as Ml,l as Rl,m as ut,n as ql,w as zl,p as Fl,q as Nl,r as Il,t as Wl}from"./order-6mkZv6ss.js";import{K as Bl,a as jl}from"./tcm-DCW3HTOw.js";import{l as Yl}from"./@element-plus/icons-vue-HOEUG8sr.js";import{i as g,_ as Ql}from"./index-Nt5zMHcc.js";import{f as pt,b as Kl,as as Gl,ak as d,I as x,a as t,aN as a,F as R,ap as oe,G as v,O as s,aP as S,J as c,H as b,A as Be}from"./@vue/runtime-core-C6bnekPw.js";import{n as u,y as o,a as T,r as je}from"./@vue/reactivity-DiY1c2vO.js";import{Q as p}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Jl={class:"order-list"},Xl={class:"flex items-center justify-between mb-4"},Hl={class:"flex items-center gap-4 text-sm"},Zl={class:"text-red-500 font-semibold text-lg"},ea={class:"text-gray-400"},ta={class:"mb-3 flex items-center gap-3"},la={key:0,class:"text-sm text-gray-500"},aa={key:0},oa={key:1,class:"text-amber-600"},na={class:"text-xs text-gray-400"},sa={key:0,class:"text-xs text-gray-400"},ra={class:"text-red-500 font-semibold"},ia={class:"flex justify-end mt-4"},da={class:"text-red-500 font-semibold"},ua={key:2,class:"text-xs text-gray-500 mb-2"},pa={key:4,class:"flex justify-end mt-3"},ma={key:0,class:"text-xs text-gray-500 mb-3"},fa={class:"text-sm text-gray-600 mb-3"},ya={class:"text-red-500 font-semibold"},_a={class:"text-red-500 font-semibold"},va={class:"text-sm text-gray-600 mb-3"},ga={class:"font-mono"},ca={class:"text-red-500 font-semibold"},ba={class:"space-y-2 mb-3 max-h-[320px] overflow-y-auto pr-1"},ka={class:"text-sm text-gray-500 w-14 shrink-0"},Va={class:"flex flex-col items-center justify-center py-4"},xa={key:0,class:"text-center"},wa={key:1,class:"text-center"},Ca=["src"],Sa={class:"mt-4 text-sm text-gray-600"},Ta={key:2,class:"text-center text-gray-500"},Da=pt({name:"orderList"}),Ea=pt({...Da,setup(Ua){const w=je({order_no:"",patient_keyword:"",assistant_id:void 0,order_type:"",status:"",patient_association:"",create_time_start:"",create_time_end:""}),ne=u([]),Ye=u(null),Qe=u([]),F=Be(()=>Qe.value.map(n=>n.id).filter(n=>n>0)),N=u(!1),Ve=u(!1),H=je({assistant_id:void 0}),se=u(""),re=u({amount:"0.00",count:0}),{pager:I,getLists:D,resetPage:Ke,resetParams:mt}=Cl({fetchFun:Sl,params:w}),ft=n=>{Qe.value=n||[]},yt=()=>{if(!F.value.length){g.msgWarning("请先勾选要指派的支付单");return}H.assistant_id=void 0,N.value=!0},_t=async()=>{var n;if(H.assistant_id==null){g.msgWarning("请选择医助");return}Ve.value=!0;try{await Dl({order_ids:[...F.value],assistant_id:H.assistant_id}),g.msgSuccess("指派成功"),N.value=!1,(n=Ye.value)==null||n.clearSelection(),D(),W()}catch(e){e!=null&&e.msg&&g.msgError(e.msg)}finally{Ve.value=!1}},xe=()=>{Ke()},vt=n=>{w.patient_association=n||"",Ke()},W=async()=>{try{const n=await El();re.value=(n==null?void 0:n.data)||n||{amount:"0.00",count:0}}catch{re.value={amount:"0.00",count:0}}},gt=()=>{se.value="",mt()},ie=u(!1),k=u(null),we=u(0),Ce=u(!1),Se=u([]),Te=u(0),B=u(1),de=u(10),ue=u(!1),pe=u(!1),De=u([]),A=u(null),Z=u(""),Ee=async()=>{if(we.value){Ce.value=!0;try{const n=await Ul({order_id:we.value,page_no:B.value,page_size:de.value});Se.value=(n==null?void 0:n.lists)||[],Te.value=(n==null?void 0:n.count)??0}catch{Se.value=[],Te.value=0}finally{Ce.value=!1}}},ct=()=>{B.value=1,Ee()},bt=()=>{A.value=null,Ge()},Ge=async()=>{pe.value=!0;try{const n={};A.value&&A.value.length===2&&(n.start_time=A.value[0],n.end_time=A.value[1]);const e=await $l(Object.keys(n).length?n:void 0);De.value=(e==null?void 0:e.list)||[],e!=null&&e.start_time&&(e!=null&&e.end_time)?Z.value=`${e.start_time} ~ ${e.end_time}`:Z.value=""}catch{De.value=[],Z.value=""}finally{pe.value=!1}},q=u(!1),me=u(!1),f=u({order_id:0,order_no:"",amount:0,fubeiPendingAudit:!1,payment_method:"alipay",payType:"supplement",supplement_order_no:""}),z=u(!1),Ue=u(),$e=u(!1),Pe=u(!1),he=u([]),y=je({createType:"normal",requirePaymentSlipAudit:!1,patient_id:"",order_type:"",amount:0,remark:""}),kt={patient_id:[{required:!0,message:"请选择患者",trigger:"change"}],order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},j=u(!1),Je=u(),Le=u(!1),Oe=u(!1),ee=u([]),L=u(null),Vt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}]},xt=async n=>{if(!n){he.value=[];return}try{Pe.value=!0;const e=await dt({keyword:n,page_no:1,page_size:10});he.value=(e==null?void 0:e.lists)||[]}catch(e){console.error("搜索患者失败:",e)}finally{Pe.value=!1}},Xe=()=>{var n;y.createType="normal",y.requirePaymentSlipAudit=!1,y.patient_id="",y.order_type="",y.amount=0,y.remark="",(n=Ue.value)==null||n.clearValidate()},wt=()=>{Xe(),z.value=!0},Y=u(!1),fe=u(!1),Ae=u(!1),ye=u(""),Q=u([new Date(Date.now()-7*864e5).toISOString().slice(0,10),new Date().toISOString().slice(0,10)]),Ct=[{text:"最近7天",value:()=>{const n=new Date,e=new Date;return e.setTime(e.getTime()-7*864e5),[e,n]}},{text:"最近30天",value:()=>{const n=new Date,e=new Date;return e.setTime(e.getTime()-30*864e5),[e,n]}},{text:"今天",value:()=>{const n=new Date;return[n,n]}}],St=()=>{Q.value=[new Date(Date.now()-7*864e5).toISOString().slice(0,10),new Date().toISOString().slice(0,10)],Y.value=!0},Tt=async()=>{var e;const n=Q.value;if(!n||n.length!==2){g.msgError("请先选择时间范围");return}try{Ae.value=!0;const m=await Pl({begin_time:n[0],end_time:n[1],payee_userid:ye.value||void 0}),r=(m==null?void 0:m.data)||m;let i=`配置:${r.config_ok?"✓":"✗"} | token:${r.access_token} | errcode:${r.api_errcode} | errmsg:${r.api_errmsg||"-"} | 账单数:${r.bill_count}`;(e=r.try_payee_userids)!=null&&e.length&&(i+=`。可尝试收款人: ${r.try_payee_userids.join(", ")}`),r.api_errcode!==0&&r.api_errcode!==-999&&(i+="。提示:需使用「对外收款」应用的Secret(管理后台-应用管理-对外收款-API)"),g.msgSuccess(i),console.log("企业微信同步调试:",r)}catch(m){g.msgError((m==null?void 0:m.message)||"排查失败")}finally{Ae.value=!1}},Dt=async()=>{var e;const n=Q.value;if(!n||n.length!==2){g.msgError("请选择时间范围");return}try{fe.value=!0;const m=await hl({begin_time:n[0],end_time:n[1]}),r=(m==null?void 0:m.data)||m;Y.value=!1,D();const i=`同步完成:新增 ${r.created||0} 笔,更新 ${r.updated||0} 笔,跳过 ${r.skipped||0} 笔`+((e=r.errors)!=null&&e.length?`;错误:${r.errors.join(";")}`:"");g.msgSuccess(i),W()}catch(m){g.msgError((m==null?void 0:m.message)||"同步失败")}finally{fe.value=!1}},Et=async()=>{var n,e;try{if(await((n=Ue.value)==null?void 0:n.validate()),$e.value=!0,y.createType==="wechat_work"){const m={patient_id:y.patient_id,order_type:y.order_type,amount:y.amount,remark:y.remark},r=await Ll(m),i=(r==null?void 0:r.order_no)??((e=r==null?void 0:r.data)==null?void 0:e.order_no);z.value=!1,D(),g.msgSuccess(i?`订单创建成功,请在企业微信收款时使用订单号:${i}`:"订单创建成功")}else{const m={patient_id:y.patient_id,order_type:y.order_type,amount:y.amount,remark:y.remark};y.createType==="fubei"?(m.payment_channel="fubei",m.require_payment_slip_audit=y.requirePaymentSlipAudit?1:0):(m.payment_channel="normal",m.require_payment_slip_audit=0),await Ol(m);const r=y.createType==="fubei"&&y.requirePaymentSlipAudit?"订单已创建,支付状态为「待审核」":"订单创建成功";g.msgSuccess(r),z.value=!1,D()}}catch(m){console.error("创建订单失败:",m)}finally{$e.value=!1}},He=n=>({1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"})[n]||"未知",Ze=n=>({1:"success",2:"info",3:"warning"})[n]||"info",et=n=>({1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"})[n]||"未知",tt=n=>({1:"warning",2:"success",3:"info",4:"danger",5:"warning"})[n]||"info",lt=n=>n?{alipay:"支付宝",wechat:"微信",wechat_work:"企业微信",fubei:"付呗",manual:"手动确认"}[n]||"未知":"-",Ut=n=>{L.value={id:n.id,patient_id:n.patient_id||null,order_type:n.order_type},ee.value=n.patient?[n.patient]:[],j.value=!0},$t=async n=>{if(!n){ee.value=[];return}try{Oe.value=!0;const e=await dt({keyword:n,page_no:1,page_size:10});ee.value=(e==null?void 0:e.lists)||[]}catch{ee.value=[]}finally{Oe.value=!1}},Pt=async()=>{var n;if(L.value)try{await((n=Je.value)==null?void 0:n.validate()),Le.value=!0,await Al({id:L.value.id,patient_id:L.value.patient_id??0,order_type:L.value.order_type}),g.msgSuccess("保存成功"),j.value=!1,D(),W()}catch(e){e!=null&&e.message&&g.msgError(e.message)}finally{Le.value=!1}},K=u(!1),P=u(null),G=u(2),J=u([]),te=u([]),Me=u(!1),at=()=>{if(!P.value)return;const n=Number(P.value.amount),e=Math.max(2,Math.min(20,Math.floor(Number(G.value)||2)));G.value=e;const m=Math.round(n*100),r=Math.floor(m/e),i=m%e,U=[];for(let X=0;Xh{P.value=n,G.value=2,at(),K.value=!0},ot=Be(()=>J.value.reduce((n,e)=>n+Number(e||0),0)),_e=Be(()=>{if(!P.value)return!1;const n=Number(P.value.amount);return Math.abs(ot.value-n)<1e-4}),Lt=async()=>{if(!(!P.value||!_e.value)){Me.value=!0;try{await Ml({id:P.value.id,amounts:J.value.map(n=>Number(n)),order_types:te.value.map(n=>Number(n))}),g.msgSuccess("拆分成功"),K.value=!1,D(),W()}catch(n){n!=null&&n.msg&&g.msgError(n.msg)}finally{Me.value=!1}}},Ot=async n=>{try{const e=await Rl({id:n.id});k.value=e,we.value=n.id,B.value=1,ie.value=!0,Ee()}catch(e){console.error("获取详情失败:",e)}},At=n=>{const e=n.status===5&&n.payment_method==="fubei";f.value={order_id:n.id,order_no:n.order_no,amount:n.amount,fubeiPendingAudit:e,payment_method:e?"manual":"alipay",payType:"supplement",supplement_order_no:""},q.value=!0},Mt=async()=>{try{if(f.value.fubeiPendingAudit){me.value=!0,await ut({id:f.value.order_id,payment_method:f.value.payment_method}),g.msgSuccess("已更新为已支付"),q.value=!1,D(),W();return}if(f.value.payType==="supplement"&&!f.value.supplement_order_no){g.msgWarning("请输入支付订单号");return}me.value=!0;let n={};if(f.value.payType==="normal"?n={id:f.value.order_id,order_no:f.value.order_no,amount:f.value.amount,payment_method:f.value.payment_method}:n={order_no:f.value.supplement_order_no,payment_method:f.value.payment_method,is_supplement:1},f.value.payment_method==="wechat_work")await ut(n),g.msgSuccess("补单成功");else{let e;f.value.payment_method==="alipay"?e=await ql(n):f.value.payment_method==="wechat"&&(e=await zl(n)),e&&e.pay_url&&(f.value.payment_method==="alipay"?window.location.href=e.pay_url:f.value.payment_method==="wechat"&&g.msgSuccess("请扫描二维码进行支付"))}q.value=!1,setTimeout(()=>{D()},2e3)}catch(n){console.error("支付失败:",n),g.msgError("支付失败,请重试")}finally{me.value=!1}},Rt=async n=>{try{await g.confirm("确定要取消该订单吗?"),await Fl({id:n.id}),g.msgSuccess("取消成功"),D()}catch{}},qt=async n=>{try{await g.confirm("确定要退款该订单吗?"),await Nl({id:n.id}),g.msgSuccess("退款成功"),D()}catch{}},zt=async n=>{try{await g.confirm("确定要删除该订单吗?此操作不可恢复"),await Il({id:n.id}),g.msgSuccess("删除成功"),D()}catch{}},Ft=async n=>{const e=n.is_exempt===1?0:1,m=e===1?"设为豁免":"取消豁免";try{await g.confirm(`确定要${m}该支付单吗?豁免后关联此单的业务订单将跳过定金门槛校验。`),await Wl({id:n.id,is_exempt:e}),g.msgSuccess(`${m}成功`),D()}catch{}},le=u(!1),ve=u(!1),ge=u(""),ce=u(""),nt=async n=>{if(!n.order_no){g.msgWarning("订单号不存在");return}ce.value=n.order_no,le.value=!0,ve.value=!0,ge.value="";try{const e=await Bl({order_no:n.order_no});e!=null&&e.qrcode_url?ge.value=e.qrcode_url:g.msgError("二维码生成失败")}catch(e){g.msgError((e==null?void 0:e.msg)||"生成二维码失败")}finally{ve.value=!1}},Nt=()=>{ce.value&&nt({order_no:ce.value})},It=async()=>{try{const n=await jl();ne.value=Array.isArray(n)?n:[]}catch{ne.value=[]}};return Kl(()=>{It(),D(),W()}),(n,e)=>{const m=Ht,r=Xt,i=el,U=Zt,be=wl,_=tl,X=xl,h=Jt,Re=ll,qe=ol,Wt=al,C=sl,ae=rl,ze=nl,Bt=Vl,$=ul,jt=dl,Yt=pl,Qt=ml,O=fl,st=yl,ke=_l,M=gl,Fe=vl,Kt=cl,Ne=bl,Gt=kl,E=Gl("perms"),Ie=il;return d(),x("div",Jl,[t(Re,{class:"!border-none",shadow:"never"},{default:a(()=>[t(h,{class:"ls-form",model:o(w),inline:""},{default:a(()=>[t(r,{class:"w-[280px]",label:"订单号"},{default:a(()=>[t(m,{modelValue:o(w).order_no,"onUpdate:modelValue":e[0]||(e[0]=l=>o(w).order_no=l),placeholder:"请输入订单号",clearable:"",onKeyup:rt(xe,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"患者信息"},{default:a(()=>[t(m,{modelValue:o(w).patient_keyword,"onUpdate:modelValue":e[1]||(e[1]=l=>o(w).patient_keyword=l),placeholder:"患者姓名/手机号",clearable:"",onKeyup:rt(xe,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"医助"},{default:a(()=>[t(U,{modelValue:o(w).assistant_id,"onUpdate:modelValue":e[2]||(e[2]=l=>o(w).assistant_id=l),placeholder:"全部医助",clearable:"",filterable:"",class:"w-full"},{default:a(()=>[(d(!0),x(R,null,oe(o(ne),l=>(d(),v(i,{key:l.id,label:l.name,value:Number(l.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"订单类型"},{default:a(()=>[t(U,{modelValue:o(w).order_type,"onUpdate:modelValue":e[3]||(e[3]=l=>o(w).order_type=l),class:"w-full",placeholder:"全部"},{default:a(()=>[t(i,{label:"全部",value:""}),t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"订单状态"},{default:a(()=>[t(U,{modelValue:o(w).status,"onUpdate:modelValue":e[4]||(e[4]=l=>o(w).status=l),class:"w-full",placeholder:"全部"},{default:a(()=>[t(i,{label:"全部",value:""}),t(i,{label:"待支付",value:1}),t(i,{label:"已支付",value:2}),t(i,{label:"已取消",value:3}),t(i,{label:"已退款",value:4}),t(i,{label:"待审核",value:5})]),_:1},8,["modelValue"])]),_:1}),t(r,{label:"创建时间"},{default:a(()=>[t(be,{startTime:o(w).create_time_start,"onUpdate:startTime":e[5]||(e[5]=l=>o(w).create_time_start=l),endTime:o(w).create_time_end,"onUpdate:endTime":e[6]||(e[6]=l=>o(w).create_time_end=l)},null,8,["startTime","endTime"])]),_:1}),t(r,null,{default:a(()=>[t(_,{type:"primary",onClick:xe},{default:a(()=>[...e[47]||(e[47]=[s("查询",-1)])]),_:1}),t(_,{onClick:gt},{default:a(()=>[...e[48]||(e[48]=[s("重置",-1)])]),_:1}),S((d(),v(_,{onClick:e[7]||(e[7]=l=>ue.value=!0)},{default:a(()=>[...e[49]||(e[49]=[s(" 操作统计 ",-1)])]),_:1})),[[E,["order.order/lists"]]]),S(t(X,{class:"ml-2.5","fetch-fun":o(Tl),params:o(w),"page-size":o(I).size},null,8,["fetch-fun","params","page-size"]),[[E,["order.order/export"]]]),S((d(),v(_,{type:"success",class:"ml-2.5",onClick:wt},{default:a(()=>[...e[50]||(e[50]=[s(" + 创建支付单 ",-1)])]),_:1})),[[E,["order.order/create"]]]),S((d(),v(_,{type:"warning",class:"ml-2.5",loading:o(fe),onClick:St},{default:a(()=>[...e[51]||(e[51]=[s(" 同步企业微信收款 ",-1)])]),_:1},8,["loading"])),[[E,["order.order/alltongbu"]]])]),_:1})]),_:1},8,["model"])]),_:1}),t(Re,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[c("div",Xl,[t(Wt,{modelValue:o(se),"onUpdate:modelValue":e[8]||(e[8]=l=>T(se)?se.value=l:null),onTabChange:vt},{default:a(()=>[t(qe,{label:"全部",name:""}),t(qe,{label:"待关联",name:"pending"}),t(qe,{label:"已关联",name:"associated"})]),_:1},8,["modelValue"]),c("div",Hl,[e[52]||(e[52]=c("span",{class:"text-gray-500"},"今日收益:",-1)),c("span",Zl,"¥"+p(o(re).amount),1),c("span",ea,"("+p(o(re).count)+" 笔)",1)])])]),_:1}),t(Re,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[S((d(),x("div",ta,[t(_,{type:"primary",disabled:!F.value.length,onClick:yt},{default:a(()=>[...e[53]||(e[53]=[s(" 将创建人指给医助 ",-1)])]),_:1},8,["disabled"]),F.value.length?(d(),x("span",la,"已选 "+p(F.value.length)+" 条",1)):b("",!0)])),[[E,["order.order/zhipai"]]]),S((d(),v(ze,{ref_key:"orderTableRef",ref:Ye,data:o(I).lists,"row-key":"id",size:"large",onSelectionChange:ft},{default:a(()=>[t(C,{type:"selection",width:"48"}),t(C,{label:"订单号",prop:"order_no","min-width":"150"}),t(C,{label:"患者信息","min-width":"150"},{default:a(({row:l})=>{var V;return[l.patient?(d(),x("div",aa,p(l.patient.patient_name),1)):(d(),x("div",oa,"待关联")),c("div",na,p(((V=l.patient)==null?void 0:V.phone)||"-"),1)]}),_:1}),t(C,{label:"创建人","min-width":"120"},{default:a(({row:l})=>{var V;return[c("div",null,p(((V=l.creator)==null?void 0:V.name)||"-"),1),l.payee_userid?(d(),x("div",sa,"收款: "+p(l.payee_userid),1)):b("",!0)]}),_:1}),t(C,{label:"订单类型",width:"100"},{default:a(({row:l})=>[t(ae,{type:Ze(l.order_type)},{default:a(()=>[s(p(He(l.order_type)),1)]),_:2},1032,["type"])]),_:1}),t(C,{label:"金额",width:"100"},{default:a(({row:l})=>[c("span",ra,"¥"+p(l.amount),1)]),_:1}),t(C,{label:"支付方式",width:"100"},{default:a(({row:l})=>[s(p(lt(l.payment_method)),1)]),_:1}),t(C,{label:"订单状态",width:"120"},{default:a(({row:l})=>[t(ae,{type:tt(l.status)},{default:a(()=>[s(p(et(l.status)),1)]),_:2},1032,["type"]),l.is_exempt===1?(d(),v(ae,{key:0,type:"warning",size:"small",class:"ml-1"},{default:a(()=>[...e[54]||(e[54]=[s("豁免",-1)])]),_:1})):b("",!0)]),_:1}),t(C,{label:"支付时间","min-width":"160"},{default:a(({row:l})=>[s(p(l.payment_time||"-"),1)]),_:1}),t(C,{label:"创建时间","min-width":"160"},{default:a(({row:l})=>[s(p(l.create_time),1)]),_:1}),t(C,{label:"操作",width:"340",fixed:"right"},{default:a(({row:l})=>[S((d(),v(_,{type:"primary",link:"",onClick:V=>Ot(l)},{default:a(()=>[...e[55]||(e[55]=[s(" 详情 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/detail"]]]),S((d(),v(_,{type:"primary",link:"",onClick:V=>Ut(l)},{default:a(()=>[...e[56]||(e[56]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/edit"]]]),l.status===1||l.status===2||l.status===5&&l.payment_method==="fubei"?S((d(),v(_,{key:0,type:"primary",link:"",onClick:V=>ht(l)},{default:a(()=>[...e[57]||(e[57]=[s(" 拆分 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/split"]]]):b("",!0),S((d(),v(_,{type:"primary",link:"",onClick:V=>nt(l)},{default:a(()=>[...e[58]||(e[58]=[s(" 小程序码 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/wxQrcode"]]]),l.status===1||l.status===5&&l.payment_method==="fubei"?S((d(),v(_,{key:1,type:"success",link:"",onClick:V=>At(l)},{default:a(()=>[...e[59]||(e[59]=[s(" 支付 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/pay"]]]):b("",!0),l.status===2?S((d(),v(_,{key:2,type:"warning",link:"",onClick:V=>qt(l)},{default:a(()=>[...e[60]||(e[60]=[s(" 退款 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/refund"]]]):b("",!0),l.status===1||l.status===5&&l.payment_method==="fubei"?S((d(),v(_,{key:3,type:"danger",link:"",onClick:V=>Rt(l)},{default:a(()=>[...e[61]||(e[61]=[s(" 取消 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/cancel"]]]):b("",!0),S((d(),v(_,{type:"danger",link:"",onClick:V=>zt(l)},{default:a(()=>[...e[62]||(e[62]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/delete"]]]),S((d(),v(_,{type:l.is_exempt===1?"warning":"default",link:"",onClick:V=>Ft(l)},{default:a(()=>[s(p(l.is_exempt===1?"取消豁免":"设为豁免"),1)]),_:2},1032,["type","onClick"])),[[E,["order.order/setExempt"]]])]),_:1})]),_:1},8,["data"])),[[Ie,o(I).loading]]),c("div",ia,[t(Bt,{modelValue:o(I),"onUpdate:modelValue":e[9]||(e[9]=l=>T(I)?I.value=l:null),onChange:o(D)},null,8,["modelValue","onChange"])])]),_:1}),t(O,{modelValue:o(ie),"onUpdate:modelValue":e[12]||(e[12]=l=>T(ie)?ie.value=l:null),title:"订单详情",width:"820px"},{default:a(()=>[o(k)?(d(),v(jt,{key:0,column:2,border:""},{default:a(()=>[t($,{label:"订单号"},{default:a(()=>[s(p(o(k).order_no),1)]),_:1}),t($,{label:"订单状态"},{default:a(()=>[t(ae,{type:tt(o(k).status)},{default:a(()=>[s(p(et(o(k).status)),1)]),_:1},8,["type"])]),_:1}),t($,{label:"患者姓名"},{default:a(()=>{var l;return[s(p(((l=o(k).patient)==null?void 0:l.patient_name)||"待关联"),1)]}),_:1}),t($,{label:"患者电话"},{default:a(()=>{var l;return[s(p(((l=o(k).patient)==null?void 0:l.phone)||"-"),1)]}),_:1}),t($,{label:"创建人"},{default:a(()=>{var l;return[s(p(((l=o(k).creator)==null?void 0:l.name)||"-"),1)]}),_:1}),o(k).payee_userid?(d(),v($,{key:0,label:"收款人userid"},{default:a(()=>[s(p(o(k).payee_userid),1)]),_:1})):b("",!0),o(k).payer_external_userid?(d(),v($,{key:1,label:"付款人external_userid"},{default:a(()=>[s(p(o(k).payer_external_userid),1)]),_:1})):b("",!0),t($,{label:"订单类型"},{default:a(()=>[t(ae,{type:Ze(o(k).order_type)},{default:a(()=>[s(p(He(o(k).order_type)),1)]),_:1},8,["type"])]),_:1}),t($,{label:"订单金额"},{default:a(()=>[c("span",da,"¥"+p(o(k).amount),1)]),_:1}),t($,{label:"支付方式"},{default:a(()=>[s(p(lt(o(k).payment_method)),1)]),_:1}),t($,{label:"支付时间"},{default:a(()=>[s(p(o(k).payment_time||"-"),1)]),_:1}),t($,{label:"创建时间"},{default:a(()=>[s(p(o(k).create_time),1)]),_:1}),t($,{label:"备注",span:2},{default:a(()=>[s(p(o(k).remark||"无"),1)]),_:1})]),_:1})):b("",!0),o(k)?(d(),v(Yt,{key:1,"content-position":"left"},{default:a(()=>[...e[63]||(e[63]=[s("操作记录",-1)])]),_:1})):b("",!0),o(k)?(d(),x("p",ua,"谁在什么时间对本单做了哪些操作(数据来自服务器记录)。")):b("",!0),o(k)?S((d(),v(ze,{key:3,data:o(Se),size:"small","max-height":"320"},{default:a(()=>[t(C,{label:"操作",prop:"action_label","min-width":"120","show-overflow-tooltip":""}),t(C,{label:"操作人",prop:"admin_name","min-width":"100"}),t(C,{label:"操作时间",prop:"create_time_text","min-width":"160"}),t(C,{label:"说明",prop:"summary","min-width":"140","show-overflow-tooltip":""})]),_:1},8,["data"])),[[Ie,o(Ce)]]):b("",!0),o(k)?(d(),x("div",pa,[t(Qt,{"current-page":o(B),"onUpdate:currentPage":e[10]||(e[10]=l=>T(B)?B.value=l:null),"page-size":o(de),"onUpdate:pageSize":e[11]||(e[11]=l=>T(de)?de.value=l:null),total:o(Te),"page-sizes":[10,20,50],layout:"total, sizes, prev, pager, next",small:"",onSizeChange:ct,onCurrentChange:Ee},null,8,["current-page","page-size","total"])])):b("",!0)]),_:1},8,["modelValue"]),t(O,{modelValue:o(ue),"onUpdate:modelValue":e[15]||(e[15]=l=>T(ue)?ue.value=l:null),title:"支付单操作统计",width:"520px",onOpened:bt},{default:a(()=>[o(Z)?(d(),x("p",ma,"统计范围:"+p(o(Z)),1)):b("",!0),t(h,{class:"mb-3",inline:!0,onSubmit:e[14]||(e[14]=it(()=>{},["prevent"]))},{default:a(()=>[t(r,{label:"时间范围"},{default:a(()=>[t(st,{modelValue:o(A),"onUpdate:modelValue":e[13]||(e[13]=l=>T(A)?A.value=l:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始","end-placeholder":"结束",class:"!w-[260px]"},null,8,["modelValue"])]),_:1}),t(r,null,{default:a(()=>[t(_,{type:"primary",loading:o(pe),onClick:Ge},{default:a(()=>[...e[64]||(e[64]=[s("查询",-1)])]),_:1},8,["loading"])]),_:1})]),_:1}),S((d(),v(ze,{data:o(De),size:"small","max-height":"400"},{default:a(()=>[t(C,{label:"操作人",prop:"admin_name","min-width":"120","show-overflow-tooltip":""}),t(C,{label:"操作次数",prop:"cnt",width:"100",align:"right"})]),_:1},8,["data"])),[[Ie,o(pe)]])]),_:1},8,["modelValue"]),t(O,{modelValue:o(N),"onUpdate:modelValue":e[18]||(e[18]=l=>T(N)?N.value=l:null),title:"变更创建人(医助)",width:"440px","destroy-on-close":""},{footer:a(()=>[t(_,{onClick:e[17]||(e[17]=l=>N.value=!1)},{default:a(()=>[...e[65]||(e[65]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",loading:o(Ve),onClick:_t},{default:a(()=>[...e[66]||(e[66]=[s("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[c("p",fa," 将 "+p(F.value.length)+" 条支付单的「创建人」改为所选医助,并写入各单操作日志。 ",1),t(U,{modelValue:o(H).assistant_id,"onUpdate:modelValue":e[16]||(e[16]=l=>o(H).assistant_id=l),filterable:"",placeholder:"选择医助",class:"w-full"},{default:a(()=>[(d(!0),x(R,null,oe(o(ne),l=>(d(),v(i,{key:l.id,label:l.dept_names?`${l.name}(${l.dept_names})`:l.name,value:Number(l.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),t(O,{modelValue:o(q),"onUpdate:modelValue":e[23]||(e[23]=l=>T(q)?q.value=l:null),title:"订单支付",width:"500px"},{footer:a(()=>[t(_,{onClick:e[22]||(e[22]=l=>q.value=!1)},{default:a(()=>[...e[72]||(e[72]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",onClick:Mt,loading:o(me)},{default:a(()=>[...e[73]||(e[73]=[s("确认支付",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(h,{model:o(f),"label-width":"100px"},{default:a(()=>[o(f).fubeiPendingAudit?(d(),v(ke,{key:0,type:"warning",closable:!1,class:"mb-3",title:"该单为付呗·待审核,请选择实际到账方式后确认「已支付」"})):b("",!0),o(f).fubeiPendingAudit?b("",!0):(d(),v(r,{key:1,label:"支付类型",required:""},{default:a(()=>[t(Fe,{modelValue:o(f).payType,"onUpdate:modelValue":e[19]||(e[19]=l=>o(f).payType=l)},{default:a(()=>[t(M,{label:"supplement"},{default:a(()=>[...e[67]||(e[67]=[s("补单支付",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})),o(f).payType==="normal"?(d(),x(R,{key:2},[t(r,{label:"订单号"},{default:a(()=>[c("span",null,p(o(f).order_no),1)]),_:1}),t(r,{label:"订单金额"},{default:a(()=>[c("span",ya,"¥"+p(o(f).amount),1)]),_:1})],64)):b("",!0),!o(f).fubeiPendingAudit&&o(f).payType==="supplement"?(d(),v(r,{key:3,label:"支付订单号",required:""},{default:a(()=>[t(m,{modelValue:o(f).supplement_order_no,"onUpdate:modelValue":e[20]||(e[20]=l=>o(f).supplement_order_no=l),placeholder:"请输入支付订单号"},null,8,["modelValue"])]),_:1})):b("",!0),o(f).fubeiPendingAudit?(d(),x(R,{key:4},[t(r,{label:"订单号"},{default:a(()=>[c("span",null,p(o(f).order_no),1)]),_:1}),t(r,{label:"金额"},{default:a(()=>[c("span",_a,"¥"+p(o(f).amount),1)]),_:1})],64)):b("",!0),t(r,{label:"支付方式",required:""},{default:a(()=>[t(Fe,{modelValue:o(f).payment_method,"onUpdate:modelValue":e[21]||(e[21]=l=>o(f).payment_method=l)},{default:a(()=>[o(f).fubeiPendingAudit?(d(),v(M,{key:0,label:"manual"},{default:a(()=>[...e[68]||(e[68]=[s("手动确认到账",-1)])]),_:1})):b("",!0),t(M,{label:"alipay"},{default:a(()=>[...e[69]||(e[69]=[s("支付宝",-1)])]),_:1}),t(M,{label:"wechat"},{default:a(()=>[...e[70]||(e[70]=[s("微信",-1)])]),_:1}),t(M,{label:"wechat_work"},{default:a(()=>[...e[71]||(e[71]=[s("企业微信",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(O,{modelValue:o(z),"onUpdate:modelValue":e[31]||(e[31]=l=>T(z)?z.value=l:null),title:"创建订单",width:"600px",onClose:Xe},{footer:a(()=>[t(_,{onClick:e[30]||(e[30]=l=>z.value=!1)},{default:a(()=>[...e[82]||(e[82]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",onClick:Et,loading:o($e)},{default:a(()=>[s(p(o(y).createType==="wechat_work"?"创建并获取收款订单号":"创建订单"),1)]),_:1},8,["loading"])]),default:a(()=>[t(h,{ref_key:"createFormRef",ref:Ue,model:o(y),rules:kt,"label-width":"100px"},{default:a(()=>[t(r,{label:"创建方式"},{default:a(()=>[t(Fe,{modelValue:o(y).createType,"onUpdate:modelValue":e[24]||(e[24]=l=>o(y).createType=l)},{default:a(()=>[t(M,{label:"normal"},{default:a(()=>[...e[74]||(e[74]=[s("普通订单",-1)])]),_:1}),t(M,{label:"wechat_work"},{default:a(()=>[...e[75]||(e[75]=[s("企业微信对外收款",-1)])]),_:1}),t(M,{label:"fubei"},{default:a(()=>[...e[76]||(e[76]=[s("付呗",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(y).createType==="wechat_work"?(d(),v(ke,{key:0,type:"info",closable:!1,"show-icon":"",class:"mb-4"},{title:a(()=>[...e[77]||(e[77]=[s("企业微信对外收款",-1)])]),default:a(()=>[e[78]||(e[78]=s(" 创建后将生成订单号,请在企业微信发起收款时将该订单号填写为「商户订单号」,收款成功后系统将自动更新订单状态。 ",-1))]),_:1})):b("",!0),o(y).createType==="fubei"?(d(),v(ke,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4"},{title:a(()=>[...e[79]||(e[79]=[s("付呗",-1)])]),default:a(()=>[e[80]||(e[80]=s(" 通过付呗收款的支付单,创建后请按实际对账/审核流程在列表中处理。 ",-1))]),_:1})):b("",!0),o(y).createType==="fubei"?(d(),v(r,{key:2,label:"支付单审核"},{default:a(()=>[t(Kt,{modelValue:o(y).requirePaymentSlipAudit,"onUpdate:modelValue":e[25]||(e[25]=l=>o(y).requirePaymentSlipAudit=l),"active-text":"申请审核","inactive-text":"不申请"},null,8,["modelValue"]),e[81]||(e[81]=c("div",{class:"text-xs text-gray-500 mt-1"}," 开启后,新订单的支付状态为「待审核」;未开启则为「待支付」。 ",-1))]),_:1})):b("",!0),t(r,{label:"患者",prop:"patient_id"},{default:a(()=>[t(U,{modelValue:o(y).patient_id,"onUpdate:modelValue":e[26]||(e[26]=l=>o(y).patient_id=l),placeholder:"请选择患者",filterable:"",remote:"","remote-method":xt,loading:o(Pe)},{default:a(()=>[(d(!0),x(R,null,oe(o(he),l=>(d(),v(i,{key:l.id,label:`${l.patient_name} (${l.phone})`,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1}),t(r,{label:"订单类型",prop:"order_type"},{default:a(()=>[t(U,{modelValue:o(y).order_type,"onUpdate:modelValue":e[27]||(e[27]=l=>o(y).order_type=l),placeholder:"请选择"},{default:a(()=>[t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),t(r,{label:"订单金额",prop:"amount"},{default:a(()=>[t(Ne,{modelValue:o(y).amount,"onUpdate:modelValue":e[28]||(e[28]=l=>o(y).amount=l),min:0,step:.01,precision:2,placeholder:"请输入金额"},null,8,["modelValue"])]),_:1}),t(r,{label:"备注",prop:"remark"},{default:a(()=>[t(m,{modelValue:o(y).remark,"onUpdate:modelValue":e[29]||(e[29]=l=>o(y).remark=l),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(O,{modelValue:o(Y),"onUpdate:modelValue":e[35]||(e[35]=l=>T(Y)?Y.value=l:null),title:"同步企业微信对外收款",width:"420px"},{footer:a(()=>[t(_,{onClick:e[34]||(e[34]=l=>Y.value=!1)},{default:a(()=>[...e[83]||(e[83]=[s("取消",-1)])]),_:1}),t(_,{type:"info",loading:o(Ae),onClick:Tt},{default:a(()=>[...e[84]||(e[84]=[s(" 排查同步为0 ",-1)])]),_:1},8,["loading"]),t(_,{type:"primary",loading:o(fe),onClick:Dt},{default:a(()=>[...e[85]||(e[85]=[s(" 开始同步 ",-1)])]),_:1},8,["loading"])]),default:a(()=>[e[86]||(e[86]=c("p",{class:"text-gray-600 mb-4"},"拉取员工在企业微信内直接发起的对外收款记录,自动创建订单(未经过后台创建的收款)",-1)),t(h,{"label-width":"90px"},{default:a(()=>[t(r,{label:"时间范围"},{default:a(()=>[t(st,{modelValue:o(Q),"onUpdate:modelValue":e[32]||(e[32]=l=>T(Q)?Q.value=l:null),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:Ct},null,8,["modelValue"])]),_:1}),t(r,{label:"收款人userid"},{default:a(()=>[t(m,{modelValue:o(ye),"onUpdate:modelValue":e[33]||(e[33]=l=>T(ye)?ye.value=l:null),placeholder:"可选,如 GaoXingLiang,排查时若返回 try_payee_userids 可逐个尝试",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(O,{modelValue:o(j),"onUpdate:modelValue":e[39]||(e[39]=l=>T(j)?j.value=l:null),title:"编辑订单",width:"480px"},{footer:a(()=>[t(_,{onClick:e[38]||(e[38]=l=>j.value=!1)},{default:a(()=>[...e[87]||(e[87]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",loading:o(Le),onClick:Pt},{default:a(()=>[...e[88]||(e[88]=[s("保存",-1)])]),_:1},8,["loading"])]),default:a(()=>[o(L)?(d(),v(h,{key:0,ref_key:"editOrderFormRef",ref:Je,model:o(L),rules:Vt,"label-width":"100px"},{default:a(()=>[t(r,{label:"关联患者",prop:"patient_id"},{default:a(()=>[t(U,{modelValue:o(L).patient_id,"onUpdate:modelValue":e[36]||(e[36]=l=>o(L).patient_id=l),filterable:"",remote:"",placeholder:"搜索患者姓名/手机号,可留空表示待关联","remote-method":$t,loading:o(Oe),clearable:"",class:"w-full"},{default:a(()=>[(d(!0),x(R,null,oe(o(ee),l=>(d(),v(i,{key:l.id,label:`${l.patient_name||"-"} (${l.phone||"-"})`,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1}),t(r,{label:"订单类型",prop:"order_type"},{default:a(()=>[t(U,{modelValue:o(L).order_type,"onUpdate:modelValue":e[37]||(e[37]=l=>o(L).order_type=l),placeholder:"请选择",class:"w-full"},{default:a(()=>[t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])):b("",!0)]),_:1},8,["modelValue"]),t(O,{modelValue:o(K),"onUpdate:modelValue":e[43]||(e[43]=l=>T(K)?K.value=l:null),title:"拆分订单",width:"620px","destroy-on-close":"",onClosed:e[44]||(e[44]=l=>P.value=null)},{footer:a(()=>[t(_,{onClick:e[42]||(e[42]=l=>K.value=!1)},{default:a(()=>[...e[97]||(e[97]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",loading:o(Me),disabled:!_e.value,onClick:Lt},{default:a(()=>[...e[98]||(e[98]=[s(" 确定拆分 ",-1)])]),_:1},8,["loading","disabled"])]),default:a(()=>[o(P)?(d(),x(R,{key:0},[c("p",va,[e[89]||(e[89]=s(" 原订单号 ",-1)),c("span",ga,p(o(P).order_no),1),e[90]||(e[90]=s(",金额 ",-1)),c("span",ca,"¥"+p(o(P).amount),1),e[91]||(e[91]=s("。每笔子单可分别选择",-1)),e[92]||(e[92]=c("strong",null,"订单类型",-1)),e[93]||(e[93]=s(";子单继承患者、创建人及企微收款信息;",-1)),e[94]||(e[94]=c("strong",null,"已支付",-1)),e[95]||(e[95]=s("子单继承支付方式、支付时间与交易号;原单将软删除;若已关联业务订单,关联会同步到全部子单。 ",-1))]),t(h,{"label-width":"88px",onSubmit:e[41]||(e[41]=it(()=>{},["prevent"]))},{default:a(()=>[t(r,{label:"拆分管数"},{default:a(()=>[t(Ne,{modelValue:o(G),"onUpdate:modelValue":e[40]||(e[40]=l=>T(G)?G.value=l:null),min:2,max:20,step:1,"step-strictly":"",onChange:at},null,8,["modelValue"]),e[96]||(e[96]=c("span",{class:"text-xs text-gray-400 ml-2"},"2~20 笔",-1))]),_:1})]),_:1}),c("div",ba,[(d(!0),x(R,null,oe(o(J),(l,V)=>(d(),x("div",{key:V,class:"flex items-center gap-2 flex-wrap"},[c("span",ka,"第 "+p(V+1)+" 笔",1),t(U,{modelValue:o(te)[V],"onUpdate:modelValue":We=>o(te)[V]=We,placeholder:"订单类型",class:"w-[136px] shrink-0"},{default:a(()=>[t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue","onUpdate:modelValue"]),t(Ne,{modelValue:o(J)[V],"onUpdate:modelValue":We=>o(J)[V]=We,min:.01,step:.01,precision:2,class:"flex-1 min-w-[140px]","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])]))),128))]),t(ke,{type:_e.value?"success":"warning",closable:!1,"show-icon":""},{title:a(()=>[s(" 子单合计 ¥"+p(ot.value.toFixed(2))+", "+p(_e.value?"与原价一致,可提交":"须与原价完全一致方可拆分"),1)]),_:1},8,["type"])],64)):b("",!0)]),_:1},8,["modelValue"]),t(O,{modelValue:o(le),"onUpdate:modelValue":e[46]||(e[46]=l=>T(le)?le.value=l:null),title:"支付小程序码",width:"400px","close-on-click-modal":!1},{footer:a(()=>[t(_,{onClick:e[45]||(e[45]=l=>le.value=!1)},{default:a(()=>[...e[101]||(e[101]=[s("关闭",-1)])]),_:1}),o(ve)?b("",!0):(d(),v(_,{key:0,type:"primary",onClick:Nt},{default:a(()=>[...e[102]||(e[102]=[s(" 重新生成 ",-1)])]),_:1}))]),default:a(()=>[c("div",Va,[o(ve)?(d(),x("div",xa,[t(Gt,{class:"is-loading",size:40},{default:a(()=>[t(o(Yl))]),_:1}),e[99]||(e[99]=c("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):o(ge)?(d(),x("div",wa,[c("img",{src:o(ge),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,Ca),c("div",Sa,[c("div",null,"订单号:"+p(o(ce)),1),e[100]||(e[100]=c("div",{class:"mt-2"},"请使用微信扫描二维码完成支付",-1))])])):(d(),x("div",Ta," 生成失败,请重试 "))])]),_:1},8,["modelValue"])])}}}),Vo=Ql(Ea,[["__scopeId","data-v-f8b1e055"]]);export{Vo as default}; +import{D as Jt,B as Xt,C as Ht,P as Zt,Q as el,i as tl,J as ll,m as al,l as ol,M as nl,N as sl,T as rl,L as il,aa as dl,ab as ul,U as pl,X as ml,V as fl,a2 as yl,K as _l,G as vl,I as gl,g as cl,h as bl,d as kl}from"./element-plus-DFTWCWyi.js";import{_ as Vl}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as xl}from"./index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js";import{_ as wl}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as rt,s as it}from"./@vue/runtime-dom-DDAG46FW.js";import{u as Cl}from"./usePaging-VsbTxSU0.js";import{o as Sl,a as Tl,b as Dl,c as El,d as Ul,e as $l,s as dt,f as Pl,g as hl,h as Ll,i as Ol,j as Al,k as Ml,l as Rl,m as ut,n as ql,w as zl,p as Fl,q as Nl,r as Il,t as Wl}from"./order-BqE0MdhI.js";import{K as Bl,a as jl}from"./tcm-DzAQc_oE.js";import{l as Yl}from"./@element-plus/icons-vue-HOEUG8sr.js";import{i as g,_ as Ql}from"./index--WnM67ZH.js";import{f as pt,b as Kl,as as Gl,ak as d,I as x,a as t,aN as a,F as R,ap as oe,G as v,O as s,aP as S,J as c,H as b,A as Be}from"./@vue/runtime-core-C6bnekPw.js";import{n as u,y as o,a as T,r as je}from"./@vue/reactivity-DiY1c2vO.js";import{Q as p}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Jl={class:"order-list"},Xl={class:"flex items-center justify-between mb-4"},Hl={class:"flex items-center gap-4 text-sm"},Zl={class:"text-red-500 font-semibold text-lg"},ea={class:"text-gray-400"},ta={class:"mb-3 flex items-center gap-3"},la={key:0,class:"text-sm text-gray-500"},aa={key:0},oa={key:1,class:"text-amber-600"},na={class:"text-xs text-gray-400"},sa={key:0,class:"text-xs text-gray-400"},ra={class:"text-red-500 font-semibold"},ia={class:"flex justify-end mt-4"},da={class:"text-red-500 font-semibold"},ua={key:2,class:"text-xs text-gray-500 mb-2"},pa={key:4,class:"flex justify-end mt-3"},ma={key:0,class:"text-xs text-gray-500 mb-3"},fa={class:"text-sm text-gray-600 mb-3"},ya={class:"text-red-500 font-semibold"},_a={class:"text-red-500 font-semibold"},va={class:"text-sm text-gray-600 mb-3"},ga={class:"font-mono"},ca={class:"text-red-500 font-semibold"},ba={class:"space-y-2 mb-3 max-h-[320px] overflow-y-auto pr-1"},ka={class:"text-sm text-gray-500 w-14 shrink-0"},Va={class:"flex flex-col items-center justify-center py-4"},xa={key:0,class:"text-center"},wa={key:1,class:"text-center"},Ca=["src"],Sa={class:"mt-4 text-sm text-gray-600"},Ta={key:2,class:"text-center text-gray-500"},Da=pt({name:"orderList"}),Ea=pt({...Da,setup(Ua){const w=je({order_no:"",patient_keyword:"",assistant_id:void 0,order_type:"",status:"",patient_association:"",create_time_start:"",create_time_end:""}),ne=u([]),Ye=u(null),Qe=u([]),F=Be(()=>Qe.value.map(n=>n.id).filter(n=>n>0)),N=u(!1),Ve=u(!1),H=je({assistant_id:void 0}),se=u(""),re=u({amount:"0.00",count:0}),{pager:I,getLists:D,resetPage:Ke,resetParams:mt}=Cl({fetchFun:Sl,params:w}),ft=n=>{Qe.value=n||[]},yt=()=>{if(!F.value.length){g.msgWarning("请先勾选要指派的支付单");return}H.assistant_id=void 0,N.value=!0},_t=async()=>{var n;if(H.assistant_id==null){g.msgWarning("请选择医助");return}Ve.value=!0;try{await Dl({order_ids:[...F.value],assistant_id:H.assistant_id}),g.msgSuccess("指派成功"),N.value=!1,(n=Ye.value)==null||n.clearSelection(),D(),W()}catch(e){e!=null&&e.msg&&g.msgError(e.msg)}finally{Ve.value=!1}},xe=()=>{Ke()},vt=n=>{w.patient_association=n||"",Ke()},W=async()=>{try{const n=await El();re.value=(n==null?void 0:n.data)||n||{amount:"0.00",count:0}}catch{re.value={amount:"0.00",count:0}}},gt=()=>{se.value="",mt()},ie=u(!1),k=u(null),we=u(0),Ce=u(!1),Se=u([]),Te=u(0),B=u(1),de=u(10),ue=u(!1),pe=u(!1),De=u([]),A=u(null),Z=u(""),Ee=async()=>{if(we.value){Ce.value=!0;try{const n=await Ul({order_id:we.value,page_no:B.value,page_size:de.value});Se.value=(n==null?void 0:n.lists)||[],Te.value=(n==null?void 0:n.count)??0}catch{Se.value=[],Te.value=0}finally{Ce.value=!1}}},ct=()=>{B.value=1,Ee()},bt=()=>{A.value=null,Ge()},Ge=async()=>{pe.value=!0;try{const n={};A.value&&A.value.length===2&&(n.start_time=A.value[0],n.end_time=A.value[1]);const e=await $l(Object.keys(n).length?n:void 0);De.value=(e==null?void 0:e.list)||[],e!=null&&e.start_time&&(e!=null&&e.end_time)?Z.value=`${e.start_time} ~ ${e.end_time}`:Z.value=""}catch{De.value=[],Z.value=""}finally{pe.value=!1}},q=u(!1),me=u(!1),f=u({order_id:0,order_no:"",amount:0,fubeiPendingAudit:!1,payment_method:"alipay",payType:"supplement",supplement_order_no:""}),z=u(!1),Ue=u(),$e=u(!1),Pe=u(!1),he=u([]),y=je({createType:"normal",requirePaymentSlipAudit:!1,patient_id:"",order_type:"",amount:0,remark:""}),kt={patient_id:[{required:!0,message:"请选择患者",trigger:"change"}],order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},j=u(!1),Je=u(),Le=u(!1),Oe=u(!1),ee=u([]),L=u(null),Vt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}]},xt=async n=>{if(!n){he.value=[];return}try{Pe.value=!0;const e=await dt({keyword:n,page_no:1,page_size:10});he.value=(e==null?void 0:e.lists)||[]}catch(e){console.error("搜索患者失败:",e)}finally{Pe.value=!1}},Xe=()=>{var n;y.createType="normal",y.requirePaymentSlipAudit=!1,y.patient_id="",y.order_type="",y.amount=0,y.remark="",(n=Ue.value)==null||n.clearValidate()},wt=()=>{Xe(),z.value=!0},Y=u(!1),fe=u(!1),Ae=u(!1),ye=u(""),Q=u([new Date(Date.now()-7*864e5).toISOString().slice(0,10),new Date().toISOString().slice(0,10)]),Ct=[{text:"最近7天",value:()=>{const n=new Date,e=new Date;return e.setTime(e.getTime()-7*864e5),[e,n]}},{text:"最近30天",value:()=>{const n=new Date,e=new Date;return e.setTime(e.getTime()-30*864e5),[e,n]}},{text:"今天",value:()=>{const n=new Date;return[n,n]}}],St=()=>{Q.value=[new Date(Date.now()-7*864e5).toISOString().slice(0,10),new Date().toISOString().slice(0,10)],Y.value=!0},Tt=async()=>{var e;const n=Q.value;if(!n||n.length!==2){g.msgError("请先选择时间范围");return}try{Ae.value=!0;const m=await Pl({begin_time:n[0],end_time:n[1],payee_userid:ye.value||void 0}),r=(m==null?void 0:m.data)||m;let i=`配置:${r.config_ok?"✓":"✗"} | token:${r.access_token} | errcode:${r.api_errcode} | errmsg:${r.api_errmsg||"-"} | 账单数:${r.bill_count}`;(e=r.try_payee_userids)!=null&&e.length&&(i+=`。可尝试收款人: ${r.try_payee_userids.join(", ")}`),r.api_errcode!==0&&r.api_errcode!==-999&&(i+="。提示:需使用「对外收款」应用的Secret(管理后台-应用管理-对外收款-API)"),g.msgSuccess(i),console.log("企业微信同步调试:",r)}catch(m){g.msgError((m==null?void 0:m.message)||"排查失败")}finally{Ae.value=!1}},Dt=async()=>{var e;const n=Q.value;if(!n||n.length!==2){g.msgError("请选择时间范围");return}try{fe.value=!0;const m=await hl({begin_time:n[0],end_time:n[1]}),r=(m==null?void 0:m.data)||m;Y.value=!1,D();const i=`同步完成:新增 ${r.created||0} 笔,更新 ${r.updated||0} 笔,跳过 ${r.skipped||0} 笔`+((e=r.errors)!=null&&e.length?`;错误:${r.errors.join(";")}`:"");g.msgSuccess(i),W()}catch(m){g.msgError((m==null?void 0:m.message)||"同步失败")}finally{fe.value=!1}},Et=async()=>{var n,e;try{if(await((n=Ue.value)==null?void 0:n.validate()),$e.value=!0,y.createType==="wechat_work"){const m={patient_id:y.patient_id,order_type:y.order_type,amount:y.amount,remark:y.remark},r=await Ll(m),i=(r==null?void 0:r.order_no)??((e=r==null?void 0:r.data)==null?void 0:e.order_no);z.value=!1,D(),g.msgSuccess(i?`订单创建成功,请在企业微信收款时使用订单号:${i}`:"订单创建成功")}else{const m={patient_id:y.patient_id,order_type:y.order_type,amount:y.amount,remark:y.remark};y.createType==="fubei"?(m.payment_channel="fubei",m.require_payment_slip_audit=y.requirePaymentSlipAudit?1:0):(m.payment_channel="normal",m.require_payment_slip_audit=0),await Ol(m);const r=y.createType==="fubei"&&y.requirePaymentSlipAudit?"订单已创建,支付状态为「待审核」":"订单创建成功";g.msgSuccess(r),z.value=!1,D()}}catch(m){console.error("创建订单失败:",m)}finally{$e.value=!1}},He=n=>({1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"})[n]||"未知",Ze=n=>({1:"success",2:"info",3:"warning"})[n]||"info",et=n=>({1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"})[n]||"未知",tt=n=>({1:"warning",2:"success",3:"info",4:"danger",5:"warning"})[n]||"info",lt=n=>n?{alipay:"支付宝",wechat:"微信",wechat_work:"企业微信",fubei:"付呗",manual:"手动确认"}[n]||"未知":"-",Ut=n=>{L.value={id:n.id,patient_id:n.patient_id||null,order_type:n.order_type},ee.value=n.patient?[n.patient]:[],j.value=!0},$t=async n=>{if(!n){ee.value=[];return}try{Oe.value=!0;const e=await dt({keyword:n,page_no:1,page_size:10});ee.value=(e==null?void 0:e.lists)||[]}catch{ee.value=[]}finally{Oe.value=!1}},Pt=async()=>{var n;if(L.value)try{await((n=Je.value)==null?void 0:n.validate()),Le.value=!0,await Al({id:L.value.id,patient_id:L.value.patient_id??0,order_type:L.value.order_type}),g.msgSuccess("保存成功"),j.value=!1,D(),W()}catch(e){e!=null&&e.message&&g.msgError(e.message)}finally{Le.value=!1}},K=u(!1),P=u(null),G=u(2),J=u([]),te=u([]),Me=u(!1),at=()=>{if(!P.value)return;const n=Number(P.value.amount),e=Math.max(2,Math.min(20,Math.floor(Number(G.value)||2)));G.value=e;const m=Math.round(n*100),r=Math.floor(m/e),i=m%e,U=[];for(let X=0;Xh{P.value=n,G.value=2,at(),K.value=!0},ot=Be(()=>J.value.reduce((n,e)=>n+Number(e||0),0)),_e=Be(()=>{if(!P.value)return!1;const n=Number(P.value.amount);return Math.abs(ot.value-n)<1e-4}),Lt=async()=>{if(!(!P.value||!_e.value)){Me.value=!0;try{await Ml({id:P.value.id,amounts:J.value.map(n=>Number(n)),order_types:te.value.map(n=>Number(n))}),g.msgSuccess("拆分成功"),K.value=!1,D(),W()}catch(n){n!=null&&n.msg&&g.msgError(n.msg)}finally{Me.value=!1}}},Ot=async n=>{try{const e=await Rl({id:n.id});k.value=e,we.value=n.id,B.value=1,ie.value=!0,Ee()}catch(e){console.error("获取详情失败:",e)}},At=n=>{const e=n.status===5&&n.payment_method==="fubei";f.value={order_id:n.id,order_no:n.order_no,amount:n.amount,fubeiPendingAudit:e,payment_method:e?"manual":"alipay",payType:"supplement",supplement_order_no:""},q.value=!0},Mt=async()=>{try{if(f.value.fubeiPendingAudit){me.value=!0,await ut({id:f.value.order_id,payment_method:f.value.payment_method}),g.msgSuccess("已更新为已支付"),q.value=!1,D(),W();return}if(f.value.payType==="supplement"&&!f.value.supplement_order_no){g.msgWarning("请输入支付订单号");return}me.value=!0;let n={};if(f.value.payType==="normal"?n={id:f.value.order_id,order_no:f.value.order_no,amount:f.value.amount,payment_method:f.value.payment_method}:n={order_no:f.value.supplement_order_no,payment_method:f.value.payment_method,is_supplement:1},f.value.payment_method==="wechat_work")await ut(n),g.msgSuccess("补单成功");else{let e;f.value.payment_method==="alipay"?e=await ql(n):f.value.payment_method==="wechat"&&(e=await zl(n)),e&&e.pay_url&&(f.value.payment_method==="alipay"?window.location.href=e.pay_url:f.value.payment_method==="wechat"&&g.msgSuccess("请扫描二维码进行支付"))}q.value=!1,setTimeout(()=>{D()},2e3)}catch(n){console.error("支付失败:",n),g.msgError("支付失败,请重试")}finally{me.value=!1}},Rt=async n=>{try{await g.confirm("确定要取消该订单吗?"),await Fl({id:n.id}),g.msgSuccess("取消成功"),D()}catch{}},qt=async n=>{try{await g.confirm("确定要退款该订单吗?"),await Nl({id:n.id}),g.msgSuccess("退款成功"),D()}catch{}},zt=async n=>{try{await g.confirm("确定要删除该订单吗?此操作不可恢复"),await Il({id:n.id}),g.msgSuccess("删除成功"),D()}catch{}},Ft=async n=>{const e=n.is_exempt===1?0:1,m=e===1?"设为豁免":"取消豁免";try{await g.confirm(`确定要${m}该支付单吗?豁免后关联此单的业务订单将跳过定金门槛校验。`),await Wl({id:n.id,is_exempt:e}),g.msgSuccess(`${m}成功`),D()}catch{}},le=u(!1),ve=u(!1),ge=u(""),ce=u(""),nt=async n=>{if(!n.order_no){g.msgWarning("订单号不存在");return}ce.value=n.order_no,le.value=!0,ve.value=!0,ge.value="";try{const e=await Bl({order_no:n.order_no});e!=null&&e.qrcode_url?ge.value=e.qrcode_url:g.msgError("二维码生成失败")}catch(e){g.msgError((e==null?void 0:e.msg)||"生成二维码失败")}finally{ve.value=!1}},Nt=()=>{ce.value&&nt({order_no:ce.value})},It=async()=>{try{const n=await jl();ne.value=Array.isArray(n)?n:[]}catch{ne.value=[]}};return Kl(()=>{It(),D(),W()}),(n,e)=>{const m=Ht,r=Xt,i=el,U=Zt,be=wl,_=tl,X=xl,h=Jt,Re=ll,qe=ol,Wt=al,C=sl,ae=rl,ze=nl,Bt=Vl,$=ul,jt=dl,Yt=pl,Qt=ml,O=fl,st=yl,ke=_l,M=gl,Fe=vl,Kt=cl,Ne=bl,Gt=kl,E=Gl("perms"),Ie=il;return d(),x("div",Jl,[t(Re,{class:"!border-none",shadow:"never"},{default:a(()=>[t(h,{class:"ls-form",model:o(w),inline:""},{default:a(()=>[t(r,{class:"w-[280px]",label:"订单号"},{default:a(()=>[t(m,{modelValue:o(w).order_no,"onUpdate:modelValue":e[0]||(e[0]=l=>o(w).order_no=l),placeholder:"请输入订单号",clearable:"",onKeyup:rt(xe,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"患者信息"},{default:a(()=>[t(m,{modelValue:o(w).patient_keyword,"onUpdate:modelValue":e[1]||(e[1]=l=>o(w).patient_keyword=l),placeholder:"患者姓名/手机号",clearable:"",onKeyup:rt(xe,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"医助"},{default:a(()=>[t(U,{modelValue:o(w).assistant_id,"onUpdate:modelValue":e[2]||(e[2]=l=>o(w).assistant_id=l),placeholder:"全部医助",clearable:"",filterable:"",class:"w-full"},{default:a(()=>[(d(!0),x(R,null,oe(o(ne),l=>(d(),v(i,{key:l.id,label:l.name,value:Number(l.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"订单类型"},{default:a(()=>[t(U,{modelValue:o(w).order_type,"onUpdate:modelValue":e[3]||(e[3]=l=>o(w).order_type=l),class:"w-full",placeholder:"全部"},{default:a(()=>[t(i,{label:"全部",value:""}),t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"订单状态"},{default:a(()=>[t(U,{modelValue:o(w).status,"onUpdate:modelValue":e[4]||(e[4]=l=>o(w).status=l),class:"w-full",placeholder:"全部"},{default:a(()=>[t(i,{label:"全部",value:""}),t(i,{label:"待支付",value:1}),t(i,{label:"已支付",value:2}),t(i,{label:"已取消",value:3}),t(i,{label:"已退款",value:4}),t(i,{label:"待审核",value:5})]),_:1},8,["modelValue"])]),_:1}),t(r,{label:"创建时间"},{default:a(()=>[t(be,{startTime:o(w).create_time_start,"onUpdate:startTime":e[5]||(e[5]=l=>o(w).create_time_start=l),endTime:o(w).create_time_end,"onUpdate:endTime":e[6]||(e[6]=l=>o(w).create_time_end=l)},null,8,["startTime","endTime"])]),_:1}),t(r,null,{default:a(()=>[t(_,{type:"primary",onClick:xe},{default:a(()=>[...e[47]||(e[47]=[s("查询",-1)])]),_:1}),t(_,{onClick:gt},{default:a(()=>[...e[48]||(e[48]=[s("重置",-1)])]),_:1}),S((d(),v(_,{onClick:e[7]||(e[7]=l=>ue.value=!0)},{default:a(()=>[...e[49]||(e[49]=[s(" 操作统计 ",-1)])]),_:1})),[[E,["order.order/lists"]]]),S(t(X,{class:"ml-2.5","fetch-fun":o(Tl),params:o(w),"page-size":o(I).size},null,8,["fetch-fun","params","page-size"]),[[E,["order.order/export"]]]),S((d(),v(_,{type:"success",class:"ml-2.5",onClick:wt},{default:a(()=>[...e[50]||(e[50]=[s(" + 创建支付单 ",-1)])]),_:1})),[[E,["order.order/create"]]]),S((d(),v(_,{type:"warning",class:"ml-2.5",loading:o(fe),onClick:St},{default:a(()=>[...e[51]||(e[51]=[s(" 同步企业微信收款 ",-1)])]),_:1},8,["loading"])),[[E,["order.order/alltongbu"]]])]),_:1})]),_:1},8,["model"])]),_:1}),t(Re,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[c("div",Xl,[t(Wt,{modelValue:o(se),"onUpdate:modelValue":e[8]||(e[8]=l=>T(se)?se.value=l:null),onTabChange:vt},{default:a(()=>[t(qe,{label:"全部",name:""}),t(qe,{label:"待关联",name:"pending"}),t(qe,{label:"已关联",name:"associated"})]),_:1},8,["modelValue"]),c("div",Hl,[e[52]||(e[52]=c("span",{class:"text-gray-500"},"今日收益:",-1)),c("span",Zl,"¥"+p(o(re).amount),1),c("span",ea,"("+p(o(re).count)+" 笔)",1)])])]),_:1}),t(Re,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[S((d(),x("div",ta,[t(_,{type:"primary",disabled:!F.value.length,onClick:yt},{default:a(()=>[...e[53]||(e[53]=[s(" 将创建人指给医助 ",-1)])]),_:1},8,["disabled"]),F.value.length?(d(),x("span",la,"已选 "+p(F.value.length)+" 条",1)):b("",!0)])),[[E,["order.order/zhipai"]]]),S((d(),v(ze,{ref_key:"orderTableRef",ref:Ye,data:o(I).lists,"row-key":"id",size:"large",onSelectionChange:ft},{default:a(()=>[t(C,{type:"selection",width:"48"}),t(C,{label:"订单号",prop:"order_no","min-width":"150"}),t(C,{label:"患者信息","min-width":"150"},{default:a(({row:l})=>{var V;return[l.patient?(d(),x("div",aa,p(l.patient.patient_name),1)):(d(),x("div",oa,"待关联")),c("div",na,p(((V=l.patient)==null?void 0:V.phone)||"-"),1)]}),_:1}),t(C,{label:"创建人","min-width":"120"},{default:a(({row:l})=>{var V;return[c("div",null,p(((V=l.creator)==null?void 0:V.name)||"-"),1),l.payee_userid?(d(),x("div",sa,"收款: "+p(l.payee_userid),1)):b("",!0)]}),_:1}),t(C,{label:"订单类型",width:"100"},{default:a(({row:l})=>[t(ae,{type:Ze(l.order_type)},{default:a(()=>[s(p(He(l.order_type)),1)]),_:2},1032,["type"])]),_:1}),t(C,{label:"金额",width:"100"},{default:a(({row:l})=>[c("span",ra,"¥"+p(l.amount),1)]),_:1}),t(C,{label:"支付方式",width:"100"},{default:a(({row:l})=>[s(p(lt(l.payment_method)),1)]),_:1}),t(C,{label:"订单状态",width:"120"},{default:a(({row:l})=>[t(ae,{type:tt(l.status)},{default:a(()=>[s(p(et(l.status)),1)]),_:2},1032,["type"]),l.is_exempt===1?(d(),v(ae,{key:0,type:"warning",size:"small",class:"ml-1"},{default:a(()=>[...e[54]||(e[54]=[s("豁免",-1)])]),_:1})):b("",!0)]),_:1}),t(C,{label:"支付时间","min-width":"160"},{default:a(({row:l})=>[s(p(l.payment_time||"-"),1)]),_:1}),t(C,{label:"创建时间","min-width":"160"},{default:a(({row:l})=>[s(p(l.create_time),1)]),_:1}),t(C,{label:"操作",width:"340",fixed:"right"},{default:a(({row:l})=>[S((d(),v(_,{type:"primary",link:"",onClick:V=>Ot(l)},{default:a(()=>[...e[55]||(e[55]=[s(" 详情 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/detail"]]]),S((d(),v(_,{type:"primary",link:"",onClick:V=>Ut(l)},{default:a(()=>[...e[56]||(e[56]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/edit"]]]),l.status===1||l.status===2||l.status===5&&l.payment_method==="fubei"?S((d(),v(_,{key:0,type:"primary",link:"",onClick:V=>ht(l)},{default:a(()=>[...e[57]||(e[57]=[s(" 拆分 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/split"]]]):b("",!0),S((d(),v(_,{type:"primary",link:"",onClick:V=>nt(l)},{default:a(()=>[...e[58]||(e[58]=[s(" 小程序码 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/wxQrcode"]]]),l.status===1||l.status===5&&l.payment_method==="fubei"?S((d(),v(_,{key:1,type:"success",link:"",onClick:V=>At(l)},{default:a(()=>[...e[59]||(e[59]=[s(" 支付 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/pay"]]]):b("",!0),l.status===2?S((d(),v(_,{key:2,type:"warning",link:"",onClick:V=>qt(l)},{default:a(()=>[...e[60]||(e[60]=[s(" 退款 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/refund"]]]):b("",!0),l.status===1||l.status===5&&l.payment_method==="fubei"?S((d(),v(_,{key:3,type:"danger",link:"",onClick:V=>Rt(l)},{default:a(()=>[...e[61]||(e[61]=[s(" 取消 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/cancel"]]]):b("",!0),S((d(),v(_,{type:"danger",link:"",onClick:V=>zt(l)},{default:a(()=>[...e[62]||(e[62]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[E,["order.order/delete"]]]),S((d(),v(_,{type:l.is_exempt===1?"warning":"default",link:"",onClick:V=>Ft(l)},{default:a(()=>[s(p(l.is_exempt===1?"取消豁免":"设为豁免"),1)]),_:2},1032,["type","onClick"])),[[E,["order.order/setExempt"]]])]),_:1})]),_:1},8,["data"])),[[Ie,o(I).loading]]),c("div",ia,[t(Bt,{modelValue:o(I),"onUpdate:modelValue":e[9]||(e[9]=l=>T(I)?I.value=l:null),onChange:o(D)},null,8,["modelValue","onChange"])])]),_:1}),t(O,{modelValue:o(ie),"onUpdate:modelValue":e[12]||(e[12]=l=>T(ie)?ie.value=l:null),title:"订单详情",width:"820px"},{default:a(()=>[o(k)?(d(),v(jt,{key:0,column:2,border:""},{default:a(()=>[t($,{label:"订单号"},{default:a(()=>[s(p(o(k).order_no),1)]),_:1}),t($,{label:"订单状态"},{default:a(()=>[t(ae,{type:tt(o(k).status)},{default:a(()=>[s(p(et(o(k).status)),1)]),_:1},8,["type"])]),_:1}),t($,{label:"患者姓名"},{default:a(()=>{var l;return[s(p(((l=o(k).patient)==null?void 0:l.patient_name)||"待关联"),1)]}),_:1}),t($,{label:"患者电话"},{default:a(()=>{var l;return[s(p(((l=o(k).patient)==null?void 0:l.phone)||"-"),1)]}),_:1}),t($,{label:"创建人"},{default:a(()=>{var l;return[s(p(((l=o(k).creator)==null?void 0:l.name)||"-"),1)]}),_:1}),o(k).payee_userid?(d(),v($,{key:0,label:"收款人userid"},{default:a(()=>[s(p(o(k).payee_userid),1)]),_:1})):b("",!0),o(k).payer_external_userid?(d(),v($,{key:1,label:"付款人external_userid"},{default:a(()=>[s(p(o(k).payer_external_userid),1)]),_:1})):b("",!0),t($,{label:"订单类型"},{default:a(()=>[t(ae,{type:Ze(o(k).order_type)},{default:a(()=>[s(p(He(o(k).order_type)),1)]),_:1},8,["type"])]),_:1}),t($,{label:"订单金额"},{default:a(()=>[c("span",da,"¥"+p(o(k).amount),1)]),_:1}),t($,{label:"支付方式"},{default:a(()=>[s(p(lt(o(k).payment_method)),1)]),_:1}),t($,{label:"支付时间"},{default:a(()=>[s(p(o(k).payment_time||"-"),1)]),_:1}),t($,{label:"创建时间"},{default:a(()=>[s(p(o(k).create_time),1)]),_:1}),t($,{label:"备注",span:2},{default:a(()=>[s(p(o(k).remark||"无"),1)]),_:1})]),_:1})):b("",!0),o(k)?(d(),v(Yt,{key:1,"content-position":"left"},{default:a(()=>[...e[63]||(e[63]=[s("操作记录",-1)])]),_:1})):b("",!0),o(k)?(d(),x("p",ua,"谁在什么时间对本单做了哪些操作(数据来自服务器记录)。")):b("",!0),o(k)?S((d(),v(ze,{key:3,data:o(Se),size:"small","max-height":"320"},{default:a(()=>[t(C,{label:"操作",prop:"action_label","min-width":"120","show-overflow-tooltip":""}),t(C,{label:"操作人",prop:"admin_name","min-width":"100"}),t(C,{label:"操作时间",prop:"create_time_text","min-width":"160"}),t(C,{label:"说明",prop:"summary","min-width":"140","show-overflow-tooltip":""})]),_:1},8,["data"])),[[Ie,o(Ce)]]):b("",!0),o(k)?(d(),x("div",pa,[t(Qt,{"current-page":o(B),"onUpdate:currentPage":e[10]||(e[10]=l=>T(B)?B.value=l:null),"page-size":o(de),"onUpdate:pageSize":e[11]||(e[11]=l=>T(de)?de.value=l:null),total:o(Te),"page-sizes":[10,20,50],layout:"total, sizes, prev, pager, next",small:"",onSizeChange:ct,onCurrentChange:Ee},null,8,["current-page","page-size","total"])])):b("",!0)]),_:1},8,["modelValue"]),t(O,{modelValue:o(ue),"onUpdate:modelValue":e[15]||(e[15]=l=>T(ue)?ue.value=l:null),title:"支付单操作统计",width:"520px",onOpened:bt},{default:a(()=>[o(Z)?(d(),x("p",ma,"统计范围:"+p(o(Z)),1)):b("",!0),t(h,{class:"mb-3",inline:!0,onSubmit:e[14]||(e[14]=it(()=>{},["prevent"]))},{default:a(()=>[t(r,{label:"时间范围"},{default:a(()=>[t(st,{modelValue:o(A),"onUpdate:modelValue":e[13]||(e[13]=l=>T(A)?A.value=l:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始","end-placeholder":"结束",class:"!w-[260px]"},null,8,["modelValue"])]),_:1}),t(r,null,{default:a(()=>[t(_,{type:"primary",loading:o(pe),onClick:Ge},{default:a(()=>[...e[64]||(e[64]=[s("查询",-1)])]),_:1},8,["loading"])]),_:1})]),_:1}),S((d(),v(ze,{data:o(De),size:"small","max-height":"400"},{default:a(()=>[t(C,{label:"操作人",prop:"admin_name","min-width":"120","show-overflow-tooltip":""}),t(C,{label:"操作次数",prop:"cnt",width:"100",align:"right"})]),_:1},8,["data"])),[[Ie,o(pe)]])]),_:1},8,["modelValue"]),t(O,{modelValue:o(N),"onUpdate:modelValue":e[18]||(e[18]=l=>T(N)?N.value=l:null),title:"变更创建人(医助)",width:"440px","destroy-on-close":""},{footer:a(()=>[t(_,{onClick:e[17]||(e[17]=l=>N.value=!1)},{default:a(()=>[...e[65]||(e[65]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",loading:o(Ve),onClick:_t},{default:a(()=>[...e[66]||(e[66]=[s("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[c("p",fa," 将 "+p(F.value.length)+" 条支付单的「创建人」改为所选医助,并写入各单操作日志。 ",1),t(U,{modelValue:o(H).assistant_id,"onUpdate:modelValue":e[16]||(e[16]=l=>o(H).assistant_id=l),filterable:"",placeholder:"选择医助",class:"w-full"},{default:a(()=>[(d(!0),x(R,null,oe(o(ne),l=>(d(),v(i,{key:l.id,label:l.dept_names?`${l.name}(${l.dept_names})`:l.name,value:Number(l.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),t(O,{modelValue:o(q),"onUpdate:modelValue":e[23]||(e[23]=l=>T(q)?q.value=l:null),title:"订单支付",width:"500px"},{footer:a(()=>[t(_,{onClick:e[22]||(e[22]=l=>q.value=!1)},{default:a(()=>[...e[72]||(e[72]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",onClick:Mt,loading:o(me)},{default:a(()=>[...e[73]||(e[73]=[s("确认支付",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(h,{model:o(f),"label-width":"100px"},{default:a(()=>[o(f).fubeiPendingAudit?(d(),v(ke,{key:0,type:"warning",closable:!1,class:"mb-3",title:"该单为付呗·待审核,请选择实际到账方式后确认「已支付」"})):b("",!0),o(f).fubeiPendingAudit?b("",!0):(d(),v(r,{key:1,label:"支付类型",required:""},{default:a(()=>[t(Fe,{modelValue:o(f).payType,"onUpdate:modelValue":e[19]||(e[19]=l=>o(f).payType=l)},{default:a(()=>[t(M,{label:"supplement"},{default:a(()=>[...e[67]||(e[67]=[s("补单支付",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})),o(f).payType==="normal"?(d(),x(R,{key:2},[t(r,{label:"订单号"},{default:a(()=>[c("span",null,p(o(f).order_no),1)]),_:1}),t(r,{label:"订单金额"},{default:a(()=>[c("span",ya,"¥"+p(o(f).amount),1)]),_:1})],64)):b("",!0),!o(f).fubeiPendingAudit&&o(f).payType==="supplement"?(d(),v(r,{key:3,label:"支付订单号",required:""},{default:a(()=>[t(m,{modelValue:o(f).supplement_order_no,"onUpdate:modelValue":e[20]||(e[20]=l=>o(f).supplement_order_no=l),placeholder:"请输入支付订单号"},null,8,["modelValue"])]),_:1})):b("",!0),o(f).fubeiPendingAudit?(d(),x(R,{key:4},[t(r,{label:"订单号"},{default:a(()=>[c("span",null,p(o(f).order_no),1)]),_:1}),t(r,{label:"金额"},{default:a(()=>[c("span",_a,"¥"+p(o(f).amount),1)]),_:1})],64)):b("",!0),t(r,{label:"支付方式",required:""},{default:a(()=>[t(Fe,{modelValue:o(f).payment_method,"onUpdate:modelValue":e[21]||(e[21]=l=>o(f).payment_method=l)},{default:a(()=>[o(f).fubeiPendingAudit?(d(),v(M,{key:0,label:"manual"},{default:a(()=>[...e[68]||(e[68]=[s("手动确认到账",-1)])]),_:1})):b("",!0),t(M,{label:"alipay"},{default:a(()=>[...e[69]||(e[69]=[s("支付宝",-1)])]),_:1}),t(M,{label:"wechat"},{default:a(()=>[...e[70]||(e[70]=[s("微信",-1)])]),_:1}),t(M,{label:"wechat_work"},{default:a(()=>[...e[71]||(e[71]=[s("企业微信",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(O,{modelValue:o(z),"onUpdate:modelValue":e[31]||(e[31]=l=>T(z)?z.value=l:null),title:"创建订单",width:"600px",onClose:Xe},{footer:a(()=>[t(_,{onClick:e[30]||(e[30]=l=>z.value=!1)},{default:a(()=>[...e[82]||(e[82]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",onClick:Et,loading:o($e)},{default:a(()=>[s(p(o(y).createType==="wechat_work"?"创建并获取收款订单号":"创建订单"),1)]),_:1},8,["loading"])]),default:a(()=>[t(h,{ref_key:"createFormRef",ref:Ue,model:o(y),rules:kt,"label-width":"100px"},{default:a(()=>[t(r,{label:"创建方式"},{default:a(()=>[t(Fe,{modelValue:o(y).createType,"onUpdate:modelValue":e[24]||(e[24]=l=>o(y).createType=l)},{default:a(()=>[t(M,{label:"normal"},{default:a(()=>[...e[74]||(e[74]=[s("普通订单",-1)])]),_:1}),t(M,{label:"wechat_work"},{default:a(()=>[...e[75]||(e[75]=[s("企业微信对外收款",-1)])]),_:1}),t(M,{label:"fubei"},{default:a(()=>[...e[76]||(e[76]=[s("付呗",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(y).createType==="wechat_work"?(d(),v(ke,{key:0,type:"info",closable:!1,"show-icon":"",class:"mb-4"},{title:a(()=>[...e[77]||(e[77]=[s("企业微信对外收款",-1)])]),default:a(()=>[e[78]||(e[78]=s(" 创建后将生成订单号,请在企业微信发起收款时将该订单号填写为「商户订单号」,收款成功后系统将自动更新订单状态。 ",-1))]),_:1})):b("",!0),o(y).createType==="fubei"?(d(),v(ke,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4"},{title:a(()=>[...e[79]||(e[79]=[s("付呗",-1)])]),default:a(()=>[e[80]||(e[80]=s(" 通过付呗收款的支付单,创建后请按实际对账/审核流程在列表中处理。 ",-1))]),_:1})):b("",!0),o(y).createType==="fubei"?(d(),v(r,{key:2,label:"支付单审核"},{default:a(()=>[t(Kt,{modelValue:o(y).requirePaymentSlipAudit,"onUpdate:modelValue":e[25]||(e[25]=l=>o(y).requirePaymentSlipAudit=l),"active-text":"申请审核","inactive-text":"不申请"},null,8,["modelValue"]),e[81]||(e[81]=c("div",{class:"text-xs text-gray-500 mt-1"}," 开启后,新订单的支付状态为「待审核」;未开启则为「待支付」。 ",-1))]),_:1})):b("",!0),t(r,{label:"患者",prop:"patient_id"},{default:a(()=>[t(U,{modelValue:o(y).patient_id,"onUpdate:modelValue":e[26]||(e[26]=l=>o(y).patient_id=l),placeholder:"请选择患者",filterable:"",remote:"","remote-method":xt,loading:o(Pe)},{default:a(()=>[(d(!0),x(R,null,oe(o(he),l=>(d(),v(i,{key:l.id,label:`${l.patient_name} (${l.phone})`,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1}),t(r,{label:"订单类型",prop:"order_type"},{default:a(()=>[t(U,{modelValue:o(y).order_type,"onUpdate:modelValue":e[27]||(e[27]=l=>o(y).order_type=l),placeholder:"请选择"},{default:a(()=>[t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),t(r,{label:"订单金额",prop:"amount"},{default:a(()=>[t(Ne,{modelValue:o(y).amount,"onUpdate:modelValue":e[28]||(e[28]=l=>o(y).amount=l),min:0,step:.01,precision:2,placeholder:"请输入金额"},null,8,["modelValue"])]),_:1}),t(r,{label:"备注",prop:"remark"},{default:a(()=>[t(m,{modelValue:o(y).remark,"onUpdate:modelValue":e[29]||(e[29]=l=>o(y).remark=l),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(O,{modelValue:o(Y),"onUpdate:modelValue":e[35]||(e[35]=l=>T(Y)?Y.value=l:null),title:"同步企业微信对外收款",width:"420px"},{footer:a(()=>[t(_,{onClick:e[34]||(e[34]=l=>Y.value=!1)},{default:a(()=>[...e[83]||(e[83]=[s("取消",-1)])]),_:1}),t(_,{type:"info",loading:o(Ae),onClick:Tt},{default:a(()=>[...e[84]||(e[84]=[s(" 排查同步为0 ",-1)])]),_:1},8,["loading"]),t(_,{type:"primary",loading:o(fe),onClick:Dt},{default:a(()=>[...e[85]||(e[85]=[s(" 开始同步 ",-1)])]),_:1},8,["loading"])]),default:a(()=>[e[86]||(e[86]=c("p",{class:"text-gray-600 mb-4"},"拉取员工在企业微信内直接发起的对外收款记录,自动创建订单(未经过后台创建的收款)",-1)),t(h,{"label-width":"90px"},{default:a(()=>[t(r,{label:"时间范围"},{default:a(()=>[t(st,{modelValue:o(Q),"onUpdate:modelValue":e[32]||(e[32]=l=>T(Q)?Q.value=l:null),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:Ct},null,8,["modelValue"])]),_:1}),t(r,{label:"收款人userid"},{default:a(()=>[t(m,{modelValue:o(ye),"onUpdate:modelValue":e[33]||(e[33]=l=>T(ye)?ye.value=l:null),placeholder:"可选,如 GaoXingLiang,排查时若返回 try_payee_userids 可逐个尝试",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(O,{modelValue:o(j),"onUpdate:modelValue":e[39]||(e[39]=l=>T(j)?j.value=l:null),title:"编辑订单",width:"480px"},{footer:a(()=>[t(_,{onClick:e[38]||(e[38]=l=>j.value=!1)},{default:a(()=>[...e[87]||(e[87]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",loading:o(Le),onClick:Pt},{default:a(()=>[...e[88]||(e[88]=[s("保存",-1)])]),_:1},8,["loading"])]),default:a(()=>[o(L)?(d(),v(h,{key:0,ref_key:"editOrderFormRef",ref:Je,model:o(L),rules:Vt,"label-width":"100px"},{default:a(()=>[t(r,{label:"关联患者",prop:"patient_id"},{default:a(()=>[t(U,{modelValue:o(L).patient_id,"onUpdate:modelValue":e[36]||(e[36]=l=>o(L).patient_id=l),filterable:"",remote:"",placeholder:"搜索患者姓名/手机号,可留空表示待关联","remote-method":$t,loading:o(Oe),clearable:"",class:"w-full"},{default:a(()=>[(d(!0),x(R,null,oe(o(ee),l=>(d(),v(i,{key:l.id,label:`${l.patient_name||"-"} (${l.phone||"-"})`,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1}),t(r,{label:"订单类型",prop:"order_type"},{default:a(()=>[t(U,{modelValue:o(L).order_type,"onUpdate:modelValue":e[37]||(e[37]=l=>o(L).order_type=l),placeholder:"请选择",class:"w-full"},{default:a(()=>[t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])):b("",!0)]),_:1},8,["modelValue"]),t(O,{modelValue:o(K),"onUpdate:modelValue":e[43]||(e[43]=l=>T(K)?K.value=l:null),title:"拆分订单",width:"620px","destroy-on-close":"",onClosed:e[44]||(e[44]=l=>P.value=null)},{footer:a(()=>[t(_,{onClick:e[42]||(e[42]=l=>K.value=!1)},{default:a(()=>[...e[97]||(e[97]=[s("取消",-1)])]),_:1}),t(_,{type:"primary",loading:o(Me),disabled:!_e.value,onClick:Lt},{default:a(()=>[...e[98]||(e[98]=[s(" 确定拆分 ",-1)])]),_:1},8,["loading","disabled"])]),default:a(()=>[o(P)?(d(),x(R,{key:0},[c("p",va,[e[89]||(e[89]=s(" 原订单号 ",-1)),c("span",ga,p(o(P).order_no),1),e[90]||(e[90]=s(",金额 ",-1)),c("span",ca,"¥"+p(o(P).amount),1),e[91]||(e[91]=s("。每笔子单可分别选择",-1)),e[92]||(e[92]=c("strong",null,"订单类型",-1)),e[93]||(e[93]=s(";子单继承患者、创建人及企微收款信息;",-1)),e[94]||(e[94]=c("strong",null,"已支付",-1)),e[95]||(e[95]=s("子单继承支付方式、支付时间与交易号;原单将软删除;若已关联业务订单,关联会同步到全部子单。 ",-1))]),t(h,{"label-width":"88px",onSubmit:e[41]||(e[41]=it(()=>{},["prevent"]))},{default:a(()=>[t(r,{label:"拆分管数"},{default:a(()=>[t(Ne,{modelValue:o(G),"onUpdate:modelValue":e[40]||(e[40]=l=>T(G)?G.value=l:null),min:2,max:20,step:1,"step-strictly":"",onChange:at},null,8,["modelValue"]),e[96]||(e[96]=c("span",{class:"text-xs text-gray-400 ml-2"},"2~20 笔",-1))]),_:1})]),_:1}),c("div",ba,[(d(!0),x(R,null,oe(o(J),(l,V)=>(d(),x("div",{key:V,class:"flex items-center gap-2 flex-wrap"},[c("span",ka,"第 "+p(V+1)+" 笔",1),t(U,{modelValue:o(te)[V],"onUpdate:modelValue":We=>o(te)[V]=We,placeholder:"订单类型",class:"w-[136px] shrink-0"},{default:a(()=>[t(i,{label:"挂号费",value:1}),t(i,{label:"问诊费",value:2}),t(i,{label:"药品费用",value:3}),t(i,{label:"首付费用",value:4}),t(i,{label:"尾款费用",value:5}),t(i,{label:"其他费用",value:6}),t(i,{label:"全部费用",value:7}),t(i,{label:"驼奶费用",value:8})]),_:1},8,["modelValue","onUpdate:modelValue"]),t(Ne,{modelValue:o(J)[V],"onUpdate:modelValue":We=>o(J)[V]=We,min:.01,step:.01,precision:2,class:"flex-1 min-w-[140px]","controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"])]))),128))]),t(ke,{type:_e.value?"success":"warning",closable:!1,"show-icon":""},{title:a(()=>[s(" 子单合计 ¥"+p(ot.value.toFixed(2))+", "+p(_e.value?"与原价一致,可提交":"须与原价完全一致方可拆分"),1)]),_:1},8,["type"])],64)):b("",!0)]),_:1},8,["modelValue"]),t(O,{modelValue:o(le),"onUpdate:modelValue":e[46]||(e[46]=l=>T(le)?le.value=l:null),title:"支付小程序码",width:"400px","close-on-click-modal":!1},{footer:a(()=>[t(_,{onClick:e[45]||(e[45]=l=>le.value=!1)},{default:a(()=>[...e[101]||(e[101]=[s("关闭",-1)])]),_:1}),o(ve)?b("",!0):(d(),v(_,{key:0,type:"primary",onClick:Nt},{default:a(()=>[...e[102]||(e[102]=[s(" 重新生成 ",-1)])]),_:1}))]),default:a(()=>[c("div",Va,[o(ve)?(d(),x("div",xa,[t(Gt,{class:"is-loading",size:40},{default:a(()=>[t(o(Yl))]),_:1}),e[99]||(e[99]=c("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):o(ge)?(d(),x("div",wa,[c("img",{src:o(ge),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,Ca),c("div",Sa,[c("div",null,"订单号:"+p(o(ce)),1),e[100]||(e[100]=c("div",{class:"mt-2"},"请使用微信扫描二维码完成支付",-1))])])):(d(),x("div",Ta," 生成失败,请重试 "))])]),_:1},8,["modelValue"])])}}}),Vo=Ql(Ea,[["__scopeId","data-v-f8b1e055"]]);export{Vo as default}; diff --git a/server/public/admin/assets/index-4jHuPsCG.js b/server/public/admin/assets/index-Cs5gux7p.js similarity index 99% rename from server/public/admin/assets/index-4jHuPsCG.js rename to server/public/admin/assets/index-Cs5gux7p.js index 5a6f9ca8..d8211146 100644 --- a/server/public/admin/assets/index-4jHuPsCG.js +++ b/server/public/admin/assets/index-Cs5gux7p.js @@ -1 +1 @@ -var en=Object.defineProperty;var nn=(i,n,a)=>n in i?en(i,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[n]=a;var L=(i,n,a)=>nn(i,typeof n!="symbol"?n+"":n,a);import{d as on,i as an,r as sn,K as rn}from"./element-plus-DFTWCWyi.js";import{q as Pt,s as dt}from"./@vue/runtime-dom-DDAG46FW.js";import{c as ue,ag as ln,ah as cn,l as un,ai as dn,aj as fn}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as mn,l as hn}from"./file-dC1LMm1W.js";import{a as pn}from"./patient-BKtZKzsB.js";import{L as Vt,a9 as gn,au as vn,av as yn,aw as _n}from"./tcm-DCW3HTOw.js";import{_ as we,u as wn,i as M}from"./index-Nt5zMHcc.js";import{E as Sn}from"./@tencentcloud/chat-uikit-vue3-CLQ__Wr9.js";import{p as Cn}from"./im-business-message-parse-QKjFLn3X.js";import{g as Tn,G as En,C as An,M as In,a as kn,O as bn,E as Rn,N as Mn,S as Ln,A as Dn,b as xn}from"./tuikit-atomicx-vue3-Dln8Zi6e.js";import{f as Se,aB as Un,ak as R,I as H,H as B,J as A,G as F,ab as Pn,A as q,b as Vn,d as Hn,w as Nn,aP as Ht,a as S,aN as b,O as On,T as Kn,n as Nt}from"./@vue/runtime-core-C6bnekPw.js";import{Q as G,p as de,o as $n}from"./@vue/shared-mAAVTE9n.js";import{y as E,n as y}from"./@vue/reactivity-DiY1c2vO.js";import{T as Z}from"./@tencentcloud/chat-AC2Y2r2A.js";import{X as fe}from"./@tencentcloud/chat-uikit-engine-zx802ozq.js";import{u as zn,F as x,z as Bn,g as $,a as z,l as N}from"./@tencentcloud/call-uikit-vue-DB7vt9Ht.js";import{c as ft}from"./@tencentcloud/call-engine-js-BX2W9Lhf.js";import{D as jn}from"./@tencentcloud/uikit-base-component-vue3-YgTqL4da.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./@tencentcloud/tui-core-8M7p1XHw.js";import"./tim-upload-plugin-HO4N4AW9.js";import"./tim-profanity-filter-plugin-Dn_Cf-mP.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./@tencentcloud/tuiroom-engine-js-Br9swJyU.js";import"./rtc-detect-Chu-fZvE.js";import"./tcplayer.js-qpFBCYzN.js";function Wn(){const i=["video/webm;codecs=vp9,opus","video/webm;codecs=vp8,opus","video/webm;codecs=vp9","video/webm;codecs=vp8","video/webm"];for(const n of i)if(MediaRecorder.isTypeSupported(n))return n;return""}function Fn(){const i=window;return i.AudioContext||i.webkitAudioContext||null}function me(i,n,a,s,r,u){const f=n.videoWidth||n.clientWidth||1,d=n.videoHeight||n.clientHeight||1,p=Math.max(r/f,u/d),c=f*p,m=d*p,_=a+(r-c)/2,D=s+(u-m)/2;try{i.drawImage(n,_,D,c,m)}catch{}}function qn(i,n,a,s){i.fillStyle="#0b0b0b",i.fillRect(0,0,a,s);const r=n.filter(c=>c.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA);if(r.length===0)return;if(r.length===1){me(i,r[0],0,0,a,s);return}const u=Math.ceil(Math.sqrt(r.length)),f=Math.ceil(r.length/u),d=a/u,p=s/f;r.forEach((c,m)=>{const _=m%u,D=Math.floor(m/u);me(i,c,_*d,D*p,d,p)})}function Gn(i){const n=new Set,a=[];for(const s of i){const r=s.srcObject;if(r instanceof MediaStream)for(const u of r.getAudioTracks())u.kind!=="audio"||u.readyState==="ended"||!u.enabled||n.has(u.id)||(n.add(u.id),a.push(u))}return a}function Xn(i){var s;const n=new Set,a=[];for(const r of i){if(r.readyState{const p=[];for(const c of d)n.has(c)||(n.add(c),p.push(c));return p},s=[...i.querySelectorAll("video")];if(s.length>0)return a(s);const r=document.getElementById("tuicallkit-id");if(r){const d=[...r.querySelectorAll("video")];if(d.length>0)return a(d)}const f=[...document.body.querySelectorAll("video")].filter(d=>{const p=d.srcObject;return p instanceof MediaStream?p.getVideoTracks().some(c=>c.readyState==="live"):!1});return a(f)}class Jn{constructor(){L(this,"canvas",null);L(this,"ctx",null);L(this,"rafId",0);L(this,"container",null);L(this,"mediaRecorder",null);L(this,"chunks",[]);L(this,"mimeType","");L(this,"audioCtx",null);L(this,"audioDestination",null);L(this,"wiredTrackIds",new Set);L(this,"canvasVideoTrack",null);L(this,"silentOsc",null);L(this,"silentGain",null);L(this,"micStream",null);L(this,"stopResultPromise",null)}isRecording(){return this.mediaRecorder!==null&&this.mediaRecorder.state==="recording"}beginStopNow(){if(this.stopResultPromise)return;cancelAnimationFrame(this.rafId),this.rafId=0;const n=this.mediaRecorder,a=this.mimeType;!n||n.state==="inactive"||(this.stopResultPromise=new Promise(s=>{var r;n.onstop=()=>{this.teardownAudioGraph();const u=n.mimeType||a||"video/webm",f=this.chunks.length>0?new Blob(this.chunks,{type:u}):null;this.chunks=[],this.mediaRecorder=null,this.container=null,this.canvas=null,this.ctx=null,this.canvasVideoTrack=null,s(f&&f.size>0?f:null)};try{const u=n;(r=u.requestData)==null||r.call(u),n.stop()}catch{this.teardownAudioGraph(),this.chunks=[],this.mediaRecorder=null,this.container=null,this.canvas=null,this.ctx=null,this.canvasVideoTrack=null,s(null)}}))}teardownAudioGraph(){var n;try{(n=this.silentOsc)==null||n.stop()}catch{}if(this.silentOsc=null,this.silentGain=null,this.micStream){for(const a of this.micStream.getTracks())try{a.stop()}catch{}this.micStream=null}this.wiredTrackIds.clear(),this.audioDestination=null,this.audioCtx&&(this.audioCtx.close().catch(()=>{}),this.audioCtx=null)}connectTrackToMixer(n){if(!(n.kind!=="audio"||n.readyState==="ended"||!n.enabled)&&!(!this.audioCtx||!this.audioDestination)&&!this.wiredTrackIds.has(n.id))try{const a=this.audioCtx.createMediaStreamSource(new MediaStream([n])),s=this.audioCtx.createGain();s.gain.value=1.25,a.connect(s),s.connect(this.audioDestination),this.wiredTrackIds.add(n.id)}catch{}}attachMicForMixer(){if(!this.audioCtx||!this.audioDestination)return;const n=navigator.mediaDevices;n!=null&&n.getUserMedia&&n.getUserMedia({audio:!0,video:!1}).then(a=>{if(!this.audioDestination||!this.audioCtx){a.getTracks().forEach(s=>s.stop());return}if(this.micStream){a.getTracks().forEach(s=>s.stop());return}this.micStream=a;for(const s of a.getAudioTracks())this.connectTrackToMixer(s)}).catch(()=>{})}wireIncomingAudio(){var f;if(!this.audioCtx||!this.audioDestination||!this.container)return;this.audioCtx.state==="suspended"&&this.audioCtx.resume().catch(()=>{});const n=Ot(this.container),a=document.getElementById("tuicallkit-id"),s=[...document.body.querySelectorAll("audio"),...this.container.querySelectorAll("audio"),...a?a.querySelectorAll("audio"):[]],r=new Set,u=[];for(const d of n)r.has(d)||(r.add(d),u.push(d));for(const d of s)r.has(d)||(r.add(d),u.push(d));for(const d of u){const p=d.srcObject;if(p instanceof MediaStream)for(const c of p.getAudioTracks())this.connectTrackToMixer(c);if(d instanceof HTMLVideoElement&&d.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA){const c=(f=d.captureStream)==null?void 0:f.call(d);if(c)for(const m of c.getAudioTracks())this.connectTrackToMixer(m)}}}reset(){if(cancelAnimationFrame(this.rafId),this.rafId=0,this.stopResultPromise=null,this.canvasVideoTrack=null,this.mediaRecorder&&this.mediaRecorder.state!=="inactive")try{this.mediaRecorder.stop()}catch{}this.mediaRecorder=null,this.chunks=[],this.canvas=null,this.ctx=null,this.container=null,this.mimeType="",this.teardownAudioGraph()}start(n){if(typeof MediaRecorder>"u")return!1;this.reset(),this.container=n;const a=Wn();if(this.mimeType=a||"video/webm",this.canvas=document.createElement("canvas"),this.canvas.width=1280,this.canvas.height=720,this.ctx=this.canvas.getContext("2d",{alpha:!1}),!this.ctx)return!1;const r=this.canvas.captureStream(30).getVideoTracks();this.canvasVideoTrack=r[0]??null;const u=Ot(n),f=Fn();let d;if(f)try{this.audioCtx=new f,this.audioDestination=this.audioCtx.createMediaStreamDestination(),this.audioCtx.resume().catch(()=>{}),this.wireIncomingAudio(),this.attachMicForMixer();const c=this.audioDestination.stream.getAudioTracks(),m=this.audioCtx.createOscillator(),_=this.audioCtx.createGain();_.gain.value=1e-5,m.frequency.value=20,m.connect(_),_.connect(this.audioDestination),m.start(),this.silentOsc=m,this.silentGain=_,d=new MediaStream([...r,...c])}catch{this.teardownAudioGraph(),d=this.buildStreamWithoutMixer(r,u)}else d=this.buildStreamWithoutMixer(r,u);try{this.mediaRecorder=a?new MediaRecorder(d,{mimeType:a}):new MediaRecorder(d)}catch{try{this.mediaRecorder=new MediaRecorder(d)}catch{return this.reset(),!1}}this.chunks=[],this.mediaRecorder.ondataavailable=c=>{c.data&&c.data.size>0&&this.chunks.push(c.data)},this.mediaRecorder.onerror=c=>{console.error("[call-local-recorder] MediaRecorder 错误",c)};const p=()=>{var m,_;if(!this.ctx||!this.canvas||!this.container)return;this.wireIncomingAudio();const c=Ot(this.container);qn(this.ctx,c,this.canvas.width,this.canvas.height),(_=(m=this.canvasVideoTrack)==null?void 0:m.requestFrame)==null||_.call(m),this.rafId=requestAnimationFrame(p)};this.rafId=requestAnimationFrame(p);try{this.mediaRecorder.start(250)}catch{return this.reset(),!1}return!0}buildStreamWithoutMixer(n,a){const s=new Set,r=[],u=f=>{for(const d of f)s.has(d.id)||(s.add(d.id),r.push(d))};return u(Gn(a)),u(Xn(a)),u(Yn(this.container)),new MediaStream([...n,...r])}async stop(){this.beginStopNow();const n=this.stopResultPromise;return n||null}}function he(i){const n=i.srcObject;return n instanceof MediaStream?n.getVideoTracks().some(a=>a.readyState==="live"):!1}function et(i){const n=i.getBoundingClientRect();return Math.max(0,n.width)*Math.max(0,n.height)}function pe(i){const n=i.videoWidth||i.clientWidth,a=i.videoHeight||i.clientHeight;return n*a}function Qn(i){const n=new Map,a=new Map;for(const s of i){const r=s.srcObject;if(!(r instanceof MediaStream))continue;const u=r.getVideoTracks(),f=r.id&&String(r.id)||u.map(c=>c.id).filter(Boolean).join("|")||`${u.length}`,d=et(s),p=a.get(f)??0;d>=p&&(n.set(f,s),a.set(f,d))}return n.size===0?i:Array.from(n.values())}function Zn(i){if(i.length<2)return i;let n=0;for(const s of i)n=Math.max(n,et(s));return n<=1||Math.min(...i.map(s=>et(s)))/n>=.25?i:i.filter(s=>et(s)>=n*.25)}function to(i){let n=i;for(let a=0;a<12&&n;a++){const s=getComputedStyle(n).transform;if(s&&s!=="none"&&(/matrix\(\s*-1\s*,/.test(s)||/scaleX\(\s*-1/.test(s)))return!0;n=n.parentElement}return!1}function eo(i){const n=/local|self|pusher|mini[_-]?stream|preview[_-]?self|own[_-]?camera|tui-local|tencent-local|stream-local|publisher|send|pip|picture[_-]?in[_-]?picture/i,a=/remote|subscriber|peer|other|tui-remote|stream-remote|big-stream|play[_-]?stream|receiver|pull|substream/i;let s=i;for(let r=0;r<20&&s;r++){const u=`${s.className||""} ${s.id||""} ${s.getAttribute("data-type")||""}`;if(a.test(u))return!1;if(n.test(u))return!0;s=s.parentElement}return!1}async function no(i,n){const a=(n==null?void 0:n.preferRemote)!==!1,s=[i,...(n==null?void 0:n.extraRoots)||[]].filter(g=>!!g),r=new Set;for(const g of s)for(const w of g.querySelectorAll("video"))w instanceof HTMLVideoElement&&r.add(w);if(r.size===0){const g=document.querySelector(".chat-dialog-call-kit-wrapper");if(g)for(const w of g.querySelectorAll("video"))w instanceof HTMLVideoElement&&r.add(w)}r.size===0&&document.body.querySelectorAll("video").forEach(g=>{g instanceof HTMLVideoElement&&he(g)&&r.add(g)});let u=Array.from(r).filter(g=>g.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&he(g));if(u.length===0&&(u=Array.from(r).filter(g=>g.readyState>=2)),u.length===0)return null;u=Qn(u);let f=null,d=0,p=0;if(a){const g=u.map(C=>({v:C,layout:et(C),pixel:pe(C),localClass:eo(C),mirror:to(C)}));let w=g.filter(C=>!C.localClass&&!C.mirror);w.length===0&&(w=g.filter(C=>!C.localClass)),w.length===0&&(w=g.filter(C=>!C.mirror)),w.length===0&&(w=g);let O=w.map(C=>C.v);O=Zn(O),w=w.filter(C=>O.includes(C.v));for(const C of w)(C.layout>d||C.layout===d&&C.pixel>p)&&(d=C.layout,p=C.pixel,f=C.v)}else for(const g of u){const w=et(g),O=pe(g);(w>d||w===d&&O>p)&&(d=w,p=O,f=g)}if(!f)return null;const c=f.videoWidth||f.clientWidth,m=f.videoHeight||f.clientHeight;if(!c||!m)return null;const _=document.createElement("canvas");_.width=c,_.height=m;const D=_.getContext("2d");if(!D)return null;try{D.drawImage(f,0,0,c,m)}catch{return null}return new Promise(g=>{_.toBlob(w=>g(w),"image/jpeg",.92)})}function oo(i){const n=[];let a=i,s=0;for(;a!=null&&s<6;){if(typeof a=="string"){n.push(a);break}if(typeof a=="object"){const r=a;typeof r.message=="string"&&n.push(r.message),typeof r.name=="string"&&n.push(r.name),typeof r.code<"u"&&n.push(String(r.code)),a=r.cause}else{n.push(String(a));break}s++}return n.join(" ").toLowerCase()}const ge=-1001;function tt(i){if(i&&typeof i=="object"){const a=i,s=a.code??a.error_code;if(s===ge||s===String(ge))return!0}const n=oo(i);return n.includes("does not support this ability")||n.includes("package you purchased")||n.includes("-1001")&&n.includes("does not support")}function Ce(){return"套餐欠费或未开通该能力,请联系管理员在腾讯云续费或升级套餐。"}function ao(i,n="通话操作失败"){return tt(i)?Ce():i instanceof Error?i.message||n:typeof i=="string"&&i||n}const io={key:0,class:"chat-uikit-custom-msg"},so={key:0,class:"chat-uikit-custom-msg__tag"},ro={class:"chat-uikit-custom-msg__main"},lo={key:1,class:"chat-uikit-custom-msg__sub"},co={key:1,class:"chat-uikit-custom-msg chat-uikit-custom-msg--plain"},uo={class:"chat-uikit-custom-msg__main"},fo={key:2,class:"chat-uikit-custom-msg chat-uikit-custom-msg--plain"},mo={key:0,class:"chat-uikit-custom-msg__sub"},ho=Se({inheritAttrs:!1,__name:"ChatMessageItem",props:{message:{}},setup(i){const n=i,a=Un();function s(c){if(!c||typeof c!="object")return null;const m=c,_=m.data;if(typeof _=="string")return _;if(_&&typeof _=="object")return JSON.stringify(_);const D=m.extension;return typeof D=="string"&&D.trim().startsWith("{")?D:null}const r=q(()=>{var m;const c=(m=n.message)==null?void 0:m.type;return!!(c===En.CUSTOM||typeof c=="string"&&/custom/i.test(c))}),u=q(()=>{var m;if(!r.value)return null;const c=(m=s(n.message.payload))==null?void 0:m.trim();return c?Cn(c):null}),f=q(()=>r.value&&!!u.value),d=q(()=>{const c=n.message.payload,m=c==null?void 0:c.description;return typeof m=="string"&&m.trim()?m.trim():""}),p=q(()=>{var m;const c=(m=s(n.message.payload))==null?void 0:m.trim();return!c||c.length<2?"":c.length<=120?c:`${c.slice(0,117)}…`});return(c,m)=>f.value?(R(),H("div",io,[u.value.tag?(R(),H("span",so,G(u.value.tag),1)):B("",!0),A("div",ro,G(u.value.main),1),u.value.sub?(R(),H("div",lo,G(u.value.sub),1)):B("",!0)])):r.value&&d.value?(R(),H("div",co,[A("div",uo,G(d.value),1)])):r.value?(R(),H("div",fo,[m[0]||(m[0]=A("div",{class:"chat-uikit-custom-msg__main"},"系统消息",-1)),p.value?(R(),H("div",mo,G(p.value),1)):B("",!0)])):(R(),F(E(Tn),Pn({key:3},E(a),{message:i.message}),null,16,["message"]))}}),po=we(ho,[["__scopeId","data-v-1c506f55"]]);function go(i){if(i==null)return null;if(typeof i=="object"&&!Array.isArray(i))return i;if(typeof i!="string")return null;const n=i.trim();if(!n.startsWith("{"))return null;try{return JSON.parse(n)}catch{return null}}function ve(i){const n=i.toLowerCase();return["hangup","cancel","reject","timeout","linebusy","end"].includes(n)}function vo(i){const n=i.trim();if(!n)return!1;if(/\bcall_end\b/i.test(n)&&(/call_engine|call_record|rtc/i.test(n)||/"reason"\s*:\s*\d/.test(n))||/call_engine_srv\.[a-z_]*call[a-z_]*/i.test(n)&&/hangup|end|leave|reject|cancel/i.test(n))return!0;if(!n.startsWith("{"))return!1;let a;try{a=JSON.parse(n)}catch{return!1}if(a.businessID===1||a.businessID==="1"){const r=go(a.data);if(r){const u=String(r.cmd??"");if(ve(u))return!0}}if((a.businessID==="rtc_call"||typeof a.cmd=="string")&&ve(String(a.cmd??"")))return!0;const s=JSON.stringify(a);return!!(s.includes("call_engine_srv")&&/hangup|call_end|CALL_END|reject|cancel/i.test(s))}const yo=["title"],_o={class:"chat-container"},wo={key:0,class:"loading-container"},So={key:1,class:"error-container"},Co={key:2,class:"chat-content"},To={class:"chat-layout"},Eo={class:"message-toolbar"},Ao={class:"call-kit-drag-handle-left"},Io={key:0,class:"call-local-recording-hint"},ko={class:"call-kit-drag-handle-actions"},mt="idle",ht="calling",W="connected",ye=40,bo=100,Ro=1500,Mo=2600,Lo=667,_e=16,Do=Se({__name:"index",setup(i,{expose:n}){const a=y(""),s=y(!1),r=y(!1),u=y(!1),f=y(""),d=y(""),p=y(null),c=y(null),m=y("正在初始化..."),_=y(""),D=y(""),g=y(!1),w=y(!1),{login:O}=xn(),{setActiveConversation:C,createC2CConversation:Te,activeConversation:Ee}=Dn(),Ae=wn(),nt=y("");let K=null,X=null,Et=0;const P=new Jn,At=y(!1),ot=y(!1);let It=0,Y=null,at=null,pt=Promise.resolve(),kt=null;function J(){Y&&(clearTimeout(Y),Y=null)}function bt(e){At.value=!!(e!=null&&e.isLochostVod)}function gt(){return at||(at=(async()=>{if(J(),ot.value=!1,!At.value)return;P.beginStopNow();const e=kt??c.value;try{await pt}catch{}const t=await P.stop();if(!t){console.warn("[chat-dialog] 本地录制无有效文件(若通话较长仍出现,请换 Chrome 并看控制台是否有 MediaRecorder 报错)");return}if(e==null){M.msgWarning("缺少诊单信息,本地录制无法保存到通话记录");return}try{const o=await hn(t,`call-rec-${e}-${Date.now()}.webm`),l=o.uri||o.url;if(!l){M.msgError("上传成功但未返回文件地址");return}await gn({diagnosis_id:e,file_url:l}),M.msgSuccess("本地录制已上传并关联到通话记录")}catch(o){const l=o instanceof Error?o.message:String(o);console.warn("[chat-dialog] 本地录制上传/关联失败",o),M.msgError(l||"本地录制上传失败")}})().finally(()=>{at=null}),at)}function Ie(){const e=$.getData(z.CALL,N.ROOM_ID);if(e==null)return"";if(typeof e=="number")return e===0?"":String(e);const t=String(e).trim();return!t||t==="0"?"":t}function ke(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);if(!o)return"";const l=[o.roomId,o.roomID,o._roomId,o._roomID,o.strRoomID];for(const h of l){if(h==null||h==="")continue;const v=String(h).trim();if(v&&v!=="0")return v}}catch{}return""}function Rt(){return Ie()||ke()}function vt(e,t){if(t!=null&&String(t).trim()!==""&&String(t)!=="0")return String(t).trim();if(typeof e=="number"&&e>0)return String(e);if(typeof e=="string"){const o=e.trim();if(o&&o!=="0")return o}return""}function Kt(e){if(e==null||typeof e!="object")return"";const t=e,o=vt(t.roomID,t.strRoomID)||vt(t.roomId,t.strRoomId);if(o)return o;const l=t.data;if(l&&typeof l=="object"){const h=l,v=vt(h.roomID,h.strRoomID)||vt(h.roomId,h.strRoomId);if(v)return v}return""}function Q(){X&&(clearTimeout(X),X=null),Et=0}function be(){Q();const e=()=>{X=null;const t=$.getData(z.CALL,N.CALL_STATUS);if(t===mt||t!==ht&&t!==W)return;const o=Rt();if(o){rt(o);return}if(Et++,Et>=ye){console.warn("[chat-dialog] 仍未解析到有效房间号(已重试",ye,"次)");return}X=setTimeout(e,bo)};X=setTimeout(e,0)}async function $t(e){if(!(p.value==null||c.value==null)){await Nt();for(let t=0;t<40;t++){const o=Rt();if(o){await rt(o);return}await new Promise(l=>setTimeout(l,50))}console.warn("[chat-dialog] 发起通话后仍未解析到房间号(API:",e,")")}}function Re(){var l,h;const e=window;if(e.__zytEngineRoomCapture__)return;const t=(h=(l=x).getTUICallEngineInstance)==null?void 0:h.call(l);if(!t||typeof t.calls!="function")return;e.__zytEngineRoomCapture__=!0,t.__zytEngineRoomCapture__=!0;const o=v=>{const T=t[v];typeof T=="function"&&(t[v]=async function(...k){const U=await T.apply(t,k),V=Kt(U);return V&&rt(V),await $t("engine."+v),U})};o("calls"),o("call"),o("groupCall")}function Me(){const e=window;if(e.__zytHangupPreStop__)return;const t=x,o=t.hangup;typeof o=="function"&&(e.__zytHangupPreStop__=!0,t.hangup=function(...h){return P.beginStopNow(),o.apply(x,h)})}function zt(){var v,T;const e=window;if(e.__zytTrtcPreStop__)return;const t=(T=(v=x).getTUICallEngineInstance)==null?void 0:T.call(v),o=t==null?void 0:t.trtcCloud;if(!o||typeof o!="object")return;let l=0;const h=["stopLocalVideo","stopLocalAudio"];for(const I of h){const k=o[I];typeof k=="function"&&(o[I]=function(...V){return P.beginStopNow(),k.apply(o,V)},l++)}l>0&&(e.__zytTrtcPreStop__=!0)}let it=[],st=null,Bt=0;async function yt(){const e=kt??c.value;if(e==null){console.warn("[chat-dialog] endCall 跳过:无诊单 ID(快照与当前均为空)");return}try{await vn({diagnosis_id:e}),console.log("[chat-dialog] endCall 已同步",{diagnosis_id:e})}catch(t){console.warn("[chat-dialog] endCall 失败",t)}}function jt(e){const t=Date.now();t-Bt{if(!r.value)return;const l=_.value;if(!l)return;const h=l.startsWith("C2C")?l:`C2C${l}`,v=Array.isArray(o.data)?o.data:[];for(const T of v){if(!T||T.conversationID!==h)continue;const I=T.type;if(!(I===Z.TYPES.MSG_CUSTOM||I==="TIMCustomElem"||typeof I=="string"&&/custom/i.test(I)))continue;const U=T.payload,V=typeof(U==null?void 0:U.data)=="string"?U.data:"";if(!(!V||!vo(V))){jt("IM");break}}},t.on(Z.EVENT.MESSAGE_RECEIVED,st)}catch(t){console.warn("[chat-dialog] 绑定 IM 挂断监听失败",t)}}function Mt(){var e,t;if(st){try{const o=(e=fe)==null?void 0:e.chat;(t=o==null?void 0:o.off)==null||t.call(o,Z.EVENT.MESSAGE_RECEIVED,st)}catch{}st=null}}function De(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e),l=o==null?void 0:o.on;if(!o||typeof l!="function"||o.__zytRoomEvents)return;o.__zytRoomEvents=!0;const h=k=>{const U=Kt(k);if(U){rt(U);return}Lt()},v=()=>{jt("TUICallEngine")},T=[ft.TUICallEvent.CALL_END,ft.TUICallEvent.USER_LEAVE,ft.TUICallEvent.ON_CALL_NOT_CONNECTED];for(const k of T)l.call(o,k,v),it.push({event:k,fn:v});const I=[ft.TUICallEvent.USER_ENTER,ft.TUICallEvent.ON_CALL_BEGIN];for(const k of I)l.call(o,k,h),it.push({event:k,fn:h})}catch(o){console.warn("[chat-dialog] 绑定引擎房间事件失败",o)}}function xe(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);if(!(o!=null&&o.off)){it=[];return}for(const{event:l,fn:h}of it)o.off(l,h);o.__zytRoomEvents=!1}catch{}it=[]}function Ue(){const e=window;if(e.__zytTUICallRoomHooks__)return;e.__zytTUICallRoomHooks__=!0;const t=x,o=l=>{const h=t[l];typeof h=="function"&&(t[l]=async function(...T){const I=await h.apply(t,T);return await $t(l),I})};o("calls"),o("call"),o("groupCall")}async function rt(e){try{await pt}catch{}if(p.value==null||c.value==null)return;const t=`${c.value}:${e}`;if(t===nt.value){Q();return}nt.value=t;try{const o=await yn({diagnosis_id:c.value,room_id:e});Q(),console.log("[chat-dialog] bindCallRoom 成功",{room_id:e,bindRes:o});const l=o==null?void 0:o.cloud_recording;l&&l.started===!1&&l.message&&M.msgWarning(`云端合流录制未启动(关闭控制台全局录制后仅依赖 API):${l.message}`)}catch(o){console.warn("[chat-dialog] bindCallRoom 失败",o),nt.value=""}}async function Lt(){if(p.value==null||c.value==null)return;const e=$.getData(z.CALL,N.CALL_STATUS);if(e===mt){Q(),nt.value="";return}if(e!==ht&&e!==W)return;await Nt();const t=Rt();if(t){await rt(t);return}be()}async function Pe(){if(!(p.value==null||c.value==null))try{await _n({diagnosis_id:c.value,patient_id:p.value,call_type:2})}catch(e){console.warn("[chat-dialog] startCall 记录失败",e)}}function Ve(){K==null||K();let e=$.getData(z.CALL,N.CALL_STATUS)??mt;const t=l=>{const h=l??mt;if(h===mt){(e===ht||e===W)&&P.beginStopNow(),J(),ot.value=!1,(e===ht||e===W)&&(async()=>(await yt(),w.value=!1,await gt()))(),Q(),nt.value="",e=h;return}if(h===W){if(Lt(),J(),!At.value){e=h;return}const v=It,T=(I=0)=>{if(v!==It){console.log("[chat-dialog] 录制轮次已变化,取消启动");return}const k=xt.value,U=$.getData(z.CALL,N.CALL_STATUS);if(!k||U!==W){console.warn("[chat-dialog] 录制启动条件不满足",{root:!!k,status:U});return}console.log(`[chat-dialog] 尝试启动本地录制(第 ${I+1} 次)`);let V=Array.from(k.querySelectorAll("video"));if(V.length===0&&(V=Array.from(document.body.querySelectorAll("video")).filter(Ze=>{const ce=Ze.srcObject;return ce instanceof MediaStream?ce.getVideoTracks().some(tn=>tn.readyState==="live"):!1}),console.log("[chat-dialog] 在 body 中找到活跃视频:",V.length)),V.length===0){I<10?(console.warn("[chat-dialog] 未找到视频元素,300ms 后重试"),Y=setTimeout(()=>T(I+1),300)):console.error("[chat-dialog] 重试 10 次后仍未找到视频元素,放弃录制");return}if(!V.some(le=>le.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA)){I<10?(console.warn("[chat-dialog] 视频元素未就绪,300ms 后重试"),Y=setTimeout(()=>T(I+1),300)):console.error("[chat-dialog] 重试 10 次后视频仍未就绪,放弃录制");return}console.log("[chat-dialog] 视频元素已就绪,立即启动录制");const re=P.start(k);ot.value=re,re?console.log("[chat-dialog] ✅ 本地录制已成功启动"):console.error("[chat-dialog] 本地录制启动失败(MediaRecorder 或画布初始化失败)")};Y=setTimeout(()=>T(0),500)}else J();e=h},o=()=>{Lt()};$.watch(z.CALL,{[N.CALL_STATUS]:t,[N.ROOM_ID]:o}),K=()=>{try{$.unwatch(z.CALL,{[N.CALL_STATUS]:t,[N.ROOM_ID]:o})}catch{}Q(),K=null}}let Wt=0;function lt(){const e=Date.now();e-Wt{if(ct(...e),!r.value||!g.value)return;const t=e.map(o=>{if(typeof o=="string")return o;if(o instanceof Error)return o.message;try{return JSON.stringify(o)}catch{return String(o)}}).join(" ");tt(t)&<()})}function Ne(){_t&&ct&&(console.error=ct),_t=!1,ct=null}function Oe(){var e,t,o;try{const l=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);if(!(l!=null&&l.on))return;j&&((o=l.off)==null||o.call(l,"error",j)),j=h=>{!r.value||!g.value||tt(h)&<()},l.on("error",j)}catch(l){console.warn("绑定 TUICallEngine error 监听失败:",l)}}function Ke(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);o!=null&&o.off&&j&&o.off("error",j)}catch{}j=null}async function $e(e,t){try{const o=Z.create({SDKAppID:e}),l={businessID:"doctor_entered_consult_room",time:Date.now()},h=o.createCustomMessage({to:t,conversationType:Z.TYPES.CONV_C2C,payload:{data:JSON.stringify(l)}});await o.sendMessage(h),console.log("已发送医生进入诊室信令(患者端聊天列表不展示)")}catch(o){console.warn("发送医生进入诊室信令失败:",o)}}const Ft=e=>{!r.value||!g.value||tt(e.reason)&<()};Vn(()=>{He(),window.addEventListener("unhandledrejection",Ft)}),Hn(()=>{J(),P.reset(),K==null||K(),xe(),Mt(),Ne(),Ke(),window.removeEventListener("unhandledrejection",Ft)});const ze=async(e,t)=>{try{if(!e){console.warn("头像 URL 为空,跳过更新");return}console.log("开始更新头像到 IM:",e);const o=await new Promise((l,h)=>{setTimeout(async()=>{try{const T=await Z.create({SDKAppID:t}).updateMyProfile({avatar:e});console.log("IM 头像更新成功:",T),l(T)}catch(v){console.error("更新头像异常:",v),l(null)}},500)})}catch(o){console.error("IM 头像更新失败:",o.message||o)}};Nn(()=>Ee.value,async e=>{if(e){if(d.value=e.getShowName()||d.value,console.log("会话切换:",e.conversationID,"名称:",d.value,e),e.userProfile.userID.includes("doctor"))console.log("当前会话是医生,跳过获取 assistant_id");else try{const t=await Vt({patient_id:e.userProfile.userID.replace("patient_",""),diagnosis_id:c.value});bt(t),_.value=t.patientUserId,a.value=t.assistant_id,console.log("会话切换后获取到 assistant_id:",a.value,"完整响应:",t)}catch(t){console.error("获取 assistant_id 失败:",t)}console.log("会话切换完成,userID:",e.userProfile.userID)}});const Be=async e=>{r.value=!0,s.value=!1,wt.value=100,St.value=80,Qt(),d.value=e.patientName,p.value=e.patientId,c.value=e.diagnosisId||null,f.value="",u.value=!1,g.value=!1,w.value=!1,m.value="正在获取签名...";try{const t=await Vt({patient_id:e.patientId,diagnosis_id:e.diagnosisId||0});if(bt(t),a.value=t.assistant_id,console.log("后端返回的签名数据:",t),console.log("assistant_id:",a.value),!t||!t.userSig)throw new Error("获取签名失败");t.assistant_id||console.warn("警告:后端未返回 assistant_id,群视频通话可能无法正常工作"),_.value=t.patientUserId||`patient_${e.patientId}`,m.value="正在登录聊天...",await O({sdkAppId:Number(t.sdkAppId),userId:t.userId,userSig:t.userSig,useUploadPlugin:!0}),Le();const o=Number(t.sdkAppId);if(!window.__TUICallKitInited__){m.value="正在初始化通话能力...";try{await x.init({userID:t.userId,userSig:t.userSig,SDKAppID:o}),window.__TUICallKitInited__=!0}catch(l){console.warn("TUICallKit 初始化失败,聊天仍可用,音视频通话不可用:",(l==null?void 0:l.message)||l),tt(l)&<()}}g.value=!!window.__TUICallKitInited__,g.value&&(x.setCallback({beforeCalling:()=>{zt(),J(),P.reset(),ot.value=!1,It++,kt=c.value,Qt(),w.value=!0,pt=Pe()},afterCalling:()=>{P.beginStopNow(),(async()=>(await yt(),w.value=!1,await gt()))()}}),Ue(),Re(),Me(),zt(),De(),Ve(),Oe()),console.log("Chat UIKit 登录成功,患者用户ID:",_.value),m.value="加载聊天界面...",setTimeout(async()=>{var h;u.value=!0,await Nt(),await new Promise(v=>setTimeout(v,1e3));const l=(h=Ae.userInfo)==null?void 0:h.avatar;console.log("准备更新头像,avatar:",l),l&&await ze(l,o);try{const v=await Te(_.value);D.value=v.conversationID,console.log("已创建/获取会话:",D.value),C(D.value),console.log("已激活会话"),await $e(o,_.value)}catch(v){console.error("创建/激活会话失败:",v)}},800)}catch(t){console.error("初始化聊天失败:",t),f.value=t.message||"初始化聊天失败",M.msgError(f.value)}},je=async()=>{if(!g.value){M.msgWarning("通话服务初始化中,请稍后再试");return}if(!_.value){M.msgWarning("未找到患者通话ID,无法发起群视频");return}try{if(!a.value){console.warn("assistant_id 为空,尝试重新获取");const t=await Vt({patient_id:p.value,diagnosis_id:c.value});bt(t),a.value=t.assistant_id,console.log("重新获取 assistant_id:",a.value)}const e=[_.value,a.value].filter(t=>t);if(e.length<2){M.msgWarning("助理ID获取失败,无法发起群视频"),console.error("userIDList 不完整:",e,"assistant_ids:",a.value);return}console.log("发起群视频通话,参与者:",e),await x.calls({userIDList:e,type:Bn.VIDEO_CALL})}catch(e){console.error("发起群视频失败:",e),tt(e)?lt():M.msgError(ao(e,"发起群视频失败"))}},We=y(),wt=y(100),St=y(80),Dt=y(!1),qt=y(0),Gt=y(0),Xt=y(0),Yt=y(0),Jt=y(),xt=y(),ut=y(!1),Ct=y(0),Tt=y(0);function Qt(){Ct.value=_e,Tt.value=Math.max(_e,Math.floor((window.innerHeight-Lo)/2))}const Ut=y(!1),Zt=y(0),te=y(0),ee=y(0),ne=y(0),Fe=q(()=>({left:`${Ct.value}px`,top:`${Tt.value}px`})),qe=e=>{Ut.value=!0,Zt.value=e.clientX,te.value=e.clientY,ee.value=Ct.value,ne.value=Tt.value,document.addEventListener("mousemove",oe),document.addEventListener("mouseup",ae)},oe=e=>{Ut.value&&(Ct.value=Math.max(0,ee.value+e.clientX-Zt.value),Tt.value=Math.max(0,ne.value+e.clientY-te.value))},ae=()=>{Ut.value=!1,document.removeEventListener("mousemove",oe),document.removeEventListener("mouseup",ae)},Ge=async()=>{if(!ut.value){ut.value=!0;try{if(p.value==null){M.msgWarning("缺少患者信息,无法同步舌苔照片");return}const e=Jt.value,t=xt.value,o=e||t;if(!o)return;const l=await no(o,{extraRoots:[t].filter(Boolean)});if(!l){M.msgWarning("截屏失败,请确认视频画面已加载");return}const h=await mn(l,`callshot-${Date.now()}.jpg`),v=h.url||h.uri;if(!v){M.msgError("上传未返回图片路径");return}if(c.value==null){M.msgWarning("请先保存诊单后再从视频同步舌苔照片");return}await pn({diagnosis_id:c.value,tongue_images:[v]}),M.msgSuccess("舌苔照片已保存")}catch(e){const t=e;console.error(t),M.msgError((t==null?void 0:t.message)||"上传失败")}finally{ut.value=!1}}},Xe=async()=>{if(g.value)try{P.beginStopNow(),await gt(),await x.hangup()}catch(e){console.warn("关闭视频窗口时挂断失败:",e)}w.value=!1},Ye=q(()=>({left:`${wt.value}px`,top:`${St.value}px`})),Je=e=>{const t=e.target;t.closest(".chat-close-btn")||t.closest(".chat-header-actions")||(Dt.value=!0,qt.value=e.clientX,Gt.value=e.clientY,Xt.value=wt.value,Yt.value=St.value,document.addEventListener("mousemove",ie),document.addEventListener("mouseup",se))},ie=e=>{Dt.value&&(wt.value=Math.max(0,Xt.value+e.clientX-qt.value),St.value=Math.max(0,Yt.value+e.clientY-Gt.value))},se=()=>{Dt.value=!1,document.removeEventListener("mousemove",ie),document.removeEventListener("mouseup",se)},Qe=async()=>{if(Mt(),g.value){const e=$.getData(z.CALL,N.CALL_STATUS);if(e===ht||e===W)try{P.beginStopNow(),await gt(),await x.hangup()}catch(t){console.warn("挂断通话时出错:",t)}}c.value!=null&&await yt(),r.value=!1,w.value=!1};return n({open:Be}),(e,t)=>{const o=on,l=an,h=sn,v=rn;return R(),F(Kn,{to:"body"},[Ht(A("div",{ref_key:"chatWindowRef",ref:We,class:$n(["chat-floating-window",{"chat-floating-window--minimized":s.value}]),style:de(Ye.value)},[A("div",{class:"chat-window-header",onMousedown:Je},[A("span",{class:"chat-window-title",title:d.value},"与 "+G(d.value)+" 通讯",9,yo),A("div",{class:"chat-header-actions",onMousedown:t[2]||(t[2]=dt(()=>{},["stop"]))},[S(l,{type:"danger",link:"",class:"chat-close-btn",onClick:Qe},{default:b(()=>[S(o,null,{default:b(()=>[S(E(ue))]),_:1})]),_:1}),s.value?(R(),F(h,{key:1,content:"展开聊天窗口",placement:"top"},{default:b(()=>[S(l,{type:"primary",link:"",class:"chat-expand-btn",onClick:t[1]||(t[1]=T=>s.value=!1)},{default:b(()=>[S(o,null,{default:b(()=>[S(E(cn))]),_:1}),t[6]||(t[6]=A("span",{class:"chat-header-btn-text"},"展开",-1))]),_:1})]),_:1})):(R(),F(h,{key:0,content:"缩小为标题条,不关闭会话",placement:"top"},{default:b(()=>[S(l,{type:"primary",link:"",class:"chat-minimize-btn",onClick:t[0]||(t[0]=T=>s.value=!0)},{default:b(()=>[S(o,null,{default:b(()=>[S(E(ln))]),_:1}),t[5]||(t[5]=A("span",{class:"chat-header-btn-text"},"缩小",-1))]),_:1})]),_:1}))],32)],32),Ht(A("div",_o,[u.value?f.value?(R(),H("div",So,[S(v,{title:f.value,type:"error",closable:!1},null,8,["title"])])):(R(),H("div",Co,[S(E(jn),{language:"zh-CN",theme:"light"},{default:b(()=>[A("div",To,[S(E(Sn),{class:"chat-area"},{default:b(()=>[S(E(An),{conversationID:D.value,Message:po},null,8,["conversationID"]),S(E(In),null,{headerToolbar:b(()=>[A("div",Eo,[S(E(kn)),S(E(bn)),S(E(Rn)),g.value?(R(),F(E(Mn),{key:0})):B("",!0),g.value?(R(),F(E(Ln),{key:1})):B("",!0),g.value?(R(),F(l,{key:2,size:"small",type:"primary",onClick:je},{default:b(()=>[...t[7]||(t[7]=[On(" 群视频 ",-1)])]),_:1})):B("",!0)])]),_:1})]),_:1})])]),_:1})])):(R(),H("div",wo,[S(o,{class:"is-loading"},{default:b(()=>[S(E(un))]),_:1}),A("span",null,G(m.value),1)]))],512),[[Pt,!s.value]]),g.value?Ht((R(),H("div",{key:0,ref_key:"callKitWrapperRef",ref:Jt,class:"chat-dialog-call-kit-wrapper",style:de(Fe.value)},[A("div",{class:"call-kit-drag-handle",onMousedown:qe},[A("div",Ao,[t[8]||(t[8]=A("span",{class:"drag-handle-text"},"视频通话",-1)),ot.value?(R(),H("span",Io,"本地录制中")):B("",!0)]),A("div",ko,[S(l,{type:"primary",link:"",class:"call-kit-screenshot-btn",loading:ut.value,disabled:ut.value,onMousedown:t[3]||(t[3]=dt(()=>{},["stop"])),onClick:dt(Ge,["stop","prevent"])},{default:b(()=>[S(o,null,{default:b(()=>[S(E(dn))]),_:1}),t[9]||(t[9]=A("span",{class:"call-kit-screenshot-text"},"截屏",-1))]),_:1},8,["loading","disabled"]),S(l,{type:"danger",link:"",class:"call-kit-close-btn",onMousedown:t[4]||(t[4]=dt(()=>{},["stop"])),onClick:dt(Xe,["stop"])},{default:b(()=>[S(o,null,{default:b(()=>[S(E(ue))]),_:1})]),_:1}),S(o,{class:"drag-handle-icon"},{default:b(()=>[S(E(fn))]),_:1})])],32),A("div",{ref_key:"callKitContentRef",ref:xt,class:"call-kit-content"},[S(E(zn),{allowedMinimized:!0,allowedFullScreen:!0,class:"chat-dialog-call-kit"})],512)],4)),[[Pt,w.value]]):B("",!0)],6),[[Pt,r.value]])])}}}),Na=we(Do,[["__scopeId","data-v-09c808b4"]]);export{Na as default}; +var en=Object.defineProperty;var nn=(i,n,a)=>n in i?en(i,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[n]=a;var L=(i,n,a)=>nn(i,typeof n!="symbol"?n+"":n,a);import{d as on,i as an,r as sn,K as rn}from"./element-plus-DFTWCWyi.js";import{q as Pt,s as dt}from"./@vue/runtime-dom-DDAG46FW.js";import{c as ue,ag as ln,ah as cn,l as un,ai as dn,aj as fn}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as mn,l as hn}from"./file-B0kKUfF_.js";import{a as pn}from"./patient-BNjmKCvA.js";import{L as Vt,a9 as gn,au as vn,av as yn,aw as _n}from"./tcm-DzAQc_oE.js";import{_ as we,u as wn,i as M}from"./index--WnM67ZH.js";import{E as Sn}from"./@tencentcloud/chat-uikit-vue3-CLQ__Wr9.js";import{p as Cn}from"./im-business-message-parse-QKjFLn3X.js";import{g as Tn,G as En,C as An,M as In,a as kn,O as bn,E as Rn,N as Mn,S as Ln,A as Dn,b as xn}from"./tuikit-atomicx-vue3-Dln8Zi6e.js";import{f as Se,aB as Un,ak as R,I as H,H as B,J as A,G as F,ab as Pn,A as q,b as Vn,d as Hn,w as Nn,aP as Ht,a as S,aN as b,O as On,T as Kn,n as Nt}from"./@vue/runtime-core-C6bnekPw.js";import{Q as G,p as de,o as $n}from"./@vue/shared-mAAVTE9n.js";import{y as E,n as y}from"./@vue/reactivity-DiY1c2vO.js";import{T as Z}from"./@tencentcloud/chat-AC2Y2r2A.js";import{X as fe}from"./@tencentcloud/chat-uikit-engine-zx802ozq.js";import{u as zn,F as x,z as Bn,g as $,a as z,l as N}from"./@tencentcloud/call-uikit-vue-DB7vt9Ht.js";import{c as ft}from"./@tencentcloud/call-engine-js-BX2W9Lhf.js";import{D as jn}from"./@tencentcloud/uikit-base-component-vue3-YgTqL4da.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./@tencentcloud/tui-core-8M7p1XHw.js";import"./tim-upload-plugin-HO4N4AW9.js";import"./tim-profanity-filter-plugin-Dn_Cf-mP.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./@tencentcloud/tuiroom-engine-js-Br9swJyU.js";import"./rtc-detect-Chu-fZvE.js";import"./tcplayer.js-qpFBCYzN.js";function Wn(){const i=["video/webm;codecs=vp9,opus","video/webm;codecs=vp8,opus","video/webm;codecs=vp9","video/webm;codecs=vp8","video/webm"];for(const n of i)if(MediaRecorder.isTypeSupported(n))return n;return""}function Fn(){const i=window;return i.AudioContext||i.webkitAudioContext||null}function me(i,n,a,s,r,u){const f=n.videoWidth||n.clientWidth||1,d=n.videoHeight||n.clientHeight||1,p=Math.max(r/f,u/d),c=f*p,m=d*p,_=a+(r-c)/2,D=s+(u-m)/2;try{i.drawImage(n,_,D,c,m)}catch{}}function qn(i,n,a,s){i.fillStyle="#0b0b0b",i.fillRect(0,0,a,s);const r=n.filter(c=>c.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA);if(r.length===0)return;if(r.length===1){me(i,r[0],0,0,a,s);return}const u=Math.ceil(Math.sqrt(r.length)),f=Math.ceil(r.length/u),d=a/u,p=s/f;r.forEach((c,m)=>{const _=m%u,D=Math.floor(m/u);me(i,c,_*d,D*p,d,p)})}function Gn(i){const n=new Set,a=[];for(const s of i){const r=s.srcObject;if(r instanceof MediaStream)for(const u of r.getAudioTracks())u.kind!=="audio"||u.readyState==="ended"||!u.enabled||n.has(u.id)||(n.add(u.id),a.push(u))}return a}function Xn(i){var s;const n=new Set,a=[];for(const r of i){if(r.readyState{const p=[];for(const c of d)n.has(c)||(n.add(c),p.push(c));return p},s=[...i.querySelectorAll("video")];if(s.length>0)return a(s);const r=document.getElementById("tuicallkit-id");if(r){const d=[...r.querySelectorAll("video")];if(d.length>0)return a(d)}const f=[...document.body.querySelectorAll("video")].filter(d=>{const p=d.srcObject;return p instanceof MediaStream?p.getVideoTracks().some(c=>c.readyState==="live"):!1});return a(f)}class Jn{constructor(){L(this,"canvas",null);L(this,"ctx",null);L(this,"rafId",0);L(this,"container",null);L(this,"mediaRecorder",null);L(this,"chunks",[]);L(this,"mimeType","");L(this,"audioCtx",null);L(this,"audioDestination",null);L(this,"wiredTrackIds",new Set);L(this,"canvasVideoTrack",null);L(this,"silentOsc",null);L(this,"silentGain",null);L(this,"micStream",null);L(this,"stopResultPromise",null)}isRecording(){return this.mediaRecorder!==null&&this.mediaRecorder.state==="recording"}beginStopNow(){if(this.stopResultPromise)return;cancelAnimationFrame(this.rafId),this.rafId=0;const n=this.mediaRecorder,a=this.mimeType;!n||n.state==="inactive"||(this.stopResultPromise=new Promise(s=>{var r;n.onstop=()=>{this.teardownAudioGraph();const u=n.mimeType||a||"video/webm",f=this.chunks.length>0?new Blob(this.chunks,{type:u}):null;this.chunks=[],this.mediaRecorder=null,this.container=null,this.canvas=null,this.ctx=null,this.canvasVideoTrack=null,s(f&&f.size>0?f:null)};try{const u=n;(r=u.requestData)==null||r.call(u),n.stop()}catch{this.teardownAudioGraph(),this.chunks=[],this.mediaRecorder=null,this.container=null,this.canvas=null,this.ctx=null,this.canvasVideoTrack=null,s(null)}}))}teardownAudioGraph(){var n;try{(n=this.silentOsc)==null||n.stop()}catch{}if(this.silentOsc=null,this.silentGain=null,this.micStream){for(const a of this.micStream.getTracks())try{a.stop()}catch{}this.micStream=null}this.wiredTrackIds.clear(),this.audioDestination=null,this.audioCtx&&(this.audioCtx.close().catch(()=>{}),this.audioCtx=null)}connectTrackToMixer(n){if(!(n.kind!=="audio"||n.readyState==="ended"||!n.enabled)&&!(!this.audioCtx||!this.audioDestination)&&!this.wiredTrackIds.has(n.id))try{const a=this.audioCtx.createMediaStreamSource(new MediaStream([n])),s=this.audioCtx.createGain();s.gain.value=1.25,a.connect(s),s.connect(this.audioDestination),this.wiredTrackIds.add(n.id)}catch{}}attachMicForMixer(){if(!this.audioCtx||!this.audioDestination)return;const n=navigator.mediaDevices;n!=null&&n.getUserMedia&&n.getUserMedia({audio:!0,video:!1}).then(a=>{if(!this.audioDestination||!this.audioCtx){a.getTracks().forEach(s=>s.stop());return}if(this.micStream){a.getTracks().forEach(s=>s.stop());return}this.micStream=a;for(const s of a.getAudioTracks())this.connectTrackToMixer(s)}).catch(()=>{})}wireIncomingAudio(){var f;if(!this.audioCtx||!this.audioDestination||!this.container)return;this.audioCtx.state==="suspended"&&this.audioCtx.resume().catch(()=>{});const n=Ot(this.container),a=document.getElementById("tuicallkit-id"),s=[...document.body.querySelectorAll("audio"),...this.container.querySelectorAll("audio"),...a?a.querySelectorAll("audio"):[]],r=new Set,u=[];for(const d of n)r.has(d)||(r.add(d),u.push(d));for(const d of s)r.has(d)||(r.add(d),u.push(d));for(const d of u){const p=d.srcObject;if(p instanceof MediaStream)for(const c of p.getAudioTracks())this.connectTrackToMixer(c);if(d instanceof HTMLVideoElement&&d.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA){const c=(f=d.captureStream)==null?void 0:f.call(d);if(c)for(const m of c.getAudioTracks())this.connectTrackToMixer(m)}}}reset(){if(cancelAnimationFrame(this.rafId),this.rafId=0,this.stopResultPromise=null,this.canvasVideoTrack=null,this.mediaRecorder&&this.mediaRecorder.state!=="inactive")try{this.mediaRecorder.stop()}catch{}this.mediaRecorder=null,this.chunks=[],this.canvas=null,this.ctx=null,this.container=null,this.mimeType="",this.teardownAudioGraph()}start(n){if(typeof MediaRecorder>"u")return!1;this.reset(),this.container=n;const a=Wn();if(this.mimeType=a||"video/webm",this.canvas=document.createElement("canvas"),this.canvas.width=1280,this.canvas.height=720,this.ctx=this.canvas.getContext("2d",{alpha:!1}),!this.ctx)return!1;const r=this.canvas.captureStream(30).getVideoTracks();this.canvasVideoTrack=r[0]??null;const u=Ot(n),f=Fn();let d;if(f)try{this.audioCtx=new f,this.audioDestination=this.audioCtx.createMediaStreamDestination(),this.audioCtx.resume().catch(()=>{}),this.wireIncomingAudio(),this.attachMicForMixer();const c=this.audioDestination.stream.getAudioTracks(),m=this.audioCtx.createOscillator(),_=this.audioCtx.createGain();_.gain.value=1e-5,m.frequency.value=20,m.connect(_),_.connect(this.audioDestination),m.start(),this.silentOsc=m,this.silentGain=_,d=new MediaStream([...r,...c])}catch{this.teardownAudioGraph(),d=this.buildStreamWithoutMixer(r,u)}else d=this.buildStreamWithoutMixer(r,u);try{this.mediaRecorder=a?new MediaRecorder(d,{mimeType:a}):new MediaRecorder(d)}catch{try{this.mediaRecorder=new MediaRecorder(d)}catch{return this.reset(),!1}}this.chunks=[],this.mediaRecorder.ondataavailable=c=>{c.data&&c.data.size>0&&this.chunks.push(c.data)},this.mediaRecorder.onerror=c=>{console.error("[call-local-recorder] MediaRecorder 错误",c)};const p=()=>{var m,_;if(!this.ctx||!this.canvas||!this.container)return;this.wireIncomingAudio();const c=Ot(this.container);qn(this.ctx,c,this.canvas.width,this.canvas.height),(_=(m=this.canvasVideoTrack)==null?void 0:m.requestFrame)==null||_.call(m),this.rafId=requestAnimationFrame(p)};this.rafId=requestAnimationFrame(p);try{this.mediaRecorder.start(250)}catch{return this.reset(),!1}return!0}buildStreamWithoutMixer(n,a){const s=new Set,r=[],u=f=>{for(const d of f)s.has(d.id)||(s.add(d.id),r.push(d))};return u(Gn(a)),u(Xn(a)),u(Yn(this.container)),new MediaStream([...n,...r])}async stop(){this.beginStopNow();const n=this.stopResultPromise;return n||null}}function he(i){const n=i.srcObject;return n instanceof MediaStream?n.getVideoTracks().some(a=>a.readyState==="live"):!1}function et(i){const n=i.getBoundingClientRect();return Math.max(0,n.width)*Math.max(0,n.height)}function pe(i){const n=i.videoWidth||i.clientWidth,a=i.videoHeight||i.clientHeight;return n*a}function Qn(i){const n=new Map,a=new Map;for(const s of i){const r=s.srcObject;if(!(r instanceof MediaStream))continue;const u=r.getVideoTracks(),f=r.id&&String(r.id)||u.map(c=>c.id).filter(Boolean).join("|")||`${u.length}`,d=et(s),p=a.get(f)??0;d>=p&&(n.set(f,s),a.set(f,d))}return n.size===0?i:Array.from(n.values())}function Zn(i){if(i.length<2)return i;let n=0;for(const s of i)n=Math.max(n,et(s));return n<=1||Math.min(...i.map(s=>et(s)))/n>=.25?i:i.filter(s=>et(s)>=n*.25)}function to(i){let n=i;for(let a=0;a<12&&n;a++){const s=getComputedStyle(n).transform;if(s&&s!=="none"&&(/matrix\(\s*-1\s*,/.test(s)||/scaleX\(\s*-1/.test(s)))return!0;n=n.parentElement}return!1}function eo(i){const n=/local|self|pusher|mini[_-]?stream|preview[_-]?self|own[_-]?camera|tui-local|tencent-local|stream-local|publisher|send|pip|picture[_-]?in[_-]?picture/i,a=/remote|subscriber|peer|other|tui-remote|stream-remote|big-stream|play[_-]?stream|receiver|pull|substream/i;let s=i;for(let r=0;r<20&&s;r++){const u=`${s.className||""} ${s.id||""} ${s.getAttribute("data-type")||""}`;if(a.test(u))return!1;if(n.test(u))return!0;s=s.parentElement}return!1}async function no(i,n){const a=(n==null?void 0:n.preferRemote)!==!1,s=[i,...(n==null?void 0:n.extraRoots)||[]].filter(g=>!!g),r=new Set;for(const g of s)for(const w of g.querySelectorAll("video"))w instanceof HTMLVideoElement&&r.add(w);if(r.size===0){const g=document.querySelector(".chat-dialog-call-kit-wrapper");if(g)for(const w of g.querySelectorAll("video"))w instanceof HTMLVideoElement&&r.add(w)}r.size===0&&document.body.querySelectorAll("video").forEach(g=>{g instanceof HTMLVideoElement&&he(g)&&r.add(g)});let u=Array.from(r).filter(g=>g.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&he(g));if(u.length===0&&(u=Array.from(r).filter(g=>g.readyState>=2)),u.length===0)return null;u=Qn(u);let f=null,d=0,p=0;if(a){const g=u.map(C=>({v:C,layout:et(C),pixel:pe(C),localClass:eo(C),mirror:to(C)}));let w=g.filter(C=>!C.localClass&&!C.mirror);w.length===0&&(w=g.filter(C=>!C.localClass)),w.length===0&&(w=g.filter(C=>!C.mirror)),w.length===0&&(w=g);let O=w.map(C=>C.v);O=Zn(O),w=w.filter(C=>O.includes(C.v));for(const C of w)(C.layout>d||C.layout===d&&C.pixel>p)&&(d=C.layout,p=C.pixel,f=C.v)}else for(const g of u){const w=et(g),O=pe(g);(w>d||w===d&&O>p)&&(d=w,p=O,f=g)}if(!f)return null;const c=f.videoWidth||f.clientWidth,m=f.videoHeight||f.clientHeight;if(!c||!m)return null;const _=document.createElement("canvas");_.width=c,_.height=m;const D=_.getContext("2d");if(!D)return null;try{D.drawImage(f,0,0,c,m)}catch{return null}return new Promise(g=>{_.toBlob(w=>g(w),"image/jpeg",.92)})}function oo(i){const n=[];let a=i,s=0;for(;a!=null&&s<6;){if(typeof a=="string"){n.push(a);break}if(typeof a=="object"){const r=a;typeof r.message=="string"&&n.push(r.message),typeof r.name=="string"&&n.push(r.name),typeof r.code<"u"&&n.push(String(r.code)),a=r.cause}else{n.push(String(a));break}s++}return n.join(" ").toLowerCase()}const ge=-1001;function tt(i){if(i&&typeof i=="object"){const a=i,s=a.code??a.error_code;if(s===ge||s===String(ge))return!0}const n=oo(i);return n.includes("does not support this ability")||n.includes("package you purchased")||n.includes("-1001")&&n.includes("does not support")}function Ce(){return"套餐欠费或未开通该能力,请联系管理员在腾讯云续费或升级套餐。"}function ao(i,n="通话操作失败"){return tt(i)?Ce():i instanceof Error?i.message||n:typeof i=="string"&&i||n}const io={key:0,class:"chat-uikit-custom-msg"},so={key:0,class:"chat-uikit-custom-msg__tag"},ro={class:"chat-uikit-custom-msg__main"},lo={key:1,class:"chat-uikit-custom-msg__sub"},co={key:1,class:"chat-uikit-custom-msg chat-uikit-custom-msg--plain"},uo={class:"chat-uikit-custom-msg__main"},fo={key:2,class:"chat-uikit-custom-msg chat-uikit-custom-msg--plain"},mo={key:0,class:"chat-uikit-custom-msg__sub"},ho=Se({inheritAttrs:!1,__name:"ChatMessageItem",props:{message:{}},setup(i){const n=i,a=Un();function s(c){if(!c||typeof c!="object")return null;const m=c,_=m.data;if(typeof _=="string")return _;if(_&&typeof _=="object")return JSON.stringify(_);const D=m.extension;return typeof D=="string"&&D.trim().startsWith("{")?D:null}const r=q(()=>{var m;const c=(m=n.message)==null?void 0:m.type;return!!(c===En.CUSTOM||typeof c=="string"&&/custom/i.test(c))}),u=q(()=>{var m;if(!r.value)return null;const c=(m=s(n.message.payload))==null?void 0:m.trim();return c?Cn(c):null}),f=q(()=>r.value&&!!u.value),d=q(()=>{const c=n.message.payload,m=c==null?void 0:c.description;return typeof m=="string"&&m.trim()?m.trim():""}),p=q(()=>{var m;const c=(m=s(n.message.payload))==null?void 0:m.trim();return!c||c.length<2?"":c.length<=120?c:`${c.slice(0,117)}…`});return(c,m)=>f.value?(R(),H("div",io,[u.value.tag?(R(),H("span",so,G(u.value.tag),1)):B("",!0),A("div",ro,G(u.value.main),1),u.value.sub?(R(),H("div",lo,G(u.value.sub),1)):B("",!0)])):r.value&&d.value?(R(),H("div",co,[A("div",uo,G(d.value),1)])):r.value?(R(),H("div",fo,[m[0]||(m[0]=A("div",{class:"chat-uikit-custom-msg__main"},"系统消息",-1)),p.value?(R(),H("div",mo,G(p.value),1)):B("",!0)])):(R(),F(E(Tn),Pn({key:3},E(a),{message:i.message}),null,16,["message"]))}}),po=we(ho,[["__scopeId","data-v-1c506f55"]]);function go(i){if(i==null)return null;if(typeof i=="object"&&!Array.isArray(i))return i;if(typeof i!="string")return null;const n=i.trim();if(!n.startsWith("{"))return null;try{return JSON.parse(n)}catch{return null}}function ve(i){const n=i.toLowerCase();return["hangup","cancel","reject","timeout","linebusy","end"].includes(n)}function vo(i){const n=i.trim();if(!n)return!1;if(/\bcall_end\b/i.test(n)&&(/call_engine|call_record|rtc/i.test(n)||/"reason"\s*:\s*\d/.test(n))||/call_engine_srv\.[a-z_]*call[a-z_]*/i.test(n)&&/hangup|end|leave|reject|cancel/i.test(n))return!0;if(!n.startsWith("{"))return!1;let a;try{a=JSON.parse(n)}catch{return!1}if(a.businessID===1||a.businessID==="1"){const r=go(a.data);if(r){const u=String(r.cmd??"");if(ve(u))return!0}}if((a.businessID==="rtc_call"||typeof a.cmd=="string")&&ve(String(a.cmd??"")))return!0;const s=JSON.stringify(a);return!!(s.includes("call_engine_srv")&&/hangup|call_end|CALL_END|reject|cancel/i.test(s))}const yo=["title"],_o={class:"chat-container"},wo={key:0,class:"loading-container"},So={key:1,class:"error-container"},Co={key:2,class:"chat-content"},To={class:"chat-layout"},Eo={class:"message-toolbar"},Ao={class:"call-kit-drag-handle-left"},Io={key:0,class:"call-local-recording-hint"},ko={class:"call-kit-drag-handle-actions"},mt="idle",ht="calling",W="connected",ye=40,bo=100,Ro=1500,Mo=2600,Lo=667,_e=16,Do=Se({__name:"index",setup(i,{expose:n}){const a=y(""),s=y(!1),r=y(!1),u=y(!1),f=y(""),d=y(""),p=y(null),c=y(null),m=y("正在初始化..."),_=y(""),D=y(""),g=y(!1),w=y(!1),{login:O}=xn(),{setActiveConversation:C,createC2CConversation:Te,activeConversation:Ee}=Dn(),Ae=wn(),nt=y("");let K=null,X=null,Et=0;const P=new Jn,At=y(!1),ot=y(!1);let It=0,Y=null,at=null,pt=Promise.resolve(),kt=null;function J(){Y&&(clearTimeout(Y),Y=null)}function bt(e){At.value=!!(e!=null&&e.isLochostVod)}function gt(){return at||(at=(async()=>{if(J(),ot.value=!1,!At.value)return;P.beginStopNow();const e=kt??c.value;try{await pt}catch{}const t=await P.stop();if(!t){console.warn("[chat-dialog] 本地录制无有效文件(若通话较长仍出现,请换 Chrome 并看控制台是否有 MediaRecorder 报错)");return}if(e==null){M.msgWarning("缺少诊单信息,本地录制无法保存到通话记录");return}try{const o=await hn(t,`call-rec-${e}-${Date.now()}.webm`),l=o.uri||o.url;if(!l){M.msgError("上传成功但未返回文件地址");return}await gn({diagnosis_id:e,file_url:l}),M.msgSuccess("本地录制已上传并关联到通话记录")}catch(o){const l=o instanceof Error?o.message:String(o);console.warn("[chat-dialog] 本地录制上传/关联失败",o),M.msgError(l||"本地录制上传失败")}})().finally(()=>{at=null}),at)}function Ie(){const e=$.getData(z.CALL,N.ROOM_ID);if(e==null)return"";if(typeof e=="number")return e===0?"":String(e);const t=String(e).trim();return!t||t==="0"?"":t}function ke(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);if(!o)return"";const l=[o.roomId,o.roomID,o._roomId,o._roomID,o.strRoomID];for(const h of l){if(h==null||h==="")continue;const v=String(h).trim();if(v&&v!=="0")return v}}catch{}return""}function Rt(){return Ie()||ke()}function vt(e,t){if(t!=null&&String(t).trim()!==""&&String(t)!=="0")return String(t).trim();if(typeof e=="number"&&e>0)return String(e);if(typeof e=="string"){const o=e.trim();if(o&&o!=="0")return o}return""}function Kt(e){if(e==null||typeof e!="object")return"";const t=e,o=vt(t.roomID,t.strRoomID)||vt(t.roomId,t.strRoomId);if(o)return o;const l=t.data;if(l&&typeof l=="object"){const h=l,v=vt(h.roomID,h.strRoomID)||vt(h.roomId,h.strRoomId);if(v)return v}return""}function Q(){X&&(clearTimeout(X),X=null),Et=0}function be(){Q();const e=()=>{X=null;const t=$.getData(z.CALL,N.CALL_STATUS);if(t===mt||t!==ht&&t!==W)return;const o=Rt();if(o){rt(o);return}if(Et++,Et>=ye){console.warn("[chat-dialog] 仍未解析到有效房间号(已重试",ye,"次)");return}X=setTimeout(e,bo)};X=setTimeout(e,0)}async function $t(e){if(!(p.value==null||c.value==null)){await Nt();for(let t=0;t<40;t++){const o=Rt();if(o){await rt(o);return}await new Promise(l=>setTimeout(l,50))}console.warn("[chat-dialog] 发起通话后仍未解析到房间号(API:",e,")")}}function Re(){var l,h;const e=window;if(e.__zytEngineRoomCapture__)return;const t=(h=(l=x).getTUICallEngineInstance)==null?void 0:h.call(l);if(!t||typeof t.calls!="function")return;e.__zytEngineRoomCapture__=!0,t.__zytEngineRoomCapture__=!0;const o=v=>{const T=t[v];typeof T=="function"&&(t[v]=async function(...k){const U=await T.apply(t,k),V=Kt(U);return V&&rt(V),await $t("engine."+v),U})};o("calls"),o("call"),o("groupCall")}function Me(){const e=window;if(e.__zytHangupPreStop__)return;const t=x,o=t.hangup;typeof o=="function"&&(e.__zytHangupPreStop__=!0,t.hangup=function(...h){return P.beginStopNow(),o.apply(x,h)})}function zt(){var v,T;const e=window;if(e.__zytTrtcPreStop__)return;const t=(T=(v=x).getTUICallEngineInstance)==null?void 0:T.call(v),o=t==null?void 0:t.trtcCloud;if(!o||typeof o!="object")return;let l=0;const h=["stopLocalVideo","stopLocalAudio"];for(const I of h){const k=o[I];typeof k=="function"&&(o[I]=function(...V){return P.beginStopNow(),k.apply(o,V)},l++)}l>0&&(e.__zytTrtcPreStop__=!0)}let it=[],st=null,Bt=0;async function yt(){const e=kt??c.value;if(e==null){console.warn("[chat-dialog] endCall 跳过:无诊单 ID(快照与当前均为空)");return}try{await vn({diagnosis_id:e}),console.log("[chat-dialog] endCall 已同步",{diagnosis_id:e})}catch(t){console.warn("[chat-dialog] endCall 失败",t)}}function jt(e){const t=Date.now();t-Bt{if(!r.value)return;const l=_.value;if(!l)return;const h=l.startsWith("C2C")?l:`C2C${l}`,v=Array.isArray(o.data)?o.data:[];for(const T of v){if(!T||T.conversationID!==h)continue;const I=T.type;if(!(I===Z.TYPES.MSG_CUSTOM||I==="TIMCustomElem"||typeof I=="string"&&/custom/i.test(I)))continue;const U=T.payload,V=typeof(U==null?void 0:U.data)=="string"?U.data:"";if(!(!V||!vo(V))){jt("IM");break}}},t.on(Z.EVENT.MESSAGE_RECEIVED,st)}catch(t){console.warn("[chat-dialog] 绑定 IM 挂断监听失败",t)}}function Mt(){var e,t;if(st){try{const o=(e=fe)==null?void 0:e.chat;(t=o==null?void 0:o.off)==null||t.call(o,Z.EVENT.MESSAGE_RECEIVED,st)}catch{}st=null}}function De(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e),l=o==null?void 0:o.on;if(!o||typeof l!="function"||o.__zytRoomEvents)return;o.__zytRoomEvents=!0;const h=k=>{const U=Kt(k);if(U){rt(U);return}Lt()},v=()=>{jt("TUICallEngine")},T=[ft.TUICallEvent.CALL_END,ft.TUICallEvent.USER_LEAVE,ft.TUICallEvent.ON_CALL_NOT_CONNECTED];for(const k of T)l.call(o,k,v),it.push({event:k,fn:v});const I=[ft.TUICallEvent.USER_ENTER,ft.TUICallEvent.ON_CALL_BEGIN];for(const k of I)l.call(o,k,h),it.push({event:k,fn:h})}catch(o){console.warn("[chat-dialog] 绑定引擎房间事件失败",o)}}function xe(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);if(!(o!=null&&o.off)){it=[];return}for(const{event:l,fn:h}of it)o.off(l,h);o.__zytRoomEvents=!1}catch{}it=[]}function Ue(){const e=window;if(e.__zytTUICallRoomHooks__)return;e.__zytTUICallRoomHooks__=!0;const t=x,o=l=>{const h=t[l];typeof h=="function"&&(t[l]=async function(...T){const I=await h.apply(t,T);return await $t(l),I})};o("calls"),o("call"),o("groupCall")}async function rt(e){try{await pt}catch{}if(p.value==null||c.value==null)return;const t=`${c.value}:${e}`;if(t===nt.value){Q();return}nt.value=t;try{const o=await yn({diagnosis_id:c.value,room_id:e});Q(),console.log("[chat-dialog] bindCallRoom 成功",{room_id:e,bindRes:o});const l=o==null?void 0:o.cloud_recording;l&&l.started===!1&&l.message&&M.msgWarning(`云端合流录制未启动(关闭控制台全局录制后仅依赖 API):${l.message}`)}catch(o){console.warn("[chat-dialog] bindCallRoom 失败",o),nt.value=""}}async function Lt(){if(p.value==null||c.value==null)return;const e=$.getData(z.CALL,N.CALL_STATUS);if(e===mt){Q(),nt.value="";return}if(e!==ht&&e!==W)return;await Nt();const t=Rt();if(t){await rt(t);return}be()}async function Pe(){if(!(p.value==null||c.value==null))try{await _n({diagnosis_id:c.value,patient_id:p.value,call_type:2})}catch(e){console.warn("[chat-dialog] startCall 记录失败",e)}}function Ve(){K==null||K();let e=$.getData(z.CALL,N.CALL_STATUS)??mt;const t=l=>{const h=l??mt;if(h===mt){(e===ht||e===W)&&P.beginStopNow(),J(),ot.value=!1,(e===ht||e===W)&&(async()=>(await yt(),w.value=!1,await gt()))(),Q(),nt.value="",e=h;return}if(h===W){if(Lt(),J(),!At.value){e=h;return}const v=It,T=(I=0)=>{if(v!==It){console.log("[chat-dialog] 录制轮次已变化,取消启动");return}const k=xt.value,U=$.getData(z.CALL,N.CALL_STATUS);if(!k||U!==W){console.warn("[chat-dialog] 录制启动条件不满足",{root:!!k,status:U});return}console.log(`[chat-dialog] 尝试启动本地录制(第 ${I+1} 次)`);let V=Array.from(k.querySelectorAll("video"));if(V.length===0&&(V=Array.from(document.body.querySelectorAll("video")).filter(Ze=>{const ce=Ze.srcObject;return ce instanceof MediaStream?ce.getVideoTracks().some(tn=>tn.readyState==="live"):!1}),console.log("[chat-dialog] 在 body 中找到活跃视频:",V.length)),V.length===0){I<10?(console.warn("[chat-dialog] 未找到视频元素,300ms 后重试"),Y=setTimeout(()=>T(I+1),300)):console.error("[chat-dialog] 重试 10 次后仍未找到视频元素,放弃录制");return}if(!V.some(le=>le.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA)){I<10?(console.warn("[chat-dialog] 视频元素未就绪,300ms 后重试"),Y=setTimeout(()=>T(I+1),300)):console.error("[chat-dialog] 重试 10 次后视频仍未就绪,放弃录制");return}console.log("[chat-dialog] 视频元素已就绪,立即启动录制");const re=P.start(k);ot.value=re,re?console.log("[chat-dialog] ✅ 本地录制已成功启动"):console.error("[chat-dialog] 本地录制启动失败(MediaRecorder 或画布初始化失败)")};Y=setTimeout(()=>T(0),500)}else J();e=h},o=()=>{Lt()};$.watch(z.CALL,{[N.CALL_STATUS]:t,[N.ROOM_ID]:o}),K=()=>{try{$.unwatch(z.CALL,{[N.CALL_STATUS]:t,[N.ROOM_ID]:o})}catch{}Q(),K=null}}let Wt=0;function lt(){const e=Date.now();e-Wt{if(ct(...e),!r.value||!g.value)return;const t=e.map(o=>{if(typeof o=="string")return o;if(o instanceof Error)return o.message;try{return JSON.stringify(o)}catch{return String(o)}}).join(" ");tt(t)&<()})}function Ne(){_t&&ct&&(console.error=ct),_t=!1,ct=null}function Oe(){var e,t,o;try{const l=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);if(!(l!=null&&l.on))return;j&&((o=l.off)==null||o.call(l,"error",j)),j=h=>{!r.value||!g.value||tt(h)&<()},l.on("error",j)}catch(l){console.warn("绑定 TUICallEngine error 监听失败:",l)}}function Ke(){var e,t;try{const o=(t=(e=x).getTUICallEngineInstance)==null?void 0:t.call(e);o!=null&&o.off&&j&&o.off("error",j)}catch{}j=null}async function $e(e,t){try{const o=Z.create({SDKAppID:e}),l={businessID:"doctor_entered_consult_room",time:Date.now()},h=o.createCustomMessage({to:t,conversationType:Z.TYPES.CONV_C2C,payload:{data:JSON.stringify(l)}});await o.sendMessage(h),console.log("已发送医生进入诊室信令(患者端聊天列表不展示)")}catch(o){console.warn("发送医生进入诊室信令失败:",o)}}const Ft=e=>{!r.value||!g.value||tt(e.reason)&<()};Vn(()=>{He(),window.addEventListener("unhandledrejection",Ft)}),Hn(()=>{J(),P.reset(),K==null||K(),xe(),Mt(),Ne(),Ke(),window.removeEventListener("unhandledrejection",Ft)});const ze=async(e,t)=>{try{if(!e){console.warn("头像 URL 为空,跳过更新");return}console.log("开始更新头像到 IM:",e);const o=await new Promise((l,h)=>{setTimeout(async()=>{try{const T=await Z.create({SDKAppID:t}).updateMyProfile({avatar:e});console.log("IM 头像更新成功:",T),l(T)}catch(v){console.error("更新头像异常:",v),l(null)}},500)})}catch(o){console.error("IM 头像更新失败:",o.message||o)}};Nn(()=>Ee.value,async e=>{if(e){if(d.value=e.getShowName()||d.value,console.log("会话切换:",e.conversationID,"名称:",d.value,e),e.userProfile.userID.includes("doctor"))console.log("当前会话是医生,跳过获取 assistant_id");else try{const t=await Vt({patient_id:e.userProfile.userID.replace("patient_",""),diagnosis_id:c.value});bt(t),_.value=t.patientUserId,a.value=t.assistant_id,console.log("会话切换后获取到 assistant_id:",a.value,"完整响应:",t)}catch(t){console.error("获取 assistant_id 失败:",t)}console.log("会话切换完成,userID:",e.userProfile.userID)}});const Be=async e=>{r.value=!0,s.value=!1,wt.value=100,St.value=80,Qt(),d.value=e.patientName,p.value=e.patientId,c.value=e.diagnosisId||null,f.value="",u.value=!1,g.value=!1,w.value=!1,m.value="正在获取签名...";try{const t=await Vt({patient_id:e.patientId,diagnosis_id:e.diagnosisId||0});if(bt(t),a.value=t.assistant_id,console.log("后端返回的签名数据:",t),console.log("assistant_id:",a.value),!t||!t.userSig)throw new Error("获取签名失败");t.assistant_id||console.warn("警告:后端未返回 assistant_id,群视频通话可能无法正常工作"),_.value=t.patientUserId||`patient_${e.patientId}`,m.value="正在登录聊天...",await O({sdkAppId:Number(t.sdkAppId),userId:t.userId,userSig:t.userSig,useUploadPlugin:!0}),Le();const o=Number(t.sdkAppId);if(!window.__TUICallKitInited__){m.value="正在初始化通话能力...";try{await x.init({userID:t.userId,userSig:t.userSig,SDKAppID:o}),window.__TUICallKitInited__=!0}catch(l){console.warn("TUICallKit 初始化失败,聊天仍可用,音视频通话不可用:",(l==null?void 0:l.message)||l),tt(l)&<()}}g.value=!!window.__TUICallKitInited__,g.value&&(x.setCallback({beforeCalling:()=>{zt(),J(),P.reset(),ot.value=!1,It++,kt=c.value,Qt(),w.value=!0,pt=Pe()},afterCalling:()=>{P.beginStopNow(),(async()=>(await yt(),w.value=!1,await gt()))()}}),Ue(),Re(),Me(),zt(),De(),Ve(),Oe()),console.log("Chat UIKit 登录成功,患者用户ID:",_.value),m.value="加载聊天界面...",setTimeout(async()=>{var h;u.value=!0,await Nt(),await new Promise(v=>setTimeout(v,1e3));const l=(h=Ae.userInfo)==null?void 0:h.avatar;console.log("准备更新头像,avatar:",l),l&&await ze(l,o);try{const v=await Te(_.value);D.value=v.conversationID,console.log("已创建/获取会话:",D.value),C(D.value),console.log("已激活会话"),await $e(o,_.value)}catch(v){console.error("创建/激活会话失败:",v)}},800)}catch(t){console.error("初始化聊天失败:",t),f.value=t.message||"初始化聊天失败",M.msgError(f.value)}},je=async()=>{if(!g.value){M.msgWarning("通话服务初始化中,请稍后再试");return}if(!_.value){M.msgWarning("未找到患者通话ID,无法发起群视频");return}try{if(!a.value){console.warn("assistant_id 为空,尝试重新获取");const t=await Vt({patient_id:p.value,diagnosis_id:c.value});bt(t),a.value=t.assistant_id,console.log("重新获取 assistant_id:",a.value)}const e=[_.value,a.value].filter(t=>t);if(e.length<2){M.msgWarning("助理ID获取失败,无法发起群视频"),console.error("userIDList 不完整:",e,"assistant_ids:",a.value);return}console.log("发起群视频通话,参与者:",e),await x.calls({userIDList:e,type:Bn.VIDEO_CALL})}catch(e){console.error("发起群视频失败:",e),tt(e)?lt():M.msgError(ao(e,"发起群视频失败"))}},We=y(),wt=y(100),St=y(80),Dt=y(!1),qt=y(0),Gt=y(0),Xt=y(0),Yt=y(0),Jt=y(),xt=y(),ut=y(!1),Ct=y(0),Tt=y(0);function Qt(){Ct.value=_e,Tt.value=Math.max(_e,Math.floor((window.innerHeight-Lo)/2))}const Ut=y(!1),Zt=y(0),te=y(0),ee=y(0),ne=y(0),Fe=q(()=>({left:`${Ct.value}px`,top:`${Tt.value}px`})),qe=e=>{Ut.value=!0,Zt.value=e.clientX,te.value=e.clientY,ee.value=Ct.value,ne.value=Tt.value,document.addEventListener("mousemove",oe),document.addEventListener("mouseup",ae)},oe=e=>{Ut.value&&(Ct.value=Math.max(0,ee.value+e.clientX-Zt.value),Tt.value=Math.max(0,ne.value+e.clientY-te.value))},ae=()=>{Ut.value=!1,document.removeEventListener("mousemove",oe),document.removeEventListener("mouseup",ae)},Ge=async()=>{if(!ut.value){ut.value=!0;try{if(p.value==null){M.msgWarning("缺少患者信息,无法同步舌苔照片");return}const e=Jt.value,t=xt.value,o=e||t;if(!o)return;const l=await no(o,{extraRoots:[t].filter(Boolean)});if(!l){M.msgWarning("截屏失败,请确认视频画面已加载");return}const h=await mn(l,`callshot-${Date.now()}.jpg`),v=h.url||h.uri;if(!v){M.msgError("上传未返回图片路径");return}if(c.value==null){M.msgWarning("请先保存诊单后再从视频同步舌苔照片");return}await pn({diagnosis_id:c.value,tongue_images:[v]}),M.msgSuccess("舌苔照片已保存")}catch(e){const t=e;console.error(t),M.msgError((t==null?void 0:t.message)||"上传失败")}finally{ut.value=!1}}},Xe=async()=>{if(g.value)try{P.beginStopNow(),await gt(),await x.hangup()}catch(e){console.warn("关闭视频窗口时挂断失败:",e)}w.value=!1},Ye=q(()=>({left:`${wt.value}px`,top:`${St.value}px`})),Je=e=>{const t=e.target;t.closest(".chat-close-btn")||t.closest(".chat-header-actions")||(Dt.value=!0,qt.value=e.clientX,Gt.value=e.clientY,Xt.value=wt.value,Yt.value=St.value,document.addEventListener("mousemove",ie),document.addEventListener("mouseup",se))},ie=e=>{Dt.value&&(wt.value=Math.max(0,Xt.value+e.clientX-qt.value),St.value=Math.max(0,Yt.value+e.clientY-Gt.value))},se=()=>{Dt.value=!1,document.removeEventListener("mousemove",ie),document.removeEventListener("mouseup",se)},Qe=async()=>{if(Mt(),g.value){const e=$.getData(z.CALL,N.CALL_STATUS);if(e===ht||e===W)try{P.beginStopNow(),await gt(),await x.hangup()}catch(t){console.warn("挂断通话时出错:",t)}}c.value!=null&&await yt(),r.value=!1,w.value=!1};return n({open:Be}),(e,t)=>{const o=on,l=an,h=sn,v=rn;return R(),F(Kn,{to:"body"},[Ht(A("div",{ref_key:"chatWindowRef",ref:We,class:$n(["chat-floating-window",{"chat-floating-window--minimized":s.value}]),style:de(Ye.value)},[A("div",{class:"chat-window-header",onMousedown:Je},[A("span",{class:"chat-window-title",title:d.value},"与 "+G(d.value)+" 通讯",9,yo),A("div",{class:"chat-header-actions",onMousedown:t[2]||(t[2]=dt(()=>{},["stop"]))},[S(l,{type:"danger",link:"",class:"chat-close-btn",onClick:Qe},{default:b(()=>[S(o,null,{default:b(()=>[S(E(ue))]),_:1})]),_:1}),s.value?(R(),F(h,{key:1,content:"展开聊天窗口",placement:"top"},{default:b(()=>[S(l,{type:"primary",link:"",class:"chat-expand-btn",onClick:t[1]||(t[1]=T=>s.value=!1)},{default:b(()=>[S(o,null,{default:b(()=>[S(E(cn))]),_:1}),t[6]||(t[6]=A("span",{class:"chat-header-btn-text"},"展开",-1))]),_:1})]),_:1})):(R(),F(h,{key:0,content:"缩小为标题条,不关闭会话",placement:"top"},{default:b(()=>[S(l,{type:"primary",link:"",class:"chat-minimize-btn",onClick:t[0]||(t[0]=T=>s.value=!0)},{default:b(()=>[S(o,null,{default:b(()=>[S(E(ln))]),_:1}),t[5]||(t[5]=A("span",{class:"chat-header-btn-text"},"缩小",-1))]),_:1})]),_:1}))],32)],32),Ht(A("div",_o,[u.value?f.value?(R(),H("div",So,[S(v,{title:f.value,type:"error",closable:!1},null,8,["title"])])):(R(),H("div",Co,[S(E(jn),{language:"zh-CN",theme:"light"},{default:b(()=>[A("div",To,[S(E(Sn),{class:"chat-area"},{default:b(()=>[S(E(An),{conversationID:D.value,Message:po},null,8,["conversationID"]),S(E(In),null,{headerToolbar:b(()=>[A("div",Eo,[S(E(kn)),S(E(bn)),S(E(Rn)),g.value?(R(),F(E(Mn),{key:0})):B("",!0),g.value?(R(),F(E(Ln),{key:1})):B("",!0),g.value?(R(),F(l,{key:2,size:"small",type:"primary",onClick:je},{default:b(()=>[...t[7]||(t[7]=[On(" 群视频 ",-1)])]),_:1})):B("",!0)])]),_:1})]),_:1})])]),_:1})])):(R(),H("div",wo,[S(o,{class:"is-loading"},{default:b(()=>[S(E(un))]),_:1}),A("span",null,G(m.value),1)]))],512),[[Pt,!s.value]]),g.value?Ht((R(),H("div",{key:0,ref_key:"callKitWrapperRef",ref:Jt,class:"chat-dialog-call-kit-wrapper",style:de(Fe.value)},[A("div",{class:"call-kit-drag-handle",onMousedown:qe},[A("div",Ao,[t[8]||(t[8]=A("span",{class:"drag-handle-text"},"视频通话",-1)),ot.value?(R(),H("span",Io,"本地录制中")):B("",!0)]),A("div",ko,[S(l,{type:"primary",link:"",class:"call-kit-screenshot-btn",loading:ut.value,disabled:ut.value,onMousedown:t[3]||(t[3]=dt(()=>{},["stop"])),onClick:dt(Ge,["stop","prevent"])},{default:b(()=>[S(o,null,{default:b(()=>[S(E(dn))]),_:1}),t[9]||(t[9]=A("span",{class:"call-kit-screenshot-text"},"截屏",-1))]),_:1},8,["loading","disabled"]),S(l,{type:"danger",link:"",class:"call-kit-close-btn",onMousedown:t[4]||(t[4]=dt(()=>{},["stop"])),onClick:dt(Xe,["stop"])},{default:b(()=>[S(o,null,{default:b(()=>[S(E(ue))]),_:1})]),_:1}),S(o,{class:"drag-handle-icon"},{default:b(()=>[S(E(fn))]),_:1})])],32),A("div",{ref_key:"callKitContentRef",ref:xt,class:"call-kit-content"},[S(E(zn),{allowedMinimized:!0,allowedFullScreen:!0,class:"chat-dialog-call-kit"})],512)],4)),[[Pt,w.value]]):B("",!0)],6),[[Pt,r.value]])])}}}),Na=we(Do,[["__scopeId","data-v-09c808b4"]]);export{Na as default}; diff --git a/server/public/admin/assets/index-C7ThElWL.js b/server/public/admin/assets/index-D1BQ-z9J.js similarity index 97% rename from server/public/admin/assets/index-C7ThElWL.js rename to server/public/admin/assets/index-D1BQ-z9J.js index e4ca5cd5..0c955b4a 100644 --- a/server/public/admin/assets/index-C7ThElWL.js +++ b/server/public/admin/assets/index-D1BQ-z9J.js @@ -1 +1 @@ -import{_ as G}from"./index-DbiC_Mh1.js";import{r as V,c as R,_ as T}from"./index-Nt5zMHcc.js";import{D as z,B as A,G as J,I as $,J as q,i as L,M,N as O,C as P}from"./element-plus-DFTWCWyi.js";import{f as C,as as Q,ak as i,I as _,a as e,aN as o,J as a,O as m,aP as x,G as y,F as j,ap as H,A as K}from"./@vue/runtime-core-C6bnekPw.js";import{y as d,r as W}from"./@vue/reactivity-DiY1c2vO.js";import{Q as X}from"./@vue/shared-mAAVTE9n.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";function Y(){return V.get({url:"/setting.hot_search/getConfig"})}function Z(u){return V.post({url:"/setting.hot_search/setConfig",params:u})}const tt={class:"hot-search"},et={class:"lg:flex"},ot={class:"flex-1 min-w-0"},st={class:"hot-search-phone mt-4 lg:mt-0 lg:ml-4 flex-none"},at={class:"hot-search-phone-content"},nt={class:"search-com"},rt={class:"search-con flex items-center px-[15px]"},lt={class:"hot-search-text"},it=C({name:"search"}),mt=C({...it,setup(u){const r=W({status:1,data:[]}),k=K(()=>r.data.filter(s=>s.name).sort((s,t)=>t.sort-s.sort)),f=async()=>{try{const s=await Y();for(const t in r)r[t]=s[t]}catch(s){console.log("获取=>",s)}},w=()=>{r.data.push({name:"",sort:0})},E=s=>{r.data.splice(s,1)},D=async()=>{try{await Z(r),f()}catch(s){console.log("保存=>",s)}};return f(),(s,t)=>{const h=$,B=J,I=A,N=z,g=q,p=L,v=P,c=O,S=M,U=R,F=G,b=Q("perms");return i(),_("div",tt,[e(g,{class:"!border-none",shadow:"never"},{default:o(()=>[e(N,{ref:"formRef",model:d(r),"label-width":"100px"},{default:o(()=>[e(I,{label:"功能状态",style:{"margin-bottom":"0"}},{default:o(()=>[a("div",null,[e(B,{modelValue:d(r).status,"onUpdate:modelValue":t[0]||(t[0]=n=>d(r).status=n)},{default:o(()=>[e(h,{value:1},{default:o(()=>[...t[1]||(t[1]=[m("开启",-1)])]),_:1}),e(h,{value:0},{default:o(()=>[...t[2]||(t[2]=[m("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),t[3]||(t[3]=a("div",{class:"form-tips"},"默认开启,关闭则前端不显示该功能",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),e(g,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[a("div",et,[a("div",ot,[e(p,{type:"primary",class:"mb-4",onClick:w},{default:o(()=>[...t[4]||(t[4]=[m("添加",-1)])]),_:1}),e(S,{size:"large",data:d(r).data},{default:o(()=>[e(c,{label:"关键词",prop:"describe","min-width":"160"},{default:o(({row:n})=>[e(v,{modelValue:n.name,"onUpdate:modelValue":l=>n.name=l,clearable:"",placeholder:"请输入关键字","show-word-limit":"",maxlength:"30"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"排序",prop:"describe","min-width":"160"},{default:o(({row:n})=>[e(v,{modelValue:n.sort,"onUpdate:modelValue":l=>n.sort=l,type:"number"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"操作","min-width":"80",fixed:"right"},{default:o(({$index:n})=>[x((i(),y(p,{type:"danger",link:"",onClick:l=>E(n)},{default:o(()=>[...t[5]||(t[5]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])),[[b,["setting:storage:edit"]]])]),_:1})]),_:1},8,["data"])]),a("div",st,[t[8]||(t[8]=a("div",{class:"mb-4 text-center"},"- 热搜预览图 -",-1)),a("div",at,[a("div",nt,[a("div",rt,[e(U,{name:"el-icon-Search",size:17}),t[6]||(t[6]=a("span",{class:"ml-[5px]"},"请输入关键词搜索",-1))])]),t[7]||(t[7]=a("div",{class:"hot-search-title"},"热门搜索",-1)),a("div",lt,[(i(!0),_(j,null,H(d(k),(n,l)=>(i(),_("span",{key:l},X(n.name),1))),128))])])])])]),_:1}),x((i(),y(F,null,{default:o(()=>[e(p,{type:"primary",onClick:D},{default:o(()=>[...t[9]||(t[9]=[m("保存",-1)])]),_:1})]),_:1})),[[b,["setting.hot_search/setConfig"]]])])}}}),Ht=T(mt,[["__scopeId","data-v-7cc9d6c3"]]);export{Ht as default}; +import{_ as G}from"./index-j275bAO5.js";import{r as V,c as R,_ as T}from"./index--WnM67ZH.js";import{D as z,B as A,G as J,I as $,J as q,i as L,M,N as O,C as P}from"./element-plus-DFTWCWyi.js";import{f as C,as as Q,ak as i,I as _,a as e,aN as o,J as a,O as m,aP as x,G as y,F as j,ap as H,A as K}from"./@vue/runtime-core-C6bnekPw.js";import{y as d,r as W}from"./@vue/reactivity-DiY1c2vO.js";import{Q as X}from"./@vue/shared-mAAVTE9n.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";function Y(){return V.get({url:"/setting.hot_search/getConfig"})}function Z(u){return V.post({url:"/setting.hot_search/setConfig",params:u})}const tt={class:"hot-search"},et={class:"lg:flex"},ot={class:"flex-1 min-w-0"},st={class:"hot-search-phone mt-4 lg:mt-0 lg:ml-4 flex-none"},at={class:"hot-search-phone-content"},nt={class:"search-com"},rt={class:"search-con flex items-center px-[15px]"},lt={class:"hot-search-text"},it=C({name:"search"}),mt=C({...it,setup(u){const r=W({status:1,data:[]}),k=K(()=>r.data.filter(s=>s.name).sort((s,t)=>t.sort-s.sort)),f=async()=>{try{const s=await Y();for(const t in r)r[t]=s[t]}catch(s){console.log("获取=>",s)}},w=()=>{r.data.push({name:"",sort:0})},E=s=>{r.data.splice(s,1)},D=async()=>{try{await Z(r),f()}catch(s){console.log("保存=>",s)}};return f(),(s,t)=>{const h=$,B=J,I=A,N=z,g=q,p=L,v=P,c=O,S=M,U=R,F=G,b=Q("perms");return i(),_("div",tt,[e(g,{class:"!border-none",shadow:"never"},{default:o(()=>[e(N,{ref:"formRef",model:d(r),"label-width":"100px"},{default:o(()=>[e(I,{label:"功能状态",style:{"margin-bottom":"0"}},{default:o(()=>[a("div",null,[e(B,{modelValue:d(r).status,"onUpdate:modelValue":t[0]||(t[0]=n=>d(r).status=n)},{default:o(()=>[e(h,{value:1},{default:o(()=>[...t[1]||(t[1]=[m("开启",-1)])]),_:1}),e(h,{value:0},{default:o(()=>[...t[2]||(t[2]=[m("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),t[3]||(t[3]=a("div",{class:"form-tips"},"默认开启,关闭则前端不显示该功能",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),e(g,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[a("div",et,[a("div",ot,[e(p,{type:"primary",class:"mb-4",onClick:w},{default:o(()=>[...t[4]||(t[4]=[m("添加",-1)])]),_:1}),e(S,{size:"large",data:d(r).data},{default:o(()=>[e(c,{label:"关键词",prop:"describe","min-width":"160"},{default:o(({row:n})=>[e(v,{modelValue:n.name,"onUpdate:modelValue":l=>n.name=l,clearable:"",placeholder:"请输入关键字","show-word-limit":"",maxlength:"30"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"排序",prop:"describe","min-width":"160"},{default:o(({row:n})=>[e(v,{modelValue:n.sort,"onUpdate:modelValue":l=>n.sort=l,type:"number"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"操作","min-width":"80",fixed:"right"},{default:o(({$index:n})=>[x((i(),y(p,{type:"danger",link:"",onClick:l=>E(n)},{default:o(()=>[...t[5]||(t[5]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])),[[b,["setting:storage:edit"]]])]),_:1})]),_:1},8,["data"])]),a("div",st,[t[8]||(t[8]=a("div",{class:"mb-4 text-center"},"- 热搜预览图 -",-1)),a("div",at,[a("div",nt,[a("div",rt,[e(U,{name:"el-icon-Search",size:17}),t[6]||(t[6]=a("span",{class:"ml-[5px]"},"请输入关键词搜索",-1))])]),t[7]||(t[7]=a("div",{class:"hot-search-title"},"热门搜索",-1)),a("div",lt,[(i(!0),_(j,null,H(d(k),(n,l)=>(i(),_("span",{key:l},X(n.name),1))),128))])])])])]),_:1}),x((i(),y(F,null,{default:o(()=>[e(p,{type:"primary",onClick:D},{default:o(()=>[...t[9]||(t[9]=[m("保存",-1)])]),_:1})]),_:1})),[[b,["setting.hot_search/setConfig"]]])])}}}),Ht=T(mt,[["__scopeId","data-v-7cc9d6c3"]]);export{Ht as default}; diff --git a/server/public/admin/assets/index-BO7ItocT.js b/server/public/admin/assets/index-D2g_xmnm.js similarity index 94% rename from server/public/admin/assets/index-BO7ItocT.js rename to server/public/admin/assets/index-D2g_xmnm.js index d8935013..7e053476 100644 --- a/server/public/admin/assets/index-BO7ItocT.js +++ b/server/public/admin/assets/index-D2g_xmnm.js @@ -1 +1 @@ -import{D as N,B as q,C as D,P as I,Q as K,i as R,J as $,M as A,N as J,q as M,L as O}from"./element-plus-DFTWCWyi.js";import{_ as j}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as G}from"./index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as S}from"./@vue/runtime-dom-DDAG46FW.js";import{b as g}from"./consumer-CKmJdevC.js";import{C as H,k as W}from"./index-Nt5zMHcc.js";import{u as X}from"./usePaging-VsbTxSU0.js";import{f as k,ac as Y,ar as Z,as as ee,ak as m,I as v,a as e,aN as r,F as te,ap as oe,G as _,O as u,aP as w,J as ae}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,a as re,r as le}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"flex justify-end mt-4"},ie=k({name:"consumerLists"}),Ze=k({...ie,setup(me){const l=le({keyword:"",channel:"",create_time_start:"",create_time_end:""}),{pager:i,getLists:p,resetPage:c,resetParams:C}=X({fetchFun:g,params:l});return Y(()=>{p()}),p(),(se,o)=>{const y=D,s=q,V=Q,h=K,E=I,d=R,x=G,T=N,f=$,P=M,n=J,B=Z("router-link"),L=A,U=j,z=ee("perms"),F=O;return m(),v("div",null,[e(f,{class:"!border-none",shadow:"never"},{default:r(()=>[e(T,{ref:"formRef",class:"mb-[-16px]",model:t(l),inline:!0},{default:r(()=>[e(s,{class:"w-[280px]",label:"用户信息"},{default:r(()=>[e(y,{modelValue:t(l).keyword,"onUpdate:modelValue":o[0]||(o[0]=a=>t(l).keyword=a),placeholder:"账号/昵称/手机号码",clearable:"",onKeyup:S(t(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(s,{label:"注册时间"},{default:r(()=>[e(V,{startTime:t(l).create_time_start,"onUpdate:startTime":o[1]||(o[1]=a=>t(l).create_time_start=a),endTime:t(l).create_time_end,"onUpdate:endTime":o[2]||(o[2]=a=>t(l).create_time_end=a)},null,8,["startTime","endTime"])]),_:1}),e(s,{class:"w-[280px]",label:"注册来源"},{default:r(()=>[e(E,{modelValue:t(l).channel,"onUpdate:modelValue":o[3]||(o[3]=a=>t(l).channel=a)},{default:r(()=>[(m(!0),v(te,null,oe(t(H),(a,b)=>(m(),_(h,{key:b,label:a,value:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(s,null,{default:r(()=>[e(d,{type:"primary",onClick:t(c)},{default:r(()=>[...o[5]||(o[5]=[u("查询",-1)])]),_:1},8,["onClick"]),e(d,{onClick:t(C)},{default:r(()=>[...o[6]||(o[6]=[u("重置",-1)])]),_:1},8,["onClick"]),e(x,{class:"ml-2.5","fetch-fun":t(g),params:t(l),"page-size":t(i).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),e(f,{class:"!border-none mt-4",shadow:"never"},{default:r(()=>[w((m(),_(L,{size:"large",data:t(i).lists},{default:r(()=>[e(n,{label:"头像","min-width":"100"},{default:r(({row:a})=>[e(P,{src:a.avatar,size:50},null,8,["src"])]),_:1}),e(n,{label:"昵称",prop:"nickname","min-width":"100"}),e(n,{label:"账号",prop:"account","min-width":"120"}),e(n,{label:"手机号码",prop:"mobile","min-width":"100"}),e(n,{label:"注册来源",prop:"channel","min-width":"100"}),e(n,{label:"注册时间",prop:"create_time","min-width":"120"}),e(n,{label:"操作",width:"120",fixed:"right"},{default:r(({row:a})=>[w((m(),_(d,{type:"primary",link:""},{default:r(()=>[e(B,{to:{path:t(W)("user.user/detail"),query:{id:a.id}}},{default:r(()=>[...o[7]||(o[7]=[u(" 详情 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[z,["user.user/detail"]]])]),_:1})]),_:1},8,["data"])),[[F,t(i).loading]]),ae("div",ne,[e(U,{modelValue:t(i),"onUpdate:modelValue":o[4]||(o[4]=a=>re(i)?i.value=a:null),onChange:t(p)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{Ze as default}; +import{D as N,B as q,C as D,P as I,Q as K,i as R,J as $,M as A,N as J,q as M,L as O}from"./element-plus-DFTWCWyi.js";import{_ as j}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as G}from"./index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as S}from"./@vue/runtime-dom-DDAG46FW.js";import{b as g}from"./consumer-CMvrcBkD.js";import{C as H,k as W}from"./index--WnM67ZH.js";import{u as X}from"./usePaging-VsbTxSU0.js";import{f as k,ac as Y,ar as Z,as as ee,ak as m,I as v,a as e,aN as r,F as te,ap as oe,G as _,O as u,aP as w,J as ae}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,a as re,r as le}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"flex justify-end mt-4"},ie=k({name:"consumerLists"}),Ze=k({...ie,setup(me){const l=le({keyword:"",channel:"",create_time_start:"",create_time_end:""}),{pager:i,getLists:p,resetPage:c,resetParams:C}=X({fetchFun:g,params:l});return Y(()=>{p()}),p(),(se,o)=>{const y=D,s=q,V=Q,h=K,E=I,d=R,x=G,T=N,f=$,P=M,n=J,B=Z("router-link"),L=A,U=j,z=ee("perms"),F=O;return m(),v("div",null,[e(f,{class:"!border-none",shadow:"never"},{default:r(()=>[e(T,{ref:"formRef",class:"mb-[-16px]",model:t(l),inline:!0},{default:r(()=>[e(s,{class:"w-[280px]",label:"用户信息"},{default:r(()=>[e(y,{modelValue:t(l).keyword,"onUpdate:modelValue":o[0]||(o[0]=a=>t(l).keyword=a),placeholder:"账号/昵称/手机号码",clearable:"",onKeyup:S(t(c),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(s,{label:"注册时间"},{default:r(()=>[e(V,{startTime:t(l).create_time_start,"onUpdate:startTime":o[1]||(o[1]=a=>t(l).create_time_start=a),endTime:t(l).create_time_end,"onUpdate:endTime":o[2]||(o[2]=a=>t(l).create_time_end=a)},null,8,["startTime","endTime"])]),_:1}),e(s,{class:"w-[280px]",label:"注册来源"},{default:r(()=>[e(E,{modelValue:t(l).channel,"onUpdate:modelValue":o[3]||(o[3]=a=>t(l).channel=a)},{default:r(()=>[(m(!0),v(te,null,oe(t(H),(a,b)=>(m(),_(h,{key:b,label:a,value:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(s,null,{default:r(()=>[e(d,{type:"primary",onClick:t(c)},{default:r(()=>[...o[5]||(o[5]=[u("查询",-1)])]),_:1},8,["onClick"]),e(d,{onClick:t(C)},{default:r(()=>[...o[6]||(o[6]=[u("重置",-1)])]),_:1},8,["onClick"]),e(x,{class:"ml-2.5","fetch-fun":t(g),params:t(l),"page-size":t(i).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),e(f,{class:"!border-none mt-4",shadow:"never"},{default:r(()=>[w((m(),_(L,{size:"large",data:t(i).lists},{default:r(()=>[e(n,{label:"头像","min-width":"100"},{default:r(({row:a})=>[e(P,{src:a.avatar,size:50},null,8,["src"])]),_:1}),e(n,{label:"昵称",prop:"nickname","min-width":"100"}),e(n,{label:"账号",prop:"account","min-width":"120"}),e(n,{label:"手机号码",prop:"mobile","min-width":"100"}),e(n,{label:"注册来源",prop:"channel","min-width":"100"}),e(n,{label:"注册时间",prop:"create_time","min-width":"120"}),e(n,{label:"操作",width:"120",fixed:"right"},{default:r(({row:a})=>[w((m(),_(d,{type:"primary",link:""},{default:r(()=>[e(B,{to:{path:t(W)("user.user/detail"),query:{id:a.id}}},{default:r(()=>[...o[7]||(o[7]=[u(" 详情 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[z,["user.user/detail"]]])]),_:1})]),_:1},8,["data"])),[[F,t(i).loading]]),ae("div",ne,[e(U,{modelValue:t(i),"onUpdate:modelValue":o[4]||(o[4]=a=>re(i)?i.value=a:null),onChange:t(p)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{Ze as default}; diff --git a/server/public/admin/assets/index-B81hG-qX.js b/server/public/admin/assets/index-DIRz-m-f.js similarity index 98% rename from server/public/admin/assets/index-B81hG-qX.js rename to server/public/admin/assets/index-DIRz-m-f.js index 0725c853..7c75a95d 100644 --- a/server/public/admin/assets/index-B81hG-qX.js +++ b/server/public/admin/assets/index-DIRz-m-f.js @@ -1 +1 @@ -import{i as E,M as N,N as B,T as D,L,J as P}from"./element-plus-DFTWCWyi.js";import{_ as J}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{J as $,k,c as R,i as j,K as q}from"./index-Nt5zMHcc.js";import{u as F}from"./usePaging-VsbTxSU0.js";import{f as w,ar as G,as as H,ak as r,I,a as t,aN as o,aP as d,G as n,O as s,H as f,J as g}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as K}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const M={class:"flex"},O={class:"flex justify-end mt-4"},U=w({name:"scheduledTask"}),Jt=w({...U,setup(z){const{pager:p,getLists:c}=F({fetchFun:$,params:{}}),v=async b=>{await j.confirm("确定要删除?"),await q({id:b}),c()};return c(),(b,e)=>{const h=R,m=E,y=G("router-link"),a=B,u=D,x=N,C=J,T=P,_=H("perms"),V=L;return r(),I("div",null,[t(T,{shadow:"never",class:"!border-none"},{default:o(()=>[d((r(),n(y,{to:l(k)("crontab.crontab/add:edit")},{default:o(()=>[t(m,{type:"primary",class:"mb-[16px]"},{icon:o(()=>[t(h,{name:"el-icon-Plus"})]),default:o(()=>[e[1]||(e[1]=s(" 新增 ",-1))]),_:1})]),_:1},8,["to"])),[[_,["crontab.crontab/add","crontab.crontab/add:edit"]]]),d((r(),n(x,{ref:"paneTable",class:"m-t-24",data:l(p).lists,style:{width:"100%"}},{default:o(()=>[t(a,{prop:"name",label:"名称","min-width":"120"}),t(a,{prop:"type_desc",label:"类型","min-width":"100"}),t(a,{prop:"command",label:"命令","min-width":"100"}),t(a,{prop:"params",label:"参数","min-width":"80"}),t(a,{prop:"expression",label:"规则","min-width":"100"}),t(a,{prop:"status",label:"状态","min-width":"100"},{default:o(({row:i})=>[i.status==1?(r(),n(u,{key:0,type:"success"},{default:o(()=>[...e[2]||(e[2]=[s("运行中",-1)])]),_:1})):f("",!0),i.status==2?(r(),n(u,{key:1,type:"info"},{default:o(()=>[...e[3]||(e[3]=[s("已停止",-1)])]),_:1})):f("",!0),i.status==3?(r(),n(u,{key:2,type:"danger"},{default:o(()=>[...e[4]||(e[4]=[s("错误",-1)])]),_:1})):f("",!0)]),_:1}),t(a,{prop:"error",label:"错误原因","min-width":"120"}),t(a,{prop:"last_time",label:"最后执行时间",width:"180"}),t(a,{prop:"time",label:"时长","min-width":"100"}),t(a,{prop:"max_time",label:"最大时长","min-width":"100"}),t(a,{label:"操作",width:"120",fixed:"right"},{default:o(({row:i})=>[g("div",M,[t(m,{type:"primary",link:""},{default:o(()=>[d((r(),n(y,{to:{path:l(k)("crontab.crontab/add:edit"),query:{id:i.id}}},{default:o(()=>[t(m,{type:"primary",link:""},{default:o(()=>[...e[5]||(e[5]=[s(" 编辑 ",-1)])]),_:1})]),_:1},8,["to"])),[[_,["crontab.crontab/edit","crontab.crontab/add:edit"]]])]),_:2},1024),d((r(),n(m,{type:"danger",link:"",onClick:A=>v(i.id)},{default:o(()=>[...e[6]||(e[6]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[_,["crontab.crontab/delete"]]])])]),_:1})]),_:1},8,["data"])),[[V,l(p).loading]]),g("div",O,[t(C,{modelValue:l(p),"onUpdate:modelValue":e[0]||(e[0]=i=>K(p)?p.value=i:null),onChange:l(c)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{Jt as default}; +import{i as E,M as N,N as B,T as D,L,J as P}from"./element-plus-DFTWCWyi.js";import{_ as J}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{J as $,k,c as R,i as j,K as q}from"./index--WnM67ZH.js";import{u as F}from"./usePaging-VsbTxSU0.js";import{f as w,ar as G,as as H,ak as r,I,a as t,aN as o,aP as d,G as n,O as s,H as f,J as g}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,a as K}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const M={class:"flex"},O={class:"flex justify-end mt-4"},U=w({name:"scheduledTask"}),Jt=w({...U,setup(z){const{pager:p,getLists:c}=F({fetchFun:$,params:{}}),v=async b=>{await j.confirm("确定要删除?"),await q({id:b}),c()};return c(),(b,e)=>{const h=R,m=E,y=G("router-link"),a=B,u=D,x=N,C=J,T=P,_=H("perms"),V=L;return r(),I("div",null,[t(T,{shadow:"never",class:"!border-none"},{default:o(()=>[d((r(),n(y,{to:l(k)("crontab.crontab/add:edit")},{default:o(()=>[t(m,{type:"primary",class:"mb-[16px]"},{icon:o(()=>[t(h,{name:"el-icon-Plus"})]),default:o(()=>[e[1]||(e[1]=s(" 新增 ",-1))]),_:1})]),_:1},8,["to"])),[[_,["crontab.crontab/add","crontab.crontab/add:edit"]]]),d((r(),n(x,{ref:"paneTable",class:"m-t-24",data:l(p).lists,style:{width:"100%"}},{default:o(()=>[t(a,{prop:"name",label:"名称","min-width":"120"}),t(a,{prop:"type_desc",label:"类型","min-width":"100"}),t(a,{prop:"command",label:"命令","min-width":"100"}),t(a,{prop:"params",label:"参数","min-width":"80"}),t(a,{prop:"expression",label:"规则","min-width":"100"}),t(a,{prop:"status",label:"状态","min-width":"100"},{default:o(({row:i})=>[i.status==1?(r(),n(u,{key:0,type:"success"},{default:o(()=>[...e[2]||(e[2]=[s("运行中",-1)])]),_:1})):f("",!0),i.status==2?(r(),n(u,{key:1,type:"info"},{default:o(()=>[...e[3]||(e[3]=[s("已停止",-1)])]),_:1})):f("",!0),i.status==3?(r(),n(u,{key:2,type:"danger"},{default:o(()=>[...e[4]||(e[4]=[s("错误",-1)])]),_:1})):f("",!0)]),_:1}),t(a,{prop:"error",label:"错误原因","min-width":"120"}),t(a,{prop:"last_time",label:"最后执行时间",width:"180"}),t(a,{prop:"time",label:"时长","min-width":"100"}),t(a,{prop:"max_time",label:"最大时长","min-width":"100"}),t(a,{label:"操作",width:"120",fixed:"right"},{default:o(({row:i})=>[g("div",M,[t(m,{type:"primary",link:""},{default:o(()=>[d((r(),n(y,{to:{path:l(k)("crontab.crontab/add:edit"),query:{id:i.id}}},{default:o(()=>[t(m,{type:"primary",link:""},{default:o(()=>[...e[5]||(e[5]=[s(" 编辑 ",-1)])]),_:1})]),_:1},8,["to"])),[[_,["crontab.crontab/edit","crontab.crontab/add:edit"]]])]),_:2},1024),d((r(),n(m,{type:"danger",link:"",onClick:A=>v(i.id)},{default:o(()=>[...e[6]||(e[6]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[_,["crontab.crontab/delete"]]])])]),_:1})]),_:1},8,["data"])),[[V,l(p).loading]]),g("div",O,[t(C,{modelValue:l(p),"onUpdate:modelValue":e[0]||(e[0]=i=>K(p)?p.value=i:null),onChange:l(c)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{Jt as default}; diff --git a/server/public/admin/assets/index-B4O8X2AF.js b/server/public/admin/assets/index-DIUEBs-A.js similarity index 94% rename from server/public/admin/assets/index-B4O8X2AF.js rename to server/public/admin/assets/index-DIUEBs-A.js index ec671a67..aef14229 100644 --- a/server/public/admin/assets/index-B4O8X2AF.js +++ b/server/public/admin/assets/index-DIUEBs-A.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-CsfWrQHN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DCW3HTOw.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/patient-BKtZKzsB.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-D9Zbpq2C.js","assets/appointment-BiJAofxT.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-D7UD5Dzu.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]); -import{_ as he}from"./jspdf-BsthCvR5.js";import{C as xa,i as Da,d as wa,P as Ea,Q as Aa,J as Ra,M as Na,N as Ia,T as $a,r as Sa,p as Ta,n as za,o as La,L as Pa,V as Fa,D as Oa,B as Wa,h as Ua,aa as qa,ab as Ma,U as Qa,v as Ya,e as Ba}from"./element-plus-DFTWCWyi.js";import{_ as Ha}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as ja,q as Ka}from"./@vue/runtime-dom-DDAG46FW.js";import{aj as be,a as Ga,K as Ja,ak as st,am as Xa,Y as lt,an as it,ao as Za,ap as en,aq as tn,ar as an}from"./tcm-DCW3HTOw.js";import{d as nn}from"./department-CSUh_x-a.js";import{i as sn}from"./order-6mkZv6ss.js";import{m as ln}from"./doctor-B7qEhSpt.js";import{u as on}from"./usePaging-VsbTxSU0.js";import{u as dn,m as ot,i as v,_ as rn}from"./index-Nt5zMHcc.js";import{g as dt}from"./weapp-BTxqP8mz.js";import{h as B}from"./perm-DkIPMPyD.js";import{e as rt,X as un,O as ut,b as mn,G as pn,H as cn,l as _n}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as fn}from"./vue-router-QlpZ4wdW.js";import{d as mt}from"./dayjs-DG77mNTn.js";import{f as pt,w as vn,b as gn,d as yn,as as hn,ak as i,I as u,a as s,aN as l,J as r,F as x,ap as R,O as p,H as h,aP as q,G as g,P as ke,A as X}from"./@vue/runtime-core-C6bnekPw.js";import{o as ie,Q as c}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as M,r as Le,n as m}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const bn={class:"tcm-diagnosis"},kn={class:"filter-main"},Cn={class:"date-chips"},Vn=["onClick"],xn={key:0},Dn={class:"search-row"},wn={class:"filter-chips"},En=["onClick"],An=["onClick"],Rn={class:"filter-more"},Nn={class:"list-header"},In={class:"list-actions"},$n={key:0,class:"list-selected"},Sn={class:"table-wrap px-4"},Tn={class:"patient-cell"},zn={class:"patient-info"},Ln={class:"patient-name"},Pn={class:"patient-cell"},Fn={class:"patient-info"},On={class:"patient-name"},Wn={class:"apt-badge"},Un={class:"apt-doctor"},qn={class:"apt-time"},Mn={key:1,class:"apt-none"},Qn={key:0,class:"status-confirmed"},Yn={key:1,class:"status-unconfirmed"},Bn={key:0,class:"followup-cell"},Hn={class:"followup-time"},jn={class:"followup-doctor"},Kn={key:0,class:"followup-count"},Gn={key:1,class:"followup-none"},Jn={class:"assistant-cell"},Xn={class:"assistant-name"},Zn={key:0,class:"assistant-dept"},es={key:0,class:"prescription-status-cell"},ts={class:"prescription-times"},as={key:1,class:"status-unprescribed"},ns={class:"video-watch-col"},ss={class:"video-watch-trigger"},ls={key:1,class:"video-watch-muted"},is={key:1,class:"video-watch-muted"},os={class:"action-cell"},ds={class:"pagination-wrap"},rs={class:"flex flex-col items-center justify-center py-4"},us={key:0,class:"text-center"},ms={key:1,class:"text-center"},ps=["src"],cs={class:"mt-4 text-sm text-gray-600"},_s={class:"mt-2"},fs={key:2,class:"text-center text-gray-500"},vs={class:"text-gray-500"},gs={class:"text-gray-500"},ys={class:"font-medium"},hs={class:"font-medium"},bs={key:0,class:"mb-4"},ks={key:0},Cs={key:0,class:"mt-2"},Vs={key:1,class:"mt-2"},xs={class:"mb-4"},Ds={class:"flex gap-2"},ws={key:0,class:"text-center text-gray-400 py-10"},Es={key:1,class:"record-list"},As={class:"record-header"},Rs={class:"flex items-center gap-2"},Ns={class:"font-medium text-sm"},Is={class:"flex items-center gap-2"},$s={class:"text-xs text-gray-400"},Ss={class:"record-content"},Ts={key:0,class:"mt-1"},zs={key:2,class:"text-center mt-4"},Ls=pt({name:"tcmDiagnosis"}),Ps=pt({...Ls,setup(Fs){const ct=ke(()=>he(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),_t=ke(()=>he(()=>import("./detail-D9Zbpq2C.js"),__vite__mapDeps([99,45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,46,15]))),ft=ke(()=>he(()=>import("./appointment-BiJAofxT.js"),__vite__mapDeps([100,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,83,101]))),vt=ke(()=>he(()=>import("./AssistantWatchCallDialog-D7UD5Dzu.js"),__vite__mapDeps([102,1,2,3,4,5,6,7,8,9,10,11,12,13,14,103,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,104]))),gt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return mt(e).format("YYYY-MM-DD HH:mm:ss")},Pe={only_has_prescription:"1"},_=Le({patient_name:"",diagnosis_type:"",syndrome_type:"",assistant_dept_id:"",assistant_id:"",start_time:"",end_time:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",...Pe}),yt=m("all"),Z=m(!1),ht=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],bt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],kt=t=>{_.has_appointment=t,D.page=1,b(),I()},Ct=t=>{_.diagnosis_confirmed=t,D.page=1,b(),I()},ee=()=>{D.page=1,b(),I()},Vt=X(()=>[{label:"当天挂号",value:de.value},{label:"明天挂号",value:xe.value},{label:"后天挂号",value:De.value},{label:"全部",value:""}]),Ce=m({}),xt=async t=>{_.appointment_date=t,D.page=1,await b(),I()},Ve=t=>({...Pe,patient_name:_.patient_name,diagnosis_type:_.diagnosis_type,syndrome_type:_.syndrome_type,diagnosis_confirmed:_.diagnosis_confirmed,has_appointment:_.has_appointment,assistant_dept_id:_.assistant_dept_id,assistant_id:_.assistant_id,appointment_date:t,page_no:1,page_size:1}),I=async()=>{try{const[t,e,d]=await Promise.all([be(Ve(de.value)),be(Ve(xe.value)),be(Ve(De.value))]);Ce.value={[de.value]:(t==null?void 0:t.count)??0,[xe.value]:(e==null?void 0:e.count)??0,[De.value]:(d==null?void 0:d.count)??0}}catch(t){console.error("获取日期数量失败",t)}};function Dt(){const t=()=>I();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const wt=1e4;let oe=null;function Et(){typeof document<"u"&&document.hidden||(b({silent:!0}).catch(()=>{}),I())}const H=t=>String(t).padStart(2,"0"),de=X(()=>{const t=new Date;return`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),xe=X(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),De=X(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),Fe=m([]),Oe=m([]),z=m([]),We=m([]);function Ue(t,e="",d=[]){for(const o of t||[]){if(o==null)continue;const C=Number(o.id);if(!Number.isFinite(C))continue;const k=e?`${e} / ${o.name}`:String(o.name??"");d.push({id:C,label:k}),Array.isArray(o.children)&&o.children.length&&Ue(o.children,k,d)}return d}const qe=X(()=>{const t=_.assistant_dept_id;if(t===""||t==null)return z.value;const e=Number(t);return Number.isFinite(e)?z.value.filter(d=>{const o=d.dept_ids;return!Array.isArray(o)||o.length===0?!1:o.map(Number).includes(e)}):z.value}),At=()=>{const t=_.assistant_id;if(t!==""&&t!=null){const e=Number(t);qe.value.some(o=>Number(o.id)===e)||(_.assistant_id="")}D.page=1,b(),I()},Rt=async()=>{try{const[t,e,d,o]=await Promise.all([ot({type:"diagnosis_type"}),ot({type:"syndrome_type"}),Ga(),nn()]);Fe.value=(t==null?void 0:t.diagnosis_type)||[],Oe.value=(e==null?void 0:e.syndrome_type)||[],z.value=d||[],We.value=Ue(Array.isArray(o)?o:[])}catch(t){console.error("获取字典数据失败:",t)}},Me=t=>{if(t!==0&&!t)return null;const e=typeof t=="string"?parseInt(t,10):t;return z.value.find(d=>(typeof d.id=="string"?parseInt(d.id,10):d.id)===e)??null},Qe=t=>{if(!t&&t!==0||z.value.length===0)return"-";const e=Me(t);return e?e.name:"-"},Ye=t=>{const e=t.assistant_id||t.assistant,d=Qe(e),o=we(e);return d==="-"&&!o?"":o?`${d} / ${o}`:d},we=t=>{if(!t&&t!==0||z.value.length===0)return"";const e=Me(t),d=e==null?void 0:e.dept_names;return typeof d=="string"?d.trim():""},{pager:D,getLists:b}=on({fetchFun:be,params:_}),Be=()=>b({silent:!0}),Nt=()=>{yt.value="all",_.patient_name="",_.diagnosis_type="",_.syndrome_type="",_.assistant_dept_id="",_.assistant_id="",_.diagnosis_confirmed="",_.appointment_date="",_.has_appointment="",D.page=1,b(),I()},He=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(d=>d.is_confirmed==1)},It=({row:t})=>He(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",te=m(),$t=m(),je=m(),re=m(null),ue=dn();vn([te,re],()=>{const t=re.value,e=te.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),re.value=null)},{flush:"post"});const me=m(!1),Ke=m(0),St=t=>{var d;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((d=ue.userInfo)==null?void 0:d.id)},Tt=t=>{Ke.value=Number(t.id)||0,me.value=!0},zt=t=>St(t)&&B(["tcm.diagnosis/watchCall"]),pe=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},Lt=t=>{const e=t.video_call_hint,d="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${d}。开始时间:${gt(e.start_time)}`:d},Pt=t=>{const e=pe(t);return e==="live"||e==="pending_room"},Ft=t=>pe(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":Lt(t),Ot=t=>{if(pe(t)!=="live"){v.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}Tt(t)},Wt=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},Ut=t=>{const e=pe(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const d=t.video_call_hint;return(d==null?void 0:d.label)||"—"},j=m(!1),ce=m(),Ee=m(!1),f=Le({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),qt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Mt=t=>{var e;f.patient_id=t.patient_id||t.id,f.patient_name=t.patient_name,f.phone=t.phone||"",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!!t.has_appointment,f.appointment_time_text=t.appointment_time_text||"",(e=ce.value)==null||e.clearValidate(),j.value=!0},Qt=()=>{var t;f.patient_id="",f.patient_name="",f.phone="",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!1,f.appointment_time_text="",(t=ce.value)==null||t.clearValidate()},Yt=async()=>{var t;try{await((t=ce.value)==null?void 0:t.validate()),Ee.value=!0;const e=await sn({patient_id:f.patient_id,order_type:f.order_type,amount:f.amount,remark:f.remark});j.value=!1,b();const d=e==null?void 0:e.order_no;if(d){$.value=!0,L.value=!0,P.value="",F.value={patient_name:f.patient_name,has_appointment:f.has_appointment,appointment_time_text:f.appointment_time_text};try{const o=await Ja({order_no:d});o!=null&&o.qrcode_url?P.value=o.qrcode_url:v.msgError("二维码生成失败")}catch(o){v.msgError((o==null?void 0:o.msg)||"生成二维码失败")}finally{L.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Ee.value=!1}},$=m(!1),L=m(!1),P=m(""),F=m(null),Bt=X(()=>{const t=F.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Ae=m("小程序二维码"),Re=m("confirm"),O=m([]),Q=m(!1),Ne=m(!1),ae=m("batch"),ne=m(null),W=m({assistant_id:null}),Ht=t=>{O.value=t.map(e=>e.id)},jt=t=>{ae.value="single",ne.value=t,W.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,Q.value=!0},Kt=()=>{if(O.value.length===0){v.msgWarning("请先选择要指派的诊单");return}ae.value="batch",ne.value=null,W.value.assistant_id=null,Q.value=!0},Gt=async()=>{if(!W.value.assistant_id){v.msgWarning("请选择医助");return}Ne.value=!0;try{if(ae.value==="single")await st({id:ne.value.id,assistant_id:W.value.assistant_id});else{const t=O.value.map(e=>st({id:e,assistant_id:W.value.assistant_id}));await Promise.all(t),O.value=[]}Q.value=!1,b()}catch(t){console.error("指派失败:",t)}finally{Ne.value=!1}},Jt=()=>{te.value.open("add")},Xt=t=>{te.value.open("edit",t)},Zt=async t=>{await v.confirm("确定要删除该诊单吗?"),await tn({id:t}),b()},ea=(t,e)=>{switch(t){case"assign":jt(e);break;case"videoQr":if(!se(e)){v.msgWarning("仅「已预约」状态可生成视频二维码");return}Xe(e);break;case"confirmQr":Ze(e);break;case"cancelApt":na(e);break;case"order":Mt(e);break;case"delete":Zt(e.id);break}},ta=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},aa=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},se=t=>t.has_appointment&&Number(t.appointment_status)===1,Ge=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},na=async t=>{if(!Ge(t)){const e=Number(t.appointment_status);t.has_appointment&&e===3?v.msgWarning("已完成就诊,无法取消挂号"):v.msgWarning("该诊单未挂号或挂号信息异常");return}try{await v.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await ln({id:t.appointment_id}),v.msgSuccess("取消挂号成功"),b(),I()}catch(e){e!=="cancel"&&v.msgError((e==null?void 0:e.msg)||"取消挂号失败")}},sa=t=>{var e;if(!t.patient_id){v.msgWarning("患者信息不完整");return}(e=je.value)==null||e.open(t)},K=m(!1),Ie=m(!1),Je=m(),N=Le({id:0,patient_name:"",id_card:""}),la={id_card:[{required:!0,validator:(t,e,d)=>{if(!e){d(new Error("请输入身份证号"));return}const o=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),C=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);o||C?d():d(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},ia=t=>{N.id=t.id,N.patient_name=t.patient_name||"-",N.id_card=t.id_card||"",K.value=!0},oa=async()=>{var t;await((t=Je.value)==null?void 0:t.validate()),Ie.value=!0;try{await Xa({id:N.id,id_card:N.id_card}),v.msgSuccess("补全成功,年龄已自动更新"),K.value=!1,b()}catch(e){v.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ie.value=!1}},Xe=async t=>{var e;if(!se(t)){v.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){v.msgWarning("患者信息不完整");return}Re.value="video",F.value=t,$.value=!0,L.value=!0,P.value="",Ae.value="视频二维码";try{const d=await dt();if(!(d!=null&&d.app_id)){v.msgError("小程序未配置,请先配置小程序信息"),$.value=!1;return}const o=await lt({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ue.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});o!=null&&o.qrcode_url?P.value=o.qrcode_url:v.msgError("二维码生成失败")}catch(d){v.msgError((d==null?void 0:d.msg)||"生成二维码失败,请重试")}finally{L.value=!1}},Ze=async t=>{if(!se(t)){v.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){v.msgWarning("患者信息不完整");return}Re.value="confirm",F.value=t,$.value=!0,L.value=!0,P.value="",Ae.value="诊单二维码";try{const e=await dt();if(!(e!=null&&e.app_id)){v.msgError("小程序未配置,请先配置小程序信息"),$.value=!1;return}const d=ue.userInfo,o=await lt({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(d==null?void 0:d.id)||""});o!=null&&o.qrcode_url?P.value=o.qrcode_url:v.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),v.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{L.value=!1}},da=()=>{F.value&&(Re.value==="video"?Xe(F.value):Ze(F.value))},_e=m(!1),w=m(null),U=m([]),fe=m(0),$e=m(!1),E=m(null),Y=m(""),Se=m(!1),Te=m(1),ra=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return mt(e).format("YYYY-MM-DD HH:mm")},ua=async t=>{w.value=t,_e.value=!0,U.value=[],fe.value=0,E.value=null,Y.value="",Te.value=1,$e.value=!0;try{const[e,d]=await Promise.all([it({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),an({patient_id:t.patient_id||t.id}).catch(()=>null)]);U.value=(e==null?void 0:e.lists)||[],fe.value=(e==null?void 0:e.count)||0,E.value=d}catch(e){console.error("加载企业微信记录失败:",e)}finally{$e.value=!1}},ma=async()=>{if(w.value){Te.value++;try{const t=await it({diagnosis_id:w.value.id,patient_id:w.value.patient_id,page_no:Te.value,page_size:20});U.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},pa=async()=>{var t;if(!Y.value.trim()){v.msgWarning("请输入内容");return}Se.value=!0;try{await Za({diagnosis_id:w.value.id,patient_id:w.value.patient_id,content:Y.value.trim(),msg_type:"note",staff_name:((t=ue.userInfo)==null?void 0:t.name)||"",external_name:w.value.patient_name||""}),Y.value="",ua(w.value)}catch(e){v.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Se.value=!1}},ca=async t=>{await v.confirm("确定删除该记录吗?");try{await en({id:t}),U.value=U.value.filter(e=>e.id!==t),fe.value--}catch(e){v.msgError((e==null?void 0:e.msg)||"删除失败")}},_a=fn();return gn(()=>{_.appointment_date=de.value,Rt(),b(),Dt(),oe=setInterval(Et,wt);const t=_a.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(re.value=e)}}),yn(()=>{oe!=null&&(clearInterval(oe),oe=null)}),(t,e)=>{var nt;const d=xa,o=Da,C=wa,k=Aa,G=Ea,et=Ra,A=Ia,S=$a,tt=Sa,J=La,fa=za,va=Ta,ga=Na,ya=Ha,ve=Fa,T=Wa,ze=Oa,ha=Ua,ge=Ma,ba=qa,ka=Qa,Ca=Ya,Va=Ba,le=hn("perms"),at=Pa;return i(),u("div",bn,[s(et,{class:"filter-card !border-none",shadow:"never"},{default:l(()=>[r("div",kn,[r("div",Cn,[(i(!0),u(x,null,R(Vt.value,a=>(i(),u("span",{key:a.value,class:ie(["chip",{active:n(_).appointment_date===a.value}]),onClick:V=>xt(a.value)},[p(c(a.label)+" ",1),a.value&&n(Ce)[a.value]!==void 0?(i(),u("em",xn,c(n(Ce)[a.value]),1)):h("",!0)],10,Vn))),128))]),r("div",Dn,[s(d,{modelValue:n(_).patient_name,"onUpdate:modelValue":e[0]||(e[0]=a=>n(_).patient_name=a),placeholder:"患者姓名",clearable:"",class:"search-input",onKeyup:ja(ee,["enter"])},null,8,["modelValue"]),s(o,{type:"primary",onClick:ee},{default:l(()=>[...e[24]||(e[24]=[p("查询",-1)])]),_:1})])]),r("div",wn,[e[25]||(e[25]=r("span",{class:"chip-label"},"挂号:",-1)),(i(),u(x,null,R(ht,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).has_appointment===a.value}]),onClick:V=>kt(a.value)},c(a.label),11,En)),64)),e[26]||(e[26]=r("span",{class:"chip-divider"},null,-1)),e[27]||(e[27]=r("span",{class:"chip-label"},"确认:",-1)),(i(),u(x,null,R(bt,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).diagnosis_confirmed===a.value}]),onClick:V=>Ct(a.value)},c(a.label),11,An)),64)),s(o,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[1]||(e[1]=a=>Z.value=!n(Z))},{default:l(()=>[p(c(n(Z)?"收起":"更多筛选")+" ",1),s(C,{class:ie({"rotate-180":n(Z)})},{default:l(()=>[s(n(rt))]),_:1},8,["class"])]),_:1})]),q(r("div",Rn,[s(G,{modelValue:n(_).assistant_dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>n(_).assistant_dept_id=a),placeholder:"医助部门",clearable:"",filterable:"",size:"small",class:"filter-dept-select",onChange:At},{default:l(()=>[(i(!0),u(x,null,R(n(We),a=>(i(),g(k,{key:a.id,label:a.label,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(G,{modelValue:n(_).diagnosis_type,"onUpdate:modelValue":e[3]||(e[3]=a=>n(_).diagnosis_type=a),placeholder:"诊断类型",clearable:"",size:"small",onChange:ee},{default:l(()=>[(i(!0),u(x,null,R(n(Fe),a=>(i(),g(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(G,{modelValue:n(_).syndrome_type,"onUpdate:modelValue":e[4]||(e[4]=a=>n(_).syndrome_type=a),placeholder:"证型",clearable:"",size:"small",onChange:ee},{default:l(()=>[(i(!0),u(x,null,R(n(Oe),a=>(i(),g(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(G,{modelValue:n(_).assistant_id,"onUpdate:modelValue":e[5]||(e[5]=a=>n(_).assistant_id=a),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:ee},{default:l(()=>[(i(!0),u(x,null,R(qe.value,a=>(i(),g(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(o,{size:"small",onClick:Nt},{default:l(()=>[...e[28]||(e[28]=[p("重置",-1)])]),_:1})],512),[[Ka,n(Z)]])]),_:1}),s(et,{class:"!border-none mt-3 list-card",shadow:"never"},{default:l(()=>[r("div",Nn,[r("div",In,[q((i(),g(o,{type:"primary",onClick:Jt},{default:l(()=>[...e[29]||(e[29]=[p("新增诊单",-1)])]),_:1})),[[le,["tcm.diagnosis/add"]]]),q((i(),g(o,{type:"success",onClick:Kt,disabled:n(O).length===0},{default:l(()=>[...e[30]||(e[30]=[p(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[le,["tcm.diagnosis/assign"]]])]),n(O).length>0?(i(),u("div",$n,"已选 "+c(n(O).length)+" 条",1)):h("",!0)]),r("div",Sn,[q((i(),g(ga,{data:n(D).lists,size:"default",onSelectionChange:Ht,"row-class-name":It,class:"diagnosis-table",stripe:""},{default:l(()=>[s(A,{type:"selection",width:"48",align:"center"}),s(A,{label:"ID","min-width":"70"},{default:l(({row:a})=>[r("div",Tn,[r("div",zn,[r("div",Ln,[p(c(a.id)+" ",1),a.assign_read_at===null&&a.assistant_id>0?(i(),g(S,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:l(()=>[...e[31]||(e[31]=[p("NEW",-1)])]),_:1})):h("",!0)])])])]),_:1}),s(A,{label:"患者","min-width":"60"},{default:l(({row:a})=>[r("div",Pn,[r("div",Fn,[r("div",On,c(a.patient_name),1)])])]),_:1}),s(A,{label:" 性别 / 年龄",width:"100",align:"left"},{default:l(({row:a})=>[r("div",null,c(a.gender_desc||"-")+" · "+c(a.age??"-")+"岁",1)]),_:1}),s(A,{label:"挂号","min-width":"180"},{default:l(({row:a})=>[r("div",{class:ie(["appointment-cell",aa(a)])},[a.has_appointment?(i(),u(x,{key:0},[r("div",Wn,c(ta(a)),1),r("div",Un,c(a.appointment_doctor_name||"-"),1),r("div",qn,c(a.appointment_time_text||"-"),1)],64)):(i(),u("span",Mn,"未挂号"))],2)]),_:1}),s(A,{label:"确认",width:"88",align:"center"},{default:l(({row:a})=>[He(a)?(i(),u("span",Qn,"已确认")):(i(),u("span",Yn,"未确认"))]),_:1}),s(A,{label:"复诊","min-width":"150"},{default:l(({row:a})=>[a.has_prescription?(i(),u("div",Bn,[r("div",Hn,c(a.followup_time_text||"—"),1),r("div",jn,c(a.followup_doctor_name||"—"),1),a.followup_prescription_count>0?(i(),u("div",Kn," 第"+c(a.followup_prescription_count)+"次复诊 ",1)):h("",!0),a.followup_rx_voided?(i(),g(S,{key:1,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:l(()=>[...e[32]||(e[32]=[p(" 处方已作废 ",-1)])]),_:1})):h("",!0)])):(i(),u("span",Gn,"无"))]),_:1}),s(A,{label:"助理","min-width":"120"},{default:l(({row:a})=>[s(tt,{disabled:!Ye(a),content:Ye(a),placement:"top"},{default:l(()=>[r("div",Jn,[r("div",Xn,c(Qe(a.assistant_id||a.assistant)),1),we(a.assistant_id||a.assistant)?(i(),u("div",Zn,c(we(a.assistant_id||a.assistant)),1)):h("",!0)])]),_:2},1032,["disabled","content"])]),_:1}),s(A,{label:"开方","min-width":"96",align:"center"},{default:l(({row:a})=>[a.has_prescription?(i(),u("div",es,[e[33]||(e[33]=r("span",{class:"status-prescribed"},"已开方",-1)),r("span",ts,"("+c(a.followup_prescription_count||1)+"次)",1)])):(i(),u("span",as,"未开方"))]),_:1}),s(A,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:l(({row:a})=>[r("div",ns,[zt(a)?(i(),u(x,{key:0},[Pt(a)?(i(),g(tt,{key:0,content:Ft(a),placement:"top"},{default:l(()=>[r("span",ss,[s(o,{type:"primary",link:"",size:"small",onClick:V=>Ot(a)},{default:l(()=>[...e[34]||(e[34]=[p(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(i(),u("span",ls,c(Wt(a)),1))],64)):(i(),u("span",is,c(Ut(a)),1))])]),_:1}),s(A,{label:"操作",width:"260",fixed:"right",align:"left"},{default:l(({row:a})=>[r("div",os,[q((i(),g(o,{type:"primary",link:"",size:"small",onClick:V=>Xt(a.id)},{default:l(()=>[...e[35]||(e[35]=[p("诊单",-1)])]),_:1},8,["onClick"])),[[le,["tcm.diagnosis/edit"]]]),q((i(),g(o,{type:"success",link:"",size:"small",onClick:V=>sa(a)},{default:l(()=>[...e[36]||(e[36]=[p("预约",-1)])]),_:1},8,["onClick"])),[[le,["tcm.diagnosis/guahao"]]]),q((i(),g(o,{type:"warning",link:"",size:"small",onClick:V=>ia(a)},{default:l(()=>[...e[37]||(e[37]=[p("补全身份证",-1)])]),_:1},8,["onClick"])),[[le,["tcm.diagnosis/edit"]]]),s(va,{trigger:"click",onCommand:V=>ea(V,a),placement:"bottom-end"},{dropdown:l(()=>[s(fa,null,{default:l(()=>[n(B)(["tcm.diagnosis/assign"])?(i(),g(J,{key:0,command:"assign"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(un))]),_:1}),e[39]||(e[39]=p("指派",-1))]),_:1})):h("",!0),se(a)&&n(B)(["tcm.diagnosis/videoQr"])?(i(),g(J,{key:1,command:"videoQr"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(ut))]),_:1}),e[40]||(e[40]=p("视频二维码",-1))]),_:1})):h("",!0),n(B)(["tcm.diagnosis/guahao"])&&se(a)?(i(),g(J,{key:2,command:"confirmQr"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(ut))]),_:1}),e[41]||(e[41]=p("二维码",-1))]),_:1})):h("",!0),Ge(a)&&n(B)(["tcm.diagnosis/guahao"])?(i(),g(J,{key:3,command:"cancelApt"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(mn))]),_:1}),e[42]||(e[42]=p("取消挂号",-1))]),_:1})):h("",!0),n(B)(["tcm.diagnosis/order"])?(i(),g(J,{key:4,command:"order"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(pn))]),_:1}),e[43]||(e[43]=p("创建订单",-1))]),_:1})):h("",!0),n(B)(["tcm.diagnosis/delete"])?(i(),g(J,{key:5,command:"delete",divided:""},{default:l(()=>[s(C,null,{default:l(()=>[s(n(cn))]),_:1}),e[44]||(e[44]=r("span",{class:"text-danger"},"删除",-1))]),_:1})):h("",!0)]),_:2},1024)]),default:l(()=>[s(o,{type:"info",link:"",size:"small"},{default:l(()=>[e[38]||(e[38]=p("更多",-1)),s(C,{class:"el-icon--right"},{default:l(()=>[s(n(rt))]),_:1})]),_:1})]),_:2},1032,["onCommand"])])]),_:1})]),_:1},8,["data"])),[[at,n(D).loading]]),r("div",ds,[s(ya,{modelValue:n(D),"onUpdate:modelValue":e[6]||(e[6]=a=>M(D)?D.value=a:null),onChange:n(b)},null,8,["modelValue","onChange"])])])]),_:1}),s(n(ct),{ref_key:"editRef",ref:te,onSuccess:Be},null,512),s(n(_t),{ref_key:"detailRef",ref:$t},null,512),s(n(ft),{ref_key:"appointmentRef",ref:je,onSuccess:Be},null,512),s(n(vt),{modelValue:n(me),"onUpdate:modelValue":e[7]||(e[7]=a=>M(me)?me.value=a:null),"diagnosis-id":n(Ke),onClosed:n(b)},null,8,["modelValue","diagnosis-id","onClosed"]),s(ve,{modelValue:n($),"onUpdate:modelValue":e[9]||(e[9]=a=>M($)?$.value=a:null),title:n(Ae),width:"400px","close-on-click-modal":!1},{footer:l(()=>[s(o,{onClick:e[8]||(e[8]=a=>$.value=!1)},{default:l(()=>[...e[47]||(e[47]=[p("关闭",-1)])]),_:1}),n(L)?h("",!0):(i(),g(o,{key:0,type:"primary",onClick:da},{default:l(()=>[...e[48]||(e[48]=[p(" 重新生成 ",-1)])]),_:1}))]),default:l(()=>{var a;return[r("div",rs,[n(L)?(i(),u("div",us,[s(C,{class:"is-loading",size:40},{default:l(()=>[s(n(_n))]),_:1}),e[45]||(e[45]=r("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):n(P)?(i(),u("div",ms,[r("img",{src:n(P),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,ps),r("div",cs,[r("div",null,"患者:"+c((a=n(F))==null?void 0:a.patient_name),1),r("div",_s,"挂号时间:"+c(Bt.value),1),e[46]||(e[46]=r("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(i(),u("div",fs," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),s(ve,{modelValue:n(Q),"onUpdate:modelValue":e[12]||(e[12]=a=>M(Q)?Q.value=a:null),title:n(ae)==="batch"?"批量指派医助":"指派医助",width:"500px"},{footer:l(()=>[s(o,{onClick:e[11]||(e[11]=a=>Q.value=!1)},{default:l(()=>[...e[49]||(e[49]=[p("取消",-1)])]),_:1}),s(o,{type:"primary",onClick:Gt,loading:n(Ne)},{default:l(()=>[...e[50]||(e[50]=[p(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(ze,{model:n(W),"label-width":"100px"},{default:l(()=>[s(T,{label:"选择医助",required:""},{default:l(()=>[s(G,{modelValue:n(W).assistant_id,"onUpdate:modelValue":e[10]||(e[10]=a=>n(W).assistant_id=a),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:"","value-key":"id"},{default:l(()=>[(i(!0),u(x,null,R(n(z),a=>(i(),g(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(ae)==="batch"?(i(),g(T,{key:0,label:"已选择"},{default:l(()=>[r("div",vs,c(n(O).length)+" 条诊单记录",1)]),_:1})):(i(),g(T,{key:1,label:"诊单信息"},{default:l(()=>{var a,V;return[r("div",gs,[r("div",null,"患者:"+c((a=n(ne))==null?void 0:a.patient_name),1),r("div",null,"诊断日期:"+c((V=n(ne))==null?void 0:V.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),s(ve,{modelValue:n(j),"onUpdate:modelValue":e[17]||(e[17]=a=>M(j)?j.value=a:null),title:"创建订单",width:"600px",onClose:Qt},{footer:l(()=>[s(o,{onClick:e[16]||(e[16]=a=>j.value=!1)},{default:l(()=>[...e[51]||(e[51]=[p("取消",-1)])]),_:1}),s(o,{type:"primary",onClick:Yt,loading:n(Ee)},{default:l(()=>[...e[52]||(e[52]=[p("创建订单",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(ze,{ref_key:"orderFormRef",ref:ce,model:n(f),rules:qt,"label-width":"100px"},{default:l(()=>[s(T,{label:"患者"},{default:l(()=>[r("span",ys,c(n(f).patient_name)+" ("+c(n(f).phone)+")",1)]),_:1}),s(T,{label:"订单类型",prop:"order_type"},{default:l(()=>[s(G,{modelValue:n(f).order_type,"onUpdate:modelValue":e[13]||(e[13]=a=>n(f).order_type=a),placeholder:"请选择",class:"w-full"},{default:l(()=>[s(k,{label:"挂号费",value:1}),s(k,{label:"问诊费",value:2}),s(k,{label:"药品费用",value:3}),s(k,{label:"首付费用",value:4}),s(k,{label:"尾款费用",value:5}),s(k,{label:"其他费用",value:6}),s(k,{label:"全部费用",value:7}),s(k,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),s(T,{label:"订单金额",prop:"amount"},{default:l(()=>[s(ha,{modelValue:n(f).amount,"onUpdate:modelValue":e[14]||(e[14]=a=>n(f).amount=a),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),s(T,{label:"备注",prop:"remark"},{default:l(()=>[s(d,{modelValue:n(f).remark,"onUpdate:modelValue":e[15]||(e[15]=a=>n(f).remark=a),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(ve,{modelValue:n(K),"onUpdate:modelValue":e[20]||(e[20]=a=>M(K)?K.value=a:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[21]||(e[21]=a=>n(N).id_card="")},{footer:l(()=>[s(o,{onClick:e[19]||(e[19]=a=>K.value=!1)},{default:l(()=>[...e[53]||(e[53]=[p("取消",-1)])]),_:1}),s(o,{type:"primary",onClick:oa,loading:n(Ie)},{default:l(()=>[...e[54]||(e[54]=[p("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(ze,{ref_key:"fillIdCardFormRef",ref:Je,model:n(N),rules:la,"label-width":"80px"},{default:l(()=>[s(T,{label:"患者"},{default:l(()=>[r("span",hs,c(n(N).patient_name),1)]),_:1}),s(T,{label:"身份证号",prop:"id_card"},{default:l(()=>[s(d,{modelValue:n(N).id_card,"onUpdate:modelValue":e[18]||(e[18]=a=>n(N).id_card=a),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(Va,{modelValue:n(_e),"onUpdate:modelValue":e[23]||(e[23]=a=>M(_e)?_e.value=a:null),title:`企业微信记录 - ${((nt=n(w))==null?void 0:nt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:l(()=>{var a,V;return[n(E)?(i(),u("div",bs,[s(ba,{column:2,border:"",size:"small"},{default:l(()=>[s(ge,{label:"患者姓名"},{default:l(()=>{var y;return[p(c((y=n(w))==null?void 0:y.patient_name),1)]}),_:1}),s(ge,{label:"手机号"},{default:l(()=>[p(c(n(E).phone||"-"),1)]),_:1}),s(ge,{label:"企微联系人ID"},{default:l(()=>[n(E).external_userid?(i(),u("span",ks,c(n(E).external_userid),1)):(i(),g(S,{key:1,type:"info",size:"small"},{default:l(()=>[...e[55]||(e[55]=[p("未关联",-1)])]),_:1}))]),_:1}),s(ge,{label:"会话存档"},{default:l(()=>[n(E).msgaudit_enabled?(i(),g(S,{key:0,type:"success",size:"small"},{default:l(()=>[...e[56]||(e[56]=[p("已开通",-1)])]),_:1})):(i(),g(S,{key:1,type:"info",size:"small"},{default:l(()=>[...e[57]||(e[57]=[p("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(a=n(E).permit_users)!=null&&a.length?(i(),u("div",Cs,[e[58]||(e[58]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(i(!0),u(x,null,R(n(E).permit_users,y=>(i(),g(S,{key:y,size:"small",class:"mr-1"},{default:l(()=>[p(c(y),1)]),_:2},1024))),128))])):h("",!0),(V=n(E).msgaudit_agree)!=null&&V.length?(i(),u("div",Vs,[e[59]||(e[59]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(i(!0),u(x,null,R(n(E).msgaudit_agree,(y,ye)=>(i(),g(S,{key:ye,type:y.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:l(()=>[p(c(y.userid)+": "+c(y.agree_status==="Agree"?"已同意":y.agree_status),1)]),_:2},1032,["type"]))),128))])):h("",!0)])):h("",!0),s(ka),r("div",xs,[r("div",Ds,[s(d,{modelValue:n(Y),"onUpdate:modelValue":e[22]||(e[22]=y=>M(Y)?Y.value=y:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),s(o,{type:"primary",onClick:pa,loading:n(Se),class:"self-end"},{default:l(()=>[...e[60]||(e[60]=[p(" 添加 ",-1)])]),_:1},8,["loading"])])]),q((i(),u("div",null,[n(U).length===0?(i(),u("div",ws," 暂无聊天记录 ")):(i(),u("div",Es,[(i(!0),u(x,null,R(n(U),y=>{var ye;return i(),u("div",{key:y.id,class:"record-item"},[r("div",As,[r("div",Rs,[s(S,{type:y.direction===0?"primary":"success",size:"small"},{default:l(()=>[p(c(y.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),r("span",Ns,c(y.direction===0?y.staff_name:y.external_name||((ye=n(w))==null?void 0:ye.patient_name)),1),y.msg_type==="note"?(i(),g(S,{key:0,type:"warning",size:"small"},{default:l(()=>[...e[61]||(e[61]=[p("备注",-1)])]),_:1})):h("",!0)]),r("div",Is,[r("span",$s,c(ra(y.chat_time)),1),s(o,{type:"danger",link:"",size:"small",onClick:Ws=>ca(y.id)},{default:l(()=>[...e[62]||(e[62]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])])]),r("div",Ss,c(y.content),1),y.media_url?(i(),u("div",Ts,[s(Ca,{src:y.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[y.media_url]},null,8,["src","preview-src-list"])])):h("",!0)])}),128))])),n(fe)>n(U).length?(i(),u("div",zs,[s(o,{link:"",type:"primary",onClick:ma},{default:l(()=>[...e[63]||(e[63]=[p("加载更多",-1)])]),_:1})])):h("",!0)])),[[at,n($e)]])]}),_:1},8,["modelValue","title"])])}}}),$l=rn(Ps,[["__scopeId","data-v-d65a0220"]]);export{$l as default}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DiacXhqZ.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DzAQc_oE.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/patient-BNjmKCvA.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-BIA4i862.js","assets/appointment-CmXNV-jm.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-4k1wpmUn.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]); +import{_ as he}from"./jspdf-BsthCvR5.js";import{C as xa,i as Da,d as wa,P as Ea,Q as Aa,J as Ra,M as Na,N as Ia,T as $a,r as Sa,p as Ta,n as za,o as La,L as Pa,V as Fa,D as Oa,B as Wa,h as Ua,aa as qa,ab as Ma,U as Qa,v as Ya,e as Ba}from"./element-plus-DFTWCWyi.js";import{_ as Ha}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as ja,q as Ka}from"./@vue/runtime-dom-DDAG46FW.js";import{aj as be,a as Ga,K as Ja,ak as st,am as Xa,Y as lt,an as it,ao as Za,ap as en,aq as tn,ar as an}from"./tcm-DzAQc_oE.js";import{d as nn}from"./department-D5OVad_r.js";import{i as sn}from"./order-BqE0MdhI.js";import{m as ln}from"./doctor-BlvK2TEo.js";import{u as on}from"./usePaging-VsbTxSU0.js";import{u as dn,m as ot,i as v,_ as rn}from"./index--WnM67ZH.js";import{g as dt}from"./weapp-zf27P1tb.js";import{h as B}from"./perm-CLhA0PJe.js";import{e as rt,X as un,O as ut,b as mn,G as pn,H as cn,l as _n}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as fn}from"./vue-router-QlpZ4wdW.js";import{d as mt}from"./dayjs-DG77mNTn.js";import{f as pt,w as vn,b as gn,d as yn,as as hn,ak as i,I as u,a as s,aN as l,J as r,F as x,ap as R,O as p,H as h,aP as q,G as g,P as ke,A as X}from"./@vue/runtime-core-C6bnekPw.js";import{o as ie,Q as c}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as M,r as Le,n as m}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const bn={class:"tcm-diagnosis"},kn={class:"filter-main"},Cn={class:"date-chips"},Vn=["onClick"],xn={key:0},Dn={class:"search-row"},wn={class:"filter-chips"},En=["onClick"],An=["onClick"],Rn={class:"filter-more"},Nn={class:"list-header"},In={class:"list-actions"},$n={key:0,class:"list-selected"},Sn={class:"table-wrap px-4"},Tn={class:"patient-cell"},zn={class:"patient-info"},Ln={class:"patient-name"},Pn={class:"patient-cell"},Fn={class:"patient-info"},On={class:"patient-name"},Wn={class:"apt-badge"},Un={class:"apt-doctor"},qn={class:"apt-time"},Mn={key:1,class:"apt-none"},Qn={key:0,class:"status-confirmed"},Yn={key:1,class:"status-unconfirmed"},Bn={key:0,class:"followup-cell"},Hn={class:"followup-time"},jn={class:"followup-doctor"},Kn={key:0,class:"followup-count"},Gn={key:1,class:"followup-none"},Jn={class:"assistant-cell"},Xn={class:"assistant-name"},Zn={key:0,class:"assistant-dept"},es={key:0,class:"prescription-status-cell"},ts={class:"prescription-times"},as={key:1,class:"status-unprescribed"},ns={class:"video-watch-col"},ss={class:"video-watch-trigger"},ls={key:1,class:"video-watch-muted"},is={key:1,class:"video-watch-muted"},os={class:"action-cell"},ds={class:"pagination-wrap"},rs={class:"flex flex-col items-center justify-center py-4"},us={key:0,class:"text-center"},ms={key:1,class:"text-center"},ps=["src"],cs={class:"mt-4 text-sm text-gray-600"},_s={class:"mt-2"},fs={key:2,class:"text-center text-gray-500"},vs={class:"text-gray-500"},gs={class:"text-gray-500"},ys={class:"font-medium"},hs={class:"font-medium"},bs={key:0,class:"mb-4"},ks={key:0},Cs={key:0,class:"mt-2"},Vs={key:1,class:"mt-2"},xs={class:"mb-4"},Ds={class:"flex gap-2"},ws={key:0,class:"text-center text-gray-400 py-10"},Es={key:1,class:"record-list"},As={class:"record-header"},Rs={class:"flex items-center gap-2"},Ns={class:"font-medium text-sm"},Is={class:"flex items-center gap-2"},$s={class:"text-xs text-gray-400"},Ss={class:"record-content"},Ts={key:0,class:"mt-1"},zs={key:2,class:"text-center mt-4"},Ls=pt({name:"tcmDiagnosis"}),Ps=pt({...Ls,setup(Fs){const ct=ke(()=>he(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),_t=ke(()=>he(()=>import("./detail-BIA4i862.js"),__vite__mapDeps([99,45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,46,15]))),ft=ke(()=>he(()=>import("./appointment-CmXNV-jm.js"),__vite__mapDeps([100,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,83,101]))),vt=ke(()=>he(()=>import("./AssistantWatchCallDialog-4k1wpmUn.js"),__vite__mapDeps([102,1,2,3,4,5,6,7,8,9,10,11,12,13,14,103,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,104]))),gt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return mt(e).format("YYYY-MM-DD HH:mm:ss")},Pe={only_has_prescription:"1"},_=Le({patient_name:"",diagnosis_type:"",syndrome_type:"",assistant_dept_id:"",assistant_id:"",start_time:"",end_time:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",...Pe}),yt=m("all"),Z=m(!1),ht=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],bt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],kt=t=>{_.has_appointment=t,D.page=1,b(),I()},Ct=t=>{_.diagnosis_confirmed=t,D.page=1,b(),I()},ee=()=>{D.page=1,b(),I()},Vt=X(()=>[{label:"当天挂号",value:de.value},{label:"明天挂号",value:xe.value},{label:"后天挂号",value:De.value},{label:"全部",value:""}]),Ce=m({}),xt=async t=>{_.appointment_date=t,D.page=1,await b(),I()},Ve=t=>({...Pe,patient_name:_.patient_name,diagnosis_type:_.diagnosis_type,syndrome_type:_.syndrome_type,diagnosis_confirmed:_.diagnosis_confirmed,has_appointment:_.has_appointment,assistant_dept_id:_.assistant_dept_id,assistant_id:_.assistant_id,appointment_date:t,page_no:1,page_size:1}),I=async()=>{try{const[t,e,d]=await Promise.all([be(Ve(de.value)),be(Ve(xe.value)),be(Ve(De.value))]);Ce.value={[de.value]:(t==null?void 0:t.count)??0,[xe.value]:(e==null?void 0:e.count)??0,[De.value]:(d==null?void 0:d.count)??0}}catch(t){console.error("获取日期数量失败",t)}};function Dt(){const t=()=>I();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const wt=1e4;let oe=null;function Et(){typeof document<"u"&&document.hidden||(b({silent:!0}).catch(()=>{}),I())}const H=t=>String(t).padStart(2,"0"),de=X(()=>{const t=new Date;return`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),xe=X(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),De=X(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),Fe=m([]),Oe=m([]),z=m([]),We=m([]);function Ue(t,e="",d=[]){for(const o of t||[]){if(o==null)continue;const C=Number(o.id);if(!Number.isFinite(C))continue;const k=e?`${e} / ${o.name}`:String(o.name??"");d.push({id:C,label:k}),Array.isArray(o.children)&&o.children.length&&Ue(o.children,k,d)}return d}const qe=X(()=>{const t=_.assistant_dept_id;if(t===""||t==null)return z.value;const e=Number(t);return Number.isFinite(e)?z.value.filter(d=>{const o=d.dept_ids;return!Array.isArray(o)||o.length===0?!1:o.map(Number).includes(e)}):z.value}),At=()=>{const t=_.assistant_id;if(t!==""&&t!=null){const e=Number(t);qe.value.some(o=>Number(o.id)===e)||(_.assistant_id="")}D.page=1,b(),I()},Rt=async()=>{try{const[t,e,d,o]=await Promise.all([ot({type:"diagnosis_type"}),ot({type:"syndrome_type"}),Ga(),nn()]);Fe.value=(t==null?void 0:t.diagnosis_type)||[],Oe.value=(e==null?void 0:e.syndrome_type)||[],z.value=d||[],We.value=Ue(Array.isArray(o)?o:[])}catch(t){console.error("获取字典数据失败:",t)}},Me=t=>{if(t!==0&&!t)return null;const e=typeof t=="string"?parseInt(t,10):t;return z.value.find(d=>(typeof d.id=="string"?parseInt(d.id,10):d.id)===e)??null},Qe=t=>{if(!t&&t!==0||z.value.length===0)return"-";const e=Me(t);return e?e.name:"-"},Ye=t=>{const e=t.assistant_id||t.assistant,d=Qe(e),o=we(e);return d==="-"&&!o?"":o?`${d} / ${o}`:d},we=t=>{if(!t&&t!==0||z.value.length===0)return"";const e=Me(t),d=e==null?void 0:e.dept_names;return typeof d=="string"?d.trim():""},{pager:D,getLists:b}=on({fetchFun:be,params:_}),Be=()=>b({silent:!0}),Nt=()=>{yt.value="all",_.patient_name="",_.diagnosis_type="",_.syndrome_type="",_.assistant_dept_id="",_.assistant_id="",_.diagnosis_confirmed="",_.appointment_date="",_.has_appointment="",D.page=1,b(),I()},He=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(d=>d.is_confirmed==1)},It=({row:t})=>He(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",te=m(),$t=m(),je=m(),re=m(null),ue=dn();vn([te,re],()=>{const t=re.value,e=te.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),re.value=null)},{flush:"post"});const me=m(!1),Ke=m(0),St=t=>{var d;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((d=ue.userInfo)==null?void 0:d.id)},Tt=t=>{Ke.value=Number(t.id)||0,me.value=!0},zt=t=>St(t)&&B(["tcm.diagnosis/watchCall"]),pe=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},Lt=t=>{const e=t.video_call_hint,d="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${d}。开始时间:${gt(e.start_time)}`:d},Pt=t=>{const e=pe(t);return e==="live"||e==="pending_room"},Ft=t=>pe(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":Lt(t),Ot=t=>{if(pe(t)!=="live"){v.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}Tt(t)},Wt=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},Ut=t=>{const e=pe(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const d=t.video_call_hint;return(d==null?void 0:d.label)||"—"},j=m(!1),ce=m(),Ee=m(!1),f=Le({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),qt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Mt=t=>{var e;f.patient_id=t.patient_id||t.id,f.patient_name=t.patient_name,f.phone=t.phone||"",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!!t.has_appointment,f.appointment_time_text=t.appointment_time_text||"",(e=ce.value)==null||e.clearValidate(),j.value=!0},Qt=()=>{var t;f.patient_id="",f.patient_name="",f.phone="",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!1,f.appointment_time_text="",(t=ce.value)==null||t.clearValidate()},Yt=async()=>{var t;try{await((t=ce.value)==null?void 0:t.validate()),Ee.value=!0;const e=await sn({patient_id:f.patient_id,order_type:f.order_type,amount:f.amount,remark:f.remark});j.value=!1,b();const d=e==null?void 0:e.order_no;if(d){$.value=!0,L.value=!0,P.value="",F.value={patient_name:f.patient_name,has_appointment:f.has_appointment,appointment_time_text:f.appointment_time_text};try{const o=await Ja({order_no:d});o!=null&&o.qrcode_url?P.value=o.qrcode_url:v.msgError("二维码生成失败")}catch(o){v.msgError((o==null?void 0:o.msg)||"生成二维码失败")}finally{L.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Ee.value=!1}},$=m(!1),L=m(!1),P=m(""),F=m(null),Bt=X(()=>{const t=F.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Ae=m("小程序二维码"),Re=m("confirm"),O=m([]),Q=m(!1),Ne=m(!1),ae=m("batch"),ne=m(null),W=m({assistant_id:null}),Ht=t=>{O.value=t.map(e=>e.id)},jt=t=>{ae.value="single",ne.value=t,W.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,Q.value=!0},Kt=()=>{if(O.value.length===0){v.msgWarning("请先选择要指派的诊单");return}ae.value="batch",ne.value=null,W.value.assistant_id=null,Q.value=!0},Gt=async()=>{if(!W.value.assistant_id){v.msgWarning("请选择医助");return}Ne.value=!0;try{if(ae.value==="single")await st({id:ne.value.id,assistant_id:W.value.assistant_id});else{const t=O.value.map(e=>st({id:e,assistant_id:W.value.assistant_id}));await Promise.all(t),O.value=[]}Q.value=!1,b()}catch(t){console.error("指派失败:",t)}finally{Ne.value=!1}},Jt=()=>{te.value.open("add")},Xt=t=>{te.value.open("edit",t)},Zt=async t=>{await v.confirm("确定要删除该诊单吗?"),await tn({id:t}),b()},ea=(t,e)=>{switch(t){case"assign":jt(e);break;case"videoQr":if(!se(e)){v.msgWarning("仅「已预约」状态可生成视频二维码");return}Xe(e);break;case"confirmQr":Ze(e);break;case"cancelApt":na(e);break;case"order":Mt(e);break;case"delete":Zt(e.id);break}},ta=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},aa=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},se=t=>t.has_appointment&&Number(t.appointment_status)===1,Ge=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},na=async t=>{if(!Ge(t)){const e=Number(t.appointment_status);t.has_appointment&&e===3?v.msgWarning("已完成就诊,无法取消挂号"):v.msgWarning("该诊单未挂号或挂号信息异常");return}try{await v.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await ln({id:t.appointment_id}),v.msgSuccess("取消挂号成功"),b(),I()}catch(e){e!=="cancel"&&v.msgError((e==null?void 0:e.msg)||"取消挂号失败")}},sa=t=>{var e;if(!t.patient_id){v.msgWarning("患者信息不完整");return}(e=je.value)==null||e.open(t)},K=m(!1),Ie=m(!1),Je=m(),N=Le({id:0,patient_name:"",id_card:""}),la={id_card:[{required:!0,validator:(t,e,d)=>{if(!e){d(new Error("请输入身份证号"));return}const o=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),C=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);o||C?d():d(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},ia=t=>{N.id=t.id,N.patient_name=t.patient_name||"-",N.id_card=t.id_card||"",K.value=!0},oa=async()=>{var t;await((t=Je.value)==null?void 0:t.validate()),Ie.value=!0;try{await Xa({id:N.id,id_card:N.id_card}),v.msgSuccess("补全成功,年龄已自动更新"),K.value=!1,b()}catch(e){v.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ie.value=!1}},Xe=async t=>{var e;if(!se(t)){v.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){v.msgWarning("患者信息不完整");return}Re.value="video",F.value=t,$.value=!0,L.value=!0,P.value="",Ae.value="视频二维码";try{const d=await dt();if(!(d!=null&&d.app_id)){v.msgError("小程序未配置,请先配置小程序信息"),$.value=!1;return}const o=await lt({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ue.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});o!=null&&o.qrcode_url?P.value=o.qrcode_url:v.msgError("二维码生成失败")}catch(d){v.msgError((d==null?void 0:d.msg)||"生成二维码失败,请重试")}finally{L.value=!1}},Ze=async t=>{if(!se(t)){v.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){v.msgWarning("患者信息不完整");return}Re.value="confirm",F.value=t,$.value=!0,L.value=!0,P.value="",Ae.value="诊单二维码";try{const e=await dt();if(!(e!=null&&e.app_id)){v.msgError("小程序未配置,请先配置小程序信息"),$.value=!1;return}const d=ue.userInfo,o=await lt({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(d==null?void 0:d.id)||""});o!=null&&o.qrcode_url?P.value=o.qrcode_url:v.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),v.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{L.value=!1}},da=()=>{F.value&&(Re.value==="video"?Xe(F.value):Ze(F.value))},_e=m(!1),w=m(null),U=m([]),fe=m(0),$e=m(!1),E=m(null),Y=m(""),Se=m(!1),Te=m(1),ra=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return mt(e).format("YYYY-MM-DD HH:mm")},ua=async t=>{w.value=t,_e.value=!0,U.value=[],fe.value=0,E.value=null,Y.value="",Te.value=1,$e.value=!0;try{const[e,d]=await Promise.all([it({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),an({patient_id:t.patient_id||t.id}).catch(()=>null)]);U.value=(e==null?void 0:e.lists)||[],fe.value=(e==null?void 0:e.count)||0,E.value=d}catch(e){console.error("加载企业微信记录失败:",e)}finally{$e.value=!1}},ma=async()=>{if(w.value){Te.value++;try{const t=await it({diagnosis_id:w.value.id,patient_id:w.value.patient_id,page_no:Te.value,page_size:20});U.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},pa=async()=>{var t;if(!Y.value.trim()){v.msgWarning("请输入内容");return}Se.value=!0;try{await Za({diagnosis_id:w.value.id,patient_id:w.value.patient_id,content:Y.value.trim(),msg_type:"note",staff_name:((t=ue.userInfo)==null?void 0:t.name)||"",external_name:w.value.patient_name||""}),Y.value="",ua(w.value)}catch(e){v.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Se.value=!1}},ca=async t=>{await v.confirm("确定删除该记录吗?");try{await en({id:t}),U.value=U.value.filter(e=>e.id!==t),fe.value--}catch(e){v.msgError((e==null?void 0:e.msg)||"删除失败")}},_a=fn();return gn(()=>{_.appointment_date=de.value,Rt(),b(),Dt(),oe=setInterval(Et,wt);const t=_a.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(re.value=e)}}),yn(()=>{oe!=null&&(clearInterval(oe),oe=null)}),(t,e)=>{var nt;const d=xa,o=Da,C=wa,k=Aa,G=Ea,et=Ra,A=Ia,S=$a,tt=Sa,J=La,fa=za,va=Ta,ga=Na,ya=Ha,ve=Fa,T=Wa,ze=Oa,ha=Ua,ge=Ma,ba=qa,ka=Qa,Ca=Ya,Va=Ba,le=hn("perms"),at=Pa;return i(),u("div",bn,[s(et,{class:"filter-card !border-none",shadow:"never"},{default:l(()=>[r("div",kn,[r("div",Cn,[(i(!0),u(x,null,R(Vt.value,a=>(i(),u("span",{key:a.value,class:ie(["chip",{active:n(_).appointment_date===a.value}]),onClick:V=>xt(a.value)},[p(c(a.label)+" ",1),a.value&&n(Ce)[a.value]!==void 0?(i(),u("em",xn,c(n(Ce)[a.value]),1)):h("",!0)],10,Vn))),128))]),r("div",Dn,[s(d,{modelValue:n(_).patient_name,"onUpdate:modelValue":e[0]||(e[0]=a=>n(_).patient_name=a),placeholder:"患者姓名",clearable:"",class:"search-input",onKeyup:ja(ee,["enter"])},null,8,["modelValue"]),s(o,{type:"primary",onClick:ee},{default:l(()=>[...e[24]||(e[24]=[p("查询",-1)])]),_:1})])]),r("div",wn,[e[25]||(e[25]=r("span",{class:"chip-label"},"挂号:",-1)),(i(),u(x,null,R(ht,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).has_appointment===a.value}]),onClick:V=>kt(a.value)},c(a.label),11,En)),64)),e[26]||(e[26]=r("span",{class:"chip-divider"},null,-1)),e[27]||(e[27]=r("span",{class:"chip-label"},"确认:",-1)),(i(),u(x,null,R(bt,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).diagnosis_confirmed===a.value}]),onClick:V=>Ct(a.value)},c(a.label),11,An)),64)),s(o,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[1]||(e[1]=a=>Z.value=!n(Z))},{default:l(()=>[p(c(n(Z)?"收起":"更多筛选")+" ",1),s(C,{class:ie({"rotate-180":n(Z)})},{default:l(()=>[s(n(rt))]),_:1},8,["class"])]),_:1})]),q(r("div",Rn,[s(G,{modelValue:n(_).assistant_dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>n(_).assistant_dept_id=a),placeholder:"医助部门",clearable:"",filterable:"",size:"small",class:"filter-dept-select",onChange:At},{default:l(()=>[(i(!0),u(x,null,R(n(We),a=>(i(),g(k,{key:a.id,label:a.label,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(G,{modelValue:n(_).diagnosis_type,"onUpdate:modelValue":e[3]||(e[3]=a=>n(_).diagnosis_type=a),placeholder:"诊断类型",clearable:"",size:"small",onChange:ee},{default:l(()=>[(i(!0),u(x,null,R(n(Fe),a=>(i(),g(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(G,{modelValue:n(_).syndrome_type,"onUpdate:modelValue":e[4]||(e[4]=a=>n(_).syndrome_type=a),placeholder:"证型",clearable:"",size:"small",onChange:ee},{default:l(()=>[(i(!0),u(x,null,R(n(Oe),a=>(i(),g(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(G,{modelValue:n(_).assistant_id,"onUpdate:modelValue":e[5]||(e[5]=a=>n(_).assistant_id=a),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:ee},{default:l(()=>[(i(!0),u(x,null,R(qe.value,a=>(i(),g(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s(o,{size:"small",onClick:Nt},{default:l(()=>[...e[28]||(e[28]=[p("重置",-1)])]),_:1})],512),[[Ka,n(Z)]])]),_:1}),s(et,{class:"!border-none mt-3 list-card",shadow:"never"},{default:l(()=>[r("div",Nn,[r("div",In,[q((i(),g(o,{type:"primary",onClick:Jt},{default:l(()=>[...e[29]||(e[29]=[p("新增诊单",-1)])]),_:1})),[[le,["tcm.diagnosis/add"]]]),q((i(),g(o,{type:"success",onClick:Kt,disabled:n(O).length===0},{default:l(()=>[...e[30]||(e[30]=[p(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[le,["tcm.diagnosis/assign"]]])]),n(O).length>0?(i(),u("div",$n,"已选 "+c(n(O).length)+" 条",1)):h("",!0)]),r("div",Sn,[q((i(),g(ga,{data:n(D).lists,size:"default",onSelectionChange:Ht,"row-class-name":It,class:"diagnosis-table",stripe:""},{default:l(()=>[s(A,{type:"selection",width:"48",align:"center"}),s(A,{label:"ID","min-width":"70"},{default:l(({row:a})=>[r("div",Tn,[r("div",zn,[r("div",Ln,[p(c(a.id)+" ",1),a.assign_read_at===null&&a.assistant_id>0?(i(),g(S,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:l(()=>[...e[31]||(e[31]=[p("NEW",-1)])]),_:1})):h("",!0)])])])]),_:1}),s(A,{label:"患者","min-width":"60"},{default:l(({row:a})=>[r("div",Pn,[r("div",Fn,[r("div",On,c(a.patient_name),1)])])]),_:1}),s(A,{label:" 性别 / 年龄",width:"100",align:"left"},{default:l(({row:a})=>[r("div",null,c(a.gender_desc||"-")+" · "+c(a.age??"-")+"岁",1)]),_:1}),s(A,{label:"挂号","min-width":"180"},{default:l(({row:a})=>[r("div",{class:ie(["appointment-cell",aa(a)])},[a.has_appointment?(i(),u(x,{key:0},[r("div",Wn,c(ta(a)),1),r("div",Un,c(a.appointment_doctor_name||"-"),1),r("div",qn,c(a.appointment_time_text||"-"),1)],64)):(i(),u("span",Mn,"未挂号"))],2)]),_:1}),s(A,{label:"确认",width:"88",align:"center"},{default:l(({row:a})=>[He(a)?(i(),u("span",Qn,"已确认")):(i(),u("span",Yn,"未确认"))]),_:1}),s(A,{label:"复诊","min-width":"150"},{default:l(({row:a})=>[a.has_prescription?(i(),u("div",Bn,[r("div",Hn,c(a.followup_time_text||"—"),1),r("div",jn,c(a.followup_doctor_name||"—"),1),a.followup_prescription_count>0?(i(),u("div",Kn," 第"+c(a.followup_prescription_count)+"次复诊 ",1)):h("",!0),a.followup_rx_voided?(i(),g(S,{key:1,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:l(()=>[...e[32]||(e[32]=[p(" 处方已作废 ",-1)])]),_:1})):h("",!0)])):(i(),u("span",Gn,"无"))]),_:1}),s(A,{label:"助理","min-width":"120"},{default:l(({row:a})=>[s(tt,{disabled:!Ye(a),content:Ye(a),placement:"top"},{default:l(()=>[r("div",Jn,[r("div",Xn,c(Qe(a.assistant_id||a.assistant)),1),we(a.assistant_id||a.assistant)?(i(),u("div",Zn,c(we(a.assistant_id||a.assistant)),1)):h("",!0)])]),_:2},1032,["disabled","content"])]),_:1}),s(A,{label:"开方","min-width":"96",align:"center"},{default:l(({row:a})=>[a.has_prescription?(i(),u("div",es,[e[33]||(e[33]=r("span",{class:"status-prescribed"},"已开方",-1)),r("span",ts,"("+c(a.followup_prescription_count||1)+"次)",1)])):(i(),u("span",as,"未开方"))]),_:1}),s(A,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:l(({row:a})=>[r("div",ns,[zt(a)?(i(),u(x,{key:0},[Pt(a)?(i(),g(tt,{key:0,content:Ft(a),placement:"top"},{default:l(()=>[r("span",ss,[s(o,{type:"primary",link:"",size:"small",onClick:V=>Ot(a)},{default:l(()=>[...e[34]||(e[34]=[p(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(i(),u("span",ls,c(Wt(a)),1))],64)):(i(),u("span",is,c(Ut(a)),1))])]),_:1}),s(A,{label:"操作",width:"260",fixed:"right",align:"left"},{default:l(({row:a})=>[r("div",os,[q((i(),g(o,{type:"primary",link:"",size:"small",onClick:V=>Xt(a.id)},{default:l(()=>[...e[35]||(e[35]=[p("诊单",-1)])]),_:1},8,["onClick"])),[[le,["tcm.diagnosis/edit"]]]),q((i(),g(o,{type:"success",link:"",size:"small",onClick:V=>sa(a)},{default:l(()=>[...e[36]||(e[36]=[p("预约",-1)])]),_:1},8,["onClick"])),[[le,["tcm.diagnosis/guahao"]]]),q((i(),g(o,{type:"warning",link:"",size:"small",onClick:V=>ia(a)},{default:l(()=>[...e[37]||(e[37]=[p("补全身份证",-1)])]),_:1},8,["onClick"])),[[le,["tcm.diagnosis/edit"]]]),s(va,{trigger:"click",onCommand:V=>ea(V,a),placement:"bottom-end"},{dropdown:l(()=>[s(fa,null,{default:l(()=>[n(B)(["tcm.diagnosis/assign"])?(i(),g(J,{key:0,command:"assign"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(un))]),_:1}),e[39]||(e[39]=p("指派",-1))]),_:1})):h("",!0),se(a)&&n(B)(["tcm.diagnosis/videoQr"])?(i(),g(J,{key:1,command:"videoQr"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(ut))]),_:1}),e[40]||(e[40]=p("视频二维码",-1))]),_:1})):h("",!0),n(B)(["tcm.diagnosis/guahao"])&&se(a)?(i(),g(J,{key:2,command:"confirmQr"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(ut))]),_:1}),e[41]||(e[41]=p("二维码",-1))]),_:1})):h("",!0),Ge(a)&&n(B)(["tcm.diagnosis/guahao"])?(i(),g(J,{key:3,command:"cancelApt"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(mn))]),_:1}),e[42]||(e[42]=p("取消挂号",-1))]),_:1})):h("",!0),n(B)(["tcm.diagnosis/order"])?(i(),g(J,{key:4,command:"order"},{default:l(()=>[s(C,null,{default:l(()=>[s(n(pn))]),_:1}),e[43]||(e[43]=p("创建订单",-1))]),_:1})):h("",!0),n(B)(["tcm.diagnosis/delete"])?(i(),g(J,{key:5,command:"delete",divided:""},{default:l(()=>[s(C,null,{default:l(()=>[s(n(cn))]),_:1}),e[44]||(e[44]=r("span",{class:"text-danger"},"删除",-1))]),_:1})):h("",!0)]),_:2},1024)]),default:l(()=>[s(o,{type:"info",link:"",size:"small"},{default:l(()=>[e[38]||(e[38]=p("更多",-1)),s(C,{class:"el-icon--right"},{default:l(()=>[s(n(rt))]),_:1})]),_:1})]),_:2},1032,["onCommand"])])]),_:1})]),_:1},8,["data"])),[[at,n(D).loading]]),r("div",ds,[s(ya,{modelValue:n(D),"onUpdate:modelValue":e[6]||(e[6]=a=>M(D)?D.value=a:null),onChange:n(b)},null,8,["modelValue","onChange"])])])]),_:1}),s(n(ct),{ref_key:"editRef",ref:te,onSuccess:Be},null,512),s(n(_t),{ref_key:"detailRef",ref:$t},null,512),s(n(ft),{ref_key:"appointmentRef",ref:je,onSuccess:Be},null,512),s(n(vt),{modelValue:n(me),"onUpdate:modelValue":e[7]||(e[7]=a=>M(me)?me.value=a:null),"diagnosis-id":n(Ke),onClosed:n(b)},null,8,["modelValue","diagnosis-id","onClosed"]),s(ve,{modelValue:n($),"onUpdate:modelValue":e[9]||(e[9]=a=>M($)?$.value=a:null),title:n(Ae),width:"400px","close-on-click-modal":!1},{footer:l(()=>[s(o,{onClick:e[8]||(e[8]=a=>$.value=!1)},{default:l(()=>[...e[47]||(e[47]=[p("关闭",-1)])]),_:1}),n(L)?h("",!0):(i(),g(o,{key:0,type:"primary",onClick:da},{default:l(()=>[...e[48]||(e[48]=[p(" 重新生成 ",-1)])]),_:1}))]),default:l(()=>{var a;return[r("div",rs,[n(L)?(i(),u("div",us,[s(C,{class:"is-loading",size:40},{default:l(()=>[s(n(_n))]),_:1}),e[45]||(e[45]=r("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):n(P)?(i(),u("div",ms,[r("img",{src:n(P),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,ps),r("div",cs,[r("div",null,"患者:"+c((a=n(F))==null?void 0:a.patient_name),1),r("div",_s,"挂号时间:"+c(Bt.value),1),e[46]||(e[46]=r("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(i(),u("div",fs," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),s(ve,{modelValue:n(Q),"onUpdate:modelValue":e[12]||(e[12]=a=>M(Q)?Q.value=a:null),title:n(ae)==="batch"?"批量指派医助":"指派医助",width:"500px"},{footer:l(()=>[s(o,{onClick:e[11]||(e[11]=a=>Q.value=!1)},{default:l(()=>[...e[49]||(e[49]=[p("取消",-1)])]),_:1}),s(o,{type:"primary",onClick:Gt,loading:n(Ne)},{default:l(()=>[...e[50]||(e[50]=[p(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(ze,{model:n(W),"label-width":"100px"},{default:l(()=>[s(T,{label:"选择医助",required:""},{default:l(()=>[s(G,{modelValue:n(W).assistant_id,"onUpdate:modelValue":e[10]||(e[10]=a=>n(W).assistant_id=a),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:"","value-key":"id"},{default:l(()=>[(i(!0),u(x,null,R(n(z),a=>(i(),g(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(ae)==="batch"?(i(),g(T,{key:0,label:"已选择"},{default:l(()=>[r("div",vs,c(n(O).length)+" 条诊单记录",1)]),_:1})):(i(),g(T,{key:1,label:"诊单信息"},{default:l(()=>{var a,V;return[r("div",gs,[r("div",null,"患者:"+c((a=n(ne))==null?void 0:a.patient_name),1),r("div",null,"诊断日期:"+c((V=n(ne))==null?void 0:V.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),s(ve,{modelValue:n(j),"onUpdate:modelValue":e[17]||(e[17]=a=>M(j)?j.value=a:null),title:"创建订单",width:"600px",onClose:Qt},{footer:l(()=>[s(o,{onClick:e[16]||(e[16]=a=>j.value=!1)},{default:l(()=>[...e[51]||(e[51]=[p("取消",-1)])]),_:1}),s(o,{type:"primary",onClick:Yt,loading:n(Ee)},{default:l(()=>[...e[52]||(e[52]=[p("创建订单",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(ze,{ref_key:"orderFormRef",ref:ce,model:n(f),rules:qt,"label-width":"100px"},{default:l(()=>[s(T,{label:"患者"},{default:l(()=>[r("span",ys,c(n(f).patient_name)+" ("+c(n(f).phone)+")",1)]),_:1}),s(T,{label:"订单类型",prop:"order_type"},{default:l(()=>[s(G,{modelValue:n(f).order_type,"onUpdate:modelValue":e[13]||(e[13]=a=>n(f).order_type=a),placeholder:"请选择",class:"w-full"},{default:l(()=>[s(k,{label:"挂号费",value:1}),s(k,{label:"问诊费",value:2}),s(k,{label:"药品费用",value:3}),s(k,{label:"首付费用",value:4}),s(k,{label:"尾款费用",value:5}),s(k,{label:"其他费用",value:6}),s(k,{label:"全部费用",value:7}),s(k,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),s(T,{label:"订单金额",prop:"amount"},{default:l(()=>[s(ha,{modelValue:n(f).amount,"onUpdate:modelValue":e[14]||(e[14]=a=>n(f).amount=a),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),s(T,{label:"备注",prop:"remark"},{default:l(()=>[s(d,{modelValue:n(f).remark,"onUpdate:modelValue":e[15]||(e[15]=a=>n(f).remark=a),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(ve,{modelValue:n(K),"onUpdate:modelValue":e[20]||(e[20]=a=>M(K)?K.value=a:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[21]||(e[21]=a=>n(N).id_card="")},{footer:l(()=>[s(o,{onClick:e[19]||(e[19]=a=>K.value=!1)},{default:l(()=>[...e[53]||(e[53]=[p("取消",-1)])]),_:1}),s(o,{type:"primary",onClick:oa,loading:n(Ie)},{default:l(()=>[...e[54]||(e[54]=[p("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(ze,{ref_key:"fillIdCardFormRef",ref:Je,model:n(N),rules:la,"label-width":"80px"},{default:l(()=>[s(T,{label:"患者"},{default:l(()=>[r("span",hs,c(n(N).patient_name),1)]),_:1}),s(T,{label:"身份证号",prop:"id_card"},{default:l(()=>[s(d,{modelValue:n(N).id_card,"onUpdate:modelValue":e[18]||(e[18]=a=>n(N).id_card=a),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(Va,{modelValue:n(_e),"onUpdate:modelValue":e[23]||(e[23]=a=>M(_e)?_e.value=a:null),title:`企业微信记录 - ${((nt=n(w))==null?void 0:nt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:l(()=>{var a,V;return[n(E)?(i(),u("div",bs,[s(ba,{column:2,border:"",size:"small"},{default:l(()=>[s(ge,{label:"患者姓名"},{default:l(()=>{var y;return[p(c((y=n(w))==null?void 0:y.patient_name),1)]}),_:1}),s(ge,{label:"手机号"},{default:l(()=>[p(c(n(E).phone||"-"),1)]),_:1}),s(ge,{label:"企微联系人ID"},{default:l(()=>[n(E).external_userid?(i(),u("span",ks,c(n(E).external_userid),1)):(i(),g(S,{key:1,type:"info",size:"small"},{default:l(()=>[...e[55]||(e[55]=[p("未关联",-1)])]),_:1}))]),_:1}),s(ge,{label:"会话存档"},{default:l(()=>[n(E).msgaudit_enabled?(i(),g(S,{key:0,type:"success",size:"small"},{default:l(()=>[...e[56]||(e[56]=[p("已开通",-1)])]),_:1})):(i(),g(S,{key:1,type:"info",size:"small"},{default:l(()=>[...e[57]||(e[57]=[p("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(a=n(E).permit_users)!=null&&a.length?(i(),u("div",Cs,[e[58]||(e[58]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(i(!0),u(x,null,R(n(E).permit_users,y=>(i(),g(S,{key:y,size:"small",class:"mr-1"},{default:l(()=>[p(c(y),1)]),_:2},1024))),128))])):h("",!0),(V=n(E).msgaudit_agree)!=null&&V.length?(i(),u("div",Vs,[e[59]||(e[59]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(i(!0),u(x,null,R(n(E).msgaudit_agree,(y,ye)=>(i(),g(S,{key:ye,type:y.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:l(()=>[p(c(y.userid)+": "+c(y.agree_status==="Agree"?"已同意":y.agree_status),1)]),_:2},1032,["type"]))),128))])):h("",!0)])):h("",!0),s(ka),r("div",xs,[r("div",Ds,[s(d,{modelValue:n(Y),"onUpdate:modelValue":e[22]||(e[22]=y=>M(Y)?Y.value=y:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),s(o,{type:"primary",onClick:pa,loading:n(Se),class:"self-end"},{default:l(()=>[...e[60]||(e[60]=[p(" 添加 ",-1)])]),_:1},8,["loading"])])]),q((i(),u("div",null,[n(U).length===0?(i(),u("div",ws," 暂无聊天记录 ")):(i(),u("div",Es,[(i(!0),u(x,null,R(n(U),y=>{var ye;return i(),u("div",{key:y.id,class:"record-item"},[r("div",As,[r("div",Rs,[s(S,{type:y.direction===0?"primary":"success",size:"small"},{default:l(()=>[p(c(y.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),r("span",Ns,c(y.direction===0?y.staff_name:y.external_name||((ye=n(w))==null?void 0:ye.patient_name)),1),y.msg_type==="note"?(i(),g(S,{key:0,type:"warning",size:"small"},{default:l(()=>[...e[61]||(e[61]=[p("备注",-1)])]),_:1})):h("",!0)]),r("div",Is,[r("span",$s,c(ra(y.chat_time)),1),s(o,{type:"danger",link:"",size:"small",onClick:Ws=>ca(y.id)},{default:l(()=>[...e[62]||(e[62]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])])]),r("div",Ss,c(y.content),1),y.media_url?(i(),u("div",Ts,[s(Ca,{src:y.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[y.media_url]},null,8,["src","preview-src-list"])])):h("",!0)])}),128))])),n(fe)>n(U).length?(i(),u("div",zs,[s(o,{link:"",type:"primary",onClick:ma},{default:l(()=>[...e[63]||(e[63]=[p("加载更多",-1)])]),_:1})])):h("",!0)])),[[at,n($e)]])]}),_:1},8,["modelValue","title"])])}}}),$l=rn(Ps,[["__scopeId","data-v-d65a0220"]]);export{$l as default}; diff --git a/server/public/admin/assets/index-C4_15yk8.js b/server/public/admin/assets/index-DN0U2fnj.js similarity index 94% rename from server/public/admin/assets/index-C4_15yk8.js rename to server/public/admin/assets/index-DN0U2fnj.js index 8793cf7c..6015d937 100644 --- a/server/public/admin/assets/index-C4_15yk8.js +++ b/server/public/admin/assets/index-DN0U2fnj.js @@ -1 +1 @@ -import{K as A,J as F,m as V,l as B,M,N as O,T as U,i as z,L as D}from"./element-plus-DFTWCWyi.js";import{a as N}from"./message-DMZbcMZ3.js";import{u as S}from"./usePaging-VsbTxSU0.js";import{k as q}from"./index-Nt5zMHcc.js";import{f as y,ac as G,ar as I,as as J,ak as n,I as g,a as t,aN as e,F as K,ap as j,aP as v,G as p,O as c}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as H,n as Q,r as W}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const X=y({name:"notice"}),zt=y({...X,setup(Y){let d;(r=>{r[r.USER=1]="USER",r[r.PLATFORM=2]="PLATFORM"})(d||(d={}));const s=Q(1),k=[{name:"通知用户",type:1},{name:"通知平台",type:2}],T=W({recipient:s}),{pager:u,getLists:_}=S({fetchFun:N,params:T});return G(()=>{_()}),_(),(r,o)=>{const w=A,f=F,E=B,h=V,l=O,b=U,C=I("router-link"),L=z,P=M,R=J("perms"),x=D;return n(),g("div",null,[t(f,{class:"!border-none",shadow:"never"},{default:e(()=>[t(w,{type:"warning",title:"温馨提示:平台配置在各个场景下的通知发送方式和内容模板",closable:!1,"show-icon":""})]),_:1}),t(f,{class:"!border-none mt-4",shadow:"never"},{default:e(()=>[t(h,{modelValue:i(s),"onUpdate:modelValue":o[0]||(o[0]=a=>H(s)?s.value=a:null),onTabChange:i(_)},{default:e(()=>[(n(),g(K,null,j(k,(a,m)=>t(E,{key:m,label:a.name,name:a.type,lazy:""},null,8,["label","name"])),64))]),_:1},8,["modelValue","onTabChange"]),v((n(),p(P,{size:"large",data:i(u).lists},{default:e(()=>[t(l,{label:"通知场景",prop:"scene_name","min-width":"120"}),t(l,{label:"通知类型",prop:"type_desc","min-width":"160"}),t(l,{label:"短信通知","min-width":"80"},{default:e(({row:a})=>{var m;return[((m=a.sms_notice)==null?void 0:m.status)==1?(n(),p(b,{key:0},{default:e(()=>[...o[1]||(o[1]=[c("开启",-1)])]),_:1})):(n(),p(b,{key:1,type:"danger"},{default:e(()=>[...o[2]||(o[2]=[c("关闭",-1)])]),_:1}))]}),_:1}),t(l,{label:"操作","min-width":"80",fixed:"right"},{default:e(({row:a})=>[v((n(),p(L,{type:"primary",link:""},{default:e(()=>[t(C,{to:{path:i(q)("notice.notice/set"),query:{id:a.id}}},{default:e(()=>[...o[3]||(o[3]=[c(" 设置 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[R,["notice.notice/set"]]])]),_:1})]),_:1},8,["data"])),[[x,i(u).loading]])]),_:1})])}}});export{zt as default}; +import{K as A,J as F,m as V,l as B,M,N as O,T as U,i as z,L as D}from"./element-plus-DFTWCWyi.js";import{a as N}from"./message-E3FypG9J.js";import{u as S}from"./usePaging-VsbTxSU0.js";import{k as q}from"./index--WnM67ZH.js";import{f as y,ac as G,ar as I,as as J,ak as n,I as g,a as t,aN as e,F as K,ap as j,aP as v,G as p,O as c}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as H,n as Q,r as W}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const X=y({name:"notice"}),zt=y({...X,setup(Y){let d;(r=>{r[r.USER=1]="USER",r[r.PLATFORM=2]="PLATFORM"})(d||(d={}));const s=Q(1),k=[{name:"通知用户",type:1},{name:"通知平台",type:2}],T=W({recipient:s}),{pager:u,getLists:_}=S({fetchFun:N,params:T});return G(()=>{_()}),_(),(r,o)=>{const w=A,f=F,E=B,h=V,l=O,b=U,C=I("router-link"),L=z,P=M,R=J("perms"),x=D;return n(),g("div",null,[t(f,{class:"!border-none",shadow:"never"},{default:e(()=>[t(w,{type:"warning",title:"温馨提示:平台配置在各个场景下的通知发送方式和内容模板",closable:!1,"show-icon":""})]),_:1}),t(f,{class:"!border-none mt-4",shadow:"never"},{default:e(()=>[t(h,{modelValue:i(s),"onUpdate:modelValue":o[0]||(o[0]=a=>H(s)?s.value=a:null),onTabChange:i(_)},{default:e(()=>[(n(),g(K,null,j(k,(a,m)=>t(E,{key:m,label:a.name,name:a.type,lazy:""},null,8,["label","name"])),64))]),_:1},8,["modelValue","onTabChange"]),v((n(),p(P,{size:"large",data:i(u).lists},{default:e(()=>[t(l,{label:"通知场景",prop:"scene_name","min-width":"120"}),t(l,{label:"通知类型",prop:"type_desc","min-width":"160"}),t(l,{label:"短信通知","min-width":"80"},{default:e(({row:a})=>{var m;return[((m=a.sms_notice)==null?void 0:m.status)==1?(n(),p(b,{key:0},{default:e(()=>[...o[1]||(o[1]=[c("开启",-1)])]),_:1})):(n(),p(b,{key:1,type:"danger"},{default:e(()=>[...o[2]||(o[2]=[c("关闭",-1)])]),_:1}))]}),_:1}),t(l,{label:"操作","min-width":"80",fixed:"right"},{default:e(({row:a})=>[v((n(),p(L,{type:"primary",link:""},{default:e(()=>[t(C,{to:{path:i(q)("notice.notice/set"),query:{id:a.id}}},{default:e(()=>[...o[3]||(o[3]=[c(" 设置 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[R,["notice.notice/set"]]])]),_:1})]),_:1},8,["data"])),[[x,i(u).loading]])]),_:1})])}}});export{zt as default}; diff --git a/server/public/admin/assets/index-r0I7TYnB.js b/server/public/admin/assets/index-DOn0iTI1.js similarity index 95% rename from server/public/admin/assets/index-r0I7TYnB.js rename to server/public/admin/assets/index-DOn0iTI1.js index 3911f744..2ef4bfd1 100644 --- a/server/public/admin/assets/index-r0I7TYnB.js +++ b/server/public/admin/assets/index-DOn0iTI1.js @@ -1 +1 @@ -import{_ as B}from"./index-DbiC_Mh1.js";import{D as k,B as y,G as D,I,C as N,J as R,i as G}from"./element-plus-DFTWCWyi.js";import{r as f}from"./index-Nt5zMHcc.js";import{f as c,as as F,ak as _,I as J,a as e,aN as o,J as a,O as i,aP as O,G as U}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,r as h}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function j(){return f.get({url:"/recharge.recharge/getConfig"})}function q(l){return f.post({url:"/recharge.recharge/setConfig",params:l})}const P=c({name:"rechargeConfig"}),Bt=c({...P,setup(l){const r=h({status:1,min_amount:""}),s=async()=>{const p=await j();Object.assign(r,p)},g=async()=>{await q(r),s()};return s(),(p,t)=>{const u=I,v=D,d=y,C=N,b=k,V=R,E=G,x=B,w=F("perms");return _(),J("div",null,[e(V,{shadow:"never",class:"!border-none"},{header:o(()=>[...t[2]||(t[2]=[a("span",{class:"font-extrabold text-lg"},"充值设置",-1)])]),default:o(()=>[e(b,{model:n(r),"label-width":"120px"},{default:o(()=>[e(d,{label:"状态"},{default:o(()=>[a("div",null,[e(v,{modelValue:n(r).status,"onUpdate:modelValue":t[0]||(t[0]=m=>n(r).status=m),class:"ml-4"},{default:o(()=>[e(u,{value:1},{default:o(()=>[...t[3]||(t[3]=[i("开启",-1)])]),_:1}),e(u,{value:0},{default:o(()=>[...t[4]||(t[4]=[i("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),t[5]||(t[5]=a("div",{class:"form-tips"},"关闭或开启充值功能,关闭后将不显示充值入口",-1))])]),_:1}),e(d,{label:"最低充值金额"},{default:o(()=>[a("div",null,[e(C,{modelValue:n(r).min_amount,"onUpdate:modelValue":t[1]||(t[1]=m=>n(r).min_amount=m),placeholder:"请输入最低充值金额",clearable:""},null,8,["modelValue"]),t[6]||(t[6]=a("div",{class:"form-tips"}," 最低充值金额要求,不填或填0表示不限制最低充值金额 ",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),O((_(),U(x,null,{default:o(()=>[e(E,{type:"primary",onClick:g},{default:o(()=>[...t[7]||(t[7]=[i("保存",-1)])]),_:1})]),_:1})),[[w,["recharge.recharge/setConfig"]]])])}}});export{Bt as default}; +import{_ as B}from"./index-j275bAO5.js";import{D as k,B as y,G as D,I,C as N,J as R,i as G}from"./element-plus-DFTWCWyi.js";import{r as f}from"./index--WnM67ZH.js";import{f as c,as as F,ak as _,I as J,a as e,aN as o,J as a,O as i,aP as O,G as U}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,r as h}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function j(){return f.get({url:"/recharge.recharge/getConfig"})}function q(l){return f.post({url:"/recharge.recharge/setConfig",params:l})}const P=c({name:"rechargeConfig"}),Bt=c({...P,setup(l){const r=h({status:1,min_amount:""}),s=async()=>{const p=await j();Object.assign(r,p)},g=async()=>{await q(r),s()};return s(),(p,t)=>{const u=I,v=D,d=y,C=N,b=k,V=R,E=G,x=B,w=F("perms");return _(),J("div",null,[e(V,{shadow:"never",class:"!border-none"},{header:o(()=>[...t[2]||(t[2]=[a("span",{class:"font-extrabold text-lg"},"充值设置",-1)])]),default:o(()=>[e(b,{model:n(r),"label-width":"120px"},{default:o(()=>[e(d,{label:"状态"},{default:o(()=>[a("div",null,[e(v,{modelValue:n(r).status,"onUpdate:modelValue":t[0]||(t[0]=m=>n(r).status=m),class:"ml-4"},{default:o(()=>[e(u,{value:1},{default:o(()=>[...t[3]||(t[3]=[i("开启",-1)])]),_:1}),e(u,{value:0},{default:o(()=>[...t[4]||(t[4]=[i("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),t[5]||(t[5]=a("div",{class:"form-tips"},"关闭或开启充值功能,关闭后将不显示充值入口",-1))])]),_:1}),e(d,{label:"最低充值金额"},{default:o(()=>[a("div",null,[e(C,{modelValue:n(r).min_amount,"onUpdate:modelValue":t[1]||(t[1]=m=>n(r).min_amount=m),placeholder:"请输入最低充值金额",clearable:""},null,8,["modelValue"]),t[6]||(t[6]=a("div",{class:"form-tips"}," 最低充值金额要求,不填或填0表示不限制最低充值金额 ",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),O((_(),U(x,null,{default:o(()=>[e(E,{type:"primary",onClick:g},{default:o(()=>[...t[7]||(t[7]=[i("保存",-1)])]),_:1})]),_:1})),[[w,["recharge.recharge/setConfig"]]])])}}});export{Bt as default}; diff --git a/server/public/admin/assets/index-Dg2D7IT3.js b/server/public/admin/assets/index-DPG02AxB.js similarity index 94% rename from server/public/admin/assets/index-Dg2D7IT3.js rename to server/public/admin/assets/index-DPG02AxB.js index d12b36fc..00ca9eeb 100644 --- a/server/public/admin/assets/index-Dg2D7IT3.js +++ b/server/public/admin/assets/index-DPG02AxB.js @@ -1 +1 @@ -import{K as C,J as x,L as B,M as N,N as T,T as L,i as R}from"./element-plus-DFTWCWyi.js";import{_ as V,s as q}from"./edit.vue_vue_type_script_setup_true_lang-C66WHFUi.js";import{f as v,as as D,ak as a,I as J,a as o,aN as e,J as s,aP as f,G as l,O as p}from"./@vue/runtime-core-C6bnekPw.js";import{y as g,q as S,r as $}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const z={class:"storage"},A=v({name:"storage"}),Bt=v({...A,setup(F){const d=S(),i=$({loading:!1,lists:[]}),_=async()=>{try{i.loading=!0,i.lists=await q(),i.loading=!1}catch{i.loading=!1}},b=n=>{var t;(t=d.value)==null||t.open(n)};return _(),(n,t)=>{const w=C,c=x,r=T,u=L,k=R,y=N,h=D("perms"),E=B;return a(),J("div",z,[o(c,{class:"!border-none",shadow:"never"},{default:e(()=>[o(w,{type:"warning",title:"温馨提示:",closable:!1,"show-icon":""},{default:e(()=>[...t[0]||(t[0]=[s("div",null," 1.使用对象存储,需要将public目录下的资源文件保留原来目录路径传输到对象存储空间。 ",-1),s("div",null,"2.请勿随意切换存储方式,可能导致图片无法查看。",-1),s("div",null," 3.需要在对象存储后台设置域名跨域,否则图片生成场景无法使用,例海报合成等。 ",-1),s("div",null," 4.需将对象存储的图片域名添加到微信小程序官方后台request合法域名和downloadFile合法域名。 ",-1)])]),_:1})]),_:1}),f((a(),l(c,{class:"!border-none mt-4",shadow:"never"},{default:e(()=>[o(y,{size:"large",data:g(i).lists},{default:e(()=>[o(r,{label:"储存方式",prop:"name","min-width":"120"}),o(r,{label:"储存位置",prop:"path","min-width":"160"}),o(r,{label:"状态","min-width":"80"},{default:e(({row:m})=>[m.status==1?(a(),l(u,{key:0},{default:e(()=>[...t[1]||(t[1]=[p("开启",-1)])]),_:1})):(a(),l(u,{key:1,type:"danger"},{default:e(()=>[...t[2]||(t[2]=[p("关闭",-1)])]),_:1}))]),_:1}),o(r,{label:"操作","min-width":"80",fixed:"right"},{default:e(({row:m})=>[f((a(),l(k,{type:"primary",link:"",onClick:G=>b(m.engine)},{default:e(()=>[...t[3]||(t[3]=[p(" 设置 ",-1)])]),_:1},8,["onClick"])),[[h,["setting.storage/setup"]]])]),_:1})]),_:1},8,["data"])]),_:1})),[[E,g(i).loading]]),o(V,{ref_key:"editRef",ref:d,onSuccess:_},null,512)])}}});export{Bt as default}; +import{K as C,J as x,L as B,M as N,N as T,T as L,i as R}from"./element-plus-DFTWCWyi.js";import{_ as V,s as q}from"./edit.vue_vue_type_script_setup_true_lang-Co9C2cTZ.js";import{f as v,as as D,ak as a,I as J,a as o,aN as e,J as s,aP as f,G as l,O as p}from"./@vue/runtime-core-C6bnekPw.js";import{y as g,q as S,r as $}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const z={class:"storage"},A=v({name:"storage"}),Bt=v({...A,setup(F){const d=S(),i=$({loading:!1,lists:[]}),_=async()=>{try{i.loading=!0,i.lists=await q(),i.loading=!1}catch{i.loading=!1}},b=n=>{var t;(t=d.value)==null||t.open(n)};return _(),(n,t)=>{const w=C,c=x,r=T,u=L,k=R,y=N,h=D("perms"),E=B;return a(),J("div",z,[o(c,{class:"!border-none",shadow:"never"},{default:e(()=>[o(w,{type:"warning",title:"温馨提示:",closable:!1,"show-icon":""},{default:e(()=>[...t[0]||(t[0]=[s("div",null," 1.使用对象存储,需要将public目录下的资源文件保留原来目录路径传输到对象存储空间。 ",-1),s("div",null,"2.请勿随意切换存储方式,可能导致图片无法查看。",-1),s("div",null," 3.需要在对象存储后台设置域名跨域,否则图片生成场景无法使用,例海报合成等。 ",-1),s("div",null," 4.需将对象存储的图片域名添加到微信小程序官方后台request合法域名和downloadFile合法域名。 ",-1)])]),_:1})]),_:1}),f((a(),l(c,{class:"!border-none mt-4",shadow:"never"},{default:e(()=>[o(y,{size:"large",data:g(i).lists},{default:e(()=>[o(r,{label:"储存方式",prop:"name","min-width":"120"}),o(r,{label:"储存位置",prop:"path","min-width":"160"}),o(r,{label:"状态","min-width":"80"},{default:e(({row:m})=>[m.status==1?(a(),l(u,{key:0},{default:e(()=>[...t[1]||(t[1]=[p("开启",-1)])]),_:1})):(a(),l(u,{key:1,type:"danger"},{default:e(()=>[...t[2]||(t[2]=[p("关闭",-1)])]),_:1}))]),_:1}),o(r,{label:"操作","min-width":"80",fixed:"right"},{default:e(({row:m})=>[f((a(),l(k,{type:"primary",link:"",onClick:G=>b(m.engine)},{default:e(()=>[...t[3]||(t[3]=[p(" 设置 ",-1)])]),_:1},8,["onClick"])),[[h,["setting.storage/setup"]]])]),_:1})]),_:1},8,["data"])]),_:1})),[[E,g(i).loading]]),o(V,{ref_key:"editRef",ref:d,onSuccess:_},null,512)])}}});export{Bt as default}; diff --git a/server/public/admin/assets/index-CWwxxnGy.js b/server/public/admin/assets/index-DV0DYErj.js similarity index 95% rename from server/public/admin/assets/index-CWwxxnGy.js rename to server/public/admin/assets/index-DV0DYErj.js index 8fb1955c..5ca0363a 100644 --- a/server/public/admin/assets/index-CWwxxnGy.js +++ b/server/public/admin/assets/index-DV0DYErj.js @@ -1 +1 @@ -import{J as Y,D as Z,B as ee,P as te,Q as ae,ag as ne,W as oe,C as le,i as se,M as ie,N as de,T as re,L as me}from"./element-plus-DFTWCWyi.js";import{_ as ce}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as pe,i as _e,_ as ue}from"./index-Nt5zMHcc.js";import{_ as fe}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as he}from"./@vue/runtime-dom-DDAG46FW.js";import{e as ve,f as be}from"./finance-L1-WPbJt.js";import{u as ge}from"./usePaging-VsbTxSU0.js";import ye from"./edit-DUXbzElE.js";import{f as F,as as ke,ak as i,I as b,a as t,aN as o,J as r,F as D,ap as L,G as _,O as p,aP as w,H as we,A as x,n as B}from"./@vue/runtime-core-C6bnekPw.js";import{Q as u}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as xe,q as Ce,n as Ee,r as Ve}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const Te={class:"account-cost-list"},Ae={class:"flex flex-wrap"},Pe={class:"w-1/2 md:w-1/3"},Se={class:"text-4xl"},De={class:"w-1/2 md:w-1/3"},Le={class:"text-4xl"},Be={class:"channel-opt-row"},Fe={class:"opt-name"},Ne={key:0},Ue={key:1},$e={class:"flex justify-end mt-4"},Oe=F({name:"accountCostList"}),Re=F({...Oe,setup(Ge){const g=Ce(),y=Ee(!1),s=Ve({start_date:"",end_date:"",media_channel_code:"",dept_id:"",remark:""}),{pager:d,getLists:k,resetPage:C}=ge({fetchFun:ve,params:s}),N=x(()=>{const l=d.extend.media_channel_options;return Array.isArray(l)?l.map(e=>({code:String(e.code||""),name:String(e.name||"")})):[]}),E=x(()=>{const l=d.extend.media_channel_groups;if(Array.isArray(l)&&l.length>0)return l;const e=N.value;return e.length?[{group_name:"渠道",channels:e.map(m=>({channel_code:m.code,channel_name:m.name}))}]:[]}),A=x(()=>{const l=d.extend.dept_options;return Array.isArray(l)?l:[]}),U=x(()=>String(d.extend.default_media_channel_code||"")),P=l=>{if(!l)return"";for(const e of E.value)if(e.channels.find(V=>V.channel_code===l))return e.group_name;return""},$={value:"id",label:"name",children:"children"},O=async()=>{var l;y.value=!0,await B(),(l=g.value)==null||l.open("add")},R=async l=>{var e,m;y.value=!0,await B(),(e=g.value)==null||e.open("edit"),(m=g.value)==null||m.getDetail(l)},G=async l=>{await _e.confirm("确定要删除这条账户消耗记录吗?"),await be({id:l}),k()},I=()=>{s.start_date="",s.end_date="",s.media_channel_code="",s.dept_id="",s.remark="",C()};return k(),(l,e)=>{const m=Y,V=fe,h=ee,S=ae,K=ne,q=te,z=oe,J=le,v=se,M=Z,Q=pe,c=de,j=re,H=ie,W=ce,T=ke("perms"),X=me;return i(),b("div",Te,[t(m,{class:"!border-none mb-4",shadow:"never"},{default:o(()=>[r("div",Ae,[r("div",Pe,[e[7]||(e[7]=r("div",{class:"leading-10"},"当前筛选天数",-1)),r("div",Se,u(n(d).extend.days_count??0),1)]),r("div",De,[e[8]||(e[8]=r("div",{class:"leading-10"},"累计账户消耗 (元)",-1)),r("div",Le,"¥"+u(n(d).extend.total_amount??"0.00"),1)])])]),_:1}),t(m,{class:"!border-none",shadow:"never"},{default:o(()=>[t(M,{class:"mb-[-16px]",model:n(s),inline:""},{default:o(()=>[t(h,{label:"日期范围"},{default:o(()=>[t(V,{startTime:n(s).start_date,"onUpdate:startTime":e[0]||(e[0]=a=>n(s).start_date=a),endTime:n(s).end_date,"onUpdate:endTime":e[1]||(e[1]=a=>n(s).end_date=a)},null,8,["startTime","endTime"])]),_:1}),t(h,{label:"自媒体渠道"},{default:o(()=>[t(q,{modelValue:n(s).media_channel_code,"onUpdate:modelValue":e[2]||(e[2]=a=>n(s).media_channel_code=a),placeholder:"筛选全部渠道",clearable:"",filterable:"",class:"account-cost-channel-select w-[220px]"},{default:o(()=>[t(S,{label:"全部",value:""}),(i(!0),b(D,null,L(n(E),a=>(i(),_(K,{key:a.group_name,label:a.group_name},{default:o(()=>[(i(!0),b(D,null,L(a.channels,f=>(i(),_(S,{key:f.channel_code,label:f.channel_name,value:f.channel_code},{default:o(()=>[r("div",Be,[r("span",Fe,u(f.channel_name),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(h,{label:"部门"},{default:o(()=>[t(z,{modelValue:n(s).dept_id,"onUpdate:modelValue":e[3]||(e[3]=a=>n(s).dept_id=a),data:n(A),"node-key":"id",props:$,"default-expand-all":!0,"check-strictly":"",placeholder:"筛选全部部门",clearable:"",filterable:"",class:"w-[220px]"},null,8,["modelValue","data"])]),_:1}),t(h,{class:"w-[280px]",label:"备注/维护人"},{default:o(()=>[t(J,{modelValue:n(s).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>n(s).remark=a),placeholder:"备注 / 创建人 / 修改人",clearable:"",onKeyup:he(n(C),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(h,null,{default:o(()=>[t(v,{type:"primary",onClick:n(C)},{default:o(()=>[...e[9]||(e[9]=[p("查询",-1)])]),_:1},8,["onClick"]),t(v,{onClick:I},{default:o(()=>[...e[10]||(e[10]=[p("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(m,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[r("div",null,[w((i(),_(v,{type:"primary",onClick:O},{icon:o(()=>[t(Q,{name:"el-icon-Plus"})]),default:o(()=>[e[11]||(e[11]=p(" 新增 ",-1))]),_:1})),[[T,["finance.account_cost/add"]]])]),w((i(),_(H,{class:"mt-4",size:"large",data:n(d).lists},{default:o(()=>[t(c,{label:"日期",prop:"cost_date","min-width":"120"}),t(c,{label:"自媒体渠道","min-width":"160"},{default:o(({row:a})=>[P(a.media_channel_code)?(i(),b("span",Ne,[t(j,{size:"small",class:"mr-1"},{default:o(()=>[p(u(P(a.media_channel_code)),1)]),_:2},1024),p(" "+u(a.media_channel_name),1)])):(i(),b("span",Ue,u(a.media_channel_name),1))]),_:1}),t(c,{label:"部门",prop:"dept_name","min-width":"140"}),t(c,{label:"账户消耗","min-width":"120"},{default:o(({row:a})=>[p("¥"+u(a.amount),1)]),_:1}),t(c,{label:"备注",prop:"remark","min-width":"260","show-overflow-tooltip":""}),t(c,{label:"创建人",prop:"creator_name","min-width":"100"}),t(c,{label:"最后修改人",prop:"updater_name","min-width":"100"}),t(c,{label:"更新时间",prop:"update_time","min-width":"180"}),t(c,{label:"操作",width:"160",fixed:"right"},{default:o(({row:a})=>[w((i(),_(v,{type:"primary",link:"",onClick:f=>R(a)},{default:o(()=>[...e[12]||(e[12]=[p(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[T,["finance.account_cost/edit"]]]),w((i(),_(v,{type:"danger",link:"",onClick:f=>G(a.id)},{default:o(()=>[...e[13]||(e[13]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[T,["finance.account_cost/delete"]]])]),_:1})]),_:1},8,["data"])),[[X,n(d).loading]]),r("div",$e,[t(W,{modelValue:n(d),"onUpdate:modelValue":e[5]||(e[5]=a=>xe(d)?d.value=a:null),onChange:n(k)},null,8,["modelValue","onChange"])])]),_:1}),n(y)?(i(),_(ye,{key:0,ref_key:"editRef",ref:g,"media-channel-groups":n(E),"dept-options":n(A),"default-media-channel-code":n(U),onSuccess:n(k),onClose:e[6]||(e[6]=a=>y.value=!1)},null,8,["media-channel-groups","dept-options","default-media-channel-code","onSuccess"])):we("",!0)])}}}),St=ue(Re,[["__scopeId","data-v-2e3dbff8"]]);export{St as default}; +import{J as Y,D as Z,B as ee,P as te,Q as ae,ag as ne,W as oe,C as le,i as se,M as ie,N as de,T as re,L as me}from"./element-plus-DFTWCWyi.js";import{_ as ce}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as pe,i as _e,_ as ue}from"./index--WnM67ZH.js";import{_ as fe}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as he}from"./@vue/runtime-dom-DDAG46FW.js";import{e as ve,f as be}from"./finance-CuL8jhJS.js";import{u as ge}from"./usePaging-VsbTxSU0.js";import ye from"./edit-BJAaLgsl.js";import{f as F,as as ke,ak as i,I as b,a as t,aN as o,J as r,F as D,ap as L,G as _,O as p,aP as w,H as we,A as x,n as B}from"./@vue/runtime-core-C6bnekPw.js";import{Q as u}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as xe,q as Ce,n as Ee,r as Ve}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const Te={class:"account-cost-list"},Ae={class:"flex flex-wrap"},Pe={class:"w-1/2 md:w-1/3"},Se={class:"text-4xl"},De={class:"w-1/2 md:w-1/3"},Le={class:"text-4xl"},Be={class:"channel-opt-row"},Fe={class:"opt-name"},Ne={key:0},Ue={key:1},$e={class:"flex justify-end mt-4"},Oe=F({name:"accountCostList"}),Re=F({...Oe,setup(Ge){const g=Ce(),y=Ee(!1),s=Ve({start_date:"",end_date:"",media_channel_code:"",dept_id:"",remark:""}),{pager:d,getLists:k,resetPage:C}=ge({fetchFun:ve,params:s}),N=x(()=>{const l=d.extend.media_channel_options;return Array.isArray(l)?l.map(e=>({code:String(e.code||""),name:String(e.name||"")})):[]}),E=x(()=>{const l=d.extend.media_channel_groups;if(Array.isArray(l)&&l.length>0)return l;const e=N.value;return e.length?[{group_name:"渠道",channels:e.map(m=>({channel_code:m.code,channel_name:m.name}))}]:[]}),A=x(()=>{const l=d.extend.dept_options;return Array.isArray(l)?l:[]}),U=x(()=>String(d.extend.default_media_channel_code||"")),P=l=>{if(!l)return"";for(const e of E.value)if(e.channels.find(V=>V.channel_code===l))return e.group_name;return""},$={value:"id",label:"name",children:"children"},O=async()=>{var l;y.value=!0,await B(),(l=g.value)==null||l.open("add")},R=async l=>{var e,m;y.value=!0,await B(),(e=g.value)==null||e.open("edit"),(m=g.value)==null||m.getDetail(l)},G=async l=>{await _e.confirm("确定要删除这条账户消耗记录吗?"),await be({id:l}),k()},I=()=>{s.start_date="",s.end_date="",s.media_channel_code="",s.dept_id="",s.remark="",C()};return k(),(l,e)=>{const m=Y,V=fe,h=ee,S=ae,K=ne,q=te,z=oe,J=le,v=se,M=Z,Q=pe,c=de,j=re,H=ie,W=ce,T=ke("perms"),X=me;return i(),b("div",Te,[t(m,{class:"!border-none mb-4",shadow:"never"},{default:o(()=>[r("div",Ae,[r("div",Pe,[e[7]||(e[7]=r("div",{class:"leading-10"},"当前筛选天数",-1)),r("div",Se,u(n(d).extend.days_count??0),1)]),r("div",De,[e[8]||(e[8]=r("div",{class:"leading-10"},"累计账户消耗 (元)",-1)),r("div",Le,"¥"+u(n(d).extend.total_amount??"0.00"),1)])])]),_:1}),t(m,{class:"!border-none",shadow:"never"},{default:o(()=>[t(M,{class:"mb-[-16px]",model:n(s),inline:""},{default:o(()=>[t(h,{label:"日期范围"},{default:o(()=>[t(V,{startTime:n(s).start_date,"onUpdate:startTime":e[0]||(e[0]=a=>n(s).start_date=a),endTime:n(s).end_date,"onUpdate:endTime":e[1]||(e[1]=a=>n(s).end_date=a)},null,8,["startTime","endTime"])]),_:1}),t(h,{label:"自媒体渠道"},{default:o(()=>[t(q,{modelValue:n(s).media_channel_code,"onUpdate:modelValue":e[2]||(e[2]=a=>n(s).media_channel_code=a),placeholder:"筛选全部渠道",clearable:"",filterable:"",class:"account-cost-channel-select w-[220px]"},{default:o(()=>[t(S,{label:"全部",value:""}),(i(!0),b(D,null,L(n(E),a=>(i(),_(K,{key:a.group_name,label:a.group_name},{default:o(()=>[(i(!0),b(D,null,L(a.channels,f=>(i(),_(S,{key:f.channel_code,label:f.channel_name,value:f.channel_code},{default:o(()=>[r("div",Be,[r("span",Fe,u(f.channel_name),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(h,{label:"部门"},{default:o(()=>[t(z,{modelValue:n(s).dept_id,"onUpdate:modelValue":e[3]||(e[3]=a=>n(s).dept_id=a),data:n(A),"node-key":"id",props:$,"default-expand-all":!0,"check-strictly":"",placeholder:"筛选全部部门",clearable:"",filterable:"",class:"w-[220px]"},null,8,["modelValue","data"])]),_:1}),t(h,{class:"w-[280px]",label:"备注/维护人"},{default:o(()=>[t(J,{modelValue:n(s).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>n(s).remark=a),placeholder:"备注 / 创建人 / 修改人",clearable:"",onKeyup:he(n(C),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(h,null,{default:o(()=>[t(v,{type:"primary",onClick:n(C)},{default:o(()=>[...e[9]||(e[9]=[p("查询",-1)])]),_:1},8,["onClick"]),t(v,{onClick:I},{default:o(()=>[...e[10]||(e[10]=[p("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(m,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[r("div",null,[w((i(),_(v,{type:"primary",onClick:O},{icon:o(()=>[t(Q,{name:"el-icon-Plus"})]),default:o(()=>[e[11]||(e[11]=p(" 新增 ",-1))]),_:1})),[[T,["finance.account_cost/add"]]])]),w((i(),_(H,{class:"mt-4",size:"large",data:n(d).lists},{default:o(()=>[t(c,{label:"日期",prop:"cost_date","min-width":"120"}),t(c,{label:"自媒体渠道","min-width":"160"},{default:o(({row:a})=>[P(a.media_channel_code)?(i(),b("span",Ne,[t(j,{size:"small",class:"mr-1"},{default:o(()=>[p(u(P(a.media_channel_code)),1)]),_:2},1024),p(" "+u(a.media_channel_name),1)])):(i(),b("span",Ue,u(a.media_channel_name),1))]),_:1}),t(c,{label:"部门",prop:"dept_name","min-width":"140"}),t(c,{label:"账户消耗","min-width":"120"},{default:o(({row:a})=>[p("¥"+u(a.amount),1)]),_:1}),t(c,{label:"备注",prop:"remark","min-width":"260","show-overflow-tooltip":""}),t(c,{label:"创建人",prop:"creator_name","min-width":"100"}),t(c,{label:"最后修改人",prop:"updater_name","min-width":"100"}),t(c,{label:"更新时间",prop:"update_time","min-width":"180"}),t(c,{label:"操作",width:"160",fixed:"right"},{default:o(({row:a})=>[w((i(),_(v,{type:"primary",link:"",onClick:f=>R(a)},{default:o(()=>[...e[12]||(e[12]=[p(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[T,["finance.account_cost/edit"]]]),w((i(),_(v,{type:"danger",link:"",onClick:f=>G(a.id)},{default:o(()=>[...e[13]||(e[13]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[T,["finance.account_cost/delete"]]])]),_:1})]),_:1},8,["data"])),[[X,n(d).loading]]),r("div",$e,[t(W,{modelValue:n(d),"onUpdate:modelValue":e[5]||(e[5]=a=>xe(d)?d.value=a:null),onChange:n(k)},null,8,["modelValue","onChange"])])]),_:1}),n(y)?(i(),_(ye,{key:0,ref_key:"editRef",ref:g,"media-channel-groups":n(E),"dept-options":n(A),"default-media-channel-code":n(U),onSuccess:n(k),onClose:e[6]||(e[6]=a=>y.value=!1)},null,8,["media-channel-groups","dept-options","default-media-channel-code","onSuccess"])):we("",!0)])}}}),St=ue(Re,[["__scopeId","data-v-2e3dbff8"]]);export{St as default}; diff --git a/server/public/admin/assets/index-afeGV-gc.js b/server/public/admin/assets/index-DgkrquIz.js similarity index 91% rename from server/public/admin/assets/index-afeGV-gc.js rename to server/public/admin/assets/index-DgkrquIz.js index d5d197dd..dd215ca1 100644 --- a/server/public/admin/assets/index-afeGV-gc.js +++ b/server/public/admin/assets/index-DgkrquIz.js @@ -1 +1 @@ -import{Q as V,P as b}from"./element-plus-DFTWCWyi.js";import{m as k}from"./medicine-D4btWglq.js";import{f as w,w as x,ak as l,I as d,G as u,aN as B,F as C,ap as E}from"./@vue/runtime-core-C6bnekPw.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import{y as p,n as f}from"./@vue/reactivity-DiY1c2vO.js";import{_ as M}from"./index-Nt5zMHcc.js";const S={key:0,class:"medicine-name-readonly"},F=w({__name:"index",props:{modelValue:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(o,{emit:v}){const i=o,_=v,n=f(!1),a=f([]);function m(){const e=(i.modelValue||"").trim();e&&(a.value.some(t=>t.name===e)||(a.value=[{id:0,name:e},...a.value]))}const c=async e=>{n.value=!0;try{const t=(e||"").trim(),s=await k({name:t||void 0,page_no:1,page_size:100,status:1});a.value=s.lists||[],m()}catch(t){console.error(t),a.value=[]}finally{n.value=!1}},y=e=>{e&&a.value.length===0&&c("")},h=e=>{_("update:modelValue",e||"")};return x(()=>i.modelValue,()=>{m()},{immediate:!0}),(e,t)=>{const s=V,g=b;return o.disabled?(l(),d("span",S,I(o.modelValue||"—"),1)):(l(),u(g,{key:1,"model-value":o.modelValue,class:"medicine-name-select w-full",filterable:"",remote:"","reserve-keyword":"",placeholder:"搜索药材名称或拼音首字母","remote-method":c,loading:p(n),clearable:"",onVisibleChange:y,"onUpdate:modelValue":h},{default:B(()=>[(l(!0),d(C,null,E(p(a),r=>(l(),u(s,{key:r.id,label:r.name,value:r.name},null,8,["label","value"]))),128))]),_:1},8,["model-value","loading"]))}}}),z=M(F,[["__scopeId","data-v-01d726b0"]]);export{z as M}; +import{Q as V,P as b}from"./element-plus-DFTWCWyi.js";import{m as k}from"./medicine-KRcHi5G1.js";import{f as w,w as x,ak as l,I as d,G as u,aN as B,F as C,ap as E}from"./@vue/runtime-core-C6bnekPw.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import{y as p,n as f}from"./@vue/reactivity-DiY1c2vO.js";import{_ as M}from"./index--WnM67ZH.js";const S={key:0,class:"medicine-name-readonly"},F=w({__name:"index",props:{modelValue:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(o,{emit:v}){const i=o,_=v,n=f(!1),a=f([]);function m(){const e=(i.modelValue||"").trim();e&&(a.value.some(t=>t.name===e)||(a.value=[{id:0,name:e},...a.value]))}const c=async e=>{n.value=!0;try{const t=(e||"").trim(),s=await k({name:t||void 0,page_no:1,page_size:100,status:1});a.value=s.lists||[],m()}catch(t){console.error(t),a.value=[]}finally{n.value=!1}},y=e=>{e&&a.value.length===0&&c("")},h=e=>{_("update:modelValue",e||"")};return x(()=>i.modelValue,()=>{m()},{immediate:!0}),(e,t)=>{const s=V,g=b;return o.disabled?(l(),d("span",S,I(o.modelValue||"—"),1)):(l(),u(g,{key:1,"model-value":o.modelValue,class:"medicine-name-select w-full",filterable:"",remote:"","reserve-keyword":"",placeholder:"搜索药材名称或拼音首字母","remote-method":c,loading:p(n),clearable:"",onVisibleChange:y,"onUpdate:modelValue":h},{default:B(()=>[(l(!0),d(C,null,E(p(a),r=>(l(),u(s,{key:r.id,label:r.name,value:r.name},null,8,["label","value"]))),128))]),_:1},8,["model-value","loading"]))}}}),z=M(F,[["__scopeId","data-v-01d726b0"]]);export{z as M}; diff --git a/server/public/admin/assets/index-C_rFbfoa.js b/server/public/admin/assets/index-DnJy5Y47.js similarity index 97% rename from server/public/admin/assets/index-C_rFbfoa.js rename to server/public/admin/assets/index-DnJy5Y47.js index bdbddbf0..f65e5f8e 100644 --- a/server/public/admin/assets/index-C_rFbfoa.js +++ b/server/public/admin/assets/index-DnJy5Y47.js @@ -1 +1 @@ -import{D as T,B as Y,G as z,F as A,a2 as G,i as H,J as I,R as L,E as q}from"./element-plus-DFTWCWyi.js";import{H as J}from"./vue-echarts-BNtg2q_G.js";import{q as U}from"./stats-BCrGkFwR.js";import{f as V,b as j,ak as u,I as k,a as o,aN as a,O as m,G as y,H as Q,J as p,F as K,ap as W,A as g}from"./@vue/runtime-core-C6bnekPw.js";import{o as x,Q as v}from"./@vue/shared-mAAVTE9n.js";import{y as X,n as C,r as E}from"./@vue/reactivity-DiY1c2vO.js";import{_ as Z}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const tt={class:"assistant-performance-page"},et={class:"stats-kpi-grid"},at={class:"stats-kpi-label"},ot={class:"card-header"},rt={class:"card-hint"},st=V({name:"assistantPerformancePage"}),nt=V({...st,setup(lt){const _=C(!1),l=C([]),i=E({time_type:"month",start_date:"",end_date:""}),r=E({date_range:[],summary:{total_amount:0,total_count:0},chart:{dates:[],amounts:[],counts:[]}}),w=[{key:"total_amount",label:"业绩",type:"money",cardClass:""},{key:"total_count",label:"有效订单数",type:"count",cardClass:""}],S=g(()=>{var e;return(e=r.date_range)!=null&&e.length?`${r.date_range[0]} 至 ${r.date_range[1]}`:"未选择"}),D=g(()=>r.chart.dates.length>0&&r.chart.amounts.some(e=>e>0)),F=g(()=>({tooltip:{trigger:"axis",formatter:e=>{const t=e[0];return`${t.axisValue}
${t.marker}${t.seriesName}: ¥${Number(t.value).toFixed(2)}`}},grid:{left:60,right:24,top:36,bottom:36},xAxis:{type:"category",data:r.chart.dates,axisLabel:{interval:r.chart.dates.length>15?"auto":0,rotate:r.chart.dates.length>10?30:0}},yAxis:{type:"value",name:"金额(元)",axisLabel:{formatter:e=>e>=1e4?(e/1e4).toFixed(1)+"万":String(e)}},series:[{name:"业绩",type:"line",smooth:!0,showSymbol:!0,symbolSize:6,lineStyle:{width:3,color:"#4a78ff"},itemStyle:{color:"#4a78ff"},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(74, 120, 255, 0.25)"},{offset:1,color:"rgba(74, 120, 255, 0.02)"}]}},data:r.chart.amounts}]})),N=(e,t)=>{var c;const n=((c=r.summary)==null?void 0:c[e])??0;return t==="money"?`¥${Number(n).toFixed(2)}`:String(n)},d=async()=>{_.value=!0;try{const e={time_type:i.time_type};i.time_type==="custom"&&(e.start_date=l.value[0]||"",e.end_date=l.value[1]||"");const t=await U(e);Object.assign(r,t||{})}catch(e){console.error("获取业绩数据失败:",e),q.error((e==null?void 0:e.msg)||"获取业绩数据失败")}finally{_.value=!1}},B=()=>{i.time_type!=="custom"&&(l.value=[],d())},$=()=>{var e;((e=l.value)==null?void 0:e.length)===2&&d()},R=()=>{i.time_type="month",l.value=[],d()};return j(()=>{d()}),(e,t)=>{const n=A,c=z,f=Y,P=G,b=H,M=T,h=I,O=L;return u(),k("div",tt,[o(h,{class:"!border-none",shadow:"never"},{default:a(()=>[o(M,{inline:!0,class:"stats-filter-form"},{default:a(()=>[o(f,{label:"时间范围"},{default:a(()=>[o(c,{modelValue:i.time_type,"onUpdate:modelValue":t[0]||(t[0]=s=>i.time_type=s),onChange:B},{default:a(()=>[o(n,{label:"today"},{default:a(()=>[...t[2]||(t[2]=[m("今天",-1)])]),_:1}),o(n,{label:"yesterday"},{default:a(()=>[...t[3]||(t[3]=[m("昨天",-1)])]),_:1}),o(n,{label:"week"},{default:a(()=>[...t[4]||(t[4]=[m("最近7天",-1)])]),_:1}),o(n,{label:"month"},{default:a(()=>[...t[5]||(t[5]=[m("最近30天",-1)])]),_:1}),o(n,{label:"custom"},{default:a(()=>[...t[6]||(t[6]=[m("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),i.time_type==="custom"?(u(),y(f,{key:0},{default:a(()=>[o(P,{modelValue:l.value,"onUpdate:modelValue":t[1]||(t[1]=s=>l.value=s),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:$},null,8,["modelValue"])]),_:1})):Q("",!0),o(f,null,{default:a(()=>[o(b,{type:"primary",loading:_.value,onClick:d},{default:a(()=>[...t[7]||(t[7]=[m("查询",-1)])]),_:1},8,["loading"]),o(b,{onClick:R},{default:a(()=>[...t[8]||(t[8]=[m("重置",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),p("div",et,[(u(),k(K,null,W(w,s=>p("div",{key:s.key,class:x(["stats-kpi-card",s.cardClass])},[p("div",at,v(s.label),1),p("div",{class:x(["stats-kpi-value",{"is-money":s.type==="money"}])},v(N(s.key,s.type)),3)],2)),64))]),o(h,{class:"!border-none mt-4",shadow:"never"},{header:a(()=>[p("div",ot,[t[9]||(t[9]=p("span",{class:"card-title"},"业绩趋势",-1)),p("span",rt,v(S.value)+" · 履约完成业绩",1)])]),default:a(()=>[D.value?(u(),y(X(J),{key:0,class:"stats-chart",option:F.value,autoresize:""},null,8,["option"])):(u(),y(O,{key:1,description:"暂无数据"}))]),_:1})])}}}),jt=Z(nt,[["__scopeId","data-v-297158c8"]]);export{jt as default}; +import{D as T,B as Y,G as z,F as A,a2 as G,i as H,J as I,R as L,E as q}from"./element-plus-DFTWCWyi.js";import{H as J}from"./vue-echarts-BNtg2q_G.js";import{q as U}from"./stats-CxdEJGSN.js";import{f as V,b as j,ak as u,I as k,a as o,aN as a,O as m,G as y,H as Q,J as p,F as K,ap as W,A as g}from"./@vue/runtime-core-C6bnekPw.js";import{o as x,Q as v}from"./@vue/shared-mAAVTE9n.js";import{y as X,n as C,r as E}from"./@vue/reactivity-DiY1c2vO.js";import{_ as Z}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const tt={class:"assistant-performance-page"},et={class:"stats-kpi-grid"},at={class:"stats-kpi-label"},ot={class:"card-header"},rt={class:"card-hint"},st=V({name:"assistantPerformancePage"}),nt=V({...st,setup(lt){const _=C(!1),l=C([]),i=E({time_type:"month",start_date:"",end_date:""}),r=E({date_range:[],summary:{total_amount:0,total_count:0},chart:{dates:[],amounts:[],counts:[]}}),w=[{key:"total_amount",label:"业绩",type:"money",cardClass:""},{key:"total_count",label:"有效订单数",type:"count",cardClass:""}],S=g(()=>{var e;return(e=r.date_range)!=null&&e.length?`${r.date_range[0]} 至 ${r.date_range[1]}`:"未选择"}),D=g(()=>r.chart.dates.length>0&&r.chart.amounts.some(e=>e>0)),F=g(()=>({tooltip:{trigger:"axis",formatter:e=>{const t=e[0];return`${t.axisValue}
${t.marker}${t.seriesName}: ¥${Number(t.value).toFixed(2)}`}},grid:{left:60,right:24,top:36,bottom:36},xAxis:{type:"category",data:r.chart.dates,axisLabel:{interval:r.chart.dates.length>15?"auto":0,rotate:r.chart.dates.length>10?30:0}},yAxis:{type:"value",name:"金额(元)",axisLabel:{formatter:e=>e>=1e4?(e/1e4).toFixed(1)+"万":String(e)}},series:[{name:"业绩",type:"line",smooth:!0,showSymbol:!0,symbolSize:6,lineStyle:{width:3,color:"#4a78ff"},itemStyle:{color:"#4a78ff"},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(74, 120, 255, 0.25)"},{offset:1,color:"rgba(74, 120, 255, 0.02)"}]}},data:r.chart.amounts}]})),N=(e,t)=>{var c;const n=((c=r.summary)==null?void 0:c[e])??0;return t==="money"?`¥${Number(n).toFixed(2)}`:String(n)},d=async()=>{_.value=!0;try{const e={time_type:i.time_type};i.time_type==="custom"&&(e.start_date=l.value[0]||"",e.end_date=l.value[1]||"");const t=await U(e);Object.assign(r,t||{})}catch(e){console.error("获取业绩数据失败:",e),q.error((e==null?void 0:e.msg)||"获取业绩数据失败")}finally{_.value=!1}},B=()=>{i.time_type!=="custom"&&(l.value=[],d())},$=()=>{var e;((e=l.value)==null?void 0:e.length)===2&&d()},R=()=>{i.time_type="month",l.value=[],d()};return j(()=>{d()}),(e,t)=>{const n=A,c=z,f=Y,P=G,b=H,M=T,h=I,O=L;return u(),k("div",tt,[o(h,{class:"!border-none",shadow:"never"},{default:a(()=>[o(M,{inline:!0,class:"stats-filter-form"},{default:a(()=>[o(f,{label:"时间范围"},{default:a(()=>[o(c,{modelValue:i.time_type,"onUpdate:modelValue":t[0]||(t[0]=s=>i.time_type=s),onChange:B},{default:a(()=>[o(n,{label:"today"},{default:a(()=>[...t[2]||(t[2]=[m("今天",-1)])]),_:1}),o(n,{label:"yesterday"},{default:a(()=>[...t[3]||(t[3]=[m("昨天",-1)])]),_:1}),o(n,{label:"week"},{default:a(()=>[...t[4]||(t[4]=[m("最近7天",-1)])]),_:1}),o(n,{label:"month"},{default:a(()=>[...t[5]||(t[5]=[m("最近30天",-1)])]),_:1}),o(n,{label:"custom"},{default:a(()=>[...t[6]||(t[6]=[m("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),i.time_type==="custom"?(u(),y(f,{key:0},{default:a(()=>[o(P,{modelValue:l.value,"onUpdate:modelValue":t[1]||(t[1]=s=>l.value=s),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:$},null,8,["modelValue"])]),_:1})):Q("",!0),o(f,null,{default:a(()=>[o(b,{type:"primary",loading:_.value,onClick:d},{default:a(()=>[...t[7]||(t[7]=[m("查询",-1)])]),_:1},8,["loading"]),o(b,{onClick:R},{default:a(()=>[...t[8]||(t[8]=[m("重置",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),p("div",et,[(u(),k(K,null,W(w,s=>p("div",{key:s.key,class:x(["stats-kpi-card",s.cardClass])},[p("div",at,v(s.label),1),p("div",{class:x(["stats-kpi-value",{"is-money":s.type==="money"}])},v(N(s.key,s.type)),3)],2)),64))]),o(h,{class:"!border-none mt-4",shadow:"never"},{header:a(()=>[p("div",ot,[t[9]||(t[9]=p("span",{class:"card-title"},"业绩趋势",-1)),p("span",rt,v(S.value)+" · 履约完成业绩",1)])]),default:a(()=>[D.value?(u(),y(X(J),{key:0,class:"stats-chart",option:F.value,autoresize:""},null,8,["option"])):(u(),y(O,{key:1,description:"暂无数据"}))]),_:1})])}}}),jt=Z(nt,[["__scopeId","data-v-297158c8"]]);export{jt as default}; diff --git a/server/public/admin/assets/index-SaLZEAlp.js b/server/public/admin/assets/index-Dq58HRUS.js similarity index 90% rename from server/public/admin/assets/index-SaLZEAlp.js rename to server/public/admin/assets/index-Dq58HRUS.js index a4150229..f76074d2 100644 --- a/server/public/admin/assets/index-SaLZEAlp.js +++ b/server/public/admin/assets/index-Dq58HRUS.js @@ -1 +1 @@ -import{D as T,B as j,C as q,i as z,J as A,L as J,M,N as G,q as H,g as O}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as W,i as X,_ as Y}from"./index-Nt5zMHcc.js";import{w as k}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Z,b as ee,c as te}from"./admin-BAFPFiwc.js";import{u as oe}from"./usePaging-VsbTxSU0.js";import ae from"./edit-D4acFfZD.js";import{f as x,b as ie,as as ne,ak as m,I as le,a as e,aN as a,O as _,aP as f,G as s,J as V,H as me,n as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as re,q as se,r as pe,n as de}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-CSUh_x-a.js";import"./post-CjhbCF7F.js";import"./useDictOptions-CT8hbU1b.js";const ce={class:"doctor-list"},ue={class:"mt-4"},_e={class:"flex mt-4 justify-end"},fe=x({name:"doctorList"}),ve=x({...fe,setup(be){const v=se(),r=pe({account:"",name:"",role_id:1,apply_data_scope:1}),b=de(!1),{pager:p,getLists:d,resetParams:D,resetPage:h}=oe({fetchFun:Z,params:r}),P=o=>{ee({id:o.id,avatar:o.avatar,account:o.account,name:o.name,role_id:o.role_id,jobs_id:o.jobs_id,dept_id:o.dept_id,disable:o.disable,multipoint_login:o.multipoint_login}).finally(()=>{d()})},B=async()=>{var o;b.value=!0,await E(),(o=v.value)==null||o.open("add")},I=async o=>{var t,c;b.value=!0,await E(),(t=v.value)==null||t.open("edit"),(c=v.value)==null||c.setFormData(o)},N=async o=>{await X.confirm("确定要删除该医生吗?"),await te({id:o}),d()};return ie(()=>{d()}),(o,t)=>{const c=q,y=j,u=z,$=T,C=A,K=W,l=G,L=H,U=O,F=M,R=Q,w=ne("perms"),S=J;return m(),le("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e($,{class:"mb-[-16px]",model:n(r),inline:""},{default:a(()=>[e(y,{class:"w-[280px]",label:"医生账号"},{default:a(()=>[e(c,{modelValue:n(r).account,"onUpdate:modelValue":t[0]||(t[0]=i=>n(r).account=i),placeholder:"请输入医生账号",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医生名称"},{default:a(()=>[e(c,{modelValue:n(r).name,"onUpdate:modelValue":t[1]||(t[1]=i=>n(r).name=i),placeholder:"请输入医生名称",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:a(()=>[e(u,{type:"primary",onClick:n(h)},{default:a(()=>[...t[4]||(t[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:a(()=>[...t[5]||(t[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((m(),s(C,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[f((m(),s(u,{type:"primary",onClick:B},{icon:a(()=>[e(K,{name:"el-icon-Plus"})]),default:a(()=>[t[6]||(t[6]=_(" 新增医生 ",-1))]),_:1})),[[w,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(p).lists,size:"large"},{default:a(()=>[e(l,{label:"ID",prop:"id","min-width":"60"}),e(l,{label:"头像","min-width":"100"},{default:a(({row:i})=>[e(L,{size:50,src:i.avatar},null,8,["src"])]),_:1}),e(l,{label:"账号",prop:"account","min-width":"120"}),e(l,{label:"姓名",prop:"name","min-width":"100"}),e(l,{label:"手机号",prop:"phone","min-width":"120"}),e(l,{label:"创建时间",prop:"create_time","min-width":"180"}),e(l,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(l,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((m(),s(l,{label:"状态","min-width":"100"},{default:a(({row:i})=>[e(U,{modelValue:i.disable,"onUpdate:modelValue":g=>i.disable=g,"active-value":0,"inactive-value":1,onChange:g=>P(i)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[w,["auth.admin/edit"]]]),e(l,{label:"操作",width:"120",fixed:"right"},{default:a(({row:i})=>[f((m(),s(u,{type:"primary",link:"",onClick:g=>I(i)},{default:a(()=>[...t[7]||(t[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/edit"]]]),f((m(),s(u,{type:"danger",link:"",onClick:g=>N(i.id)},{default:a(()=>[...t[8]||(t[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(R,{modelValue:n(p),"onUpdate:modelValue":t[2]||(t[2]=i=>re(p)?p.value=i:null),onChange:n(d)},null,8,["modelValue","onChange"])])]),_:1})),[[S,n(p).loading]]),n(b)?(m(),s(ae,{key:0,ref_key:"editRef",ref:v,onSuccess:n(d),onClose:t[3]||(t[3]=i=>b.value=!1)},null,8,["onSuccess"])):me("",!0)])}}}),yt=Y(ve,[["__scopeId","data-v-72ffb098"]]);export{yt as default}; +import{D as T,B as j,C as q,i as z,J as A,L as J,M,N as G,q as H,g as O}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as W,i as X,_ as Y}from"./index--WnM67ZH.js";import{w as k}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Z,b as ee,c as te}from"./admin-CGNFdyXh.js";import{u as oe}from"./usePaging-VsbTxSU0.js";import ae from"./edit-BowxPaau.js";import{f as x,b as ie,as as ne,ak as m,I as le,a as e,aN as a,O as _,aP as f,G as s,J as V,H as me,n as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as re,q as se,r as pe,n as de}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-D5OVad_r.js";import"./post-D694zeqo.js";import"./useDictOptions-lSbSoycG.js";const ce={class:"doctor-list"},ue={class:"mt-4"},_e={class:"flex mt-4 justify-end"},fe=x({name:"doctorList"}),ve=x({...fe,setup(be){const v=se(),r=pe({account:"",name:"",role_id:1,apply_data_scope:1}),b=de(!1),{pager:p,getLists:d,resetParams:D,resetPage:h}=oe({fetchFun:Z,params:r}),P=o=>{ee({id:o.id,avatar:o.avatar,account:o.account,name:o.name,role_id:o.role_id,jobs_id:o.jobs_id,dept_id:o.dept_id,disable:o.disable,multipoint_login:o.multipoint_login}).finally(()=>{d()})},B=async()=>{var o;b.value=!0,await E(),(o=v.value)==null||o.open("add")},I=async o=>{var t,c;b.value=!0,await E(),(t=v.value)==null||t.open("edit"),(c=v.value)==null||c.setFormData(o)},N=async o=>{await X.confirm("确定要删除该医生吗?"),await te({id:o}),d()};return ie(()=>{d()}),(o,t)=>{const c=q,y=j,u=z,$=T,C=A,K=W,l=G,L=H,U=O,F=M,R=Q,w=ne("perms"),S=J;return m(),le("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e($,{class:"mb-[-16px]",model:n(r),inline:""},{default:a(()=>[e(y,{class:"w-[280px]",label:"医生账号"},{default:a(()=>[e(c,{modelValue:n(r).account,"onUpdate:modelValue":t[0]||(t[0]=i=>n(r).account=i),placeholder:"请输入医生账号",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医生名称"},{default:a(()=>[e(c,{modelValue:n(r).name,"onUpdate:modelValue":t[1]||(t[1]=i=>n(r).name=i),placeholder:"请输入医生名称",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:a(()=>[e(u,{type:"primary",onClick:n(h)},{default:a(()=>[...t[4]||(t[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:a(()=>[...t[5]||(t[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((m(),s(C,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[f((m(),s(u,{type:"primary",onClick:B},{icon:a(()=>[e(K,{name:"el-icon-Plus"})]),default:a(()=>[t[6]||(t[6]=_(" 新增医生 ",-1))]),_:1})),[[w,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(p).lists,size:"large"},{default:a(()=>[e(l,{label:"ID",prop:"id","min-width":"60"}),e(l,{label:"头像","min-width":"100"},{default:a(({row:i})=>[e(L,{size:50,src:i.avatar},null,8,["src"])]),_:1}),e(l,{label:"账号",prop:"account","min-width":"120"}),e(l,{label:"姓名",prop:"name","min-width":"100"}),e(l,{label:"手机号",prop:"phone","min-width":"120"}),e(l,{label:"创建时间",prop:"create_time","min-width":"180"}),e(l,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(l,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((m(),s(l,{label:"状态","min-width":"100"},{default:a(({row:i})=>[e(U,{modelValue:i.disable,"onUpdate:modelValue":g=>i.disable=g,"active-value":0,"inactive-value":1,onChange:g=>P(i)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[w,["auth.admin/edit"]]]),e(l,{label:"操作",width:"120",fixed:"right"},{default:a(({row:i})=>[f((m(),s(u,{type:"primary",link:"",onClick:g=>I(i)},{default:a(()=>[...t[7]||(t[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/edit"]]]),f((m(),s(u,{type:"danger",link:"",onClick:g=>N(i.id)},{default:a(()=>[...t[8]||(t[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(R,{modelValue:n(p),"onUpdate:modelValue":t[2]||(t[2]=i=>re(p)?p.value=i:null),onChange:n(d)},null,8,["modelValue","onChange"])])]),_:1})),[[S,n(p).loading]]),n(b)?(m(),s(ae,{key:0,ref_key:"editRef",ref:v,onSuccess:n(d),onClose:t[3]||(t[3]=i=>b.value=!1)},null,8,["onSuccess"])):me("",!0)])}}}),yt=Y(ve,[["__scopeId","data-v-72ffb098"]]);export{yt as default}; diff --git a/server/public/admin/assets/index-Cu3QQu7Q.js b/server/public/admin/assets/index-DzLSMUVP.js similarity index 95% rename from server/public/admin/assets/index-Cu3QQu7Q.js rename to server/public/admin/assets/index-DzLSMUVP.js index 545dd2f7..a54309aa 100644 --- a/server/public/admin/assets/index-Cu3QQu7Q.js +++ b/server/public/admin/assets/index-DzLSMUVP.js @@ -1 +1 @@ -import{D as A,B as G,C as H,P as j,Q as W,i as X,J as Y,M as Z,N as ee,T as te,L as oe}from"./element-plus-DFTWCWyi.js";import{c as ae,i as le}from"./index-Nt5zMHcc.js";import{w as ne}from"./@vue/runtime-dom-DDAG46FW.js";import{e as se,f as ie}from"./department-CSUh_x-a.js";import{_ as re}from"./edit.vue_vue_type_script_setup_true_lang-CitHzUnN.js";import{f as I,b as pe,n as E,as as me,ak as m,I as de,a as t,aN as o,O as s,J as P,aP as v,G as c,H as F}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,q as x,n as V,r as ue}from"./@vue/reactivity-DiY1c2vO.js";import{Q as L}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./useDictOptions-CT8hbU1b.js";const fe={class:"department"},ce=I({name:"department"}),at=I({...ce,setup(_e){const D=x(),_=x(),R=x();let b=!1;const w=V(!1),C=V([]),d=ue({status:"",name:""}),y=V(!1),u=async()=>{w.value=!0,C.value=await se(d),w.value=!1},S=()=>{var a;(a=R.value)==null||a.resetFields(),u()},$=async a=>{var e,n;y.value=!0,await E(),a&&((e=_.value)==null||e.setFormData({pid:a})),(n=_.value)==null||n.open("add")},q=async a=>{var e,n;y.value=!0,await E(),(e=_.value)==null||e.open("edit"),(n=_.value)==null||n.getDetail(a)},J=async a=>{await le.confirm("确定要删除?"),await ie({id:a}),u()},B=()=>{b=!b,N(C.value,b)},N=(a,e=!0)=>{var n;for(const r in a)(n=D.value)==null||n.toggleRowExpansion(a[r],e),a[r].children&&N(a[r].children,e)};return pe(async()=>{await u(),E(()=>{B()})}),(a,e)=>{const n=H,r=G,g=W,K=j,p=X,M=A,T=Y,O=ae,f=ee,Q=te,U=Z,k=me("perms"),z=oe;return m(),de("div",fe,[t(T,{class:"!border-none",shadow:"never"},{default:o(()=>[t(M,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(d),inline:!0},{default:o(()=>[t(r,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:o(()=>[t(n,{modelValue:i(d).name,"onUpdate:modelValue":e[0]||(e[0]=l=>i(d).name=l),placeholder:"输入部门名称",clearable:"",onKeyup:ne(u,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:o(()=>[t(K,{modelValue:i(d).status,"onUpdate:modelValue":e[1]||(e[1]=l=>i(d).status=l)},{default:o(()=>[t(g,{label:"全部",value:""}),t(g,{label:"正常",value:"1"}),t(g,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(r,null,{default:o(()=>[t(p,{type:"primary",onClick:u},{default:o(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(p,{onClick:S},{default:o(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(T,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[P("div",null,[v((m(),c(p,{type:"primary",onClick:e[2]||(e[2]=l=>$())},{icon:o(()=>[t(O,{name:"el-icon-Plus"})]),default:o(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[k,["dept.dept/add"]]]),t(p,{onClick:B},{default:o(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),v((m(),c(U,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(C),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:o(()=>[...e[8]||(e[8]=[P("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:o(({row:l})=>[s(L(l.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:o(({row:l})=>[t(Q,{class:"ml-2",type:l.status?"primary":"danger"},{default:o(()=>[s(L(l.status_desc),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"排序",prop:"sort","min-width":"100"}),t(f,{label:"更新时间",prop:"update_time","min-width":"180"}),t(f,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[v((m(),c(p,{type:"primary",link:"",onClick:h=>$(l.id)},{default:o(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/add"]]]),v((m(),c(p,{type:"primary",link:"",onClick:h=>q(l)},{default:o(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/edit"]]]),l.pid!==0?v((m(),c(p,{key:0,type:"danger",link:"",onClick:h=>J(l.id)},{default:o(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/delete"]]]):F("",!0)]),_:1})]),_:1},8,["data"])),[[z,i(w)]])]),_:1}),i(y)?(m(),c(re,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=l=>y.value=!1)},null,512)):F("",!0)])}}});export{at as default}; +import{D as A,B as G,C as H,P as j,Q as W,i as X,J as Y,M as Z,N as ee,T as te,L as oe}from"./element-plus-DFTWCWyi.js";import{c as ae,i as le}from"./index--WnM67ZH.js";import{w as ne}from"./@vue/runtime-dom-DDAG46FW.js";import{e as se,f as ie}from"./department-D5OVad_r.js";import{_ as re}from"./edit.vue_vue_type_script_setup_true_lang-BRjweMz5.js";import{f as I,b as pe,n as E,as as me,ak as m,I as de,a as t,aN as o,O as s,J as P,aP as v,G as c,H as F}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,q as x,n as V,r as ue}from"./@vue/reactivity-DiY1c2vO.js";import{Q as L}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./useDictOptions-lSbSoycG.js";const fe={class:"department"},ce=I({name:"department"}),at=I({...ce,setup(_e){const D=x(),_=x(),R=x();let b=!1;const w=V(!1),C=V([]),d=ue({status:"",name:""}),y=V(!1),u=async()=>{w.value=!0,C.value=await se(d),w.value=!1},S=()=>{var a;(a=R.value)==null||a.resetFields(),u()},$=async a=>{var e,n;y.value=!0,await E(),a&&((e=_.value)==null||e.setFormData({pid:a})),(n=_.value)==null||n.open("add")},q=async a=>{var e,n;y.value=!0,await E(),(e=_.value)==null||e.open("edit"),(n=_.value)==null||n.getDetail(a)},J=async a=>{await le.confirm("确定要删除?"),await ie({id:a}),u()},B=()=>{b=!b,N(C.value,b)},N=(a,e=!0)=>{var n;for(const r in a)(n=D.value)==null||n.toggleRowExpansion(a[r],e),a[r].children&&N(a[r].children,e)};return pe(async()=>{await u(),E(()=>{B()})}),(a,e)=>{const n=H,r=G,g=W,K=j,p=X,M=A,T=Y,O=ae,f=ee,Q=te,U=Z,k=me("perms"),z=oe;return m(),de("div",fe,[t(T,{class:"!border-none",shadow:"never"},{default:o(()=>[t(M,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(d),inline:!0},{default:o(()=>[t(r,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:o(()=>[t(n,{modelValue:i(d).name,"onUpdate:modelValue":e[0]||(e[0]=l=>i(d).name=l),placeholder:"输入部门名称",clearable:"",onKeyup:ne(u,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:o(()=>[t(K,{modelValue:i(d).status,"onUpdate:modelValue":e[1]||(e[1]=l=>i(d).status=l)},{default:o(()=>[t(g,{label:"全部",value:""}),t(g,{label:"正常",value:"1"}),t(g,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(r,null,{default:o(()=>[t(p,{type:"primary",onClick:u},{default:o(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(p,{onClick:S},{default:o(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(T,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[P("div",null,[v((m(),c(p,{type:"primary",onClick:e[2]||(e[2]=l=>$())},{icon:o(()=>[t(O,{name:"el-icon-Plus"})]),default:o(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[k,["dept.dept/add"]]]),t(p,{onClick:B},{default:o(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),v((m(),c(U,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(C),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:o(()=>[...e[8]||(e[8]=[P("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:o(({row:l})=>[s(L(l.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:o(({row:l})=>[t(Q,{class:"ml-2",type:l.status?"primary":"danger"},{default:o(()=>[s(L(l.status_desc),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"排序",prop:"sort","min-width":"100"}),t(f,{label:"更新时间",prop:"update_time","min-width":"180"}),t(f,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[v((m(),c(p,{type:"primary",link:"",onClick:h=>$(l.id)},{default:o(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/add"]]]),v((m(),c(p,{type:"primary",link:"",onClick:h=>q(l)},{default:o(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/edit"]]]),l.pid!==0?v((m(),c(p,{key:0,type:"danger",link:"",onClick:h=>J(l.id)},{default:o(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/delete"]]]):F("",!0)]),_:1})]),_:1},8,["data"])),[[z,i(w)]])]),_:1}),i(y)?(m(),c(re,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=l=>y.value=!1)},null,512)):F("",!0)])}}});export{at as default}; diff --git a/server/public/admin/assets/index-Bde7244p.js b/server/public/admin/assets/index-FUMZSHyo.js similarity index 94% rename from server/public/admin/assets/index-Bde7244p.js rename to server/public/admin/assets/index-FUMZSHyo.js index b37bd7a8..d5999928 100644 --- a/server/public/admin/assets/index-Bde7244p.js +++ b/server/public/admin/assets/index-FUMZSHyo.js @@ -1 +1 @@ -import{D as A,B as H,C as O,i as Q,J as W,L as X,M as Y,N as Z,p as ee,n as te,o as oe}from"./element-plus-DFTWCWyi.js";import{_ as ne}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as ae,k as le,i as x}from"./index-Nt5zMHcc.js";import{w as B}from"./@vue/runtime-dom-DDAG46FW.js";import{b as re,c as se,d as ie,e as me,s as de}from"./code-C9qHBHs_.js";import{u as pe}from"./usePaging-VsbTxSU0.js";import{_ as ue}from"./code-preview.vue_vue_type_script_setup_true_lang-Dpbw1DAf.js";import{_ as _e}from"./data-table.vue_vue_type_script_setup_true_lang-BF_waQWh.js";import{f as S,ar as ce,as as fe,ak as r,I as b,a as t,aN as o,O as i,aP as m,G as p,J as w,H as ge}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as ye,r as N,n as be}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const we={class:"code-generation"},ke={class:"flex"},ve={class:"mt-4"},Ce={class:"flex items-center"},Ve={class:"flex justify-end mt-4"},xe=S({name:"codeGenerate"}),ft=S({...xe,setup(Ee){const u=N({table_name:"",table_comment:""}),_=N({show:!1,loading:!1,code:[]}),{pager:f,getLists:y,resetParams:T,resetPage:k}=pe({fetchFun:re,params:u}),g=be([]),I=a=>{g.value=a.map(({id:e})=>e)},K=async a=>{await x.confirm("确定要同步表结构?"),await de({id:a})},E=async a=>{await x.confirm("确定要删除?"),await se({id:a}),y()},G=async a=>{const e=await ie({id:a});_.code=e,_.show=!0},U=a=>a.some(e=>e.generate_type==1),D=async a=>{if(U(a))return x.msgError("生成方式为生成到模块,请在前端开发模式下使用,详细参考文档");const e=await me({id:a});e.file&&window.open(e.file,"_blank")},F=(a,e)=>{switch(a){case"generate":D([e.id]);break;case"sync":K(e.id);break;case"delete":E(e.id)}};return y(),(a,e)=>{const P=O,v=H,s=Q,L=A,$=W,C=ae,c=Z,M=ce("router-link"),V=oe,z=te,J=ee,R=Y,j=ne,d=fe("perms"),q=X;return r(),b("div",we,[t($,{class:"!border-none",shadow:"never"},{default:o(()=>[t(L,{class:"mb-[-16px]",model:n(u),inline:""},{default:o(()=>[t(v,{class:"w-[280px]",label:"表名称"},{default:o(()=>[t(P,{modelValue:n(u).table_name,"onUpdate:modelValue":e[0]||(e[0]=l=>n(u).table_name=l),clearable:"",onKeyup:B(n(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(v,{class:"w-[280px]",label:"表描述"},{default:o(()=>[t(P,{modelValue:n(u).table_comment,"onUpdate:modelValue":e[1]||(e[1]=l=>n(u).table_comment=l),clearable:"",onKeyup:B(n(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(v,null,{default:o(()=>[t(s,{type:"primary",onClick:n(k)},{default:o(()=>[...e[6]||(e[6]=[i("查询",-1)])]),_:1},8,["onClick"]),t(s,{onClick:n(T)},{default:o(()=>[...e[7]||(e[7]=[i("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),m((r(),p($,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[w("div",ke,[m((r(),p(_e,{class:"inline-block mr-[10px]",onSuccess:n(y)},{default:o(()=>[t(s,{type:"primary"},{icon:o(()=>[t(C,{name:"el-icon-Plus"})]),default:o(()=>[e[8]||(e[8]=i(" 导入数据表 ",-1))]),_:1})]),_:1},8,["onSuccess"])),[[d,["tools.generator/selectTable"]]]),m((r(),p(s,{disabled:!n(g).length,onClick:e[2]||(e[2]=l=>E(n(g))),type:"danger"},{icon:o(()=>[t(C,{name:"el-icon-Delete"})]),default:o(()=>[e[9]||(e[9]=i(" 删除 ",-1))]),_:1},8,["disabled"])),[[d,["tools.generator/delete"]]]),m((r(),p(s,{disabled:!n(g).length,onClick:e[3]||(e[3]=l=>D(n(g)))},{default:o(()=>[...e[10]||(e[10]=[i(" 生成代码 ",-1)])]),_:1},8,["disabled"])),[[d,["tools.generator/generate"]]])]),w("div",ve,[t(R,{data:n(f).lists,size:"large",onSelectionChange:I},{default:o(()=>[t(c,{type:"selection",width:"55"}),t(c,{label:"表名称",prop:"table_name","min-width":"180"}),t(c,{label:"表描述",prop:"table_comment","min-width":"180"}),t(c,{label:"创建时间",prop:"create_time","min-width":"180"}),t(c,{label:"更新时间",prop:"update_time","min-width":"180"}),t(c,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[w("div",Ce,[m((r(),p(s,{type:"primary",link:"",onClick:h=>G(l.id)},{default:o(()=>[...e[11]||(e[11]=[i(" 预览 ",-1)])]),_:1},8,["onClick"])),[[d,["tools.generator/preview"]]]),t(s,{type:"primary",link:""},{default:o(()=>[m((r(),p(M,{to:{path:n(le)("tools.generator/edit"),query:{id:l.id}}},{default:o(()=>[...e[12]||(e[12]=[i(" 编辑 ",-1)])]),_:1},8,["to"])),[[d,["tools.generator/edit"]]])]),_:2},1024),m((r(),p(J,{class:"ml-2",onCommand:h=>F(h,l)},{dropdown:o(()=>[t(z,null,{default:o(()=>[m((r(),b("div",null,[t(V,{command:"generate"},{default:o(()=>[t(s,{type:"primary",link:""},{default:o(()=>[...e[14]||(e[14]=[i(" 生成代码 ",-1)])]),_:1})]),_:1})])),[[d,["tools.generator/generate"]]]),m((r(),b("div",null,[t(V,{command:"sync"},{default:o(()=>[t(s,{type:"primary",link:""},{default:o(()=>[...e[15]||(e[15]=[i(" 同步 ",-1)])]),_:1})]),_:1})])),[[d,["tools.generator/syncColumn"]]]),m((r(),b("div",null,[t(V,{command:"delete"},{default:o(()=>[t(s,{type:"danger",link:""},{default:o(()=>[...e[16]||(e[16]=[i(" 删除 ",-1)])]),_:1})]),_:1})])),[[d,["tools.generator/delete"]]])]),_:1})]),default:o(()=>[t(s,{type:"primary",link:""},{default:o(()=>[e[13]||(e[13]=i(" 更多 ",-1)),t(C,{name:"el-icon-ArrowDown",size:14})]),_:1})]),_:1},8,["onCommand"])),[[d,["tools.generator/generate","tools.generator/syncColumn","tools.generator/delete"]]])])]),_:1})]),_:1},8,["data"])]),w("div",Ve,[t(j,{modelValue:n(f),"onUpdate:modelValue":e[4]||(e[4]=l=>ye(f)?f.value=l:null),onChange:n(y)},null,8,["modelValue","onChange"])])]),_:1})),[[q,n(f).loading]]),n(_).show?(r(),p(ue,{key:0,modelValue:n(_).show,"onUpdate:modelValue":e[5]||(e[5]=l=>n(_).show=l),code:n(_).code},null,8,["modelValue","code"])):ge("",!0)])}}});export{ft as default}; +import{D as A,B as H,C as O,i as Q,J as W,L as X,M as Y,N as Z,p as ee,n as te,o as oe}from"./element-plus-DFTWCWyi.js";import{_ as ne}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as ae,k as le,i as x}from"./index--WnM67ZH.js";import{w as B}from"./@vue/runtime-dom-DDAG46FW.js";import{b as re,c as se,d as ie,e as me,s as de}from"./code-CrOutkes.js";import{u as pe}from"./usePaging-VsbTxSU0.js";import{_ as ue}from"./code-preview.vue_vue_type_script_setup_true_lang-BqShuPMm.js";import{_ as _e}from"./data-table.vue_vue_type_script_setup_true_lang-WF6nrQRf.js";import{f as S,ar as ce,as as fe,ak as r,I as b,a as t,aN as o,O as i,aP as m,G as p,J as w,H as ge}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as ye,r as N,n as be}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const we={class:"code-generation"},ke={class:"flex"},ve={class:"mt-4"},Ce={class:"flex items-center"},Ve={class:"flex justify-end mt-4"},xe=S({name:"codeGenerate"}),ft=S({...xe,setup(Ee){const u=N({table_name:"",table_comment:""}),_=N({show:!1,loading:!1,code:[]}),{pager:f,getLists:y,resetParams:T,resetPage:k}=pe({fetchFun:re,params:u}),g=be([]),I=a=>{g.value=a.map(({id:e})=>e)},K=async a=>{await x.confirm("确定要同步表结构?"),await de({id:a})},E=async a=>{await x.confirm("确定要删除?"),await se({id:a}),y()},G=async a=>{const e=await ie({id:a});_.code=e,_.show=!0},U=a=>a.some(e=>e.generate_type==1),D=async a=>{if(U(a))return x.msgError("生成方式为生成到模块,请在前端开发模式下使用,详细参考文档");const e=await me({id:a});e.file&&window.open(e.file,"_blank")},F=(a,e)=>{switch(a){case"generate":D([e.id]);break;case"sync":K(e.id);break;case"delete":E(e.id)}};return y(),(a,e)=>{const P=O,v=H,s=Q,L=A,$=W,C=ae,c=Z,M=ce("router-link"),V=oe,z=te,J=ee,R=Y,j=ne,d=fe("perms"),q=X;return r(),b("div",we,[t($,{class:"!border-none",shadow:"never"},{default:o(()=>[t(L,{class:"mb-[-16px]",model:n(u),inline:""},{default:o(()=>[t(v,{class:"w-[280px]",label:"表名称"},{default:o(()=>[t(P,{modelValue:n(u).table_name,"onUpdate:modelValue":e[0]||(e[0]=l=>n(u).table_name=l),clearable:"",onKeyup:B(n(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(v,{class:"w-[280px]",label:"表描述"},{default:o(()=>[t(P,{modelValue:n(u).table_comment,"onUpdate:modelValue":e[1]||(e[1]=l=>n(u).table_comment=l),clearable:"",onKeyup:B(n(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(v,null,{default:o(()=>[t(s,{type:"primary",onClick:n(k)},{default:o(()=>[...e[6]||(e[6]=[i("查询",-1)])]),_:1},8,["onClick"]),t(s,{onClick:n(T)},{default:o(()=>[...e[7]||(e[7]=[i("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),m((r(),p($,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[w("div",ke,[m((r(),p(_e,{class:"inline-block mr-[10px]",onSuccess:n(y)},{default:o(()=>[t(s,{type:"primary"},{icon:o(()=>[t(C,{name:"el-icon-Plus"})]),default:o(()=>[e[8]||(e[8]=i(" 导入数据表 ",-1))]),_:1})]),_:1},8,["onSuccess"])),[[d,["tools.generator/selectTable"]]]),m((r(),p(s,{disabled:!n(g).length,onClick:e[2]||(e[2]=l=>E(n(g))),type:"danger"},{icon:o(()=>[t(C,{name:"el-icon-Delete"})]),default:o(()=>[e[9]||(e[9]=i(" 删除 ",-1))]),_:1},8,["disabled"])),[[d,["tools.generator/delete"]]]),m((r(),p(s,{disabled:!n(g).length,onClick:e[3]||(e[3]=l=>D(n(g)))},{default:o(()=>[...e[10]||(e[10]=[i(" 生成代码 ",-1)])]),_:1},8,["disabled"])),[[d,["tools.generator/generate"]]])]),w("div",ve,[t(R,{data:n(f).lists,size:"large",onSelectionChange:I},{default:o(()=>[t(c,{type:"selection",width:"55"}),t(c,{label:"表名称",prop:"table_name","min-width":"180"}),t(c,{label:"表描述",prop:"table_comment","min-width":"180"}),t(c,{label:"创建时间",prop:"create_time","min-width":"180"}),t(c,{label:"更新时间",prop:"update_time","min-width":"180"}),t(c,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[w("div",Ce,[m((r(),p(s,{type:"primary",link:"",onClick:h=>G(l.id)},{default:o(()=>[...e[11]||(e[11]=[i(" 预览 ",-1)])]),_:1},8,["onClick"])),[[d,["tools.generator/preview"]]]),t(s,{type:"primary",link:""},{default:o(()=>[m((r(),p(M,{to:{path:n(le)("tools.generator/edit"),query:{id:l.id}}},{default:o(()=>[...e[12]||(e[12]=[i(" 编辑 ",-1)])]),_:1},8,["to"])),[[d,["tools.generator/edit"]]])]),_:2},1024),m((r(),p(J,{class:"ml-2",onCommand:h=>F(h,l)},{dropdown:o(()=>[t(z,null,{default:o(()=>[m((r(),b("div",null,[t(V,{command:"generate"},{default:o(()=>[t(s,{type:"primary",link:""},{default:o(()=>[...e[14]||(e[14]=[i(" 生成代码 ",-1)])]),_:1})]),_:1})])),[[d,["tools.generator/generate"]]]),m((r(),b("div",null,[t(V,{command:"sync"},{default:o(()=>[t(s,{type:"primary",link:""},{default:o(()=>[...e[15]||(e[15]=[i(" 同步 ",-1)])]),_:1})]),_:1})])),[[d,["tools.generator/syncColumn"]]]),m((r(),b("div",null,[t(V,{command:"delete"},{default:o(()=>[t(s,{type:"danger",link:""},{default:o(()=>[...e[16]||(e[16]=[i(" 删除 ",-1)])]),_:1})]),_:1})])),[[d,["tools.generator/delete"]]])]),_:1})]),default:o(()=>[t(s,{type:"primary",link:""},{default:o(()=>[e[13]||(e[13]=i(" 更多 ",-1)),t(C,{name:"el-icon-ArrowDown",size:14})]),_:1})]),_:1},8,["onCommand"])),[[d,["tools.generator/generate","tools.generator/syncColumn","tools.generator/delete"]]])])]),_:1})]),_:1},8,["data"])]),w("div",Ve,[t(j,{modelValue:n(f),"onUpdate:modelValue":e[4]||(e[4]=l=>ye(f)?f.value=l:null),onChange:n(y)},null,8,["modelValue","onChange"])])]),_:1})),[[q,n(f).loading]]),n(_).show?(r(),p(ue,{key:0,modelValue:n(_).show,"onUpdate:modelValue":e[5]||(e[5]=l=>n(_).show=l),code:n(_).code},null,8,["modelValue","code"])):ge("",!0)])}}});export{ft as default}; diff --git a/server/public/admin/assets/index-3-XRg3iQ.js b/server/public/admin/assets/index-GlwehVLz.js similarity index 95% rename from server/public/admin/assets/index-3-XRg3iQ.js rename to server/public/admin/assets/index-GlwehVLz.js index 0aee20a6..393be69d 100644 --- a/server/public/admin/assets/index-3-XRg3iQ.js +++ b/server/public/admin/assets/index-GlwehVLz.js @@ -1 +1 @@ -import{_ as A}from"./index-DbiC_Mh1.js";import{i as F,M as J,N as G,v as L,I as M,T as O,g as Q,J as R}from"./element-plus-DFTWCWyi.js";import{l as C}from"./lodash-D3kF6u-c.js";import{b as $,c as j}from"./pay-BdcLIgLH.js";import{f as q,as as z,ak as e,I as o,J as i,aP as K,G as m,aN as a,O as l,F as P,ap as X,H as r,a as d}from"./@vue/runtime-core-C6bnekPw.js";import{y as f,n as V}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y}from"./@vue/shared-mAAVTE9n.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const Z={key:0,class:"text-lg mb-[24px]"},tt={key:1,class:"text-lg mb-[24px]"},et={key:2,class:"text-lg mb-[24px]"},at={key:3,class:"text-lg mb-[24px]"},ot={key:4,class:"text-lg mb-[24px]"},lt={key:1},st={key:1},$t=q({__name:"index",setup(it){const n=V({}),u=V(!1);let v={};const x=async()=>{n.value=await $(),v=C.cloneDeep(n.value)},w=()=>{u.value=!0},E=(g,t)=>{n.value[t].forEach(_=>{_.is_default=0}),n.value[t][g].is_default=1},h=()=>{n.value=C.cloneDeep(v),u.value=!1},W=async()=>{await j(n.value),u.value=!1,x()};return x(),(g,t)=>{const _=F,D=L,y=G,N=M,B=O,T=Q,H=J,S=R,U=A,I=z("perms");return e(),o("div",null,[i("div",null,[K((e(),m(_,{type:"primary",onClick:w},{default:a(()=>[...t[0]||(t[0]=[l(" 设置支付方式 ",-1)])]),_:1})),[[I,["setting.pay.pay_way/setPayWay"]]])]),(e(!0),o(P,null,X(f(n),(k,p)=>(e(),m(S,{shadow:"never",class:"mt-4 !border-none",key:p},{default:a(()=>[i("div",null,[p==1?(e(),o("div",Z,[...t[1]||(t[1]=[l(" 微信小程序 ",-1),i("span",{class:"form-tips ml-[10px]"},"在微信小程序中付款的场景",-1)])])):r("",!0),p==2?(e(),o("div",tt,[...t[2]||(t[2]=[l(" 微信公众号 ",-1),i("span",{class:"form-tips ml-[10px]"}," 在微信公众号H5页面中付款的场景,公众号类型一般为服务号 ",-1)])])):r("",!0),p==3?(e(),o("div",et,[...t[3]||(t[3]=[l(" H5支付 ",-1),i("span",{class:"form-tips ml-[10px]"},"在浏览器H5页面中付款的场景",-1)])])):r("",!0),p==4?(e(),o("div",at,[...t[4]||(t[4]=[l(" PC支付 ",-1),i("span",{class:"form-tips ml-[10px]"},"在浏览器PC页面中付款的场景",-1)])])):r("",!0),p==5?(e(),o("div",ot,[...t[5]||(t[5]=[l(" APP支付 ",-1),i("span",{class:"form-tips ml-[10px]"},"在APP付款的场景",-1)])])):r("",!0),k.length?(e(),m(H,{key:5,data:k,style:{width:"100%"}},{default:a(()=>[d(y,{label:"图标","min-width":"150"},{default:a(({row:s})=>[d(D,{src:s.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),d(y,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),d(y,{label:"默认支付","min-width":"150"},{default:a(({row:s,$index:c})=>[i("div",null,[f(u)?(e(),m(N,{key:0,modelValue:s.is_default,"onUpdate:modelValue":b=>s.is_default=b,label:1,onChange:b=>E(c,p)},{default:a(()=>[...t[6]||(t[6]=[l(" 设为默认 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])):(e(),o(P,{key:1},[s.is_default==1?(e(),m(B,{key:0},{default:a(()=>[...t[7]||(t[7]=[l("默认",-1)])]),_:1})):(e(),o("span",lt,"-"))],64))])]),_:2},1024),d(y,{label:"开启状态","min-width":"150"},{default:a(({row:s})=>[f(u)?(e(),m(T,{key:0,modelValue:s.status,"onUpdate:modelValue":c=>s.status=c,"active-value":1,"inactive-value":0},null,8,["modelValue","onUpdate:modelValue"])):(e(),o("span",st,Y(s.status==1?"开启":"关闭"),1))]),_:1})]),_:2},1032,["data"])):r("",!0)])]),_:2},1024))),128)),f(u)?(e(),m(U,{key:0},{default:a(()=>[d(_,{onClick:h},{default:a(()=>[...t[8]||(t[8]=[l("取消",-1)])]),_:1}),d(_,{type:"primary",onClick:W},{default:a(()=>[...t[9]||(t[9]=[l("保存",-1)])]),_:1})]),_:1})):r("",!0)])}}});export{$t as default}; +import{_ as A}from"./index-j275bAO5.js";import{i as F,M as J,N as G,v as L,I as M,T as O,g as Q,J as R}from"./element-plus-DFTWCWyi.js";import{l as C}from"./lodash-D3kF6u-c.js";import{b as $,c as j}from"./pay-hWrQY7o1.js";import{f as q,as as z,ak as e,I as o,J as i,aP as K,G as m,aN as a,O as l,F as P,ap as X,H as r,a as d}from"./@vue/runtime-core-C6bnekPw.js";import{y as f,n as V}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y}from"./@vue/shared-mAAVTE9n.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const Z={key:0,class:"text-lg mb-[24px]"},tt={key:1,class:"text-lg mb-[24px]"},et={key:2,class:"text-lg mb-[24px]"},at={key:3,class:"text-lg mb-[24px]"},ot={key:4,class:"text-lg mb-[24px]"},lt={key:1},st={key:1},$t=q({__name:"index",setup(it){const n=V({}),u=V(!1);let v={};const x=async()=>{n.value=await $(),v=C.cloneDeep(n.value)},w=()=>{u.value=!0},E=(g,t)=>{n.value[t].forEach(_=>{_.is_default=0}),n.value[t][g].is_default=1},h=()=>{n.value=C.cloneDeep(v),u.value=!1},W=async()=>{await j(n.value),u.value=!1,x()};return x(),(g,t)=>{const _=F,D=L,y=G,N=M,B=O,T=Q,H=J,S=R,U=A,I=z("perms");return e(),o("div",null,[i("div",null,[K((e(),m(_,{type:"primary",onClick:w},{default:a(()=>[...t[0]||(t[0]=[l(" 设置支付方式 ",-1)])]),_:1})),[[I,["setting.pay.pay_way/setPayWay"]]])]),(e(!0),o(P,null,X(f(n),(k,p)=>(e(),m(S,{shadow:"never",class:"mt-4 !border-none",key:p},{default:a(()=>[i("div",null,[p==1?(e(),o("div",Z,[...t[1]||(t[1]=[l(" 微信小程序 ",-1),i("span",{class:"form-tips ml-[10px]"},"在微信小程序中付款的场景",-1)])])):r("",!0),p==2?(e(),o("div",tt,[...t[2]||(t[2]=[l(" 微信公众号 ",-1),i("span",{class:"form-tips ml-[10px]"}," 在微信公众号H5页面中付款的场景,公众号类型一般为服务号 ",-1)])])):r("",!0),p==3?(e(),o("div",et,[...t[3]||(t[3]=[l(" H5支付 ",-1),i("span",{class:"form-tips ml-[10px]"},"在浏览器H5页面中付款的场景",-1)])])):r("",!0),p==4?(e(),o("div",at,[...t[4]||(t[4]=[l(" PC支付 ",-1),i("span",{class:"form-tips ml-[10px]"},"在浏览器PC页面中付款的场景",-1)])])):r("",!0),p==5?(e(),o("div",ot,[...t[5]||(t[5]=[l(" APP支付 ",-1),i("span",{class:"form-tips ml-[10px]"},"在APP付款的场景",-1)])])):r("",!0),k.length?(e(),m(H,{key:5,data:k,style:{width:"100%"}},{default:a(()=>[d(y,{label:"图标","min-width":"150"},{default:a(({row:s})=>[d(D,{src:s.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),d(y,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),d(y,{label:"默认支付","min-width":"150"},{default:a(({row:s,$index:c})=>[i("div",null,[f(u)?(e(),m(N,{key:0,modelValue:s.is_default,"onUpdate:modelValue":b=>s.is_default=b,label:1,onChange:b=>E(c,p)},{default:a(()=>[...t[6]||(t[6]=[l(" 设为默认 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])):(e(),o(P,{key:1},[s.is_default==1?(e(),m(B,{key:0},{default:a(()=>[...t[7]||(t[7]=[l("默认",-1)])]),_:1})):(e(),o("span",lt,"-"))],64))])]),_:2},1024),d(y,{label:"开启状态","min-width":"150"},{default:a(({row:s})=>[f(u)?(e(),m(T,{key:0,modelValue:s.status,"onUpdate:modelValue":c=>s.status=c,"active-value":1,"inactive-value":0},null,8,["modelValue","onUpdate:modelValue"])):(e(),o("span",st,Y(s.status==1?"开启":"关闭"),1))]),_:1})]),_:2},1032,["data"])):r("",!0)])]),_:2},1024))),128)),f(u)?(e(),m(U,{key:0},{default:a(()=>[d(_,{onClick:h},{default:a(()=>[...t[8]||(t[8]=[l("取消",-1)])]),_:1}),d(_,{type:"primary",onClick:W},{default:a(()=>[...t[9]||(t[9]=[l("保存",-1)])]),_:1})]),_:1})):r("",!0)])}}});export{$t as default}; diff --git a/server/public/admin/assets/index-tRldup3E.js b/server/public/admin/assets/index-He0eWbxD.js similarity index 91% rename from server/public/admin/assets/index-tRldup3E.js rename to server/public/admin/assets/index-He0eWbxD.js index fac858cf..90c310aa 100644 --- a/server/public/admin/assets/index-tRldup3E.js +++ b/server/public/admin/assets/index-He0eWbxD.js @@ -1 +1 @@ -import{i as P,M as I,N as J,L as j,J as q}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as G,i as H}from"./index-Nt5zMHcc.js";import{c as M,d as O}from"./role-Dce31LXP.js";import{u as Q}from"./usePaging-VsbTxSU0.js";import{_ as U}from"./auth.vue_vue_type_script_setup_true_lang-DiRwQHdy.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_lang-mezlrvEI.js";import{f as E,as as W,ak as l,I as g,a as t,aN as i,J as y,aP as u,G as m,O as c,H as $,n as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as X,q as D,n as x}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./menu-Dcx2e7zx.js";import"./index-BQY2-_X1.js";const Z={class:"role-lists"},ee={class:"mt-4"},te={class:"flex justify-end mt-4"},oe=E({name:"role"}),Ue=E({...oe,setup(ae){const f=D(),k=D(),_=x(!1),w=x(!1),{pager:p,getLists:d}=Q({fetchFun:M}),N=async()=>{var o;_.value=!0,await b(),(o=f.value)==null||o.open("add")},V=async o=>{var e,r;_.value=!0,await b(),(e=f.value)==null||e.open("edit"),(r=f.value)==null||r.setFormData(o)},R=async o=>{var e,r;w.value=!0,await b(),(e=k.value)==null||e.open(),(r=k.value)==null||r.setFormData(o)},S=o=>{const e=Number(o)||1;return{1:"全部数据(免隔离)",2:"本部门及下级部门",3:"仅本部门",4:"仅本人"}[e]||"全部数据(免隔离)"},B=async o=>{await H.confirm("确定要删除?"),await O({id:o}),d()};return d(),(o,e)=>{const r=G,v=P,n=J,L=I,T=z,A=q,h=W("perms"),F=j;return l(),g("div",Z,[t(A,{class:"!border-none",shadow:"never"},{default:i(()=>[y("div",null,[u((l(),m(v,{type:"primary",onClick:N},{icon:i(()=>[t(r,{name:"el-icon-Plus"})]),default:i(()=>[e[3]||(e[3]=c(" 新增 ",-1))]),_:1})),[[h,["auth.role/add"]]])]),u((l(),g("div",ee,[y("div",null,[t(L,{data:s(p).lists,size:"large"},{default:i(()=>[t(n,{prop:"id",label:"ID","min-width":"100"}),t(n,{prop:"name",label:"名称","min-width":"150"}),t(n,{prop:"desc",label:"备注","min-width":"150","show-overflow-tooltip":""}),t(n,{prop:"sort",label:"排序","min-width":"100"}),t(n,{label:"数据范围","min-width":"140"},{default:i(({row:a})=>[c(Y(S(a.data_scope)),1)]),_:1}),t(n,{prop:"num",label:"管理员人数","min-width":"100"}),t(n,{prop:"create_time",label:"创建时间","min-width":"180"}),t(n,{label:"操作",width:"200",fixed:"right"},{default:i(({row:a})=>[u((l(),m(v,{link:"",type:"primary",onClick:C=>V(a)},{default:i(()=>[...e[4]||(e[4]=[c(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"primary",onClick:C=>R(a)},{default:i(()=>[...e[5]||(e[5]=[c(" 分配权限 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"danger",onClick:C=>B(a.id)},{default:i(()=>[...e[6]||(e[6]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/delete"]]])]),_:1})]),_:1},8,["data"])]),y("div",te,[t(T,{modelValue:s(p),"onUpdate:modelValue":e[0]||(e[0]=a=>X(p)?p.value=a:null),onChange:s(d)},null,8,["modelValue","onChange"])])])),[[F,s(p).loading]])]),_:1}),s(_)?(l(),m(K,{key:0,ref_key:"editRef",ref:f,onSuccess:s(d),onClose:e[1]||(e[1]=a=>_.value=!1)},null,8,["onSuccess"])):$("",!0),s(w)?(l(),m(U,{key:1,ref_key:"authRef",ref:k,onSuccess:s(d),onClose:e[2]||(e[2]=a=>w.value=!1)},null,8,["onSuccess"])):$("",!0)])}}});export{Ue as default}; +import{i as P,M as I,N as J,L as j,J as q}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as G,i as H}from"./index--WnM67ZH.js";import{c as M,d as O}from"./role-BvkAFvOK.js";import{u as Q}from"./usePaging-VsbTxSU0.js";import{_ as U}from"./auth.vue_vue_type_script_setup_true_lang-DSWm7qiq.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_lang-BM_Xu6Pp.js";import{f as E,as as W,ak as l,I as g,a as t,aN as i,J as y,aP as u,G as m,O as c,H as $,n as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as X,q as D,n as x}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./menu-Da1RBBpC.js";import"./index-SocYjCJ1.js";const Z={class:"role-lists"},ee={class:"mt-4"},te={class:"flex justify-end mt-4"},oe=E({name:"role"}),Ue=E({...oe,setup(ae){const f=D(),k=D(),_=x(!1),w=x(!1),{pager:p,getLists:d}=Q({fetchFun:M}),N=async()=>{var o;_.value=!0,await b(),(o=f.value)==null||o.open("add")},V=async o=>{var e,r;_.value=!0,await b(),(e=f.value)==null||e.open("edit"),(r=f.value)==null||r.setFormData(o)},R=async o=>{var e,r;w.value=!0,await b(),(e=k.value)==null||e.open(),(r=k.value)==null||r.setFormData(o)},S=o=>{const e=Number(o)||1;return{1:"全部数据(免隔离)",2:"本部门及下级部门",3:"仅本部门",4:"仅本人"}[e]||"全部数据(免隔离)"},B=async o=>{await H.confirm("确定要删除?"),await O({id:o}),d()};return d(),(o,e)=>{const r=G,v=P,n=J,L=I,T=z,A=q,h=W("perms"),F=j;return l(),g("div",Z,[t(A,{class:"!border-none",shadow:"never"},{default:i(()=>[y("div",null,[u((l(),m(v,{type:"primary",onClick:N},{icon:i(()=>[t(r,{name:"el-icon-Plus"})]),default:i(()=>[e[3]||(e[3]=c(" 新增 ",-1))]),_:1})),[[h,["auth.role/add"]]])]),u((l(),g("div",ee,[y("div",null,[t(L,{data:s(p).lists,size:"large"},{default:i(()=>[t(n,{prop:"id",label:"ID","min-width":"100"}),t(n,{prop:"name",label:"名称","min-width":"150"}),t(n,{prop:"desc",label:"备注","min-width":"150","show-overflow-tooltip":""}),t(n,{prop:"sort",label:"排序","min-width":"100"}),t(n,{label:"数据范围","min-width":"140"},{default:i(({row:a})=>[c(Y(S(a.data_scope)),1)]),_:1}),t(n,{prop:"num",label:"管理员人数","min-width":"100"}),t(n,{prop:"create_time",label:"创建时间","min-width":"180"}),t(n,{label:"操作",width:"200",fixed:"right"},{default:i(({row:a})=>[u((l(),m(v,{link:"",type:"primary",onClick:C=>V(a)},{default:i(()=>[...e[4]||(e[4]=[c(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"primary",onClick:C=>R(a)},{default:i(()=>[...e[5]||(e[5]=[c(" 分配权限 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"danger",onClick:C=>B(a.id)},{default:i(()=>[...e[6]||(e[6]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/delete"]]])]),_:1})]),_:1},8,["data"])]),y("div",te,[t(T,{modelValue:s(p),"onUpdate:modelValue":e[0]||(e[0]=a=>X(p)?p.value=a:null),onChange:s(d)},null,8,["modelValue","onChange"])])])),[[F,s(p).loading]])]),_:1}),s(_)?(l(),m(K,{key:0,ref_key:"editRef",ref:f,onSuccess:s(d),onClose:e[1]||(e[1]=a=>_.value=!1)},null,8,["onSuccess"])):$("",!0),s(w)?(l(),m(U,{key:1,ref_key:"authRef",ref:k,onSuccess:s(d),onClose:e[2]||(e[2]=a=>w.value=!1)},null,8,["onSuccess"])):$("",!0)])}}});export{Ue as default}; diff --git a/server/public/admin/assets/index-LfmReHw1.js b/server/public/admin/assets/index-IlWlPkOx.js similarity index 86% rename from server/public/admin/assets/index-LfmReHw1.js rename to server/public/admin/assets/index-IlWlPkOx.js index ada93249..708731ea 100644 --- a/server/public/admin/assets/index-LfmReHw1.js +++ b/server/public/admin/assets/index-IlWlPkOx.js @@ -1 +1 @@ -import{K as k,J as E,M as x,N,v as R,i as B}from"./element-plus-DFTWCWyi.js";import{a as V}from"./pay-BdcLIgLH.js";import{u as T}from"./getExposeType-MUpmx9zy.js";import d from"./edit-Cti94u-p.js";import{f as D,as as H,ak as n,I,a as t,aN as e,J,aP as L,G as f,O as P,H as $}from"./@vue/runtime-core-C6bnekPw.js";import{y as _,n as u,q}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./useLockFn-X4Qce5KO.js";const Ot=D({__name:"index",setup(A){const p=T(),s=u([]),w=q(),l=u(!1),m=async()=>{const{lists:r}=await V();s.value=r},y=async r=>{var o;(o=p.value)==null||o.openHandle(r.id,!1)};return m(),(r,o)=>{const h=k,c=E,i=N,v=R,b=B,g=x,C=H("perms");return n(),I("div",null,[t(c,{class:"!border-none",shadow:"never"},{default:e(()=>[t(h,{type:"warning",title:"温馨提示:设置系统支持的支付方式",closable:!1,"show-icon":""})]),_:1}),t(c,{shadow:"never",class:"mt-4 !border-none"},{default:e(()=>[J("div",null,[t(g,{data:_(s)},{default:e(()=>[t(i,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),t(i,{prop:"name",label:"显示名称","min-width":"150"}),t(i,{label:"图标","min-width":"150"},{default:e(({row:a})=>[t(v,{src:a.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),t(i,{prop:"sort",label:"排序","min-width":"150"}),t(i,{label:"操作","min-width":"80",fixed:"right"},{default:e(({row:a})=>[L((n(),f(b,{link:"",type:"primary",onClick:G=>y(a)},{default:e(()=>[...o[1]||(o[1]=[P(" 配置 ",-1)])]),_:1},8,["onClick"])),[[C,["setting.pay.pay_config/setConfig"]]])]),_:1})]),_:1},8,["data"])])]),_:1}),_(l)?(n(),f(d,{key:0,ref_key:"editRef",ref:w,onSuccess:m,onClose:o[0]||(o[0]=a=>l.value=!1)},null,512)):$("",!0),t(d,{ref_key:"editNewRef",ref:p,onRefresh:m},null,512)])}}});export{Ot as default}; +import{K as k,J as E,M as x,N,v as R,i as B}from"./element-plus-DFTWCWyi.js";import{a as V}from"./pay-hWrQY7o1.js";import{u as T}from"./getExposeType-MUpmx9zy.js";import d from"./edit-B6nlFjfE.js";import{f as D,as as H,ak as n,I,a as t,aN as e,J,aP as L,G as f,O as P,H as $}from"./@vue/runtime-core-C6bnekPw.js";import{y as _,n as u,q}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./useLockFn-X4Qce5KO.js";const Ot=D({__name:"index",setup(A){const p=T(),s=u([]),w=q(),l=u(!1),m=async()=>{const{lists:r}=await V();s.value=r},y=async r=>{var o;(o=p.value)==null||o.openHandle(r.id,!1)};return m(),(r,o)=>{const h=k,c=E,i=N,v=R,b=B,g=x,C=H("perms");return n(),I("div",null,[t(c,{class:"!border-none",shadow:"never"},{default:e(()=>[t(h,{type:"warning",title:"温馨提示:设置系统支持的支付方式",closable:!1,"show-icon":""})]),_:1}),t(c,{shadow:"never",class:"mt-4 !border-none"},{default:e(()=>[J("div",null,[t(g,{data:_(s)},{default:e(()=>[t(i,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),t(i,{prop:"name",label:"显示名称","min-width":"150"}),t(i,{label:"图标","min-width":"150"},{default:e(({row:a})=>[t(v,{src:a.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),t(i,{prop:"sort",label:"排序","min-width":"150"}),t(i,{label:"操作","min-width":"80",fixed:"right"},{default:e(({row:a})=>[L((n(),f(b,{link:"",type:"primary",onClick:G=>y(a)},{default:e(()=>[...o[1]||(o[1]=[P(" 配置 ",-1)])]),_:1},8,["onClick"])),[[C,["setting.pay.pay_config/setConfig"]]])]),_:1})]),_:1},8,["data"])])]),_:1}),_(l)?(n(),f(d,{key:0,ref_key:"editRef",ref:w,onSuccess:m,onClose:o[0]||(o[0]=a=>l.value=!1)},null,512)):$("",!0),t(d,{ref_key:"editNewRef",ref:p,onRefresh:m},null,512)])}}});export{Ot as default}; diff --git a/server/public/admin/assets/index-BQY2-_X1.js b/server/public/admin/assets/index-SocYjCJ1.js similarity index 97% rename from server/public/admin/assets/index-BQY2-_X1.js rename to server/public/admin/assets/index-SocYjCJ1.js index 55285899..71149942 100644 --- a/server/public/admin/assets/index-BQY2-_X1.js +++ b/server/public/admin/assets/index-SocYjCJ1.js @@ -1 +1 @@ -import{i as g,V as B}from"./element-plus-DFTWCWyi.js";import{f as k,n as C,am as b,ak as r,I as S,J as f,aq as p,a as T,M as V,aN as a,O as s,G as m,H as v}from"./@vue/runtime-core-C6bnekPw.js";import{n as $}from"./@vue/reactivity-DiY1c2vO.js";import{_ as E}from"./index-Nt5zMHcc.js";import{Q as i,o as N}from"./@vue/shared-mAAVTE9n.js";const w=k({props:{title:{type:String,default:""},content:{type:String,default:""},confirmButtonText:{type:[String,Boolean],default:"确定"},cancelButtonText:{type:[String,Boolean],default:"取消"},width:{type:String,default:"400px"},disabled:{type:Boolean,default:!1},async:{type:Boolean,default:!1},clickModalClose:{type:Boolean,default:!1},center:{type:Boolean,default:!1},customClass:{type:String,default:""},zIndex:{type:Number,default:void 0}},emits:["confirm","cancel","close","open"],setup(e,{emit:o}){const t=$(!1),u=n=>{o(n),(!e.async||n==="cancel")&&d()},d=()=>{t.value=!1,C(()=>{o("close")})},c=()=>{e.disabled||(o("open"),t.value=!0)};return b("visible",t),{visible:t,handleEvent:u,close:d,open:c}}}),z={class:"dialog"},h={class:"dialog-footer"};function I(e,o,t,u,d,c){const n=g,y=B;return r(),S("div",z,[f("div",{class:"dialog__trigger",onClick:o[0]||(o[0]=(...l)=>e.open&&e.open(...l))},[p(e.$slots,"trigger",{},void 0,!0)]),T(y,{modelValue:e.visible,"onUpdate:modelValue":o[3]||(o[3]=l=>e.visible=l),class:N(e.customClass),center:e.center,"append-to-body":!0,width:e.width,"close-on-click-modal":e.clickModalClose,"z-index":e.zIndex,onClosed:e.close},V({footer:a(()=>[f("div",h,[e.cancelButtonText?(r(),m(n,{key:0,onClick:o[1]||(o[1]=l=>e.handleEvent("cancel"))},{default:a(()=>[s(i(e.cancelButtonText),1)]),_:1})):v("",!0),e.confirmButtonText?(r(),m(n,{key:1,type:"primary",onClick:o[2]||(o[2]=l=>e.handleEvent("confirm"))},{default:a(()=>[s(i(e.confirmButtonText),1)]),_:1})):v("",!0)])]),default:a(()=>[p(e.$slots,"default",{},()=>[s(i(e.content),1)],!0)]),_:2},[e.title?{name:"header",fn:a(()=>[s(i(e.title),1)]),key:"0"}:void 0]),1032,["modelValue","class","center","width","close-on-click-modal","z-index","onClosed"])])}const H=E(w,[["render",I],["__scopeId","data-v-40005f05"]]);export{H as _}; +import{i as g,V as B}from"./element-plus-DFTWCWyi.js";import{f as k,n as C,am as b,ak as r,I as S,J as f,aq as p,a as T,M as V,aN as a,O as s,G as m,H as v}from"./@vue/runtime-core-C6bnekPw.js";import{n as $}from"./@vue/reactivity-DiY1c2vO.js";import{_ as E}from"./index--WnM67ZH.js";import{Q as i,o as N}from"./@vue/shared-mAAVTE9n.js";const w=k({props:{title:{type:String,default:""},content:{type:String,default:""},confirmButtonText:{type:[String,Boolean],default:"确定"},cancelButtonText:{type:[String,Boolean],default:"取消"},width:{type:String,default:"400px"},disabled:{type:Boolean,default:!1},async:{type:Boolean,default:!1},clickModalClose:{type:Boolean,default:!1},center:{type:Boolean,default:!1},customClass:{type:String,default:""},zIndex:{type:Number,default:void 0}},emits:["confirm","cancel","close","open"],setup(e,{emit:o}){const t=$(!1),u=n=>{o(n),(!e.async||n==="cancel")&&d()},d=()=>{t.value=!1,C(()=>{o("close")})},c=()=>{e.disabled||(o("open"),t.value=!0)};return b("visible",t),{visible:t,handleEvent:u,close:d,open:c}}}),z={class:"dialog"},h={class:"dialog-footer"};function I(e,o,t,u,d,c){const n=g,y=B;return r(),S("div",z,[f("div",{class:"dialog__trigger",onClick:o[0]||(o[0]=(...l)=>e.open&&e.open(...l))},[p(e.$slots,"trigger",{},void 0,!0)]),T(y,{modelValue:e.visible,"onUpdate:modelValue":o[3]||(o[3]=l=>e.visible=l),class:N(e.customClass),center:e.center,"append-to-body":!0,width:e.width,"close-on-click-modal":e.clickModalClose,"z-index":e.zIndex,onClosed:e.close},V({footer:a(()=>[f("div",h,[e.cancelButtonText?(r(),m(n,{key:0,onClick:o[1]||(o[1]=l=>e.handleEvent("cancel"))},{default:a(()=>[s(i(e.cancelButtonText),1)]),_:1})):v("",!0),e.confirmButtonText?(r(),m(n,{key:1,type:"primary",onClick:o[2]||(o[2]=l=>e.handleEvent("confirm"))},{default:a(()=>[s(i(e.confirmButtonText),1)]),_:1})):v("",!0)])]),default:a(()=>[p(e.$slots,"default",{},()=>[s(i(e.content),1)],!0)]),_:2},[e.title?{name:"header",fn:a(()=>[s(i(e.title),1)]),key:"0"}:void 0]),1032,["modelValue","class","center","width","close-on-click-modal","z-index","onClosed"])])}const H=E(w,[["render",I],["__scopeId","data-v-40005f05"]]);export{H as _}; diff --git a/server/public/admin/assets/index-BLZ4p99f.js b/server/public/admin/assets/index-anE0XvOM.js similarity index 96% rename from server/public/admin/assets/index-BLZ4p99f.js rename to server/public/admin/assets/index-anE0XvOM.js index 33405dcb..efc73e0f 100644 --- a/server/public/admin/assets/index-BLZ4p99f.js +++ b/server/public/admin/assets/index-anE0XvOM.js @@ -1 +1 @@ -import{D as T,B as $,C as j,P as q,Q as A,i as J,J as z,M as G,N as H,g as M,L as Q}from"./element-plus-DFTWCWyi.js";import{_ as W}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{k as C,c as X,h as Y,i as Z}from"./index-Nt5zMHcc.js";import{w as ee}from"./@vue/runtime-dom-DDAG46FW.js";import{k as te,l as ae,m as le,j as oe}from"./article-nZc1fauP.js";import{u as ie}from"./useDictOptions-CT8hbU1b.js";import{u as ne}from"./usePaging-VsbTxSU0.js";import{f as D,ac as re,ar as se,as as me,ak as r,I as E,a as e,aN as a,F as pe,ap as de,G as m,O as u,J as x,aP as _,H as ce}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as ue,r as _e}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const fe={class:"article-lists"},we={class:"flex justify-end mt-4"},be=D({name:"articleLists"}),nt=D({...be,setup(ve){const n=_e({title:"",cid:"",is_show:""}),{pager:p,getLists:s,resetPage:h,resetParams:P}=ne({fetchFun:te,params:n}),{optionsData:B}=ie({article_cate:{api:oe}}),L=async(f,l)=>{try{await ae({id:l,is_show:f}),s()}catch{s()}},N=async f=>{await Z.confirm("确定要删除?"),await le({id:f}),s()};return re(()=>{s()}),s(),(f,l)=>{const g=j,w=$,d=A,k=q,c=J,U=T,V=z,F=X,y=se("router-link"),i=H,S=Y,I=M,K=G,O=W,b=me("perms"),R=Q;return r(),E("div",fe,[e(V,{class:"!border-none",shadow:"never"},{default:a(()=>[e(U,{ref:"formRef",class:"mb-[-16px]",model:o(n),inline:!0},{default:a(()=>[e(w,{class:"w-[280px]",label:"文章标题"},{default:a(()=>[e(g,{modelValue:o(n).title,"onUpdate:modelValue":l[0]||(l[0]=t=>o(n).title=t),placeholder:"输入文章标题",clearable:"",onKeyup:ee(o(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(w,{class:"w-[280px]",label:"栏目名称"},{default:a(()=>[e(k,{modelValue:o(n).cid,"onUpdate:modelValue":l[1]||(l[1]=t=>o(n).cid=t)},{default:a(()=>[e(d,{label:"全部",value:""}),(r(!0),E(pe,null,de(o(B).article_cate,t=>(r(),m(d,{key:t.id,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(w,{class:"w-[280px]",label:"文章状态"},{default:a(()=>[e(k,{modelValue:o(n).is_show,"onUpdate:modelValue":l[2]||(l[2]=t=>o(n).is_show=t)},{default:a(()=>[e(d,{label:"全部",value:""}),e(d,{label:"显示",value:1}),e(d,{label:"隐藏",value:0})]),_:1},8,["modelValue"])]),_:1}),e(w,null,{default:a(()=>[e(c,{type:"primary",onClick:o(h)},{default:a(()=>[...l[4]||(l[4]=[u("查询",-1)])]),_:1},8,["onClick"]),e(c,{onClick:o(P)},{default:a(()=>[...l[5]||(l[5]=[u("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),e(V,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[x("div",null,[_((r(),m(y,{to:{path:o(C)("article.article/add:edit")}},{default:a(()=>[e(c,{type:"primary",class:"mb-4"},{icon:a(()=>[e(F,{name:"el-icon-Plus"})]),default:a(()=>[l[6]||(l[6]=u(" 发布文章 ",-1))]),_:1})]),_:1},8,["to"])),[[b,["article.article/add","article.article/add:edit"]]])]),_((r(),m(K,{size:"large",data:o(p).lists},{default:a(()=>[e(i,{label:"ID",prop:"id","min-width":"80"}),e(i,{label:"封面","min-width":"100"},{default:a(({row:t})=>[t.image?(r(),m(S,{key:0,src:t.image,width:60,height:45,"preview-src-list":[t.image],"preview-teleported":"",fit:"contain"},null,8,["src","preview-src-list"])):ce("",!0)]),_:1}),e(i,{label:"标题",prop:"title","min-width":"160","show-tooltip-when-overflow":""}),e(i,{label:"栏目",prop:"cate_name","min-width":"100"}),e(i,{label:"作者",prop:"author","min-width":"120"}),e(i,{label:"浏览量",prop:"click","min-width":"100"}),e(i,{label:"状态","min-width":"100"},{default:a(({row:t})=>[_(e(I,{modelValue:t.is_show,"onUpdate:modelValue":v=>t.is_show=v,"active-value":1,"inactive-value":0,onChange:v=>L(v,t.id)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[b,["article.article/updateStatus"]]])]),_:1}),e(i,{label:"排序",prop:"sort","min-width":"100"}),e(i,{label:"发布时间",prop:"create_time","min-width":"120"}),e(i,{label:"操作",width:"120",fixed:"right"},{default:a(({row:t})=>[_((r(),m(c,{type:"primary",link:""},{default:a(()=>[e(y,{to:{path:o(C)("article.article/add:edit"),query:{id:t.id}}},{default:a(()=>[...l[7]||(l[7]=[u(" 编辑 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[b,["article.article/edit","article.article/add:edit"]]]),_((r(),m(c,{type:"danger",link:"",onClick:v=>N(t.id)},{default:a(()=>[...l[8]||(l[8]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[b,["article.article/delete"]]])]),_:1})]),_:1},8,["data"])),[[R,o(p).loading]]),x("div",we,[e(O,{modelValue:o(p),"onUpdate:modelValue":l[3]||(l[3]=t=>ue(p)?p.value=t:null),onChange:o(s)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{nt as default}; +import{D as T,B as $,C as j,P as q,Q as A,i as J,J as z,M as G,N as H,g as M,L as Q}from"./element-plus-DFTWCWyi.js";import{_ as W}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{k as C,c as X,h as Y,i as Z}from"./index--WnM67ZH.js";import{w as ee}from"./@vue/runtime-dom-DDAG46FW.js";import{k as te,l as ae,m as le,j as oe}from"./article-CrrySQF9.js";import{u as ie}from"./useDictOptions-lSbSoycG.js";import{u as ne}from"./usePaging-VsbTxSU0.js";import{f as D,ac as re,ar as se,as as me,ak as r,I as E,a as e,aN as a,F as pe,ap as de,G as m,O as u,J as x,aP as _,H as ce}from"./@vue/runtime-core-C6bnekPw.js";import{y as o,a as ue,r as _e}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const fe={class:"article-lists"},we={class:"flex justify-end mt-4"},be=D({name:"articleLists"}),nt=D({...be,setup(ve){const n=_e({title:"",cid:"",is_show:""}),{pager:p,getLists:s,resetPage:h,resetParams:P}=ne({fetchFun:te,params:n}),{optionsData:B}=ie({article_cate:{api:oe}}),L=async(f,l)=>{try{await ae({id:l,is_show:f}),s()}catch{s()}},N=async f=>{await Z.confirm("确定要删除?"),await le({id:f}),s()};return re(()=>{s()}),s(),(f,l)=>{const g=j,w=$,d=A,k=q,c=J,U=T,V=z,F=X,y=se("router-link"),i=H,S=Y,I=M,K=G,O=W,b=me("perms"),R=Q;return r(),E("div",fe,[e(V,{class:"!border-none",shadow:"never"},{default:a(()=>[e(U,{ref:"formRef",class:"mb-[-16px]",model:o(n),inline:!0},{default:a(()=>[e(w,{class:"w-[280px]",label:"文章标题"},{default:a(()=>[e(g,{modelValue:o(n).title,"onUpdate:modelValue":l[0]||(l[0]=t=>o(n).title=t),placeholder:"输入文章标题",clearable:"",onKeyup:ee(o(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(w,{class:"w-[280px]",label:"栏目名称"},{default:a(()=>[e(k,{modelValue:o(n).cid,"onUpdate:modelValue":l[1]||(l[1]=t=>o(n).cid=t)},{default:a(()=>[e(d,{label:"全部",value:""}),(r(!0),E(pe,null,de(o(B).article_cate,t=>(r(),m(d,{key:t.id,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(w,{class:"w-[280px]",label:"文章状态"},{default:a(()=>[e(k,{modelValue:o(n).is_show,"onUpdate:modelValue":l[2]||(l[2]=t=>o(n).is_show=t)},{default:a(()=>[e(d,{label:"全部",value:""}),e(d,{label:"显示",value:1}),e(d,{label:"隐藏",value:0})]),_:1},8,["modelValue"])]),_:1}),e(w,null,{default:a(()=>[e(c,{type:"primary",onClick:o(h)},{default:a(()=>[...l[4]||(l[4]=[u("查询",-1)])]),_:1},8,["onClick"]),e(c,{onClick:o(P)},{default:a(()=>[...l[5]||(l[5]=[u("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),e(V,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[x("div",null,[_((r(),m(y,{to:{path:o(C)("article.article/add:edit")}},{default:a(()=>[e(c,{type:"primary",class:"mb-4"},{icon:a(()=>[e(F,{name:"el-icon-Plus"})]),default:a(()=>[l[6]||(l[6]=u(" 发布文章 ",-1))]),_:1})]),_:1},8,["to"])),[[b,["article.article/add","article.article/add:edit"]]])]),_((r(),m(K,{size:"large",data:o(p).lists},{default:a(()=>[e(i,{label:"ID",prop:"id","min-width":"80"}),e(i,{label:"封面","min-width":"100"},{default:a(({row:t})=>[t.image?(r(),m(S,{key:0,src:t.image,width:60,height:45,"preview-src-list":[t.image],"preview-teleported":"",fit:"contain"},null,8,["src","preview-src-list"])):ce("",!0)]),_:1}),e(i,{label:"标题",prop:"title","min-width":"160","show-tooltip-when-overflow":""}),e(i,{label:"栏目",prop:"cate_name","min-width":"100"}),e(i,{label:"作者",prop:"author","min-width":"120"}),e(i,{label:"浏览量",prop:"click","min-width":"100"}),e(i,{label:"状态","min-width":"100"},{default:a(({row:t})=>[_(e(I,{modelValue:t.is_show,"onUpdate:modelValue":v=>t.is_show=v,"active-value":1,"inactive-value":0,onChange:v=>L(v,t.id)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[b,["article.article/updateStatus"]]])]),_:1}),e(i,{label:"排序",prop:"sort","min-width":"100"}),e(i,{label:"发布时间",prop:"create_time","min-width":"120"}),e(i,{label:"操作",width:"120",fixed:"right"},{default:a(({row:t})=>[_((r(),m(c,{type:"primary",link:""},{default:a(()=>[e(y,{to:{path:o(C)("article.article/add:edit"),query:{id:t.id}}},{default:a(()=>[...l[7]||(l[7]=[u(" 编辑 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[b,["article.article/edit","article.article/add:edit"]]]),_((r(),m(c,{type:"danger",link:"",onClick:v=>N(t.id)},{default:a(()=>[...l[8]||(l[8]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[b,["article.article/delete"]]])]),_:1})]),_:1},8,["data"])),[[R,o(p).loading]]),x("div",we,[e(O,{modelValue:o(p),"onUpdate:modelValue":l[3]||(l[3]=t=>ue(p)?p.value=t:null),onChange:o(s)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{nt as default}; diff --git a/server/public/admin/assets/index-CKfzECuY.js b/server/public/admin/assets/index-clkQE9Cl.js similarity index 95% rename from server/public/admin/assets/index-CKfzECuY.js rename to server/public/admin/assets/index-clkQE9Cl.js index 7f080b35..315d30d0 100644 --- a/server/public/admin/assets/index-CKfzECuY.js +++ b/server/public/admin/assets/index-clkQE9Cl.js @@ -1 +1 @@ -import{O as G,D as M,B as Q,P as W,Q as X,C as Y,i as Z,J as ee,M as te,N as ae,T as oe,L as le}from"./element-plus-DFTWCWyi.js";import{_ as ne}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as ie,i as se}from"./index-Nt5zMHcc.js";import{w as de}from"./@vue/runtime-dom-DDAG46FW.js";import{c as re,e as me,f as pe}from"./dict-BN4CTMA_.js";import{u as ue}from"./usePaging-VsbTxSU0.js";import{_ as ce}from"./edit.vue_vue_type_script_setup_true_lang-CeopjxTy.js";import{u as _e}from"./vue-router-QlpZ4wdW.js";import{f as R,as as fe,ak as i,I as V,a as t,aN as a,F as ye,ap as ve,G as r,O as m,J as D,aP as v,H as ge,n as F}from"./@vue/runtime-core-C6bnekPw.js";import{r as N,y as o,a as be,n as L,q as ke}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const we={class:"dict-type"},Ce={class:"mt-4"},Ve={class:"flex justify-end mt-4"},De=R({name:"dictData"}),_t=R({...De,setup(Ee){const{query:S}=_e(),g=L(!1),_=ke(),s=N({type:"",type_id:Number(S.id),name:"",status:""}),w=N({dict_type:[]}),{pager:f,getLists:y,resetPage:E,resetParams:I}=ue({fetchFun:re,params:s}),C=L([]),U=n=>{C.value=n.map(({id:e})=>e)},q=async()=>{var e,p;g.value=!0,await F();const n=w.dict_type.find(u=>u.id==s.type_id);(e=_.value)==null||e.setFormData({type_value:n==null?void 0:n.type,type_id:n.id}),(p=_.value)==null||p.open("add")},K=async n=>{var e,p;g.value=!0,await F(),(e=_.value)==null||e.open("edit"),(p=_.value)==null||p.setFormData(n)},x=async n=>{await se.confirm("确定要删除?"),await me({id:n}),y()},O=async()=>{const n=await pe({page_type:0});w.dict_type=n.lists};return y(),O(),(n,e)=>{const p=G,u=X,$=W,b=Q,h=Y,c=Z,H=M,P=ee,T=ie,d=ae,B=oe,J=te,j=ne,k=fe("perms"),z=le;return i(),V("div",we,[t(P,{class:"!border-none",shadow:"never"},{default:a(()=>[t(p,{class:"mb-4",content:"数据管理",onBack:e[0]||(e[0]=l=>n.$router.back())}),t(H,{ref:"formRef",class:"mb-[-16px]",model:o(s),inline:""},{default:a(()=>[t(b,{class:"w-[280px]",label:"字典名称"},{default:a(()=>[t($,{modelValue:o(s).type_id,"onUpdate:modelValue":e[1]||(e[1]=l=>o(s).type_id=l),onChange:o(y)},{default:a(()=>[(i(!0),V(ye,null,ve(o(w).dict_type,l=>(i(),r(u,{label:l.name,value:l.id,key:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1}),t(b,{class:"w-[280px]",label:"数据名称"},{default:a(()=>[t(h,{modelValue:o(s).name,"onUpdate:modelValue":e[2]||(e[2]=l=>o(s).name=l),clearable:"",onKeyup:de(o(E),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(b,{class:"w-[280px]",label:"数据状态"},{default:a(()=>[t($,{modelValue:o(s).status,"onUpdate:modelValue":e[3]||(e[3]=l=>o(s).status=l)},{default:a(()=>[t(u,{label:"全部",value:""}),t(u,{label:"正常",value:1}),t(u,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(b,null,{default:a(()=>[t(c,{type:"primary",onClick:o(E)},{default:a(()=>[...e[7]||(e[7]=[m("查询",-1)])]),_:1},8,["onClick"]),t(c,{onClick:o(I)},{default:a(()=>[...e[8]||(e[8]=[m("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(P,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[D("div",null,[v((i(),r(c,{type:"primary",onClick:q},{icon:a(()=>[t(T,{name:"el-icon-Plus"})]),default:a(()=>[e[9]||(e[9]=m(" 添加数据 ",-1))]),_:1})),[[k,["setting.dict.dict_data/add"]]]),v((i(),r(c,{disabled:!o(C).length,type:"danger",onClick:e[4]||(e[4]=l=>x(o(C)))},{icon:a(()=>[t(T,{name:"el-icon-Delete"})]),default:a(()=>[e[10]||(e[10]=m(" 删除 ",-1))]),_:1},8,["disabled"])),[[k,["setting.dict.dict_data/delete"]]])]),v((i(),V("div",Ce,[D("div",null,[t(J,{data:o(f).lists,size:"large",onSelectionChange:U},{default:a(()=>[t(d,{type:"selection",width:"55"}),t(d,{label:"ID",prop:"id"}),t(d,{label:"数据名称",prop:"name","min-width":"120"}),t(d,{label:"数据值",prop:"value","min-width":"120"}),t(d,{label:"状态"},{default:a(({row:l})=>[l.status==1?(i(),r(B,{key:0},{default:a(()=>[...e[11]||(e[11]=[m("正常",-1)])]),_:1})):(i(),r(B,{key:1,type:"danger"},{default:a(()=>[...e[12]||(e[12]=[m("停用",-1)])]),_:1}))]),_:1}),t(d,{label:"备注",prop:"remark","min-width":"120","show-tooltip-when-overflow":""}),t(d,{label:"排序",prop:"sort"}),t(d,{label:"操作",width:"120",fixed:"right"},{default:a(({row:l})=>[v((i(),r(c,{link:"",type:"primary",onClick:A=>K(l)},{default:a(()=>[...e[13]||(e[13]=[m(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/edit"]]]),v((i(),r(c,{link:"",type:"danger",onClick:A=>x(l.id)},{default:a(()=>[...e[14]||(e[14]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/delete"]]])]),_:1})]),_:1},8,["data"])]),D("div",Ve,[t(j,{modelValue:o(f),"onUpdate:modelValue":e[5]||(e[5]=l=>be(f)?f.value=l:null),onChange:o(y)},null,8,["modelValue","onChange"])])])),[[z,o(f).loading]])]),_:1}),o(g)?(i(),r(ce,{key:0,ref_key:"editRef",ref:_,onSuccess:o(y),onClose:e[6]||(e[6]=l=>g.value=!1)},null,8,["onSuccess"])):ge("",!0)])}}});export{_t as default}; +import{O as G,D as M,B as Q,P as W,Q as X,C as Y,i as Z,J as ee,M as te,N as ae,T as oe,L as le}from"./element-plus-DFTWCWyi.js";import{_ as ne}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as ie,i as se}from"./index--WnM67ZH.js";import{w as de}from"./@vue/runtime-dom-DDAG46FW.js";import{c as re,e as me,f as pe}from"./dict-DnKASfBm.js";import{u as ue}from"./usePaging-VsbTxSU0.js";import{_ as ce}from"./edit.vue_vue_type_script_setup_true_lang-Bzm179RR.js";import{u as _e}from"./vue-router-QlpZ4wdW.js";import{f as R,as as fe,ak as i,I as V,a as t,aN as a,F as ye,ap as ve,G as r,O as m,J as D,aP as v,H as ge,n as F}from"./@vue/runtime-core-C6bnekPw.js";import{r as N,y as o,a as be,n as L,q as ke}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const we={class:"dict-type"},Ce={class:"mt-4"},Ve={class:"flex justify-end mt-4"},De=R({name:"dictData"}),_t=R({...De,setup(Ee){const{query:S}=_e(),g=L(!1),_=ke(),s=N({type:"",type_id:Number(S.id),name:"",status:""}),w=N({dict_type:[]}),{pager:f,getLists:y,resetPage:E,resetParams:I}=ue({fetchFun:re,params:s}),C=L([]),U=n=>{C.value=n.map(({id:e})=>e)},q=async()=>{var e,p;g.value=!0,await F();const n=w.dict_type.find(u=>u.id==s.type_id);(e=_.value)==null||e.setFormData({type_value:n==null?void 0:n.type,type_id:n.id}),(p=_.value)==null||p.open("add")},K=async n=>{var e,p;g.value=!0,await F(),(e=_.value)==null||e.open("edit"),(p=_.value)==null||p.setFormData(n)},x=async n=>{await se.confirm("确定要删除?"),await me({id:n}),y()},O=async()=>{const n=await pe({page_type:0});w.dict_type=n.lists};return y(),O(),(n,e)=>{const p=G,u=X,$=W,b=Q,h=Y,c=Z,H=M,P=ee,T=ie,d=ae,B=oe,J=te,j=ne,k=fe("perms"),z=le;return i(),V("div",we,[t(P,{class:"!border-none",shadow:"never"},{default:a(()=>[t(p,{class:"mb-4",content:"数据管理",onBack:e[0]||(e[0]=l=>n.$router.back())}),t(H,{ref:"formRef",class:"mb-[-16px]",model:o(s),inline:""},{default:a(()=>[t(b,{class:"w-[280px]",label:"字典名称"},{default:a(()=>[t($,{modelValue:o(s).type_id,"onUpdate:modelValue":e[1]||(e[1]=l=>o(s).type_id=l),onChange:o(y)},{default:a(()=>[(i(!0),V(ye,null,ve(o(w).dict_type,l=>(i(),r(u,{label:l.name,value:l.id,key:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1}),t(b,{class:"w-[280px]",label:"数据名称"},{default:a(()=>[t(h,{modelValue:o(s).name,"onUpdate:modelValue":e[2]||(e[2]=l=>o(s).name=l),clearable:"",onKeyup:de(o(E),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(b,{class:"w-[280px]",label:"数据状态"},{default:a(()=>[t($,{modelValue:o(s).status,"onUpdate:modelValue":e[3]||(e[3]=l=>o(s).status=l)},{default:a(()=>[t(u,{label:"全部",value:""}),t(u,{label:"正常",value:1}),t(u,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(b,null,{default:a(()=>[t(c,{type:"primary",onClick:o(E)},{default:a(()=>[...e[7]||(e[7]=[m("查询",-1)])]),_:1},8,["onClick"]),t(c,{onClick:o(I)},{default:a(()=>[...e[8]||(e[8]=[m("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(P,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[D("div",null,[v((i(),r(c,{type:"primary",onClick:q},{icon:a(()=>[t(T,{name:"el-icon-Plus"})]),default:a(()=>[e[9]||(e[9]=m(" 添加数据 ",-1))]),_:1})),[[k,["setting.dict.dict_data/add"]]]),v((i(),r(c,{disabled:!o(C).length,type:"danger",onClick:e[4]||(e[4]=l=>x(o(C)))},{icon:a(()=>[t(T,{name:"el-icon-Delete"})]),default:a(()=>[e[10]||(e[10]=m(" 删除 ",-1))]),_:1},8,["disabled"])),[[k,["setting.dict.dict_data/delete"]]])]),v((i(),V("div",Ce,[D("div",null,[t(J,{data:o(f).lists,size:"large",onSelectionChange:U},{default:a(()=>[t(d,{type:"selection",width:"55"}),t(d,{label:"ID",prop:"id"}),t(d,{label:"数据名称",prop:"name","min-width":"120"}),t(d,{label:"数据值",prop:"value","min-width":"120"}),t(d,{label:"状态"},{default:a(({row:l})=>[l.status==1?(i(),r(B,{key:0},{default:a(()=>[...e[11]||(e[11]=[m("正常",-1)])]),_:1})):(i(),r(B,{key:1,type:"danger"},{default:a(()=>[...e[12]||(e[12]=[m("停用",-1)])]),_:1}))]),_:1}),t(d,{label:"备注",prop:"remark","min-width":"120","show-tooltip-when-overflow":""}),t(d,{label:"排序",prop:"sort"}),t(d,{label:"操作",width:"120",fixed:"right"},{default:a(({row:l})=>[v((i(),r(c,{link:"",type:"primary",onClick:A=>K(l)},{default:a(()=>[...e[13]||(e[13]=[m(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/edit"]]]),v((i(),r(c,{link:"",type:"danger",onClick:A=>x(l.id)},{default:a(()=>[...e[14]||(e[14]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/delete"]]])]),_:1})]),_:1},8,["data"])]),D("div",Ve,[t(j,{modelValue:o(f),"onUpdate:modelValue":e[5]||(e[5]=l=>be(f)?f.value=l:null),onChange:o(y)},null,8,["modelValue","onChange"])])])),[[z,o(f).loading]])]),_:1}),o(g)?(i(),r(ce,{key:0,ref_key:"editRef",ref:_,onSuccess:o(y),onClose:e[6]||(e[6]=l=>g.value=!1)},null,8,["onSuccess"])):ge("",!0)])}}});export{_t as default}; diff --git a/server/public/admin/assets/index-DbiC_Mh1.js b/server/public/admin/assets/index-j275bAO5.js similarity index 86% rename from server/public/admin/assets/index-DbiC_Mh1.js rename to server/public/admin/assets/index-j275bAO5.js index f7c59cfb..c8955086 100644 --- a/server/public/admin/assets/index-DbiC_Mh1.js +++ b/server/public/admin/assets/index-j275bAO5.js @@ -1 +1 @@ -import{f as t,ak as s,I as n,J as a,aq as r}from"./@vue/runtime-core-C6bnekPw.js";import{p as _}from"./@vue/shared-mAAVTE9n.js";import{_ as i}from"./index-Nt5zMHcc.js";const c={class:"footer-btns"},p=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,d)=>(s(),n("div",c,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),u=i(p,[["__scopeId","data-v-9f638557"]]);export{u as _}; +import{f as t,ak as s,I as n,J as a,aq as r}from"./@vue/runtime-core-C6bnekPw.js";import{p as _}from"./@vue/shared-mAAVTE9n.js";import{_ as i}from"./index--WnM67ZH.js";const c={class:"footer-btns"},p=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,d)=>(s(),n("div",c,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),u=i(p,[["__scopeId","data-v-9f638557"]]);export{u as _}; diff --git a/server/public/admin/assets/index-Do_lL19E.js b/server/public/admin/assets/index-mMzAJGGu.js similarity index 94% rename from server/public/admin/assets/index-Do_lL19E.js rename to server/public/admin/assets/index-mMzAJGGu.js index ff046c03..6615453c 100644 --- a/server/public/admin/assets/index-Do_lL19E.js +++ b/server/public/admin/assets/index-mMzAJGGu.js @@ -1 +1 @@ -import{i as A,M as P,N as z,T as F,L as G,J}from"./element-plus-DFTWCWyi.js";import{c as S,M as y,i as q}from"./index-Nt5zMHcc.js";import{a as H,e as I}from"./menu-Dcx2e7zx.js";import{u as j}from"./usePaging-VsbTxSU0.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_lang-CCRvmlU6.js";import{f as D,as as Q,ak as a,I as k,a as n,aN as o,J as N,aP as f,G as p,O as d,H as h,n as B}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,q as $,n as W}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js";import"./index-BQY2-_X1.js";const X={class:"menu-lists"},Y={key:0},Z={key:1},ee={key:2},te={class:"flex"},oe=D({name:"permission-menu"}),Ie=D({...oe,setup(ie){const w=$(),u=$();let v=!1;const _=W(!1),{pager:b,getLists:g}=j({fetchFun:H,params:{page_type:0}}),C=async i=>{var e,s;_.value=!0,await B(),i&&((e=u.value)==null||e.setFormData({pid:i})),(s=u.value)==null||s.open("add")},R=async i=>{var e,s;_.value=!0,await B(),(e=u.value)==null||e.open("edit"),(s=u.value)==null||s.getDetail(i)},L=async i=>{await q.confirm("确定要删除?"),await I({id:i}),g()},M=()=>{v=!v,E(b.lists,v)},E=(i,e=!0)=>{var s;for(const l in i)(s=w.value)==null||s.toggleRowExpansion(i[l],e),i[l].children&&E(i[l].children,e)};return g(),(i,e)=>{const s=S,l=A,r=z,x=F,O=P,U=J,c=Q("perms"),V=G;return a(),k("div",X,[n(U,{class:"!border-none",shadow:"never"},{default:o(()=>[N("div",null,[f((a(),p(l,{type:"primary",onClick:e[0]||(e[0]=t=>C())},{icon:o(()=>[n(s,{name:"el-icon-Plus"})]),default:o(()=>[e[2]||(e[2]=d(" 新增 ",-1))]),_:1})),[[c,["auth.menu/add"]]]),n(l,{onClick:M},{default:o(()=>[...e[3]||(e[3]=[d(" 展开/折叠 ",-1)])]),_:1})]),f((a(),p(O,{ref_key:"tableRef",ref:w,class:"mt-4",size:"large",data:m(b).lists,"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[n(r,{label:"菜单名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),n(r,{label:"类型",prop:"type","min-width":"80"},{default:o(({row:t})=>[t.type==m(y).CATALOGUE?(a(),k("div",Y,"目录")):t.type==m(y).MENU?(a(),k("div",Z,"菜单")):t.type==m(y).BUTTON?(a(),k("div",ee,"按钮")):h("",!0)]),_:1}),n(r,{label:"图标",prop:"icon","min-width":"80"},{default:o(({row:t})=>[N("div",te,[n(s,{name:t.icon,size:20},null,8,["name"])])]),_:1}),n(r,{label:"权限标识",prop:"perms","min-width":"150","show-overflow-tooltip":""}),n(r,{label:"状态",prop:"is_disable","min-width":"100"},{default:o(({row:t})=>[t.is_disable==0?(a(),p(x,{key:0},{default:o(()=>[...e[4]||(e[4]=[d("正常",-1)])]),_:1})):(a(),p(x,{key:1,type:"danger"},{default:o(()=>[...e[5]||(e[5]=[d("停用",-1)])]),_:1}))]),_:1}),n(r,{label:"排序",prop:"sort","min-width":"100"}),n(r,{label:"更新时间",prop:"update_time","min-width":"180"}),n(r,{label:"操作",width:"160",fixed:"right"},{default:o(({row:t})=>[t.type!==m(y).BUTTON?f((a(),p(l,{key:0,type:"primary",link:"",onClick:T=>C(t.id)},{default:o(()=>[...e[6]||(e[6]=[d(" 新增 ",-1)])]),_:1},8,["onClick"])),[[c,["auth.menu/add"]]]):h("",!0),f((a(),p(l,{type:"primary",link:"",onClick:T=>R(t)},{default:o(()=>[...e[7]||(e[7]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[c,["auth.menu/edit"]]]),f((a(),p(l,{type:"danger",link:"",onClick:T=>L(t.id)},{default:o(()=>[...e[8]||(e[8]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[c,["auth.menu/delete"]]])]),_:1})]),_:1},8,["data"])),[[V,m(b).loading]])]),_:1}),m(_)?(a(),p(K,{key:0,ref_key:"editRef",ref:u,onSuccess:m(g),onClose:e[1]||(e[1]=t=>_.value=!1)},null,8,["onSuccess"])):h("",!0)])}}});export{Ie as default}; +import{i as A,M as P,N as z,T as F,L as G,J}from"./element-plus-DFTWCWyi.js";import{c as S,M as y,i as q}from"./index--WnM67ZH.js";import{a as H,e as I}from"./menu-Da1RBBpC.js";import{u as j}from"./usePaging-VsbTxSU0.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_lang-X9H-IX13.js";import{f as D,as as Q,ak as a,I as k,a as n,aN as o,J as N,aP as f,G as p,O as d,H as h,n as B}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,q as $,n as W}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js";import"./index-SocYjCJ1.js";const X={class:"menu-lists"},Y={key:0},Z={key:1},ee={key:2},te={class:"flex"},oe=D({name:"permission-menu"}),Ie=D({...oe,setup(ie){const w=$(),u=$();let v=!1;const _=W(!1),{pager:b,getLists:g}=j({fetchFun:H,params:{page_type:0}}),C=async i=>{var e,s;_.value=!0,await B(),i&&((e=u.value)==null||e.setFormData({pid:i})),(s=u.value)==null||s.open("add")},R=async i=>{var e,s;_.value=!0,await B(),(e=u.value)==null||e.open("edit"),(s=u.value)==null||s.getDetail(i)},L=async i=>{await q.confirm("确定要删除?"),await I({id:i}),g()},M=()=>{v=!v,E(b.lists,v)},E=(i,e=!0)=>{var s;for(const l in i)(s=w.value)==null||s.toggleRowExpansion(i[l],e),i[l].children&&E(i[l].children,e)};return g(),(i,e)=>{const s=S,l=A,r=z,x=F,O=P,U=J,c=Q("perms"),V=G;return a(),k("div",X,[n(U,{class:"!border-none",shadow:"never"},{default:o(()=>[N("div",null,[f((a(),p(l,{type:"primary",onClick:e[0]||(e[0]=t=>C())},{icon:o(()=>[n(s,{name:"el-icon-Plus"})]),default:o(()=>[e[2]||(e[2]=d(" 新增 ",-1))]),_:1})),[[c,["auth.menu/add"]]]),n(l,{onClick:M},{default:o(()=>[...e[3]||(e[3]=[d(" 展开/折叠 ",-1)])]),_:1})]),f((a(),p(O,{ref_key:"tableRef",ref:w,class:"mt-4",size:"large",data:m(b).lists,"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[n(r,{label:"菜单名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),n(r,{label:"类型",prop:"type","min-width":"80"},{default:o(({row:t})=>[t.type==m(y).CATALOGUE?(a(),k("div",Y,"目录")):t.type==m(y).MENU?(a(),k("div",Z,"菜单")):t.type==m(y).BUTTON?(a(),k("div",ee,"按钮")):h("",!0)]),_:1}),n(r,{label:"图标",prop:"icon","min-width":"80"},{default:o(({row:t})=>[N("div",te,[n(s,{name:t.icon,size:20},null,8,["name"])])]),_:1}),n(r,{label:"权限标识",prop:"perms","min-width":"150","show-overflow-tooltip":""}),n(r,{label:"状态",prop:"is_disable","min-width":"100"},{default:o(({row:t})=>[t.is_disable==0?(a(),p(x,{key:0},{default:o(()=>[...e[4]||(e[4]=[d("正常",-1)])]),_:1})):(a(),p(x,{key:1,type:"danger"},{default:o(()=>[...e[5]||(e[5]=[d("停用",-1)])]),_:1}))]),_:1}),n(r,{label:"排序",prop:"sort","min-width":"100"}),n(r,{label:"更新时间",prop:"update_time","min-width":"180"}),n(r,{label:"操作",width:"160",fixed:"right"},{default:o(({row:t})=>[t.type!==m(y).BUTTON?f((a(),p(l,{key:0,type:"primary",link:"",onClick:T=>C(t.id)},{default:o(()=>[...e[6]||(e[6]=[d(" 新增 ",-1)])]),_:1},8,["onClick"])),[[c,["auth.menu/add"]]]):h("",!0),f((a(),p(l,{type:"primary",link:"",onClick:T=>R(t)},{default:o(()=>[...e[7]||(e[7]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[c,["auth.menu/edit"]]]),f((a(),p(l,{type:"danger",link:"",onClick:T=>L(t.id)},{default:o(()=>[...e[8]||(e[8]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[c,["auth.menu/delete"]]])]),_:1})]),_:1},8,["data"])),[[V,m(b).loading]])]),_:1}),m(_)?(a(),p(K,{key:0,ref_key:"editRef",ref:u,onSuccess:m(g),onClose:e[1]||(e[1]=t=>_.value=!1)},null,8,["onSuccess"])):h("",!0)])}}});export{Ie as default}; diff --git a/server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js b/server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js similarity index 96% rename from server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js rename to server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js index 87b5d35a..73e582d8 100644 --- a/server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js +++ b/server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js @@ -1 +1 @@ -import{D as N,B as q,G as D,I as S,C as H,i as I}from"./element-plus-DFTWCWyi.js";import{_ as O}from"./index-BQY2-_X1.js";import{i as f}from"./index-Nt5zMHcc.js";import{f as U,ak as g,I as v,a as t,aN as l,J as c,H as w,O as i,G}from"./@vue/runtime-core-C6bnekPw.js";import{Q as m}from"./@vue/shared-mAAVTE9n.js";import{y as a,q as z,r as E}from"./@vue/reactivity-DiY1c2vO.js";const h={class:"export-data"},j={key:0,class:"text-sm text-gray-500 mb-3 leading-relaxed"},L={class:"flex"},P=U({__name:"index",props:{params:{type:Object,default:()=>({})},pageSize:{type:Number,default:25},fetchFun:{type:Function,required:!0},exportHint:{type:String,default:""}},setup(R){const x=z(),n=R,y=z(),o=E({page_type:0,page_start:1,page_end:200,file_name:""}),k={page_start:[{required:!0,message:"请输入起始页码"},{type:"number",message:"页码必须是整数"},{validator:(r,e,p)=>{if(e<=0)return p(new Error("页码必须大于0"));p()}}],page_end:[{required:!0,message:"请输入结束页码"},{type:"number",message:"页码必须是整数"},{validator:(r,e,p)=>{if(e<=0)return p(new Error("页码必须大于0"));p()}}]},u=E({count:0,sum_page:0,page_size:0,max_page:0,all_max_size:0}),V=async()=>{const r=await n.fetchFun({...n.params,page_size:n.pageSize,export:1});Object.assign(u,r),o.file_name=r.file_name,o.page_end=r.page_end,o.page_start=r.page_start},B=async()=>{var r,e;await((r=x.value)==null?void 0:r.validate()),f.loading("正在导出中...");try{await n.fetchFun({...n.params,...o,page_size:n.pageSize,export:2}),(e=y.value)==null||e.close(),f.closeLoading()}catch{f.closeLoading()}};return V(),(r,e)=>{const p=I,s=q,b=S,C=D,_=H,F=N;return g(),v("div",h,[t(O,{ref_key:"popupRef",ref:y,title:"导出设置",width:"500px","confirm-button-text":"确认导出",onConfirm:B,async:!0,onOpen:V},{trigger:l(()=>[t(p,null,{default:l(()=>[...e[4]||(e[4]=[i("导出",-1)])]),_:1})]),default:l(()=>[c("div",null,[n.exportHint?(g(),v("p",j,m(n.exportHint),1)):w("",!0),t(F,{ref_key:"formRef",ref:x,model:a(o),"label-width":"120px",rules:k},{default:l(()=>[t(s,{label:"数据量:"},{default:l(()=>[i(" 预计导出"+m(a(u).count)+"条数据, 共"+m(a(u).sum_page)+"页,每页"+m(a(u).page_size)+"条数据 ",1)]),_:1}),t(s,{label:"导出限制:"},{default:l(()=>[i(" 每次导出最大允许"+m(a(u).max_page)+"页,共"+m(a(u).all_max_size)+"条数据 ",1)]),_:1}),t(s,{prop:"page_type",label:"导出范围:",required:""},{default:l(()=>[t(C,{modelValue:a(o).page_type,"onUpdate:modelValue":e[0]||(e[0]=d=>a(o).page_type=d)},{default:l(()=>[t(b,{value:0},{default:l(()=>[...e[5]||(e[5]=[i("全部导出",-1)])]),_:1}),t(b,{value:1},{default:l(()=>[...e[6]||(e[6]=[i("分页导出",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(o).page_type==1?(g(),G(s,{key:0,label:"分页范围:"},{default:l(()=>[c("div",L,[t(s,{prop:"page_start"},{default:l(()=>[t(_,{style:{width:"140px"},modelValue:a(o).page_start,"onUpdate:modelValue":e[1]||(e[1]=d=>a(o).page_start=d),modelModifiers:{number:!0},placeholder:""},null,8,["modelValue"])]),_:1}),e[7]||(e[7]=c("span",{class:"flex-none ml-2 mr-2"},"页,至",-1)),t(s,{prop:"page_end"},{default:l(()=>[t(_,{style:{width:"140px"},modelValue:a(o).page_end,"onUpdate:modelValue":e[2]||(e[2]=d=>a(o).page_end=d),modelModifiers:{number:!0},placeholder:""},null,8,["modelValue"])]),_:1})])]),_:1})):w("",!0),t(s,{label:"导出文件名称:",prop:"file_name"},{default:l(()=>[t(_,{modelValue:a(o).file_name,"onUpdate:modelValue":e[3]||(e[3]=d=>a(o).file_name=d),placeholder:"请输入导出文件名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])])]),_:1},512)])}}});export{P as _}; +import{D as N,B as q,G as D,I as S,C as H,i as I}from"./element-plus-DFTWCWyi.js";import{_ as O}from"./index-SocYjCJ1.js";import{i as f}from"./index--WnM67ZH.js";import{f as U,ak as g,I as v,a as t,aN as l,J as c,H as w,O as i,G}from"./@vue/runtime-core-C6bnekPw.js";import{Q as m}from"./@vue/shared-mAAVTE9n.js";import{y as a,q as z,r as E}from"./@vue/reactivity-DiY1c2vO.js";const h={class:"export-data"},j={key:0,class:"text-sm text-gray-500 mb-3 leading-relaxed"},L={class:"flex"},P=U({__name:"index",props:{params:{type:Object,default:()=>({})},pageSize:{type:Number,default:25},fetchFun:{type:Function,required:!0},exportHint:{type:String,default:""}},setup(R){const x=z(),n=R,y=z(),o=E({page_type:0,page_start:1,page_end:200,file_name:""}),k={page_start:[{required:!0,message:"请输入起始页码"},{type:"number",message:"页码必须是整数"},{validator:(r,e,p)=>{if(e<=0)return p(new Error("页码必须大于0"));p()}}],page_end:[{required:!0,message:"请输入结束页码"},{type:"number",message:"页码必须是整数"},{validator:(r,e,p)=>{if(e<=0)return p(new Error("页码必须大于0"));p()}}]},u=E({count:0,sum_page:0,page_size:0,max_page:0,all_max_size:0}),V=async()=>{const r=await n.fetchFun({...n.params,page_size:n.pageSize,export:1});Object.assign(u,r),o.file_name=r.file_name,o.page_end=r.page_end,o.page_start=r.page_start},B=async()=>{var r,e;await((r=x.value)==null?void 0:r.validate()),f.loading("正在导出中...");try{await n.fetchFun({...n.params,...o,page_size:n.pageSize,export:2}),(e=y.value)==null||e.close(),f.closeLoading()}catch{f.closeLoading()}};return V(),(r,e)=>{const p=I,s=q,b=S,C=D,_=H,F=N;return g(),v("div",h,[t(O,{ref_key:"popupRef",ref:y,title:"导出设置",width:"500px","confirm-button-text":"确认导出",onConfirm:B,async:!0,onOpen:V},{trigger:l(()=>[t(p,null,{default:l(()=>[...e[4]||(e[4]=[i("导出",-1)])]),_:1})]),default:l(()=>[c("div",null,[n.exportHint?(g(),v("p",j,m(n.exportHint),1)):w("",!0),t(F,{ref_key:"formRef",ref:x,model:a(o),"label-width":"120px",rules:k},{default:l(()=>[t(s,{label:"数据量:"},{default:l(()=>[i(" 预计导出"+m(a(u).count)+"条数据, 共"+m(a(u).sum_page)+"页,每页"+m(a(u).page_size)+"条数据 ",1)]),_:1}),t(s,{label:"导出限制:"},{default:l(()=>[i(" 每次导出最大允许"+m(a(u).max_page)+"页,共"+m(a(u).all_max_size)+"条数据 ",1)]),_:1}),t(s,{prop:"page_type",label:"导出范围:",required:""},{default:l(()=>[t(C,{modelValue:a(o).page_type,"onUpdate:modelValue":e[0]||(e[0]=d=>a(o).page_type=d)},{default:l(()=>[t(b,{value:0},{default:l(()=>[...e[5]||(e[5]=[i("全部导出",-1)])]),_:1}),t(b,{value:1},{default:l(()=>[...e[6]||(e[6]=[i("分页导出",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(o).page_type==1?(g(),G(s,{key:0,label:"分页范围:"},{default:l(()=>[c("div",L,[t(s,{prop:"page_start"},{default:l(()=>[t(_,{style:{width:"140px"},modelValue:a(o).page_start,"onUpdate:modelValue":e[1]||(e[1]=d=>a(o).page_start=d),modelModifiers:{number:!0},placeholder:""},null,8,["modelValue"])]),_:1}),e[7]||(e[7]=c("span",{class:"flex-none ml-2 mr-2"},"页,至",-1)),t(s,{prop:"page_end"},{default:l(()=>[t(_,{style:{width:"140px"},modelValue:a(o).page_end,"onUpdate:modelValue":e[2]||(e[2]=d=>a(o).page_end=d),modelModifiers:{number:!0},placeholder:""},null,8,["modelValue"])]),_:1})])]),_:1})):w("",!0),t(s,{label:"导出文件名称:",prop:"file_name"},{default:l(()=>[t(_,{modelValue:a(o).file_name,"onUpdate:modelValue":e[3]||(e[3]=d=>a(o).file_name=d),placeholder:"请输入导出文件名称"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])])]),_:1},512)])}}});export{P as _}; diff --git a/server/public/admin/assets/index.vue_vue_type_style_index_0_lang-BHpNHC57.js b/server/public/admin/assets/index.vue_vue_type_style_index_0_lang-Dbv7WGME.js similarity index 96% rename from server/public/admin/assets/index.vue_vue_type_style_index_0_lang-BHpNHC57.js rename to server/public/admin/assets/index.vue_vue_type_style_index_0_lang-Dbv7WGME.js index e79a1a43..b2440af3 100644 --- a/server/public/admin/assets/index.vue_vue_type_style_index_0_lang-BHpNHC57.js +++ b/server/public/admin/assets/index.vue_vue_type_style_index_0_lang-Dbv7WGME.js @@ -1 +1 @@ -import"./@wangeditor/editor-Cyf37SuL.js";import{T as k,E as x}from"./@wangeditor/editor-for-vue-D1vSph3l.js";import{_ as R}from"./picker-cSgp8cEl.js";import{o as f}from"./index-Nt5zMHcc.js";import{f as U,ae as _,ak as B,I as E,a as u,A as c,n as P}from"./@vue/runtime-core-C6bnekPw.js";import{p as T}from"./@vue/shared-mAAVTE9n.js";import{y as t,a as A,q as p,n as h}from"./@vue/reactivity-DiY1c2vO.js";const M=U({__name:"index",props:{modelValue:{default:""},mode:{default:"default"},height:{default:"100%"},width:{default:"auto"},toolbarConfig:{default:()=>({})}},emits:["update:modelValue"],setup(a,{emit:g}){const l=a,v=g,d=p(),n=p(),r=h(""),m=h(!1);let s;const C={MENU_CONF:{uploadImage:{customBrowseAndUpload(e){var o;r.value="image",(o=n.value)==null||o.showPopup(-1),s=e}},uploadVideo:{customBrowseAndUpload(e){var o;r.value="video",(o=n.value)==null||o.showPopup(-1),s=e}}}},b=c(()=>({height:f(l.height),width:f(l.width)})),i=c({get(){return l.modelValue},set(e){m.value&&v("update:modelValue",e)}}),y=e=>{e.forEach(o=>{s(o)})};_(()=>{const e=d.value;e!=null&&e.destroy()});const w=e=>{d.value=e,P(()=>{m.value=!0})};return(e,o)=>(B(),E("div",{class:"border border-br flex flex-col",style:T(t(b))},[u(t(k),{class:"border-b border-br",editor:t(d),defaultConfig:a.toolbarConfig,mode:a.mode},null,8,["editor","defaultConfig","mode"]),u(t(x),{class:"flex-1 overflow-hidden",modelValue:t(i),"onUpdate:modelValue":o[0]||(o[0]=V=>A(i)?i.value=V:null),defaultConfig:C,mode:a.mode,onOnCreated:w},null,8,["modelValue","mode"]),u(R,{ref_key:"materialPickerRef",ref:n,type:t(r),limit:-1,"hidden-upload":"",onChange:y},null,8,["type"])],4))}});export{M as _}; +import"./@wangeditor/editor-Cyf37SuL.js";import{T as k,E as x}from"./@wangeditor/editor-for-vue-D1vSph3l.js";import{_ as R}from"./picker-DzCeqD7m.js";import{o as f}from"./index--WnM67ZH.js";import{f as U,ae as _,ak as B,I as E,a as u,A as c,n as P}from"./@vue/runtime-core-C6bnekPw.js";import{p as T}from"./@vue/shared-mAAVTE9n.js";import{y as t,a as A,q as p,n as h}from"./@vue/reactivity-DiY1c2vO.js";const M=U({__name:"index",props:{modelValue:{default:""},mode:{default:"default"},height:{default:"100%"},width:{default:"auto"},toolbarConfig:{default:()=>({})}},emits:["update:modelValue"],setup(a,{emit:g}){const l=a,v=g,d=p(),n=p(),r=h(""),m=h(!1);let s;const C={MENU_CONF:{uploadImage:{customBrowseAndUpload(e){var o;r.value="image",(o=n.value)==null||o.showPopup(-1),s=e}},uploadVideo:{customBrowseAndUpload(e){var o;r.value="video",(o=n.value)==null||o.showPopup(-1),s=e}}}},b=c(()=>({height:f(l.height),width:f(l.width)})),i=c({get(){return l.modelValue},set(e){m.value&&v("update:modelValue",e)}}),y=e=>{e.forEach(o=>{s(o)})};_(()=>{const e=d.value;e!=null&&e.destroy()});const w=e=>{d.value=e,P(()=>{m.value=!0})};return(e,o)=>(B(),E("div",{class:"border border-br flex flex-col",style:T(t(b))},[u(t(k),{class:"border-b border-br",editor:t(d),defaultConfig:a.toolbarConfig,mode:a.mode},null,8,["editor","defaultConfig","mode"]),u(t(x),{class:"flex-1 overflow-hidden",modelValue:t(i),"onUpdate:modelValue":o[0]||(o[0]=V=>A(i)?i.value=V:null),defaultConfig:C,mode:a.mode,onOnCreated:w},null,8,["modelValue","mode"]),u(R,{ref_key:"materialPickerRef",ref:n,type:t(r),limit:-1,"hidden-upload":"",onChange:y},null,8,["type"])],4))}});export{M as _}; diff --git a/server/public/admin/assets/index_h5-CK75hzdW.js b/server/public/admin/assets/index_h5-CXWkZooV.js similarity index 94% rename from server/public/admin/assets/index_h5-CK75hzdW.js rename to server/public/admin/assets/index_h5-CXWkZooV.js index 503e57c2..c9943210 100644 --- a/server/public/admin/assets/index_h5-CK75hzdW.js +++ b/server/public/admin/assets/index_h5-CXWkZooV.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-CsfWrQHN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DCW3HTOw.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/patient-BKtZKzsB.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-D9Zbpq2C.js","assets/appointment-BiJAofxT.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-D7UD5Dzu.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]); -import{_ as se}from"./jspdf-BsthCvR5.js";import{C as va,i as ga,d as fa,Q as ha,P as ya,L as ka,R as ba,e as Ca,D as Va,B as xa,h as Da,V as $a,T as Ea,v as Ra}from"./element-plus-DFTWCWyi.js";import{w as Ia,q as Aa}from"./@vue/runtime-dom-DDAG46FW.js";import{aj as E,a as za,ak as Sa,K as Pa,am as wa,Y as nt,an as st,ar as qa,ao as La,ap as Na,aq as Ta}from"./tcm-DCW3HTOw.js";import{i as Fa}from"./order-6mkZv6ss.js";import{m as Wa}from"./doctor-B7qEhSpt.js";import{u as Oa,m as lt,i as f,_ as Ua}from"./index-Nt5zMHcc.js";import{g as it}from"./weapp-BTxqP8mz.js";import{u as Ma}from"./usePaging-VsbTxSU0.js";import{h as V}from"./perm-DkIPMPyD.js";import{N as Qa,e as ot,A as Ya,X as Ba,O as dt,b as Ha,ac as Ka,G as ja,J as Ga,H as Ja,l as Xa,P as Za}from"./@element-plus/icons-vue-HOEUG8sr.js";import{d as rt}from"./dayjs-DG77mNTn.js";import{f as ut,b as en,d as tn,ak as l,I as o,J as s,a as n,aN as i,O as g,F as x,ap as z,H as _,aP as Le,G as $,P as le,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,r as Ne,n as c}from"./@vue/reactivity-DiY1c2vO.js";import{o as S,Q as p}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const an={class:"dh5"},nn={class:"dh5-topbar"},sn={class:"dh5-search"},ln={class:"dh5-chips dh5-chips--scroll"},on=["onClick"],dn={key:0},rn={key:0},un={key:0},pn={key:0},cn={class:"dh5-quick"},mn={class:"dh5-quick-group"},_n=["onClick"],vn={class:"dh5-quick-group"},gn=["onClick"],fn={class:"dh5-more-filter"},hn={class:"dh5-list"},yn={key:0,class:"dh5-empty"},kn=["onClick"],bn={class:"dh5-card-avatar"},Cn={class:"dh5-card-id-name"},Vn={class:"dh5-card-name"},xn={key:0,class:"dh5-meta-gender"},Dn={key:1,class:"dh5-meta-age"},$n={class:"dh5-card-sub"},En={key:0,class:"dh5-tag-new"},Rn={class:"dh5-card-tags"},In={key:0,class:"dh5-tag dh5-tag--ok"},An={key:1,class:"dh5-tag dh5-tag--warn"},zn={key:2,class:"dh5-tag dh5-tag--info"},Sn=["onClick"],Pn={class:"dh5-row-val"},wn={class:"dh5-apt-status"},qn={class:"dh5-apt-doctor"},Ln={class:"dh5-apt-time"},Nn={class:"dh5-apt-status"},Tn={class:"dh5-apt-doctor"},Fn={class:"dh5-apt-time"},Wn={key:1,class:"dh5-apt-none"},On={key:0,class:"dh5-row dh5-row--followup"},Un={class:"dh5-row-val"},Mn={class:"dh5-meta-doctor"},Qn={key:0,class:"dh5-tag dh5-tag--gray"},Yn={class:"dh5-row"},Bn={class:"dh5-row-val"},Hn={key:1,class:"dh5-row"},Kn={class:"dh5-row-val"},jn={key:0,class:"dh5-meta-mute"},Gn={key:1},Jn={key:0,class:"dh5-card-watch"},Xn={class:"dh5-watch-tip"},Zn={key:1,class:"dh5-watch-mute"},es={class:"dh5-card-foot"},ts={key:2,class:"dh5-no-more"},as={key:0,class:"dh5-actions"},ns={class:"dh5-form-tip"},ss={class:"font-medium"},ls={class:"dh5-qr"},is={key:0,class:"dh5-qr-loading"},os={key:1},ds=["src"],rs={class:"dh5-qr-meta"},us={key:2,class:"dh5-qr-fail"},ps={key:0,class:"dh5-wx-contact"},cs={class:"dh5-wx-contact-row"},ms={class:"dh5-wx-val"},_s={class:"dh5-wx-contact-row"},vs={class:"dh5-wx-val"},gs={key:0},fs={class:"dh5-wx-contact-row"},hs={class:"dh5-wx-val"},ys={class:"dh5-wx-add"},ks={class:"dh5-wx-list-wrap"},bs={key:0,class:"dh5-wx-empty"},Cs={key:1,class:"dh5-wx-list"},Vs={class:"dh5-wx-head"},xs={class:"dh5-wx-head-left"},Ds={class:"dh5-wx-name"},$s={class:"dh5-wx-head-right"},Es={class:"dh5-wx-time"},Rs={class:"dh5-wx-content"},Is={key:0,class:"dh5-wx-media"},As=ut({name:"tcmDiagnosisH5"}),zs=ut({...As,setup(Ss){const pt=le(()=>se(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),ct=le(()=>se(()=>import("./detail-D9Zbpq2C.js"),__vite__mapDeps([99,45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,46,15]))),mt=le(()=>se(()=>import("./index-5vSbbrqK.js"),__vite__mapDeps([90,1,2,3,4,5,6,7,8,9,10,11,12,13,14,91,92,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,93,94,15,95,96]))),_t=le(()=>se(()=>import("./appointment-BiJAofxT.js"),__vite__mapDeps([100,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,83,101]))),vt=le(()=>se(()=>import("./AssistantWatchCallDialog-D7UD5Dzu.js"),__vite__mapDeps([102,1,2,3,4,5,6,7,8,9,10,11,12,13,14,103,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,104]))),ie=Oa(),gt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return rt(e).format("YYYY-MM-DD HH:mm")},ft=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return rt(e).format("YYYY-MM-DD HH:mm")},Te=t=>!t||t.length<11?t:t.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),R=t=>String(t).padStart(2,"0"),ve=M(()=>{const t=new Date;return t.setDate(t.getDate()-1),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),ge=M(()=>{const t=new Date;return t.setDate(t.getDate()-2),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),K=M(()=>{const t=new Date;return`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),fe=M(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),he=M(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),d=Ne({keyword:"",diagnosis_type:"",syndrome_type:"",assistant_id:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",pending_assign:"",pending_booking:"",completed_appointment:""}),j=c(!1),ht=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],yt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],kt=M(()=>[{label:"昨天挂号",value:ve.value},{label:"前天挂号",value:ge.value},{label:"当天挂号",value:K.value},{label:"明天挂号",value:fe.value},{label:"后天挂号",value:he.value},{label:"全部",value:""}]),ye=c({}),ke=c(void 0),be=c(void 0),Ce=c(void 0),{pager:h,getLists:b}=Ma({fetchFun:E,params:d}),Ve=M(()=>h.lists.length<(h.count||0)),Fe=()=>b({silent:!0}),Y=()=>{h.page=1,b(),D()},bt=()=>{d.keyword="",d.diagnosis_type="",d.syndrome_type="",d.assistant_id="",d.diagnosis_confirmed="",d.appointment_date=K.value,d.has_appointment="",d.pending_assign="",d.pending_booking="",d.completed_appointment="",h.page=1,b(),D()},Ct=t=>{d.has_appointment=t,d.pending_booking="",d.completed_appointment="",h.page=1,b(),D()},Vt=t=>{d.diagnosis_confirmed=t,d.pending_booking="",d.completed_appointment="",h.page=1,b(),D()},xt=async t=>{d.pending_assign="",d.pending_booking="",d.completed_appointment="",d.has_appointment="",d.appointment_date=t,h.page=1,await b(),D()},Dt=async()=>{d.pending_assign="",d.pending_booking="1",d.completed_appointment="",d.appointment_date="",d.has_appointment="0",h.page=1,await b(),D()},$t=async()=>{d.pending_assign="",d.pending_booking="",d.completed_appointment="1",d.has_appointment="",d.appointment_date="",h.page=1,await b(),D()},Et=async()=>{d.pending_assign="1",d.pending_booking="",d.completed_appointment="",d.has_appointment="",d.appointment_date="",h.page=1,await b(),D()},D=async()=>{try{const[t,e,r,u,k,C,P,ae,O]=await Promise.all([E({appointment_date:ve.value,page_no:1,page_size:1}),E({appointment_date:ge.value,page_no:1,page_size:1}),E({appointment_date:K.value,page_no:1,page_size:1}),E({appointment_date:fe.value,page_no:1,page_size:1}),E({appointment_date:he.value,page_no:1,page_size:1}),E({page_no:1,page_size:1}),E({has_appointment:0,page_no:1,page_size:1}),E({completed_appointment:1,page_no:1,page_size:1}),E({pending_assign:1,page_no:1,page_size:1})]);ye.value={[ve.value]:(t==null?void 0:t.count)??0,[ge.value]:(e==null?void 0:e.count)??0,[K.value]:(r==null?void 0:r.count)??0,[fe.value]:(u==null?void 0:u.count)??0,[he.value]:(k==null?void 0:k.count)??0,"":(C==null?void 0:C.count)??0},ke.value=(P==null?void 0:P.count)??0,be.value=(ae==null?void 0:ae.count)??0,Ce.value=(O==null?void 0:O.count)??0}catch(t){console.error("获取日期数量失败",t)}},Rt=async()=>{if(h.loading||!Ve.value)return;const t=(h.page||1)+1;h.loading=!0;try{const e=await E({page_no:t,page_size:h.size,...d});h.page=t,h.lists.push(...(e==null?void 0:e.lists)||[]),h.count=(e==null?void 0:e.count)??h.count}catch(e){console.error("加载更多失败:",e)}finally{h.loading=!1}},xe=c([]),De=c([]),G=c([]),It=async()=>{try{const[t,e,r]=await Promise.all([lt({type:"diagnosis_type"}),lt({type:"syndrome_type"}),za()]);xe.value=(t==null?void 0:t.diagnosis_type)||[],De.value=(e==null?void 0:e.syndrome_type)||[],G.value=r||[]}catch(t){console.error("获取字典数据失败:",t)}},We=(t,e)=>{const r=t.find(u=>u.value===e);return r?r.name:e||"-"},At=t=>{if(!t&&t!==0)return"-";const e=typeof t=="string"?parseInt(t):t;if(G.value.length===0)return"...";const r=G.value.find(u=>(typeof u.id=="string"?parseInt(u.id):u.id)===e);return r?r.name:"-"},Oe=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(r=>r.is_confirmed==1)},zt=t=>Oe(t)?t.has_appointment?"":"dh5-card--noapt":"dh5-card--unconfirmed",St=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},Pt=t=>{const e=Number(t);return e===3?"已完成":e===4?"已过号":"已挂号"},Ue=t=>{const e=Array.isArray(t.appointments)?t.appointments:[];return e.length>0?e:t.has_appointment?[{id:t.appointment_id,status:t.appointment_status,doctor_id:t.appointment_doctor_id,doctor_name:t.appointment_doctor_name,time_text:t.appointment_time_text}]:[]},wt=t=>{const e=Number(t==null?void 0:t.status);return{"dh5-apt-item--done":e===3,"dh5-apt-item--missed":e===4,"dh5-apt-item--active":e===1}},qt=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},J=t=>t.has_appointment&&Number(t.appointment_status)===1,Me=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},Lt=t=>{var r;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((r=ie.userInfo)==null?void 0:r.id)},$e=t=>Lt(t)&&V(["tcm.diagnosis/watchCall"]),X=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},Nt=t=>{const e=X(t);return e==="live"||e==="pending_room"},Tt=t=>X(t)==="pending_room"?"医生未接通或未同步房间":"点击进入实时房间",Ft=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},Wt=t=>{const e=X(t);if(e==="none")return"";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const r=t.video_call_hint;return(r==null?void 0:r.label)||""},Ot=t=>{if($e(t))return!0;const e=X(t);return e==="live"||e==="pending_room"},Ee=c(!1),Qe=c(0),Ut=t=>{if(X(t)!=="live"){f.msgWarning("医生未接通或未同步房间号,请稍后再试");return}Qe.value=Number(t.id)||0,Ee.value=!0},oe=c(),Ye=c(),Be=c(),He=c(),Mt=()=>{var t;return(t=oe.value)==null?void 0:t.open("add")},Qt=t=>{var e;return(e=oe.value)==null?void 0:e.open("edit",t)},Ke=t=>{var e;return(e=Ye.value)==null?void 0:e.open(t)},je=t=>(t==null?void 0:t.prescription_audit_status)===1&&Number(t==null?void 0:t.prescription_void_status)!==1?"查看":"开方",Yt=t=>{var e;if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}(e=Be.value)==null||e.open({...t,diagnosis_id:t.id,id:t.appointment_id||0})},Bt=()=>{var t,e;b(),(e=(t=oe.value)==null?void 0:t.refreshCaseList)==null||e.call(t)},Ht=t=>{var e;if(!t.patient_id){f.msgWarning("患者信息不完整");return}(e=He.value)==null||e.open(t)},Kt=async t=>{await f.confirm("确定要删除该诊单吗?"),await Ta({id:t}),b()},de=c(!1),w=c(null),jt=t=>{w.value=t,de.value=!0},q=t=>{const e=w.value;if(de.value=!1,!!e)switch(t){case"assign":Gt(e);break;case"videoQr":if(!J(e)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}Je(e);break;case"confirmQr":Xe(e);break;case"cancelApt":oa(e);break;case"fillIdCard":na(e);break;case"order":Zt(e);break;case"wechat":Ze(e);break;case"delete":Kt(e.id);break}},Z=c(!1),Re=c(!1),re=c(null),B=c({assistant_id:null}),Gt=t=>{re.value=t,B.value.assistant_id=t.assistant_id?Number(t.assistant_id):null,Z.value=!0},Jt=async()=>{if(!B.value.assistant_id){f.msgWarning("请选择医助");return}Re.value=!0;try{await Sa({id:re.value.id,assistant_id:B.value.assistant_id}),Z.value=!1,b()}catch(t){console.error("指派失败:",t)}finally{Re.value=!1}},ee=c(!1),ue=c(),Ie=c(!1),v=Ne({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),Xt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Zt=t=>{var e;v.patient_id=t.patient_id||t.id,v.patient_name=t.patient_name,v.phone=t.phone||"",v.order_type="",v.amount=0,v.remark="",v.has_appointment=!!t.has_appointment,v.appointment_time_text=t.appointment_time_text||"",(e=ue.value)==null||e.clearValidate(),ee.value=!0},ea=()=>{var t;v.patient_id="",v.patient_name="",v.phone="",v.order_type="",v.amount=0,v.remark="",v.has_appointment=!1,v.appointment_time_text="",(t=ue.value)==null||t.clearValidate()},ta=async()=>{var t;try{await((t=ue.value)==null?void 0:t.validate()),Ie.value=!0;const e=await Fa({patient_id:v.patient_id,order_type:v.order_type,amount:v.amount,remark:v.remark});ee.value=!1,b();const r=e==null?void 0:e.order_no;if(r){L.value=!0,N.value=!0,T.value="",pe.value="收款二维码",F.value={patient_name:v.patient_name,has_appointment:v.has_appointment,appointment_time_text:v.appointment_time_text};try{const u=await Pa({order_no:r});u!=null&&u.qrcode_url?T.value=u.qrcode_url:f.msgError("二维码生成失败")}catch(u){f.msgError((u==null?void 0:u.msg)||"生成二维码失败")}finally{N.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Ie.value=!1}},te=c(!1),Ae=c(!1),Ge=c(),I=Ne({id:0,patient_name:"",id_card:""}),aa={id_card:[{required:!0,validator:(t,e,r)=>{if(!e){r(new Error("请输入身份证号"));return}const u=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),k=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);u||k?r():r(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},na=t=>{I.id=t.id,I.patient_name=t.patient_name||"-",I.id_card=t.id_card||"",te.value=!0},sa=async()=>{var t;await((t=Ge.value)==null?void 0:t.validate()),Ae.value=!0;try{await wa({id:I.id,id_card:I.id_card}),f.msgSuccess("补全成功,年龄已自动更新"),te.value=!1,b()}catch(e){f.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ae.value=!1}},L=c(!1),N=c(!1),T=c(""),F=c(null),pe=c("小程序二维码"),ze=c("confirm"),la=M(()=>{const t=F.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Je=async t=>{var e;if(!J(t)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}ze.value="video",F.value=t,L.value=!0,N.value=!0,T.value="",pe.value="视频二维码";try{const r=await it();if(!(r!=null&&r.app_id)){f.msgError("小程序未配置"),L.value=!1;return}const u=await nt({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ie.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});u!=null&&u.qrcode_url?T.value=u.qrcode_url:f.msgError("二维码生成失败")}catch(r){f.msgError((r==null?void 0:r.msg)||"生成二维码失败")}finally{N.value=!1}},Xe=async t=>{var e;if(!J(t)){f.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}ze.value="confirm",F.value=t,L.value=!0,N.value=!0,T.value="",pe.value="诊单二维码";try{const r=await it();if(!(r!=null&&r.app_id)){f.msgError("小程序未配置"),L.value=!1;return}const u=await nt({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ie.userInfo)==null?void 0:e.id)||""});u!=null&&u.qrcode_url?T.value=u.qrcode_url:f.msgError("二维码生成失败")}catch(r){f.msgError((r==null?void 0:r.msg)||"生成二维码失败")}finally{N.value=!1}},ia=()=>{F.value&&(ze.value==="video"?Je(F.value):Xe(F.value))},oa=async t=>{if(!Me(t)){const e=Number(t.appointment_status);t.has_appointment&&e===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该诊单未挂号或挂号信息异常");return}try{await f.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await Wa({id:t.appointment_id}),f.msgSuccess("取消挂号成功"),b(),D()}catch(e){e!=="cancel"&&f.msgError((e==null?void 0:e.msg)||"取消挂号失败")}},Se=c(!1),A=c(null),W=c([]),ce=c(0),me=c(!1),Q=c(null),H=c(""),Pe=c(!1),we=c(1),Ze=async t=>{A.value=t,Se.value=!0,W.value=[],ce.value=0,Q.value=null,H.value="",we.value=1,me.value=!0;try{const[e,r]=await Promise.all([st({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),qa({patient_id:t.patient_id||t.id}).catch(()=>null)]);W.value=(e==null?void 0:e.lists)||[],ce.value=(e==null?void 0:e.count)||0,Q.value=r}catch(e){console.error(e)}finally{me.value=!1}},da=async()=>{if(A.value){we.value++;try{const t=await st({diagnosis_id:A.value.id,patient_id:A.value.patient_id,page_no:we.value,page_size:20});W.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error(t)}}},ra=async()=>{var t;if(!H.value.trim()){f.msgWarning("请输入内容");return}Pe.value=!0;try{await La({diagnosis_id:A.value.id,patient_id:A.value.patient_id,content:H.value.trim(),msg_type:"note",staff_name:((t=ie.userInfo)==null?void 0:t.name)||"",external_name:A.value.patient_name||""}),H.value="",Ze(A.value)}catch(e){f.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Pe.value=!1}},ua=async t=>{await f.confirm("确定删除该记录吗?");try{await Na({id:t}),W.value=W.value.filter(e=>e.id!==t),ce.value--}catch(e){f.msgError((e==null?void 0:e.msg)||"删除失败")}},pa=15e3;let _e=null;const ca=()=>{typeof document<"u"&&document.hidden||(b({silent:!0}).catch(()=>{}),D())};return en(async()=>{document.body.classList.add("h5-mode"),d.appointment_date=K.value,It(),b(),typeof requestIdleCallback=="function"?requestIdleCallback(()=>D(),{timeout:2500}):setTimeout(D,200),_e=setInterval(ca,pa)}),tn(()=>{document.body.classList.remove("h5-mode"),_e&&(clearInterval(_e),_e=null)}),(t,e)=>{var at;const r=va,u=ga,k=fa,C=ha,P=ya,ae=ba,O=Ca,U=xa,qe=Va,ma=Da,et=$a,ne=Ea,_a=Ra,tt=ka;return l(),o("div",an,[s("header",nn,[s("div",sn,[n(r,{modelValue:d.keyword,"onUpdate:modelValue":e[0]||(e[0]=a=>d.keyword=a),placeholder:"患者姓名 / 手机号",clearable:"","prefix-icon":m(Qa),onKeyup:Ia(Y,["enter"]),onClear:Y},null,8,["modelValue","prefix-icon"]),n(u,{class:"dh5-search-btn",type:"primary",onClick:Y},{default:i(()=>[...e[31]||(e[31]=[g("查询",-1)])]),_:1})]),s("div",ln,[(l(!0),o(x,null,z(kt.value,a=>(l(),o("span",{key:a.value||"all",class:S(["dh5-chip",{active:d.pending_assign!=="1"&&d.pending_booking!=="1"&&d.completed_appointment!=="1"&&d.appointment_date===a.value}]),onClick:y=>xt(a.value)},[g(p(a.label)+" ",1),ye.value[a.value]!==void 0?(l(),o("em",dn,p(ye.value[a.value]),1)):_("",!0)],10,on))),128)),s("span",{class:S(["dh5-chip","dh5-chip--booking",{active:d.pending_booking==="1"}]),onClick:Dt},[e[32]||(e[32]=g(" 待预约 ",-1)),ke.value!==void 0?(l(),o("em",rn,p(ke.value),1)):_("",!0)],2),s("span",{class:S(["dh5-chip","dh5-chip--done",{active:d.completed_appointment==="1"}]),onClick:$t},[e[33]||(e[33]=g(" 已完成 ",-1)),be.value!==void 0?(l(),o("em",un,p(be.value),1)):_("",!0)],2),m(V)(["tcm.diagnosis/assign"])?(l(),o("span",{key:0,class:S(["dh5-chip","dh5-chip--pending",{active:d.pending_assign==="1"}]),onClick:Et},[e[34]||(e[34]=g(" 待分配医助 ",-1)),Ce.value!==void 0?(l(),o("em",pn,p(Ce.value),1)):_("",!0)],2)):_("",!0)]),s("div",cn,[s("div",mn,[e[35]||(e[35]=s("span",{class:"dh5-quick-label"},"挂号",-1)),(l(),o(x,null,z(ht,a=>s("span",{key:"a"+a.value,class:S(["dh5-pill",{active:d.has_appointment===a.value}]),onClick:y=>Ct(a.value)},p(a.label),11,_n)),64))]),s("div",vn,[e[36]||(e[36]=s("span",{class:"dh5-quick-label"},"确认",-1)),(l(),o(x,null,z(yt,a=>s("span",{key:"c"+a.value,class:S(["dh5-pill",{active:d.diagnosis_confirmed===a.value}]),onClick:y=>Vt(a.value)},p(a.label),11,gn)),64))]),n(u,{link:"",type:"primary",size:"small",class:"dh5-more-toggle",onClick:e[1]||(e[1]=a=>j.value=!j.value)},{default:i(()=>[g(p(j.value?"收起":"更多")+" ",1),n(k,{class:S({"rotate-180":j.value})},{default:i(()=>[n(m(ot))]),_:1},8,["class"])]),_:1})]),Le(s("div",fn,[n(P,{modelValue:d.diagnosis_type,"onUpdate:modelValue":e[2]||(e[2]=a=>d.diagnosis_type=a),placeholder:"诊断类型",clearable:"",size:"small",onChange:Y},{default:i(()=>[(l(!0),o(x,null,z(xe.value,a=>(l(),$(C,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),n(P,{modelValue:d.syndrome_type,"onUpdate:modelValue":e[3]||(e[3]=a=>d.syndrome_type=a),placeholder:"证型",clearable:"",size:"small",onChange:Y},{default:i(()=>[(l(!0),o(x,null,z(De.value,a=>(l(),$(C,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),n(P,{modelValue:d.assistant_id,"onUpdate:modelValue":e[4]||(e[4]=a=>d.assistant_id=a),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:Y},{default:i(()=>[(l(!0),o(x,null,z(G.value,a=>(l(),$(C,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),n(u,{size:"small",onClick:bt},{default:i(()=>[...e[37]||(e[37]=[g("重置",-1)])]),_:1})],512),[[Aa,j.value]])]),Le((l(),o("main",hn,[m(h).lists.length===0&&!m(h).loading?(l(),o("div",yn,[n(ae,{description:"暂无诊单","image-size":120})])):_("",!0),(l(!0),o(x,null,z(m(h).lists,a=>(l(),o("article",{key:a.id,class:S(["dh5-card",zt(a)])},[s("header",{class:"dh5-card-head",onClick:y=>Ke(a.id)},[s("div",bn,p((a.patient_name||"患").charAt(0)),1),s("div",Cn,[s("div",Vn,[g(p(a.patient_name||"-")+" ",1),a.gender_desc?(l(),o("span",xn,p(a.gender_desc),1)):_("",!0),a.age!=null?(l(),o("span",Dn,p(a.age)+"岁",1)):_("",!0)]),s("div",$n,[g(" #"+p(a.id)+" · "+p(a.diagnosis_date_text||gt(a.create_time))+" ",1),a.assign_read_at===null&&a.assistant_id>0?(l(),o("span",En,"NEW")):_("",!0)])]),s("div",Rn,[Oe(a)?(l(),o("span",In,"已确认")):(l(),o("span",An,"未确认")),a.has_prescription?(l(),o("span",zn,"已开方")):_("",!0)])],8,kn),s("section",{class:"dh5-card-body",onClick:y=>Ke(a.id)},[s("div",{class:S(["dh5-row","dh5-row--apt",qt(a)])},[e[38]||(e[38]=s("span",{class:"dh5-row-key"},"挂号",-1)),s("div",Pn,[a.has_appointment?(l(),o(x,{key:0},[Ue(a).length?(l(!0),o(x,{key:0},z(Ue(a),y=>(l(),o("div",{key:y.id||`${y.doctor_id}-${y.time_text}`,class:S(["dh5-apt-item",wt(y)])},[s("span",wn,p(Pt(y.status)),1),s("span",qn,p(y.doctor_name||"-"),1),s("span",Ln,p(y.time_text||"-"),1)],2))),128)):(l(),o(x,{key:1},[s("span",Nn,p(St(a)),1),s("span",Tn,p(a.appointment_doctor_name||"-"),1),s("span",Fn,p(a.appointment_time_text||"-"),1)],64))],64)):(l(),o("span",Wn,"未挂号"))])],2),a.has_prescription?(l(),o("div",On,[e[39]||(e[39]=s("span",{class:"dh5-row-key"},"复诊",-1)),s("div",Un,[s("span",null,p(a.followup_time_text||"—"),1),s("span",Mn,p(a.followup_doctor_name||"—"),1),a.followup_rx_voided?(l(),o("span",Qn,"处方作废")):_("",!0)])])):_("",!0),s("div",Yn,[e[40]||(e[40]=s("span",{class:"dh5-row-key"},"助理",-1)),s("span",Bn,p(At(a.assistant_id||a.assistant)),1)]),a.diagnosis_type?(l(),o("div",Hn,[e[41]||(e[41]=s("span",{class:"dh5-row-key"},"诊断",-1)),s("span",Kn,[g(p(We(xe.value,a.diagnosis_type))+" ",1),a.syndrome_type?(l(),o("span",jn,"·")):_("",!0),a.syndrome_type?(l(),o("span",Gn,p(We(De.value,a.syndrome_type)),1)):_("",!0)])])):_("",!0)],8,Sn),Ot(a)?(l(),o("div",Jn,[$e(a)&&Nt(a)?(l(),o(x,{key:0},[n(u,{type:"primary",size:"small",icon:m(Za),onClick:y=>Ut(a)},{default:i(()=>[...e[42]||(e[42]=[g(" 进入旁观 ",-1)])]),_:1},8,["icon","onClick"]),s("span",Xn,p(Tt(a)),1)],64)):(l(),o("span",Zn,p($e(a)?Ft(a):Wt(a)),1))])):_("",!0),s("footer",es,[m(V)(["tcm.diagnosis/edit"])?(l(),$(u,{key:0,type:"primary",size:"small",plain:"",onClick:y=>Qt(a.id)},{default:i(()=>[...e[43]||(e[43]=[g(" 诊单 ",-1)])]),_:1},8,["onClick"])):_("",!0),m(V)(["tcm.diagnosis/kaifang"])?(l(),$(u,{key:1,type:je(a)==="查看"?"success":"primary",size:"small",onClick:y=>Yt(a)},{default:i(()=>[g(p(je(a)),1)]),_:2},1032,["type","onClick"])):_("",!0),m(V)(["tcm.diagnosis/guahao"])?(l(),$(u,{key:2,type:"success",size:"small",plain:"",onClick:y=>Ht(a)},{default:i(()=>[...e[44]||(e[44]=[g(" 预约 ",-1)])]),_:1},8,["onClick"])):_("",!0),n(u,{size:"small",class:"dh5-more-btn",onClick:y=>jt(a)},{default:i(()=>[e[45]||(e[45]=g(" 更多",-1)),n(k,{class:"el-icon--right"},{default:i(()=>[n(m(ot))]),_:1})]),_:1},8,["onClick"])])],2))),128)),Ve.value?(l(),o("div",{key:1,class:"dh5-load-more",onClick:Rt},p(m(h).loading?"加载中…":"加载更多"),1)):_("",!0),!Ve.value&&m(h).lists.length>0?(l(),o("div",ts,"— 没有更多了 —")):_("",!0)])),[[tt,m(h).loading]]),m(V)(["tcm.diagnosis/add"])?(l(),o("button",{key:0,class:"dh5-fab",type:"button","aria-label":"新增诊单",onClick:Mt},[n(k,{size:22},{default:i(()=>[n(m(Ya))]),_:1})])):_("",!0),n(m(pt),{ref_key:"editRef",ref:oe,onSuccess:Fe},null,512),n(m(ct),{ref_key:"detailRef",ref:Ye},null,512),n(m(mt),{ref_key:"prescriptionRef",ref:Be,onSuccess:Bt},null,512),n(m(_t),{ref_key:"appointmentRef",ref:He,onSuccess:Fe},null,512),n(m(vt),{modelValue:Ee.value,"onUpdate:modelValue":e[5]||(e[5]=a=>Ee.value=a),"diagnosis-id":Qe.value,onClosed:m(b)},null,8,["modelValue","diagnosis-id","onClosed"]),n(O,{modelValue:de.value,"onUpdate:modelValue":e[14]||(e[14]=a=>de.value=a),title:w.value?`${w.value.patient_name||"诊单"} · 更多操作`:"更多操作",direction:"btt",size:"auto","with-header":!0,"destroy-on-close":!0},{default:i(()=>[w.value?(l(),o("div",as,[m(V)(["tcm.diagnosis/assign"])?(l(),o("button",{key:0,class:"dh5-action",onClick:e[6]||(e[6]=a=>q("assign"))},[n(k,null,{default:i(()=>[n(m(Ba))]),_:1}),e[46]||(e[46]=s("span",null,"指派医助",-1))])):_("",!0),J(w.value)&&m(V)(["tcm.diagnosis/videoQr"])?(l(),o("button",{key:1,class:"dh5-action",onClick:e[7]||(e[7]=a=>q("videoQr"))},[n(k,null,{default:i(()=>[n(m(dt))]),_:1}),e[47]||(e[47]=s("span",null,"视频二维码",-1))])):_("",!0),J(w.value)&&m(V)(["tcm.diagnosis/guahao"])?(l(),o("button",{key:2,class:"dh5-action",onClick:e[8]||(e[8]=a=>q("confirmQr"))},[n(k,null,{default:i(()=>[n(m(dt))]),_:1}),e[48]||(e[48]=s("span",null,"诊单二维码",-1))])):_("",!0),Me(w.value)&&m(V)(["tcm.diagnosis/guahao"])?(l(),o("button",{key:3,class:"dh5-action",onClick:e[9]||(e[9]=a=>q("cancelApt"))},[n(k,null,{default:i(()=>[n(m(Ha))]),_:1}),e[49]||(e[49]=s("span",null,"取消挂号",-1))])):_("",!0),m(V)(["tcm.diagnosis/edit"])?(l(),o("button",{key:4,class:"dh5-action",onClick:e[10]||(e[10]=a=>q("fillIdCard"))},[n(k,null,{default:i(()=>[n(m(Ka))]),_:1}),e[50]||(e[50]=s("span",null,"补全身份证",-1))])):_("",!0),m(V)(["tcm.diagnosis/order"])?(l(),o("button",{key:5,class:"dh5-action",onClick:e[11]||(e[11]=a=>q("order"))},[n(k,null,{default:i(()=>[n(m(ja))]),_:1}),e[51]||(e[51]=s("span",null,"创建订单",-1))])):_("",!0),s("button",{class:"dh5-action",onClick:e[12]||(e[12]=a=>q("wechat"))},[n(k,null,{default:i(()=>[n(m(Ga))]),_:1}),e[52]||(e[52]=s("span",null,"企微记录",-1))]),m(V)(["tcm.diagnosis/delete"])?(l(),o("button",{key:6,class:"dh5-action dh5-action--danger",onClick:e[13]||(e[13]=a=>q("delete"))},[n(k,null,{default:i(()=>[n(m(Ja))]),_:1}),e[53]||(e[53]=s("span",null,"删除诊单",-1))])):_("",!0)])):_("",!0)]),_:1},8,["modelValue","title"]),n(O,{modelValue:Z.value,"onUpdate:modelValue":e[17]||(e[17]=a=>Z.value=a),title:"指派医助",direction:"btt",size:"46%"},{footer:i(()=>[n(u,{class:"dh5-flex1",onClick:e[16]||(e[16]=a=>Z.value=!1)},{default:i(()=>[...e[54]||(e[54]=[g("取消",-1)])]),_:1}),n(u,{class:"dh5-flex1",type:"primary",loading:Re.value,onClick:Jt},{default:i(()=>[...e[55]||(e[55]=[g(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[n(qe,{model:B.value,"label-position":"top",class:"dh5-form"},{default:i(()=>[n(U,{label:"选择医助",required:""},{default:i(()=>[n(P,{modelValue:B.value.assistant_id,"onUpdate:modelValue":e[15]||(e[15]=a=>B.value.assistant_id=a),placeholder:"请选择医助",class:"!w-full",filterable:"",clearable:""},{default:i(()=>[(l(!0),o(x,null,z(G.value,a=>(l(),$(C,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(U,{label:"诊单信息"},{default:i(()=>{var a,y;return[s("div",ns,[s("div",null,"患者:"+p((a=re.value)==null?void 0:a.patient_name),1),s("div",null,"诊断日期:"+p(((y=re.value)==null?void 0:y.diagnosis_date_text)||"—"),1)])]}),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),n(O,{modelValue:ee.value,"onUpdate:modelValue":e[22]||(e[22]=a=>ee.value=a),title:"创建订单",direction:"btt",size:"64%",onClose:ea},{footer:i(()=>[n(u,{class:"dh5-flex1",onClick:e[21]||(e[21]=a=>ee.value=!1)},{default:i(()=>[...e[56]||(e[56]=[g("取消",-1)])]),_:1}),n(u,{class:"dh5-flex1",type:"primary",loading:Ie.value,onClick:ta},{default:i(()=>[...e[57]||(e[57]=[g(" 创建订单 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[n(qe,{ref_key:"orderFormRef",ref:ue,model:v,rules:Xt,"label-position":"top",class:"dh5-form"},{default:i(()=>[n(U,{label:"患者"},{default:i(()=>[s("span",null,p(v.patient_name)+" ("+p(Te(v.phone))+")",1)]),_:1}),n(U,{label:"订单类型",prop:"order_type"},{default:i(()=>[n(P,{modelValue:v.order_type,"onUpdate:modelValue":e[18]||(e[18]=a=>v.order_type=a),placeholder:"请选择",class:"!w-full"},{default:i(()=>[n(C,{label:"挂号费",value:1}),n(C,{label:"问诊费",value:2}),n(C,{label:"药品费用",value:3}),n(C,{label:"首付费用",value:4}),n(C,{label:"尾款费用",value:5}),n(C,{label:"其他费用",value:6}),n(C,{label:"全部费用",value:7}),n(C,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),n(U,{label:"订单金额",prop:"amount"},{default:i(()=>[n(ma,{modelValue:v.amount,"onUpdate:modelValue":e[19]||(e[19]=a=>v.amount=a),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"!w-full"},null,8,["modelValue"])]),_:1}),n(U,{label:"备注",prop:"remark"},{default:i(()=>[n(r,{modelValue:v.remark,"onUpdate:modelValue":e[20]||(e[20]=a=>v.remark=a),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),n(et,{modelValue:te.value,"onUpdate:modelValue":e[25]||(e[25]=a=>te.value=a),title:"补全身份证号","close-on-click-modal":!1,onClose:e[26]||(e[26]=a=>I.id_card="")},{footer:i(()=>[n(u,{onClick:e[24]||(e[24]=a=>te.value=!1)},{default:i(()=>[...e[58]||(e[58]=[g("取消",-1)])]),_:1}),n(u,{type:"primary",loading:Ae.value,onClick:sa},{default:i(()=>[...e[59]||(e[59]=[g(" 提交 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[n(qe,{ref_key:"fillIdCardFormRef",ref:Ge,model:I,rules:aa,"label-position":"top",class:"dh5-form"},{default:i(()=>[n(U,{label:"患者"},{default:i(()=>[s("span",ss,p(I.patient_name),1)]),_:1}),n(U,{label:"身份证号",prop:"id_card"},{default:i(()=>[n(r,{modelValue:I.id_card,"onUpdate:modelValue":e[23]||(e[23]=a=>I.id_card=a),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),n(et,{modelValue:L.value,"onUpdate:modelValue":e[28]||(e[28]=a=>L.value=a),title:pe.value,"close-on-click-modal":!1},{footer:i(()=>[n(u,{onClick:e[27]||(e[27]=a=>L.value=!1)},{default:i(()=>[...e[62]||(e[62]=[g("关闭",-1)])]),_:1}),N.value?_("",!0):(l(),$(u,{key:0,type:"primary",onClick:ia},{default:i(()=>[...e[63]||(e[63]=[g("重新生成",-1)])]),_:1}))]),default:i(()=>{var a;return[s("div",ls,[N.value?(l(),o("div",is,[n(k,{class:"is-loading",size:36},{default:i(()=>[n(m(Xa))]),_:1}),e[60]||(e[60]=s("div",{class:"dh5-qr-tip"},"生成中...",-1))])):T.value?(l(),o("div",os,[s("img",{src:T.value,alt:"小程序二维码",class:"dh5-qr-img"},null,8,ds),s("div",rs,[s("div",null,"患者:"+p((a=F.value)==null?void 0:a.patient_name),1),s("div",null,"挂号时间:"+p(la.value),1),e[61]||(e[61]=s("div",{class:"dh5-qr-hint"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(l(),o("div",us,"生成失败,请重试"))])]}),_:1},8,["modelValue","title"]),n(O,{modelValue:Se.value,"onUpdate:modelValue":e[30]||(e[30]=a=>Se.value=a),title:`企微记录 - ${((at=A.value)==null?void 0:at.patient_name)||""}`,direction:"rtl",size:"100%","destroy-on-close":!0},{default:i(()=>[Q.value?(l(),o("div",ps,[s("div",cs,[e[64]||(e[64]=s("span",{class:"dh5-wx-key"},"手机号",-1)),s("span",ms,p(Te(Q.value.phone)||"-"),1)]),s("div",_s,[e[66]||(e[66]=s("span",{class:"dh5-wx-key"},"企微 ID",-1)),s("span",vs,[Q.value.external_userid?(l(),o("span",gs,p(Q.value.external_userid),1)):(l(),$(ne,{key:1,type:"info",size:"small"},{default:i(()=>[...e[65]||(e[65]=[g("未关联",-1)])]),_:1}))])]),s("div",fs,[e[69]||(e[69]=s("span",{class:"dh5-wx-key"},"会话存档",-1)),s("span",hs,[Q.value.msgaudit_enabled?(l(),$(ne,{key:0,type:"success",size:"small"},{default:i(()=>[...e[67]||(e[67]=[g("已开通",-1)])]),_:1})):(l(),$(ne,{key:1,type:"info",size:"small"},{default:i(()=>[...e[68]||(e[68]=[g("未配置",-1)])]),_:1}))])])])):_("",!0),s("div",ys,[n(r,{modelValue:H.value,"onUpdate:modelValue":e[29]||(e[29]=a=>H.value=a),type:"textarea",rows:2,placeholder:"添加沟通记录..."},null,8,["modelValue"]),n(u,{type:"primary",loading:Pe.value,size:"small",onClick:ra},{default:i(()=>[...e[70]||(e[70]=[g(" 添加 ",-1)])]),_:1},8,["loading"])]),Le((l(),o("div",ks,[W.value.length===0&&!me.value?(l(),o("div",bs," 暂无聊天记录 ")):(l(),o("div",Cs,[(l(!0),o(x,null,z(W.value,a=>{var y;return l(),o("div",{key:a.id,class:"dh5-wx-item"},[s("div",Vs,[s("div",xs,[n(ne,{type:a.direction===0?"primary":"success",size:"small"},{default:i(()=>[g(p(a.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),s("span",Ds,p(a.direction===0?a.staff_name:a.external_name||((y=A.value)==null?void 0:y.patient_name)),1),a.msg_type==="note"?(l(),$(ne,{key:0,type:"warning",size:"small"},{default:i(()=>[...e[71]||(e[71]=[g("备注",-1)])]),_:1})):_("",!0)]),s("div",$s,[s("span",Es,p(ft(a.chat_time)),1),n(u,{type:"danger",link:"",size:"small",onClick:ws=>ua(a.id)},{default:i(()=>[...e[72]||(e[72]=[g(" 删除 ",-1)])]),_:1},8,["onClick"])])]),s("div",Rs,p(a.content),1),a.media_url?(l(),o("div",Is,[n(_a,{src:a.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[a.media_url]},null,8,["src","preview-src-list"])])):_("",!0)])}),128))])),ce.value>W.value.length?(l(),o("div",{key:2,class:"dh5-load-more",onClick:da}," 加载更多 ")):_("",!0)])),[[tt,me.value]])]),_:1},8,["modelValue","title"])])}}}),xl=Ua(zs,[["__scopeId","data-v-b9d725b4"]]);export{xl as default}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DiacXhqZ.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DzAQc_oE.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/patient-BNjmKCvA.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-BIA4i862.js","assets/appointment-CmXNV-jm.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-4k1wpmUn.js","assets/trtc-sdk-v5-D4DbeRqz.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]); +import{_ as se}from"./jspdf-BsthCvR5.js";import{C as va,i as ga,d as fa,Q as ha,P as ya,L as ka,R as ba,e as Ca,D as Va,B as xa,h as Da,V as $a,T as Ea,v as Ra}from"./element-plus-DFTWCWyi.js";import{w as Ia,q as Aa}from"./@vue/runtime-dom-DDAG46FW.js";import{aj as E,a as za,ak as Sa,K as Pa,am as wa,Y as nt,an as st,ar as qa,ao as La,ap as Na,aq as Ta}from"./tcm-DzAQc_oE.js";import{i as Fa}from"./order-BqE0MdhI.js";import{m as Wa}from"./doctor-BlvK2TEo.js";import{u as Oa,m as lt,i as f,_ as Ua}from"./index--WnM67ZH.js";import{g as it}from"./weapp-zf27P1tb.js";import{u as Ma}from"./usePaging-VsbTxSU0.js";import{h as V}from"./perm-CLhA0PJe.js";import{N as Qa,e as ot,A as Ya,X as Ba,O as dt,b as Ha,ac as Ka,G as ja,J as Ga,H as Ja,l as Xa,P as Za}from"./@element-plus/icons-vue-HOEUG8sr.js";import{d as rt}from"./dayjs-DG77mNTn.js";import{f as ut,b as en,d as tn,ak as l,I as o,J as s,a as n,aN as i,O as g,F as x,ap as z,H as _,aP as Le,G as $,P as le,A as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,r as Ne,n as c}from"./@vue/reactivity-DiY1c2vO.js";import{o as S,Q as p}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const an={class:"dh5"},nn={class:"dh5-topbar"},sn={class:"dh5-search"},ln={class:"dh5-chips dh5-chips--scroll"},on=["onClick"],dn={key:0},rn={key:0},un={key:0},pn={key:0},cn={class:"dh5-quick"},mn={class:"dh5-quick-group"},_n=["onClick"],vn={class:"dh5-quick-group"},gn=["onClick"],fn={class:"dh5-more-filter"},hn={class:"dh5-list"},yn={key:0,class:"dh5-empty"},kn=["onClick"],bn={class:"dh5-card-avatar"},Cn={class:"dh5-card-id-name"},Vn={class:"dh5-card-name"},xn={key:0,class:"dh5-meta-gender"},Dn={key:1,class:"dh5-meta-age"},$n={class:"dh5-card-sub"},En={key:0,class:"dh5-tag-new"},Rn={class:"dh5-card-tags"},In={key:0,class:"dh5-tag dh5-tag--ok"},An={key:1,class:"dh5-tag dh5-tag--warn"},zn={key:2,class:"dh5-tag dh5-tag--info"},Sn=["onClick"],Pn={class:"dh5-row-val"},wn={class:"dh5-apt-status"},qn={class:"dh5-apt-doctor"},Ln={class:"dh5-apt-time"},Nn={class:"dh5-apt-status"},Tn={class:"dh5-apt-doctor"},Fn={class:"dh5-apt-time"},Wn={key:1,class:"dh5-apt-none"},On={key:0,class:"dh5-row dh5-row--followup"},Un={class:"dh5-row-val"},Mn={class:"dh5-meta-doctor"},Qn={key:0,class:"dh5-tag dh5-tag--gray"},Yn={class:"dh5-row"},Bn={class:"dh5-row-val"},Hn={key:1,class:"dh5-row"},Kn={class:"dh5-row-val"},jn={key:0,class:"dh5-meta-mute"},Gn={key:1},Jn={key:0,class:"dh5-card-watch"},Xn={class:"dh5-watch-tip"},Zn={key:1,class:"dh5-watch-mute"},es={class:"dh5-card-foot"},ts={key:2,class:"dh5-no-more"},as={key:0,class:"dh5-actions"},ns={class:"dh5-form-tip"},ss={class:"font-medium"},ls={class:"dh5-qr"},is={key:0,class:"dh5-qr-loading"},os={key:1},ds=["src"],rs={class:"dh5-qr-meta"},us={key:2,class:"dh5-qr-fail"},ps={key:0,class:"dh5-wx-contact"},cs={class:"dh5-wx-contact-row"},ms={class:"dh5-wx-val"},_s={class:"dh5-wx-contact-row"},vs={class:"dh5-wx-val"},gs={key:0},fs={class:"dh5-wx-contact-row"},hs={class:"dh5-wx-val"},ys={class:"dh5-wx-add"},ks={class:"dh5-wx-list-wrap"},bs={key:0,class:"dh5-wx-empty"},Cs={key:1,class:"dh5-wx-list"},Vs={class:"dh5-wx-head"},xs={class:"dh5-wx-head-left"},Ds={class:"dh5-wx-name"},$s={class:"dh5-wx-head-right"},Es={class:"dh5-wx-time"},Rs={class:"dh5-wx-content"},Is={key:0,class:"dh5-wx-media"},As=ut({name:"tcmDiagnosisH5"}),zs=ut({...As,setup(Ss){const pt=le(()=>se(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),ct=le(()=>se(()=>import("./detail-BIA4i862.js"),__vite__mapDeps([99,45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,46,15]))),mt=le(()=>se(()=>import("./index-C5tKSXIA.js"),__vite__mapDeps([90,1,2,3,4,5,6,7,8,9,10,11,12,13,14,91,92,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,93,94,15,95,96]))),_t=le(()=>se(()=>import("./appointment-CmXNV-jm.js"),__vite__mapDeps([100,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,83,101]))),vt=le(()=>se(()=>import("./AssistantWatchCallDialog-4k1wpmUn.js"),__vite__mapDeps([102,1,2,3,4,5,6,7,8,9,10,11,12,13,14,103,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,104]))),ie=Oa(),gt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return rt(e).format("YYYY-MM-DD HH:mm")},ft=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return rt(e).format("YYYY-MM-DD HH:mm")},Te=t=>!t||t.length<11?t:t.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),R=t=>String(t).padStart(2,"0"),ve=M(()=>{const t=new Date;return t.setDate(t.getDate()-1),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),ge=M(()=>{const t=new Date;return t.setDate(t.getDate()-2),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),K=M(()=>{const t=new Date;return`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),fe=M(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),he=M(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${R(t.getMonth()+1)}-${R(t.getDate())}`}),d=Ne({keyword:"",diagnosis_type:"",syndrome_type:"",assistant_id:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",pending_assign:"",pending_booking:"",completed_appointment:""}),j=c(!1),ht=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],yt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],kt=M(()=>[{label:"昨天挂号",value:ve.value},{label:"前天挂号",value:ge.value},{label:"当天挂号",value:K.value},{label:"明天挂号",value:fe.value},{label:"后天挂号",value:he.value},{label:"全部",value:""}]),ye=c({}),ke=c(void 0),be=c(void 0),Ce=c(void 0),{pager:h,getLists:b}=Ma({fetchFun:E,params:d}),Ve=M(()=>h.lists.length<(h.count||0)),Fe=()=>b({silent:!0}),Y=()=>{h.page=1,b(),D()},bt=()=>{d.keyword="",d.diagnosis_type="",d.syndrome_type="",d.assistant_id="",d.diagnosis_confirmed="",d.appointment_date=K.value,d.has_appointment="",d.pending_assign="",d.pending_booking="",d.completed_appointment="",h.page=1,b(),D()},Ct=t=>{d.has_appointment=t,d.pending_booking="",d.completed_appointment="",h.page=1,b(),D()},Vt=t=>{d.diagnosis_confirmed=t,d.pending_booking="",d.completed_appointment="",h.page=1,b(),D()},xt=async t=>{d.pending_assign="",d.pending_booking="",d.completed_appointment="",d.has_appointment="",d.appointment_date=t,h.page=1,await b(),D()},Dt=async()=>{d.pending_assign="",d.pending_booking="1",d.completed_appointment="",d.appointment_date="",d.has_appointment="0",h.page=1,await b(),D()},$t=async()=>{d.pending_assign="",d.pending_booking="",d.completed_appointment="1",d.has_appointment="",d.appointment_date="",h.page=1,await b(),D()},Et=async()=>{d.pending_assign="1",d.pending_booking="",d.completed_appointment="",d.has_appointment="",d.appointment_date="",h.page=1,await b(),D()},D=async()=>{try{const[t,e,r,u,k,C,P,ae,O]=await Promise.all([E({appointment_date:ve.value,page_no:1,page_size:1}),E({appointment_date:ge.value,page_no:1,page_size:1}),E({appointment_date:K.value,page_no:1,page_size:1}),E({appointment_date:fe.value,page_no:1,page_size:1}),E({appointment_date:he.value,page_no:1,page_size:1}),E({page_no:1,page_size:1}),E({has_appointment:0,page_no:1,page_size:1}),E({completed_appointment:1,page_no:1,page_size:1}),E({pending_assign:1,page_no:1,page_size:1})]);ye.value={[ve.value]:(t==null?void 0:t.count)??0,[ge.value]:(e==null?void 0:e.count)??0,[K.value]:(r==null?void 0:r.count)??0,[fe.value]:(u==null?void 0:u.count)??0,[he.value]:(k==null?void 0:k.count)??0,"":(C==null?void 0:C.count)??0},ke.value=(P==null?void 0:P.count)??0,be.value=(ae==null?void 0:ae.count)??0,Ce.value=(O==null?void 0:O.count)??0}catch(t){console.error("获取日期数量失败",t)}},Rt=async()=>{if(h.loading||!Ve.value)return;const t=(h.page||1)+1;h.loading=!0;try{const e=await E({page_no:t,page_size:h.size,...d});h.page=t,h.lists.push(...(e==null?void 0:e.lists)||[]),h.count=(e==null?void 0:e.count)??h.count}catch(e){console.error("加载更多失败:",e)}finally{h.loading=!1}},xe=c([]),De=c([]),G=c([]),It=async()=>{try{const[t,e,r]=await Promise.all([lt({type:"diagnosis_type"}),lt({type:"syndrome_type"}),za()]);xe.value=(t==null?void 0:t.diagnosis_type)||[],De.value=(e==null?void 0:e.syndrome_type)||[],G.value=r||[]}catch(t){console.error("获取字典数据失败:",t)}},We=(t,e)=>{const r=t.find(u=>u.value===e);return r?r.name:e||"-"},At=t=>{if(!t&&t!==0)return"-";const e=typeof t=="string"?parseInt(t):t;if(G.value.length===0)return"...";const r=G.value.find(u=>(typeof u.id=="string"?parseInt(u.id):u.id)===e);return r?r.name:"-"},Oe=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(r=>r.is_confirmed==1)},zt=t=>Oe(t)?t.has_appointment?"":"dh5-card--noapt":"dh5-card--unconfirmed",St=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},Pt=t=>{const e=Number(t);return e===3?"已完成":e===4?"已过号":"已挂号"},Ue=t=>{const e=Array.isArray(t.appointments)?t.appointments:[];return e.length>0?e:t.has_appointment?[{id:t.appointment_id,status:t.appointment_status,doctor_id:t.appointment_doctor_id,doctor_name:t.appointment_doctor_name,time_text:t.appointment_time_text}]:[]},wt=t=>{const e=Number(t==null?void 0:t.status);return{"dh5-apt-item--done":e===3,"dh5-apt-item--missed":e===4,"dh5-apt-item--active":e===1}},qt=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},J=t=>t.has_appointment&&Number(t.appointment_status)===1,Me=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},Lt=t=>{var r;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((r=ie.userInfo)==null?void 0:r.id)},$e=t=>Lt(t)&&V(["tcm.diagnosis/watchCall"]),X=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},Nt=t=>{const e=X(t);return e==="live"||e==="pending_room"},Tt=t=>X(t)==="pending_room"?"医生未接通或未同步房间":"点击进入实时房间",Ft=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},Wt=t=>{const e=X(t);if(e==="none")return"";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const r=t.video_call_hint;return(r==null?void 0:r.label)||""},Ot=t=>{if($e(t))return!0;const e=X(t);return e==="live"||e==="pending_room"},Ee=c(!1),Qe=c(0),Ut=t=>{if(X(t)!=="live"){f.msgWarning("医生未接通或未同步房间号,请稍后再试");return}Qe.value=Number(t.id)||0,Ee.value=!0},oe=c(),Ye=c(),Be=c(),He=c(),Mt=()=>{var t;return(t=oe.value)==null?void 0:t.open("add")},Qt=t=>{var e;return(e=oe.value)==null?void 0:e.open("edit",t)},Ke=t=>{var e;return(e=Ye.value)==null?void 0:e.open(t)},je=t=>(t==null?void 0:t.prescription_audit_status)===1&&Number(t==null?void 0:t.prescription_void_status)!==1?"查看":"开方",Yt=t=>{var e;if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}(e=Be.value)==null||e.open({...t,diagnosis_id:t.id,id:t.appointment_id||0})},Bt=()=>{var t,e;b(),(e=(t=oe.value)==null?void 0:t.refreshCaseList)==null||e.call(t)},Ht=t=>{var e;if(!t.patient_id){f.msgWarning("患者信息不完整");return}(e=He.value)==null||e.open(t)},Kt=async t=>{await f.confirm("确定要删除该诊单吗?"),await Ta({id:t}),b()},de=c(!1),w=c(null),jt=t=>{w.value=t,de.value=!0},q=t=>{const e=w.value;if(de.value=!1,!!e)switch(t){case"assign":Gt(e);break;case"videoQr":if(!J(e)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}Je(e);break;case"confirmQr":Xe(e);break;case"cancelApt":oa(e);break;case"fillIdCard":na(e);break;case"order":Zt(e);break;case"wechat":Ze(e);break;case"delete":Kt(e.id);break}},Z=c(!1),Re=c(!1),re=c(null),B=c({assistant_id:null}),Gt=t=>{re.value=t,B.value.assistant_id=t.assistant_id?Number(t.assistant_id):null,Z.value=!0},Jt=async()=>{if(!B.value.assistant_id){f.msgWarning("请选择医助");return}Re.value=!0;try{await Sa({id:re.value.id,assistant_id:B.value.assistant_id}),Z.value=!1,b()}catch(t){console.error("指派失败:",t)}finally{Re.value=!1}},ee=c(!1),ue=c(),Ie=c(!1),v=Ne({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),Xt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Zt=t=>{var e;v.patient_id=t.patient_id||t.id,v.patient_name=t.patient_name,v.phone=t.phone||"",v.order_type="",v.amount=0,v.remark="",v.has_appointment=!!t.has_appointment,v.appointment_time_text=t.appointment_time_text||"",(e=ue.value)==null||e.clearValidate(),ee.value=!0},ea=()=>{var t;v.patient_id="",v.patient_name="",v.phone="",v.order_type="",v.amount=0,v.remark="",v.has_appointment=!1,v.appointment_time_text="",(t=ue.value)==null||t.clearValidate()},ta=async()=>{var t;try{await((t=ue.value)==null?void 0:t.validate()),Ie.value=!0;const e=await Fa({patient_id:v.patient_id,order_type:v.order_type,amount:v.amount,remark:v.remark});ee.value=!1,b();const r=e==null?void 0:e.order_no;if(r){L.value=!0,N.value=!0,T.value="",pe.value="收款二维码",F.value={patient_name:v.patient_name,has_appointment:v.has_appointment,appointment_time_text:v.appointment_time_text};try{const u=await Pa({order_no:r});u!=null&&u.qrcode_url?T.value=u.qrcode_url:f.msgError("二维码生成失败")}catch(u){f.msgError((u==null?void 0:u.msg)||"生成二维码失败")}finally{N.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Ie.value=!1}},te=c(!1),Ae=c(!1),Ge=c(),I=Ne({id:0,patient_name:"",id_card:""}),aa={id_card:[{required:!0,validator:(t,e,r)=>{if(!e){r(new Error("请输入身份证号"));return}const u=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),k=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);u||k?r():r(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},na=t=>{I.id=t.id,I.patient_name=t.patient_name||"-",I.id_card=t.id_card||"",te.value=!0},sa=async()=>{var t;await((t=Ge.value)==null?void 0:t.validate()),Ae.value=!0;try{await wa({id:I.id,id_card:I.id_card}),f.msgSuccess("补全成功,年龄已自动更新"),te.value=!1,b()}catch(e){f.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ae.value=!1}},L=c(!1),N=c(!1),T=c(""),F=c(null),pe=c("小程序二维码"),ze=c("confirm"),la=M(()=>{const t=F.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Je=async t=>{var e;if(!J(t)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}ze.value="video",F.value=t,L.value=!0,N.value=!0,T.value="",pe.value="视频二维码";try{const r=await it();if(!(r!=null&&r.app_id)){f.msgError("小程序未配置"),L.value=!1;return}const u=await nt({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ie.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});u!=null&&u.qrcode_url?T.value=u.qrcode_url:f.msgError("二维码生成失败")}catch(r){f.msgError((r==null?void 0:r.msg)||"生成二维码失败")}finally{N.value=!1}},Xe=async t=>{var e;if(!J(t)){f.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}ze.value="confirm",F.value=t,L.value=!0,N.value=!0,T.value="",pe.value="诊单二维码";try{const r=await it();if(!(r!=null&&r.app_id)){f.msgError("小程序未配置"),L.value=!1;return}const u=await nt({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ie.userInfo)==null?void 0:e.id)||""});u!=null&&u.qrcode_url?T.value=u.qrcode_url:f.msgError("二维码生成失败")}catch(r){f.msgError((r==null?void 0:r.msg)||"生成二维码失败")}finally{N.value=!1}},ia=()=>{F.value&&(ze.value==="video"?Je(F.value):Xe(F.value))},oa=async t=>{if(!Me(t)){const e=Number(t.appointment_status);t.has_appointment&&e===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该诊单未挂号或挂号信息异常");return}try{await f.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await Wa({id:t.appointment_id}),f.msgSuccess("取消挂号成功"),b(),D()}catch(e){e!=="cancel"&&f.msgError((e==null?void 0:e.msg)||"取消挂号失败")}},Se=c(!1),A=c(null),W=c([]),ce=c(0),me=c(!1),Q=c(null),H=c(""),Pe=c(!1),we=c(1),Ze=async t=>{A.value=t,Se.value=!0,W.value=[],ce.value=0,Q.value=null,H.value="",we.value=1,me.value=!0;try{const[e,r]=await Promise.all([st({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),qa({patient_id:t.patient_id||t.id}).catch(()=>null)]);W.value=(e==null?void 0:e.lists)||[],ce.value=(e==null?void 0:e.count)||0,Q.value=r}catch(e){console.error(e)}finally{me.value=!1}},da=async()=>{if(A.value){we.value++;try{const t=await st({diagnosis_id:A.value.id,patient_id:A.value.patient_id,page_no:we.value,page_size:20});W.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error(t)}}},ra=async()=>{var t;if(!H.value.trim()){f.msgWarning("请输入内容");return}Pe.value=!0;try{await La({diagnosis_id:A.value.id,patient_id:A.value.patient_id,content:H.value.trim(),msg_type:"note",staff_name:((t=ie.userInfo)==null?void 0:t.name)||"",external_name:A.value.patient_name||""}),H.value="",Ze(A.value)}catch(e){f.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Pe.value=!1}},ua=async t=>{await f.confirm("确定删除该记录吗?");try{await Na({id:t}),W.value=W.value.filter(e=>e.id!==t),ce.value--}catch(e){f.msgError((e==null?void 0:e.msg)||"删除失败")}},pa=15e3;let _e=null;const ca=()=>{typeof document<"u"&&document.hidden||(b({silent:!0}).catch(()=>{}),D())};return en(async()=>{document.body.classList.add("h5-mode"),d.appointment_date=K.value,It(),b(),typeof requestIdleCallback=="function"?requestIdleCallback(()=>D(),{timeout:2500}):setTimeout(D,200),_e=setInterval(ca,pa)}),tn(()=>{document.body.classList.remove("h5-mode"),_e&&(clearInterval(_e),_e=null)}),(t,e)=>{var at;const r=va,u=ga,k=fa,C=ha,P=ya,ae=ba,O=Ca,U=xa,qe=Va,ma=Da,et=$a,ne=Ea,_a=Ra,tt=ka;return l(),o("div",an,[s("header",nn,[s("div",sn,[n(r,{modelValue:d.keyword,"onUpdate:modelValue":e[0]||(e[0]=a=>d.keyword=a),placeholder:"患者姓名 / 手机号",clearable:"","prefix-icon":m(Qa),onKeyup:Ia(Y,["enter"]),onClear:Y},null,8,["modelValue","prefix-icon"]),n(u,{class:"dh5-search-btn",type:"primary",onClick:Y},{default:i(()=>[...e[31]||(e[31]=[g("查询",-1)])]),_:1})]),s("div",ln,[(l(!0),o(x,null,z(kt.value,a=>(l(),o("span",{key:a.value||"all",class:S(["dh5-chip",{active:d.pending_assign!=="1"&&d.pending_booking!=="1"&&d.completed_appointment!=="1"&&d.appointment_date===a.value}]),onClick:y=>xt(a.value)},[g(p(a.label)+" ",1),ye.value[a.value]!==void 0?(l(),o("em",dn,p(ye.value[a.value]),1)):_("",!0)],10,on))),128)),s("span",{class:S(["dh5-chip","dh5-chip--booking",{active:d.pending_booking==="1"}]),onClick:Dt},[e[32]||(e[32]=g(" 待预约 ",-1)),ke.value!==void 0?(l(),o("em",rn,p(ke.value),1)):_("",!0)],2),s("span",{class:S(["dh5-chip","dh5-chip--done",{active:d.completed_appointment==="1"}]),onClick:$t},[e[33]||(e[33]=g(" 已完成 ",-1)),be.value!==void 0?(l(),o("em",un,p(be.value),1)):_("",!0)],2),m(V)(["tcm.diagnosis/assign"])?(l(),o("span",{key:0,class:S(["dh5-chip","dh5-chip--pending",{active:d.pending_assign==="1"}]),onClick:Et},[e[34]||(e[34]=g(" 待分配医助 ",-1)),Ce.value!==void 0?(l(),o("em",pn,p(Ce.value),1)):_("",!0)],2)):_("",!0)]),s("div",cn,[s("div",mn,[e[35]||(e[35]=s("span",{class:"dh5-quick-label"},"挂号",-1)),(l(),o(x,null,z(ht,a=>s("span",{key:"a"+a.value,class:S(["dh5-pill",{active:d.has_appointment===a.value}]),onClick:y=>Ct(a.value)},p(a.label),11,_n)),64))]),s("div",vn,[e[36]||(e[36]=s("span",{class:"dh5-quick-label"},"确认",-1)),(l(),o(x,null,z(yt,a=>s("span",{key:"c"+a.value,class:S(["dh5-pill",{active:d.diagnosis_confirmed===a.value}]),onClick:y=>Vt(a.value)},p(a.label),11,gn)),64))]),n(u,{link:"",type:"primary",size:"small",class:"dh5-more-toggle",onClick:e[1]||(e[1]=a=>j.value=!j.value)},{default:i(()=>[g(p(j.value?"收起":"更多")+" ",1),n(k,{class:S({"rotate-180":j.value})},{default:i(()=>[n(m(ot))]),_:1},8,["class"])]),_:1})]),Le(s("div",fn,[n(P,{modelValue:d.diagnosis_type,"onUpdate:modelValue":e[2]||(e[2]=a=>d.diagnosis_type=a),placeholder:"诊断类型",clearable:"",size:"small",onChange:Y},{default:i(()=>[(l(!0),o(x,null,z(xe.value,a=>(l(),$(C,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),n(P,{modelValue:d.syndrome_type,"onUpdate:modelValue":e[3]||(e[3]=a=>d.syndrome_type=a),placeholder:"证型",clearable:"",size:"small",onChange:Y},{default:i(()=>[(l(!0),o(x,null,z(De.value,a=>(l(),$(C,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),n(P,{modelValue:d.assistant_id,"onUpdate:modelValue":e[4]||(e[4]=a=>d.assistant_id=a),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:Y},{default:i(()=>[(l(!0),o(x,null,z(G.value,a=>(l(),$(C,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),n(u,{size:"small",onClick:bt},{default:i(()=>[...e[37]||(e[37]=[g("重置",-1)])]),_:1})],512),[[Aa,j.value]])]),Le((l(),o("main",hn,[m(h).lists.length===0&&!m(h).loading?(l(),o("div",yn,[n(ae,{description:"暂无诊单","image-size":120})])):_("",!0),(l(!0),o(x,null,z(m(h).lists,a=>(l(),o("article",{key:a.id,class:S(["dh5-card",zt(a)])},[s("header",{class:"dh5-card-head",onClick:y=>Ke(a.id)},[s("div",bn,p((a.patient_name||"患").charAt(0)),1),s("div",Cn,[s("div",Vn,[g(p(a.patient_name||"-")+" ",1),a.gender_desc?(l(),o("span",xn,p(a.gender_desc),1)):_("",!0),a.age!=null?(l(),o("span",Dn,p(a.age)+"岁",1)):_("",!0)]),s("div",$n,[g(" #"+p(a.id)+" · "+p(a.diagnosis_date_text||gt(a.create_time))+" ",1),a.assign_read_at===null&&a.assistant_id>0?(l(),o("span",En,"NEW")):_("",!0)])]),s("div",Rn,[Oe(a)?(l(),o("span",In,"已确认")):(l(),o("span",An,"未确认")),a.has_prescription?(l(),o("span",zn,"已开方")):_("",!0)])],8,kn),s("section",{class:"dh5-card-body",onClick:y=>Ke(a.id)},[s("div",{class:S(["dh5-row","dh5-row--apt",qt(a)])},[e[38]||(e[38]=s("span",{class:"dh5-row-key"},"挂号",-1)),s("div",Pn,[a.has_appointment?(l(),o(x,{key:0},[Ue(a).length?(l(!0),o(x,{key:0},z(Ue(a),y=>(l(),o("div",{key:y.id||`${y.doctor_id}-${y.time_text}`,class:S(["dh5-apt-item",wt(y)])},[s("span",wn,p(Pt(y.status)),1),s("span",qn,p(y.doctor_name||"-"),1),s("span",Ln,p(y.time_text||"-"),1)],2))),128)):(l(),o(x,{key:1},[s("span",Nn,p(St(a)),1),s("span",Tn,p(a.appointment_doctor_name||"-"),1),s("span",Fn,p(a.appointment_time_text||"-"),1)],64))],64)):(l(),o("span",Wn,"未挂号"))])],2),a.has_prescription?(l(),o("div",On,[e[39]||(e[39]=s("span",{class:"dh5-row-key"},"复诊",-1)),s("div",Un,[s("span",null,p(a.followup_time_text||"—"),1),s("span",Mn,p(a.followup_doctor_name||"—"),1),a.followup_rx_voided?(l(),o("span",Qn,"处方作废")):_("",!0)])])):_("",!0),s("div",Yn,[e[40]||(e[40]=s("span",{class:"dh5-row-key"},"助理",-1)),s("span",Bn,p(At(a.assistant_id||a.assistant)),1)]),a.diagnosis_type?(l(),o("div",Hn,[e[41]||(e[41]=s("span",{class:"dh5-row-key"},"诊断",-1)),s("span",Kn,[g(p(We(xe.value,a.diagnosis_type))+" ",1),a.syndrome_type?(l(),o("span",jn,"·")):_("",!0),a.syndrome_type?(l(),o("span",Gn,p(We(De.value,a.syndrome_type)),1)):_("",!0)])])):_("",!0)],8,Sn),Ot(a)?(l(),o("div",Jn,[$e(a)&&Nt(a)?(l(),o(x,{key:0},[n(u,{type:"primary",size:"small",icon:m(Za),onClick:y=>Ut(a)},{default:i(()=>[...e[42]||(e[42]=[g(" 进入旁观 ",-1)])]),_:1},8,["icon","onClick"]),s("span",Xn,p(Tt(a)),1)],64)):(l(),o("span",Zn,p($e(a)?Ft(a):Wt(a)),1))])):_("",!0),s("footer",es,[m(V)(["tcm.diagnosis/edit"])?(l(),$(u,{key:0,type:"primary",size:"small",plain:"",onClick:y=>Qt(a.id)},{default:i(()=>[...e[43]||(e[43]=[g(" 诊单 ",-1)])]),_:1},8,["onClick"])):_("",!0),m(V)(["tcm.diagnosis/kaifang"])?(l(),$(u,{key:1,type:je(a)==="查看"?"success":"primary",size:"small",onClick:y=>Yt(a)},{default:i(()=>[g(p(je(a)),1)]),_:2},1032,["type","onClick"])):_("",!0),m(V)(["tcm.diagnosis/guahao"])?(l(),$(u,{key:2,type:"success",size:"small",plain:"",onClick:y=>Ht(a)},{default:i(()=>[...e[44]||(e[44]=[g(" 预约 ",-1)])]),_:1},8,["onClick"])):_("",!0),n(u,{size:"small",class:"dh5-more-btn",onClick:y=>jt(a)},{default:i(()=>[e[45]||(e[45]=g(" 更多",-1)),n(k,{class:"el-icon--right"},{default:i(()=>[n(m(ot))]),_:1})]),_:1},8,["onClick"])])],2))),128)),Ve.value?(l(),o("div",{key:1,class:"dh5-load-more",onClick:Rt},p(m(h).loading?"加载中…":"加载更多"),1)):_("",!0),!Ve.value&&m(h).lists.length>0?(l(),o("div",ts,"— 没有更多了 —")):_("",!0)])),[[tt,m(h).loading]]),m(V)(["tcm.diagnosis/add"])?(l(),o("button",{key:0,class:"dh5-fab",type:"button","aria-label":"新增诊单",onClick:Mt},[n(k,{size:22},{default:i(()=>[n(m(Ya))]),_:1})])):_("",!0),n(m(pt),{ref_key:"editRef",ref:oe,onSuccess:Fe},null,512),n(m(ct),{ref_key:"detailRef",ref:Ye},null,512),n(m(mt),{ref_key:"prescriptionRef",ref:Be,onSuccess:Bt},null,512),n(m(_t),{ref_key:"appointmentRef",ref:He,onSuccess:Fe},null,512),n(m(vt),{modelValue:Ee.value,"onUpdate:modelValue":e[5]||(e[5]=a=>Ee.value=a),"diagnosis-id":Qe.value,onClosed:m(b)},null,8,["modelValue","diagnosis-id","onClosed"]),n(O,{modelValue:de.value,"onUpdate:modelValue":e[14]||(e[14]=a=>de.value=a),title:w.value?`${w.value.patient_name||"诊单"} · 更多操作`:"更多操作",direction:"btt",size:"auto","with-header":!0,"destroy-on-close":!0},{default:i(()=>[w.value?(l(),o("div",as,[m(V)(["tcm.diagnosis/assign"])?(l(),o("button",{key:0,class:"dh5-action",onClick:e[6]||(e[6]=a=>q("assign"))},[n(k,null,{default:i(()=>[n(m(Ba))]),_:1}),e[46]||(e[46]=s("span",null,"指派医助",-1))])):_("",!0),J(w.value)&&m(V)(["tcm.diagnosis/videoQr"])?(l(),o("button",{key:1,class:"dh5-action",onClick:e[7]||(e[7]=a=>q("videoQr"))},[n(k,null,{default:i(()=>[n(m(dt))]),_:1}),e[47]||(e[47]=s("span",null,"视频二维码",-1))])):_("",!0),J(w.value)&&m(V)(["tcm.diagnosis/guahao"])?(l(),o("button",{key:2,class:"dh5-action",onClick:e[8]||(e[8]=a=>q("confirmQr"))},[n(k,null,{default:i(()=>[n(m(dt))]),_:1}),e[48]||(e[48]=s("span",null,"诊单二维码",-1))])):_("",!0),Me(w.value)&&m(V)(["tcm.diagnosis/guahao"])?(l(),o("button",{key:3,class:"dh5-action",onClick:e[9]||(e[9]=a=>q("cancelApt"))},[n(k,null,{default:i(()=>[n(m(Ha))]),_:1}),e[49]||(e[49]=s("span",null,"取消挂号",-1))])):_("",!0),m(V)(["tcm.diagnosis/edit"])?(l(),o("button",{key:4,class:"dh5-action",onClick:e[10]||(e[10]=a=>q("fillIdCard"))},[n(k,null,{default:i(()=>[n(m(Ka))]),_:1}),e[50]||(e[50]=s("span",null,"补全身份证",-1))])):_("",!0),m(V)(["tcm.diagnosis/order"])?(l(),o("button",{key:5,class:"dh5-action",onClick:e[11]||(e[11]=a=>q("order"))},[n(k,null,{default:i(()=>[n(m(ja))]),_:1}),e[51]||(e[51]=s("span",null,"创建订单",-1))])):_("",!0),s("button",{class:"dh5-action",onClick:e[12]||(e[12]=a=>q("wechat"))},[n(k,null,{default:i(()=>[n(m(Ga))]),_:1}),e[52]||(e[52]=s("span",null,"企微记录",-1))]),m(V)(["tcm.diagnosis/delete"])?(l(),o("button",{key:6,class:"dh5-action dh5-action--danger",onClick:e[13]||(e[13]=a=>q("delete"))},[n(k,null,{default:i(()=>[n(m(Ja))]),_:1}),e[53]||(e[53]=s("span",null,"删除诊单",-1))])):_("",!0)])):_("",!0)]),_:1},8,["modelValue","title"]),n(O,{modelValue:Z.value,"onUpdate:modelValue":e[17]||(e[17]=a=>Z.value=a),title:"指派医助",direction:"btt",size:"46%"},{footer:i(()=>[n(u,{class:"dh5-flex1",onClick:e[16]||(e[16]=a=>Z.value=!1)},{default:i(()=>[...e[54]||(e[54]=[g("取消",-1)])]),_:1}),n(u,{class:"dh5-flex1",type:"primary",loading:Re.value,onClick:Jt},{default:i(()=>[...e[55]||(e[55]=[g(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[n(qe,{model:B.value,"label-position":"top",class:"dh5-form"},{default:i(()=>[n(U,{label:"选择医助",required:""},{default:i(()=>[n(P,{modelValue:B.value.assistant_id,"onUpdate:modelValue":e[15]||(e[15]=a=>B.value.assistant_id=a),placeholder:"请选择医助",class:"!w-full",filterable:"",clearable:""},{default:i(()=>[(l(!0),o(x,null,z(G.value,a=>(l(),$(C,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(U,{label:"诊单信息"},{default:i(()=>{var a,y;return[s("div",ns,[s("div",null,"患者:"+p((a=re.value)==null?void 0:a.patient_name),1),s("div",null,"诊断日期:"+p(((y=re.value)==null?void 0:y.diagnosis_date_text)||"—"),1)])]}),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),n(O,{modelValue:ee.value,"onUpdate:modelValue":e[22]||(e[22]=a=>ee.value=a),title:"创建订单",direction:"btt",size:"64%",onClose:ea},{footer:i(()=>[n(u,{class:"dh5-flex1",onClick:e[21]||(e[21]=a=>ee.value=!1)},{default:i(()=>[...e[56]||(e[56]=[g("取消",-1)])]),_:1}),n(u,{class:"dh5-flex1",type:"primary",loading:Ie.value,onClick:ta},{default:i(()=>[...e[57]||(e[57]=[g(" 创建订单 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[n(qe,{ref_key:"orderFormRef",ref:ue,model:v,rules:Xt,"label-position":"top",class:"dh5-form"},{default:i(()=>[n(U,{label:"患者"},{default:i(()=>[s("span",null,p(v.patient_name)+" ("+p(Te(v.phone))+")",1)]),_:1}),n(U,{label:"订单类型",prop:"order_type"},{default:i(()=>[n(P,{modelValue:v.order_type,"onUpdate:modelValue":e[18]||(e[18]=a=>v.order_type=a),placeholder:"请选择",class:"!w-full"},{default:i(()=>[n(C,{label:"挂号费",value:1}),n(C,{label:"问诊费",value:2}),n(C,{label:"药品费用",value:3}),n(C,{label:"首付费用",value:4}),n(C,{label:"尾款费用",value:5}),n(C,{label:"其他费用",value:6}),n(C,{label:"全部费用",value:7}),n(C,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),n(U,{label:"订单金额",prop:"amount"},{default:i(()=>[n(ma,{modelValue:v.amount,"onUpdate:modelValue":e[19]||(e[19]=a=>v.amount=a),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"!w-full"},null,8,["modelValue"])]),_:1}),n(U,{label:"备注",prop:"remark"},{default:i(()=>[n(r,{modelValue:v.remark,"onUpdate:modelValue":e[20]||(e[20]=a=>v.remark=a),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),n(et,{modelValue:te.value,"onUpdate:modelValue":e[25]||(e[25]=a=>te.value=a),title:"补全身份证号","close-on-click-modal":!1,onClose:e[26]||(e[26]=a=>I.id_card="")},{footer:i(()=>[n(u,{onClick:e[24]||(e[24]=a=>te.value=!1)},{default:i(()=>[...e[58]||(e[58]=[g("取消",-1)])]),_:1}),n(u,{type:"primary",loading:Ae.value,onClick:sa},{default:i(()=>[...e[59]||(e[59]=[g(" 提交 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[n(qe,{ref_key:"fillIdCardFormRef",ref:Ge,model:I,rules:aa,"label-position":"top",class:"dh5-form"},{default:i(()=>[n(U,{label:"患者"},{default:i(()=>[s("span",ss,p(I.patient_name),1)]),_:1}),n(U,{label:"身份证号",prop:"id_card"},{default:i(()=>[n(r,{modelValue:I.id_card,"onUpdate:modelValue":e[23]||(e[23]=a=>I.id_card=a),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),n(et,{modelValue:L.value,"onUpdate:modelValue":e[28]||(e[28]=a=>L.value=a),title:pe.value,"close-on-click-modal":!1},{footer:i(()=>[n(u,{onClick:e[27]||(e[27]=a=>L.value=!1)},{default:i(()=>[...e[62]||(e[62]=[g("关闭",-1)])]),_:1}),N.value?_("",!0):(l(),$(u,{key:0,type:"primary",onClick:ia},{default:i(()=>[...e[63]||(e[63]=[g("重新生成",-1)])]),_:1}))]),default:i(()=>{var a;return[s("div",ls,[N.value?(l(),o("div",is,[n(k,{class:"is-loading",size:36},{default:i(()=>[n(m(Xa))]),_:1}),e[60]||(e[60]=s("div",{class:"dh5-qr-tip"},"生成中...",-1))])):T.value?(l(),o("div",os,[s("img",{src:T.value,alt:"小程序二维码",class:"dh5-qr-img"},null,8,ds),s("div",rs,[s("div",null,"患者:"+p((a=F.value)==null?void 0:a.patient_name),1),s("div",null,"挂号时间:"+p(la.value),1),e[61]||(e[61]=s("div",{class:"dh5-qr-hint"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(l(),o("div",us,"生成失败,请重试"))])]}),_:1},8,["modelValue","title"]),n(O,{modelValue:Se.value,"onUpdate:modelValue":e[30]||(e[30]=a=>Se.value=a),title:`企微记录 - ${((at=A.value)==null?void 0:at.patient_name)||""}`,direction:"rtl",size:"100%","destroy-on-close":!0},{default:i(()=>[Q.value?(l(),o("div",ps,[s("div",cs,[e[64]||(e[64]=s("span",{class:"dh5-wx-key"},"手机号",-1)),s("span",ms,p(Te(Q.value.phone)||"-"),1)]),s("div",_s,[e[66]||(e[66]=s("span",{class:"dh5-wx-key"},"企微 ID",-1)),s("span",vs,[Q.value.external_userid?(l(),o("span",gs,p(Q.value.external_userid),1)):(l(),$(ne,{key:1,type:"info",size:"small"},{default:i(()=>[...e[65]||(e[65]=[g("未关联",-1)])]),_:1}))])]),s("div",fs,[e[69]||(e[69]=s("span",{class:"dh5-wx-key"},"会话存档",-1)),s("span",hs,[Q.value.msgaudit_enabled?(l(),$(ne,{key:0,type:"success",size:"small"},{default:i(()=>[...e[67]||(e[67]=[g("已开通",-1)])]),_:1})):(l(),$(ne,{key:1,type:"info",size:"small"},{default:i(()=>[...e[68]||(e[68]=[g("未配置",-1)])]),_:1}))])])])):_("",!0),s("div",ys,[n(r,{modelValue:H.value,"onUpdate:modelValue":e[29]||(e[29]=a=>H.value=a),type:"textarea",rows:2,placeholder:"添加沟通记录..."},null,8,["modelValue"]),n(u,{type:"primary",loading:Pe.value,size:"small",onClick:ra},{default:i(()=>[...e[70]||(e[70]=[g(" 添加 ",-1)])]),_:1},8,["loading"])]),Le((l(),o("div",ks,[W.value.length===0&&!me.value?(l(),o("div",bs," 暂无聊天记录 ")):(l(),o("div",Cs,[(l(!0),o(x,null,z(W.value,a=>{var y;return l(),o("div",{key:a.id,class:"dh5-wx-item"},[s("div",Vs,[s("div",xs,[n(ne,{type:a.direction===0?"primary":"success",size:"small"},{default:i(()=>[g(p(a.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),s("span",Ds,p(a.direction===0?a.staff_name:a.external_name||((y=A.value)==null?void 0:y.patient_name)),1),a.msg_type==="note"?(l(),$(ne,{key:0,type:"warning",size:"small"},{default:i(()=>[...e[71]||(e[71]=[g("备注",-1)])]),_:1})):_("",!0)]),s("div",$s,[s("span",Es,p(ft(a.chat_time)),1),n(u,{type:"danger",link:"",size:"small",onClick:ws=>ua(a.id)},{default:i(()=>[...e[72]||(e[72]=[g(" 删除 ",-1)])]),_:1},8,["onClick"])])]),s("div",Rs,p(a.content),1),a.media_url?(l(),o("div",Is,[n(_a,{src:a.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[a.media_url]},null,8,["src","preview-src-list"])])):_("",!0)])}),128))])),ce.value>W.value.length?(l(),o("div",{key:2,class:"dh5-load-more",onClick:da}," 加载更多 ")):_("",!0)])),[[tt,me.value]])]),_:1},8,["modelValue","title"])])}}}),xl=Ua(zs,[["__scopeId","data-v-b9d725b4"]]);export{xl as default}; diff --git a/server/public/admin/assets/information-CItsuNNR.js b/server/public/admin/assets/information-Dz_HQSyz.js similarity index 94% rename from server/public/admin/assets/information-CItsuNNR.js rename to server/public/admin/assets/information-Dz_HQSyz.js index 6ce36d72..6312a744 100644 --- a/server/public/admin/assets/information-CItsuNNR.js +++ b/server/public/admin/assets/information-Dz_HQSyz.js @@ -1 +1 @@ -import{_ as C}from"./index-DbiC_Mh1.js";import{J as q,B as k,C as U,D as y,i as O}from"./element-plus-DFTWCWyi.js";import{_ as P}from"./picker-cSgp8cEl.js";import{a as M,b as B}from"./website-D92RBx7y.js";import{e as E}from"./index-Nt5zMHcc.js";import{f,as as G,ak as _,I as D,a as o,aN as m,J as i,aP as L,G as I,O as N}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,n as S,r as W}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const F={class:"website-information"},J={class:"w-80"},R={class:"w-80"},A={class:"w-80"},T={class:"w-80"},z={class:"w-80"},H=f({name:"webInformation"}),Qe=f({...H,setup(K){const u=S(),b=E(),l=W({name:"",web_favicon:"",web_logo:"",login_image:"",h5_favicon:"",shop_name:"",shop_logo:"",pc_logo:"",pc_title:"",pc_desc:"",pc_ico:"",pc_keywords:""}),v={name:[{required:!0,message:"请输入网站名称",trigger:["blur"]}],web_favicon:[{required:!0,message:"请选择网站图标",trigger:["change"]}],web_logo:[{required:!0,message:"请选择网站logo",trigger:["change"]}],login_image:[{required:!0,message:"请选择登录页广告图",trigger:["change"]}],shop_name:[{required:!0,message:"请输入店铺/商城名称",trigger:["blur"]}],shop_logo:[{required:!0,message:"请选择商城LOGO",trigger:["change"]}],pc_logo:[{required:!0,message:"请选择PC端LOGO",trigger:["change"]}],pc_title:[{required:!0,message:"请输入PC端网站标题",trigger:["blur"]}],pc_ico:[{required:!0,message:"请选择PC端网站图标",trigger:["change"]}]},g=async()=>{const a=await M();for(const e in l)l[e]=a[e]},w=async()=>{var a;await((a=u.value)==null?void 0:a.validate()),await B(l),b.getConfig(),g()};return g(),(a,e)=>{const d=U,p=k,s=P,n=q,V=y,c=O,x=C,j=G("perms");return _(),D("div",F,[o(V,{ref_key:"formRef",ref:u,rules:v,class:"ls-form",model:t(l),"label-width":"120px","scroll-to-error":""},{default:m(()=>[o(n,{shadow:"never",class:"!border-none"},{default:m(()=>[e[15]||(e[15]=i("div",{class:"text-xl font-medium mb-[20px]"},"后台设置",-1)),o(p,{label:"网站名称",prop:"name"},{default:m(()=>[i("div",J,[o(d,{modelValue:t(l).name,"onUpdate:modelValue":e[0]||(e[0]=r=>t(l).name=r),modelModifiers:{trim:!0},placeholder:"请输入网站名称",maxlength:"30","show-word-limit":""},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站图标",prop:"web_favicon",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).web_favicon,"onUpdate:modelValue":e[1]||(e[1]=r=>t(l).web_favicon=r),limit:1},null,8,["modelValue"]),e[12]||(e[12]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"网站LOGO",prop:"web_logo",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).web_logo,"onUpdate:modelValue":e[2]||(e[2]=r=>t(l).web_logo=r),modelModifiers:{trim:!0},limit:1},null,8,["modelValue"]),e[13]||(e[13]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"登录页广告图",prop:"login_image",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).login_image,"onUpdate:modelValue":e[3]||(e[3]=r=>t(l).login_image=r),modelModifiers:{trim:!0},limit:1},null,8,["modelValue"]),e[14]||(e[14]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),o(n,{shadow:"never",class:"!border-none mt-4"},{default:m(()=>[e[18]||(e[18]=i("div",{class:"text-xl font-medium mb-[20px]"},"前台设置",-1)),o(p,{label:"前台名称",prop:"shop_name"},{default:m(()=>[i("div",R,[o(d,{modelValue:t(l).shop_name,"onUpdate:modelValue":e[4]||(e[4]=r=>t(l).shop_name=r),modelModifiers:{trim:!0},placeholder:"请输入前台名称",maxlength:"30","show-word-limit":""},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站图标",prop:"web_favicon",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).h5_favicon,"onUpdate:modelValue":e[5]||(e[5]=r=>t(l).h5_favicon=r),limit:1},null,8,["modelValue"]),e[16]||(e[16]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"前台LOGO",prop:"shop_logo"},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).shop_logo,"onUpdate:modelValue":e[6]||(e[6]=r=>t(l).shop_logo=r),limit:1},null,8,["modelValue"]),e[17]||(e[17]=i("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),o(n,{shadow:"never",class:"!border-none mt-4"},{default:m(()=>[e[21]||(e[21]=i("div",{class:"text-xl font-medium mb-[20px]"},"PC端设置",-1)),o(p,{label:"PC端LOGO",prop:"pc_logo"},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).pc_logo,"onUpdate:modelValue":e[7]||(e[7]=r=>t(l).pc_logo=r),limit:1},null,8,["modelValue"]),e[19]||(e[19]=i("div",{class:"form-tips"},"建议尺寸:120*28px,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"网站标题",prop:"pc_title"},{default:m(()=>[i("div",A,[o(d,{modelValue:t(l).pc_title,"onUpdate:modelValue":e[8]||(e[8]=r=>t(l).pc_title=r),modelModifiers:{trim:!0},placeholder:"请输入PC端网站标题",maxlength:"30","show-word-limit":""},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站图标",prop:"pc_ico"},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).pc_ico,"onUpdate:modelValue":e[9]||(e[9]=r=>t(l).pc_ico=r),limit:1},null,8,["modelValue"]),e[20]||(e[20]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"网站描述",prop:"pc_desc"},{default:m(()=>[i("div",T,[o(d,{modelValue:t(l).pc_desc,"onUpdate:modelValue":e[10]||(e[10]=r=>t(l).pc_desc=r),modelModifiers:{trim:!0},placeholder:"请输入PC端网站描述"},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站关键词",prop:"pc_keywords"},{default:m(()=>[i("div",z,[o(d,{modelValue:t(l).pc_keywords,"onUpdate:modelValue":e[11]||(e[11]=r=>t(l).pc_keywords=r),modelModifiers:{trim:!0},placeholder:"请输入PC端网站关键词"},null,8,["modelValue"])])]),_:1})]),_:1})]),_:1},8,["model"]),L((_(),I(x,null,{default:m(()=>[o(c,{type:"primary",onClick:w},{default:m(()=>[...e[22]||(e[22]=[N("保存",-1)])]),_:1})]),_:1})),[[j,["setting.web.web_setting/setWebsite"]]])])}}});export{Qe as default}; +import{_ as C}from"./index-j275bAO5.js";import{J as q,B as k,C as U,D as y,i as O}from"./element-plus-DFTWCWyi.js";import{_ as P}from"./picker-DzCeqD7m.js";import{a as M,b as B}from"./website-HcLkfBpP.js";import{e as E}from"./index--WnM67ZH.js";import{f,as as G,ak as _,I as D,a as o,aN as m,J as i,aP as L,G as I,O as N}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,n as S,r as W}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const F={class:"website-information"},J={class:"w-80"},R={class:"w-80"},A={class:"w-80"},T={class:"w-80"},z={class:"w-80"},H=f({name:"webInformation"}),Qe=f({...H,setup(K){const u=S(),b=E(),l=W({name:"",web_favicon:"",web_logo:"",login_image:"",h5_favicon:"",shop_name:"",shop_logo:"",pc_logo:"",pc_title:"",pc_desc:"",pc_ico:"",pc_keywords:""}),v={name:[{required:!0,message:"请输入网站名称",trigger:["blur"]}],web_favicon:[{required:!0,message:"请选择网站图标",trigger:["change"]}],web_logo:[{required:!0,message:"请选择网站logo",trigger:["change"]}],login_image:[{required:!0,message:"请选择登录页广告图",trigger:["change"]}],shop_name:[{required:!0,message:"请输入店铺/商城名称",trigger:["blur"]}],shop_logo:[{required:!0,message:"请选择商城LOGO",trigger:["change"]}],pc_logo:[{required:!0,message:"请选择PC端LOGO",trigger:["change"]}],pc_title:[{required:!0,message:"请输入PC端网站标题",trigger:["blur"]}],pc_ico:[{required:!0,message:"请选择PC端网站图标",trigger:["change"]}]},g=async()=>{const a=await M();for(const e in l)l[e]=a[e]},w=async()=>{var a;await((a=u.value)==null?void 0:a.validate()),await B(l),b.getConfig(),g()};return g(),(a,e)=>{const d=U,p=k,s=P,n=q,V=y,c=O,x=C,j=G("perms");return _(),D("div",F,[o(V,{ref_key:"formRef",ref:u,rules:v,class:"ls-form",model:t(l),"label-width":"120px","scroll-to-error":""},{default:m(()=>[o(n,{shadow:"never",class:"!border-none"},{default:m(()=>[e[15]||(e[15]=i("div",{class:"text-xl font-medium mb-[20px]"},"后台设置",-1)),o(p,{label:"网站名称",prop:"name"},{default:m(()=>[i("div",J,[o(d,{modelValue:t(l).name,"onUpdate:modelValue":e[0]||(e[0]=r=>t(l).name=r),modelModifiers:{trim:!0},placeholder:"请输入网站名称",maxlength:"30","show-word-limit":""},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站图标",prop:"web_favicon",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).web_favicon,"onUpdate:modelValue":e[1]||(e[1]=r=>t(l).web_favicon=r),limit:1},null,8,["modelValue"]),e[12]||(e[12]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"网站LOGO",prop:"web_logo",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).web_logo,"onUpdate:modelValue":e[2]||(e[2]=r=>t(l).web_logo=r),modelModifiers:{trim:!0},limit:1},null,8,["modelValue"]),e[13]||(e[13]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"登录页广告图",prop:"login_image",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).login_image,"onUpdate:modelValue":e[3]||(e[3]=r=>t(l).login_image=r),modelModifiers:{trim:!0},limit:1},null,8,["modelValue"]),e[14]||(e[14]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),o(n,{shadow:"never",class:"!border-none mt-4"},{default:m(()=>[e[18]||(e[18]=i("div",{class:"text-xl font-medium mb-[20px]"},"前台设置",-1)),o(p,{label:"前台名称",prop:"shop_name"},{default:m(()=>[i("div",R,[o(d,{modelValue:t(l).shop_name,"onUpdate:modelValue":e[4]||(e[4]=r=>t(l).shop_name=r),modelModifiers:{trim:!0},placeholder:"请输入前台名称",maxlength:"30","show-word-limit":""},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站图标",prop:"web_favicon",required:""},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).h5_favicon,"onUpdate:modelValue":e[5]||(e[5]=r=>t(l).h5_favicon=r),limit:1},null,8,["modelValue"]),e[16]||(e[16]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"前台LOGO",prop:"shop_logo"},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).shop_logo,"onUpdate:modelValue":e[6]||(e[6]=r=>t(l).shop_logo=r),limit:1},null,8,["modelValue"]),e[17]||(e[17]=i("div",{class:"form-tips"},"建议尺寸:100*100px,支持jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),o(n,{shadow:"never",class:"!border-none mt-4"},{default:m(()=>[e[21]||(e[21]=i("div",{class:"text-xl font-medium mb-[20px]"},"PC端设置",-1)),o(p,{label:"PC端LOGO",prop:"pc_logo"},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).pc_logo,"onUpdate:modelValue":e[7]||(e[7]=r=>t(l).pc_logo=r),limit:1},null,8,["modelValue"]),e[19]||(e[19]=i("div",{class:"form-tips"},"建议尺寸:120*28px,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"网站标题",prop:"pc_title"},{default:m(()=>[i("div",A,[o(d,{modelValue:t(l).pc_title,"onUpdate:modelValue":e[8]||(e[8]=r=>t(l).pc_title=r),modelModifiers:{trim:!0},placeholder:"请输入PC端网站标题",maxlength:"30","show-word-limit":""},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站图标",prop:"pc_ico"},{default:m(()=>[i("div",null,[o(s,{modelValue:t(l).pc_ico,"onUpdate:modelValue":e[9]||(e[9]=r=>t(l).pc_ico=r),limit:1},null,8,["modelValue"]),e[20]||(e[20]=i("div",{class:"form-tips"},"建议尺寸:100*100像素,支持jpg,jpeg,png格式",-1))])]),_:1}),o(p,{label:"网站描述",prop:"pc_desc"},{default:m(()=>[i("div",T,[o(d,{modelValue:t(l).pc_desc,"onUpdate:modelValue":e[10]||(e[10]=r=>t(l).pc_desc=r),modelModifiers:{trim:!0},placeholder:"请输入PC端网站描述"},null,8,["modelValue"])])]),_:1}),o(p,{label:"网站关键词",prop:"pc_keywords"},{default:m(()=>[i("div",z,[o(d,{modelValue:t(l).pc_keywords,"onUpdate:modelValue":e[11]||(e[11]=r=>t(l).pc_keywords=r),modelModifiers:{trim:!0},placeholder:"请输入PC端网站关键词"},null,8,["modelValue"])])]),_:1})]),_:1})]),_:1},8,["model"]),L((_(),I(x,null,{default:m(()=>[o(c,{type:"primary",onClick:w},{default:m(()=>[...e[22]||(e[22]=[N("保存",-1)])]),_:1})]),_:1})),[[j,["setting.web.web_setting/setWebsite"]]])])}}});export{Qe as default}; diff --git a/server/public/admin/assets/journal-COBt03jH.js b/server/public/admin/assets/journal-B6J_9bs1.js similarity index 96% rename from server/public/admin/assets/journal-COBt03jH.js rename to server/public/admin/assets/journal-B6J_9bs1.js index 172d7048..0ae34578 100644 --- a/server/public/admin/assets/journal-COBt03jH.js +++ b/server/public/admin/assets/journal-B6J_9bs1.js @@ -1 +1 @@ -import{D,B as F,C as N,P as z,Q as j,i as $,J,L as M,M as O,N as G}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as R}from"./index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js";import{_ as S}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as u}from"./@vue/runtime-dom-DDAG46FW.js";import{E as b}from"./index-Nt5zMHcc.js";import{u as q}from"./usePaging-VsbTxSU0.js";import{f as C,b as A,ak as s,I as v,a as e,aN as n,F as H,ap as W,G as g,O as y,aP as X,J as V}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,a as Y,n as w}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Z={class:"journal"},ee={class:"flex mt-4 justify-end"},te=C({name:"journal"}),Se=C({...te,setup(le){const a=w({admin_name:"",url:"",ip:"",type:"",start_time:"",end_time:""}),E=w([{label:"全部",value:""},{label:"get",value:"get"},{label:"post",value:"post"},{label:"put",value:"put"},{label:"delete",value:"delete"},{label:"option",value:"option"}]),{pager:r,getLists:_,resetParams:k,resetPage:i}=q({fetchFun:b,params:a.value});return A(()=>{_()}),(oe,l)=>{const d=N,p=F,x=j,T=z,I=S,c=$,K=R,P=D,f=J,m=G,U=O,h=Q,B=M;return s(),v("div",Z,[e(f,{class:"!border-none",shadow:"never"},{default:n(()=>[e(P,{class:"ls-form",model:t(a),inline:""},{default:n(()=>[e(p,{class:"w-[280px]",label:"管理员"},{default:n(()=>[e(d,{placeholder:"请输入",modelValue:t(a).admin_name,"onUpdate:modelValue":l[0]||(l[0]=o=>t(a).admin_name=o),clearable:"",onKeyup:u(t(i),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,{class:"w-[280px]",label:"访问方式"},{default:n(()=>[e(T,{modelValue:t(a).type,"onUpdate:modelValue":l[1]||(l[1]=o=>t(a).type=o),placeholder:"请选择"},{default:n(()=>[(s(!0),v(H,null,W(t(E),(o,L)=>(s(),g(x,{key:L,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(p,{class:"w-[280px]",label:"来源IP"},{default:n(()=>[e(d,{placeholder:"请输入",modelValue:t(a).ip,"onUpdate:modelValue":l[2]||(l[2]=o=>t(a).ip=o),clearable:"",onKeyup:u(t(i),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,{label:"访问时间"},{default:n(()=>[e(I,{startTime:t(a).start_time,"onUpdate:startTime":l[3]||(l[3]=o=>t(a).start_time=o),endTime:t(a).end_time,"onUpdate:endTime":l[4]||(l[4]=o=>t(a).end_time=o)},null,8,["startTime","endTime"])]),_:1}),e(p,{class:"w-[280px]",label:"访问链接"},{default:n(()=>[e(d,{placeholder:"请输入",modelValue:t(a).url,"onUpdate:modelValue":l[5]||(l[5]=o=>t(a).url=o),clearable:"",onKeyup:u(t(i),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,null,{default:n(()=>[e(c,{type:"primary",onClick:t(i)},{default:n(()=>[...l[7]||(l[7]=[y("查询",-1)])]),_:1},8,["onClick"]),e(c,{onClick:t(k)},{default:n(()=>[...l[8]||(l[8]=[y("重置",-1)])]),_:1},8,["onClick"]),e(K,{class:"ml-2.5","fetch-fun":t(b),params:t(a),"page-size":t(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),X((s(),g(f,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[V("div",null,[e(U,{data:t(r).lists,size:"large"},{default:n(()=>[e(m,{label:"记录ID",prop:"id"}),e(m,{label:"操作",prop:"action","min-width":"120"}),e(m,{label:"管理员",prop:"admin_name","min-width":"120"}),e(m,{label:"管理员ID",prop:"admin_id","min-width":"120"}),e(m,{label:"访问链接",prop:"url","min-width":"160"}),e(m,{label:"访问方式",prop:"type"}),e(m,{label:"访问参数",prop:"params","min-width":"160"}),e(m,{label:"来源IP",prop:"ip","min-width":"160"}),e(m,{label:"日志时间",prop:"create_time","min-width":"180"})]),_:1},8,["data"])]),V("div",ee,[e(h,{modelValue:t(r),"onUpdate:modelValue":l[6]||(l[6]=o=>Y(r)?r.value=o:null),onChange:t(_)},null,8,["modelValue","onChange"])])]),_:1})),[[B,t(r).loading]])])}}});export{Se as default}; +import{D,B as F,C as N,P as z,Q as j,i as $,J,L as M,M as O,N as G}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as R}from"./index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js";import{_ as S}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as u}from"./@vue/runtime-dom-DDAG46FW.js";import{E as b}from"./index--WnM67ZH.js";import{u as q}from"./usePaging-VsbTxSU0.js";import{f as C,b as A,ak as s,I as v,a as e,aN as n,F as H,ap as W,G as g,O as y,aP as X,J as V}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,a as Y,n as w}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Z={class:"journal"},ee={class:"flex mt-4 justify-end"},te=C({name:"journal"}),Se=C({...te,setup(le){const a=w({admin_name:"",url:"",ip:"",type:"",start_time:"",end_time:""}),E=w([{label:"全部",value:""},{label:"get",value:"get"},{label:"post",value:"post"},{label:"put",value:"put"},{label:"delete",value:"delete"},{label:"option",value:"option"}]),{pager:r,getLists:_,resetParams:k,resetPage:i}=q({fetchFun:b,params:a.value});return A(()=>{_()}),(oe,l)=>{const d=N,p=F,x=j,T=z,I=S,c=$,K=R,P=D,f=J,m=G,U=O,h=Q,B=M;return s(),v("div",Z,[e(f,{class:"!border-none",shadow:"never"},{default:n(()=>[e(P,{class:"ls-form",model:t(a),inline:""},{default:n(()=>[e(p,{class:"w-[280px]",label:"管理员"},{default:n(()=>[e(d,{placeholder:"请输入",modelValue:t(a).admin_name,"onUpdate:modelValue":l[0]||(l[0]=o=>t(a).admin_name=o),clearable:"",onKeyup:u(t(i),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,{class:"w-[280px]",label:"访问方式"},{default:n(()=>[e(T,{modelValue:t(a).type,"onUpdate:modelValue":l[1]||(l[1]=o=>t(a).type=o),placeholder:"请选择"},{default:n(()=>[(s(!0),v(H,null,W(t(E),(o,L)=>(s(),g(x,{key:L,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(p,{class:"w-[280px]",label:"来源IP"},{default:n(()=>[e(d,{placeholder:"请输入",modelValue:t(a).ip,"onUpdate:modelValue":l[2]||(l[2]=o=>t(a).ip=o),clearable:"",onKeyup:u(t(i),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,{label:"访问时间"},{default:n(()=>[e(I,{startTime:t(a).start_time,"onUpdate:startTime":l[3]||(l[3]=o=>t(a).start_time=o),endTime:t(a).end_time,"onUpdate:endTime":l[4]||(l[4]=o=>t(a).end_time=o)},null,8,["startTime","endTime"])]),_:1}),e(p,{class:"w-[280px]",label:"访问链接"},{default:n(()=>[e(d,{placeholder:"请输入",modelValue:t(a).url,"onUpdate:modelValue":l[5]||(l[5]=o=>t(a).url=o),clearable:"",onKeyup:u(t(i),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(p,null,{default:n(()=>[e(c,{type:"primary",onClick:t(i)},{default:n(()=>[...l[7]||(l[7]=[y("查询",-1)])]),_:1},8,["onClick"]),e(c,{onClick:t(k)},{default:n(()=>[...l[8]||(l[8]=[y("重置",-1)])]),_:1},8,["onClick"]),e(K,{class:"ml-2.5","fetch-fun":t(b),params:t(a),"page-size":t(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),X((s(),g(f,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[V("div",null,[e(U,{data:t(r).lists,size:"large"},{default:n(()=>[e(m,{label:"记录ID",prop:"id"}),e(m,{label:"操作",prop:"action","min-width":"120"}),e(m,{label:"管理员",prop:"admin_name","min-width":"120"}),e(m,{label:"管理员ID",prop:"admin_id","min-width":"120"}),e(m,{label:"访问链接",prop:"url","min-width":"160"}),e(m,{label:"访问方式",prop:"type"}),e(m,{label:"访问参数",prop:"params","min-width":"160"}),e(m,{label:"来源IP",prop:"ip","min-width":"160"}),e(m,{label:"日志时间",prop:"create_time","min-width":"180"})]),_:1},8,["data"])]),V("div",ee,[e(h,{modelValue:t(r),"onUpdate:modelValue":l[6]||(l[6]=o=>Y(r)?r.value=o:null),onChange:t(_)},null,8,["modelValue","onChange"])])]),_:1})),[[B,t(r).loading]])])}}});export{Se as default}; diff --git a/server/public/admin/assets/keyword_reply-CFhQ_k7m.js b/server/public/admin/assets/keyword_reply-BLQGh5QI.js similarity index 94% rename from server/public/admin/assets/keyword_reply-CFhQ_k7m.js rename to server/public/admin/assets/keyword_reply-BLQGh5QI.js index e24b983e..ced235f7 100644 --- a/server/public/admin/assets/keyword_reply-CFhQ_k7m.js +++ b/server/public/admin/assets/keyword_reply-BLQGh5QI.js @@ -1 +1 @@ -import{K as D,J as L,i as A,M as O,N as P,g as U,L as J}from"./element-plus-DFTWCWyi.js";import{_ as M}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as j,i as q}from"./index-Nt5zMHcc.js";import{d as z,o as F,e as G}from"./wx_oa-BOc4Brkk.js";import{u as H}from"./usePaging-VsbTxSU0.js";import{_ as I}from"./edit.vue_vue_type_script_setup_true_lang-Cama3jWw.js";import{f as K,ak as f,I as Q,a as t,aN as n,J as g,O as m,aP as W,G as v,H as X,A as w,n as h}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as Y,q as Z,n as ee}from"./@vue/reactivity-DiY1c2vO.js";import{Q as b}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const te={class:"flex justify-end mt-4"},Ge=K({__name:"keyword_reply",setup(oe){const p=Z(),d=ee(!1),k=w(()=>a=>{switch(a){case 1:return"全匹配";case 2:return"模糊匹配"}}),C=w(()=>a=>{switch(a){case 1:return"文本"}}),{pager:s,getLists:r}=H({fetchFun:z,params:{reply_type:2}}),V=async()=>{var a;d.value=!0,await h(),(a=p.value)==null||a.open("add",2)},E=async a=>{var e,c;d.value=!0,await h(),(e=p.value)==null||e.open("edit",2),(c=p.value)==null||c.getDetail(a)},$=async a=>{await q.confirm("确定要删除?"),await F({id:a}),r()},x=async a=>{try{await G({id:a}),r()}catch{r()}};return r(),(a,e)=>{const c=D,y=L,R=j,_=A,l=P,N=U,S=O,T=M,B=J;return f(),Q("div",null,[t(y,{class:"!border-none",shadow:"never"},{default:n(()=>[t(c,{type:"warning",title:"温馨提示:1.粉丝在公众号发送内容时,通过关键词可触发关键词回复;2.同时可启用多个关键词回复,有多条关键词匹配时优选选择排序靠前的一条",closable:!1,"show-icon":""})]),_:1}),t(y,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[g("div",null,[t(_,{class:"mb-4",type:"primary",onClick:e[0]||(e[0]=o=>V())},{icon:n(()=>[t(R,{name:"el-icon-Plus"})]),default:n(()=>[e[3]||(e[3]=m(" 新增 ",-1))]),_:1})]),W((f(),v(S,{size:"large",data:i(s).lists},{default:n(()=>[t(l,{label:"规则名称",prop:"name","min-width":"120"}),t(l,{label:"关键词",prop:"keyword","min-width":"120"}),t(l,{label:"匹配方式","min-width":"120"},{default:n(({row:o})=>[m(b(i(k)(o.matching_type)),1)]),_:1}),t(l,{label:"回复类型","min-width":"120"},{default:n(({row:o})=>[m(b(i(C)(o.content_type)),1)]),_:1}),t(l,{label:"状态","min-width":"120"},{default:n(({row:o})=>[t(N,{modelValue:o.status,"onUpdate:modelValue":u=>o.status=u,"active-value":1,"inactive-value":0,onChange:u=>x(o.id)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),t(l,{label:"排序",prop:"sort","min-width":"120"}),t(l,{label:"操作",width:"120",fixed:"right"},{default:n(({row:o})=>[t(_,{type:"primary",link:"",onClick:u=>E(o)},{default:n(()=>[...e[4]||(e[4]=[m(" 编辑 ",-1)])]),_:1},8,["onClick"]),t(_,{type:"danger",link:"",onClick:u=>$(o.id)},{default:n(()=>[...e[5]||(e[5]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[B,i(s).loading]]),g("div",te,[t(T,{modelValue:i(s),"onUpdate:modelValue":e[1]||(e[1]=o=>Y(s)?s.value=o:null),onChange:i(r)},null,8,["modelValue","onChange"])])]),_:1}),i(d)?(f(),v(I,{key:0,ref_key:"editRef",ref:p,onSuccess:i(r),onClose:e[2]||(e[2]=o=>d.value=!1)},null,8,["onSuccess"])):X("",!0)])}}});export{Ge as default}; +import{K as D,J as L,i as A,M as O,N as P,g as U,L as J}from"./element-plus-DFTWCWyi.js";import{_ as M}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as j,i as q}from"./index--WnM67ZH.js";import{d as z,o as F,e as G}from"./wx_oa-CN0ZaZdj.js";import{u as H}from"./usePaging-VsbTxSU0.js";import{_ as I}from"./edit.vue_vue_type_script_setup_true_lang-5vHPW8Lz.js";import{f as K,ak as f,I as Q,a as t,aN as n,J as g,O as m,aP as W,G as v,H as X,A as w,n as h}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as Y,q as Z,n as ee}from"./@vue/reactivity-DiY1c2vO.js";import{Q as b}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const te={class:"flex justify-end mt-4"},Ge=K({__name:"keyword_reply",setup(oe){const p=Z(),d=ee(!1),k=w(()=>a=>{switch(a){case 1:return"全匹配";case 2:return"模糊匹配"}}),C=w(()=>a=>{switch(a){case 1:return"文本"}}),{pager:s,getLists:r}=H({fetchFun:z,params:{reply_type:2}}),V=async()=>{var a;d.value=!0,await h(),(a=p.value)==null||a.open("add",2)},E=async a=>{var e,c;d.value=!0,await h(),(e=p.value)==null||e.open("edit",2),(c=p.value)==null||c.getDetail(a)},$=async a=>{await q.confirm("确定要删除?"),await F({id:a}),r()},x=async a=>{try{await G({id:a}),r()}catch{r()}};return r(),(a,e)=>{const c=D,y=L,R=j,_=A,l=P,N=U,S=O,T=M,B=J;return f(),Q("div",null,[t(y,{class:"!border-none",shadow:"never"},{default:n(()=>[t(c,{type:"warning",title:"温馨提示:1.粉丝在公众号发送内容时,通过关键词可触发关键词回复;2.同时可启用多个关键词回复,有多条关键词匹配时优选选择排序靠前的一条",closable:!1,"show-icon":""})]),_:1}),t(y,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[g("div",null,[t(_,{class:"mb-4",type:"primary",onClick:e[0]||(e[0]=o=>V())},{icon:n(()=>[t(R,{name:"el-icon-Plus"})]),default:n(()=>[e[3]||(e[3]=m(" 新增 ",-1))]),_:1})]),W((f(),v(S,{size:"large",data:i(s).lists},{default:n(()=>[t(l,{label:"规则名称",prop:"name","min-width":"120"}),t(l,{label:"关键词",prop:"keyword","min-width":"120"}),t(l,{label:"匹配方式","min-width":"120"},{default:n(({row:o})=>[m(b(i(k)(o.matching_type)),1)]),_:1}),t(l,{label:"回复类型","min-width":"120"},{default:n(({row:o})=>[m(b(i(C)(o.content_type)),1)]),_:1}),t(l,{label:"状态","min-width":"120"},{default:n(({row:o})=>[t(N,{modelValue:o.status,"onUpdate:modelValue":u=>o.status=u,"active-value":1,"inactive-value":0,onChange:u=>x(o.id)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),t(l,{label:"排序",prop:"sort","min-width":"120"}),t(l,{label:"操作",width:"120",fixed:"right"},{default:n(({row:o})=>[t(_,{type:"primary",link:"",onClick:u=>E(o)},{default:n(()=>[...e[4]||(e[4]=[m(" 编辑 ",-1)])]),_:1},8,["onClick"]),t(_,{type:"danger",link:"",onClick:u=>$(o.id)},{default:n(()=>[...e[5]||(e[5]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[B,i(s).loading]]),g("div",te,[t(T,{modelValue:i(s),"onUpdate:modelValue":e[1]||(e[1]=o=>Y(s)?s.value=o:null),onChange:i(r)},null,8,["modelValue","onChange"])])]),_:1}),i(d)?(f(),v(I,{key:0,ref_key:"editRef",ref:p,onSuccess:i(r),onClose:e[2]||(e[2]=o=>d.value=!1)},null,8,["onSuccess"])):X("",!0)])}}});export{Ge as default}; diff --git a/server/public/admin/assets/link-BT-af6Iu.js b/server/public/admin/assets/link-CF-Ql-TB.js similarity index 86% rename from server/public/admin/assets/link-BT-af6Iu.js rename to server/public/admin/assets/link-CF-Ql-TB.js index 69838360..c93cd69a 100644 --- a/server/public/admin/assets/link-BT-af6Iu.js +++ b/server/public/admin/assets/link-CF-Ql-TB.js @@ -1 +1 @@ -import{J as a}from"./element-plus-DFTWCWyi.js";import{_ as n}from"./picker-W7EVmvPL.js";import{f as l,ak as s,I as _,a as r,aN as u}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,r as c}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";const po=l({__name:"link",setup(d){const o=c({value1:{}});return(f,t)=>{const p=n,i=a;return s(),_("div",null,[r(i,{header:"基础使用",shadow:"never",class:"!border-none"},{default:u(()=>[r(p,{modelValue:m(o).value1,"onUpdate:modelValue":t[0]||(t[0]=e=>m(o).value1=e)},null,8,["modelValue"])]),_:1})])}}});export{po as default}; +import{J as a}from"./element-plus-DFTWCWyi.js";import{_ as n}from"./picker-Btcf59sz.js";import{f as l,ak as s,I as _,a as r,aN as u}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,r as c}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";const po=l({__name:"link",setup(d){const o=c({value1:{}});return(f,t)=>{const p=n,i=a;return s(),_("div",null,[r(i,{header:"基础使用",shadow:"never",class:"!border-none"},{default:u(()=>[r(p,{modelValue:m(o).value1,"onUpdate:modelValue":t[0]||(t[0]=e=>m(o).value1=e)},null,8,["modelValue"])]),_:1})])}}});export{po as default}; diff --git a/server/public/admin/assets/list-BtS9kEfd.js b/server/public/admin/assets/list-ClE78U4n.js similarity index 97% rename from server/public/admin/assets/list-BtS9kEfd.js rename to server/public/admin/assets/list-ClE78U4n.js index 0a3d8161..26c814c0 100644 --- a/server/public/admin/assets/list-BtS9kEfd.js +++ b/server/public/admin/assets/list-ClE78U4n.js @@ -1 +1 @@ -import{D as pe,B as me,C as ue,P as _e,Q as ce,i as fe,J as be,L as ye,M as ve,N as ge,T as Ve,G as we,I as ke,h as he,g as Ce,V as Ee}from"./element-plus-DFTWCWyi.js";import{_ as xe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{u as Ne,c as Se,i as b,_ as Le}from"./index-Nt5zMHcc.js";import{w as Ue}from"./@vue/runtime-dom-DDAG46FW.js";import{h as Ie,m as Pe,n as De,o as $e}from"./tcm-DCW3HTOw.js";import{u as Oe}from"./usePaging-VsbTxSU0.js";import{M as Ae}from"./index-afeGV-gc.js";import{f as F,b as Me,as as Re,ak as u,I as L,a as l,aN as a,O as s,aP as w,G as g,J as C,H as U,M as Be}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as J,r as T,n as E}from"./@vue/reactivity-DiY1c2vO.js";import{Q as x}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./medicine-D4btWglq.js";const Je={class:"prescription-library"},Te={class:"mt-4"},Fe={key:0},Ge={key:1,class:"text-gray-400"},ze={class:"flex mt-4 justify-end"},He={class:"w-full"},Ke=F({name:"prescriptionLibrary"}),je=F({...Ke,setup(qe){const _=T({prescription_name:"",formula_type:"",is_public:""}),c=E(!1),p=E("add"),N=E(!1),S=E(),r=T({id:0,prescription_name:"",formula_type:"主方",herbs:[],is_public:0}),G={prescription_name:[{required:!0,message:"请输入处方名称",trigger:"blur"}]},I=Ne(),z=[0,3],{pager:V,getLists:k,resetParams:H,resetPage:P}=Oe({fetchFun:Ie,params:_}),K=o=>{var e;return Number(o.creator_id)===Number((e=I.userInfo)==null?void 0:e.id)},j=()=>{const o=I.userInfo;if(!o)return!1;if(Number(o.root)===1)return!0;const e=Array.isArray(o.role_ids)?o.role_ids.map(y=>Number(y)):[];return z.some(y=>e.includes(y))},D=o=>j()||K(o),q=D,Q=()=>{r.herbs.push({name:"",dosage:0})},W=o=>{r.herbs.splice(o,1)},X=()=>{r.id=0,r.prescription_name="",r.formula_type="主方",r.herbs=[],r.is_public=0},Y=()=>{X(),p.value="add",c.value=!0},Z=o=>{p.value="view",r.id=o.id,r.prescription_name=o.prescription_name||"",r.formula_type=o.formula_type||"主方",r.herbs=o.herbs?JSON.parse(JSON.stringify(o.herbs)):[],r.is_public=o.is_public??0,c.value=!0},ee=o=>{p.value="edit",r.id=o.id,r.prescription_name=o.prescription_name||"",r.formula_type=o.formula_type||"主方",r.herbs=o.herbs?JSON.parse(JSON.stringify(o.herbs)):[],r.is_public=o.is_public??0,c.value=!0},le=async()=>{if(S.value){if(await S.value.validate(),!r.herbs||r.herbs.length===0){b.msgError("请至少添加一味药材");return}for(let o=0;o{await b.confirm("确定要删除该处方吗?"),await $e({id:o}),b.msgSuccess("删除成功"),k()};return Me(()=>{k()}),(o,e)=>{const y=ue,f=me,v=ce,$=_e,m=fe,O=pe,A=be,ae=Se,n=ge,M=Ve,R=ve,oe=xe,B=ke,ie=we,re=he,se=Ce,ne=Ee,h=Re("perms"),de=ye;return u(),L("div",Je,[l(A,{class:"!border-none",shadow:"never"},{default:a(()=>[l(O,{class:"mb-[-16px]",model:i(_),inline:""},{default:a(()=>[l(f,{class:"w-[280px]",label:"处方名称"},{default:a(()=>[l(y,{modelValue:i(_).prescription_name,"onUpdate:modelValue":e[0]||(e[0]=t=>i(_).prescription_name=t),placeholder:"请输入处方名称",clearable:"",onKeyup:Ue(i(P),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(f,{class:"w-[200px]",label:"处方类型"},{default:a(()=>[l($,{modelValue:i(_).formula_type,"onUpdate:modelValue":e[1]||(e[1]=t=>i(_).formula_type=t),placeholder:"全部",clearable:""},{default:a(()=>[l(v,{label:"全部",value:""}),l(v,{label:"主方",value:"主方"}),l(v,{label:"辅方",value:"辅方"})]),_:1},8,["modelValue"])]),_:1}),l(f,{class:"w-[200px]",label:"是否公开"},{default:a(()=>[l($,{modelValue:i(_).is_public,"onUpdate:modelValue":e[2]||(e[2]=t=>i(_).is_public=t),placeholder:"全部",clearable:""},{default:a(()=>[l(v,{label:"全部",value:""}),l(v,{label:"仅自己可见",value:0}),l(v,{label:"所有人可见",value:1})]),_:1},8,["modelValue"])]),_:1}),l(f,null,{default:a(()=>[l(m,{type:"primary",onClick:i(P)},{default:a(()=>[...e[9]||(e[9]=[s("查询",-1)])]),_:1},8,["onClick"]),l(m,{onClick:i(H)},{default:a(()=>[...e[10]||(e[10]=[s("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),w((u(),g(A,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[w((u(),g(m,{type:"primary",onClick:Y},{icon:a(()=>[l(ae,{name:"el-icon-Plus"})]),default:a(()=>[e[11]||(e[11]=s(" 新增处方 ",-1))]),_:1})),[[h,["wcf.prescription/add"]]]),C("div",Te,[l(R,{data:i(V).lists,size:"large"},{default:a(()=>[l(n,{label:"ID",prop:"id","min-width":"60"}),l(n,{label:"处方名称",prop:"prescription_name","min-width":"200","show-overflow-tooltip":""}),l(n,{label:"处方类型","min-width":"100"},{default:a(({row:t})=>[l(M,{type:t.formula_type==="辅方"?"warning":"primary",size:"small"},{default:a(()=>[s(x(t.formula_type||"主方"),1)]),_:2},1032,["type"])]),_:1}),l(n,{label:"药材数量","min-width":"100"},{default:a(({row:t})=>{var d;return[s(x(((d=t.herbs)==null?void 0:d.length)||0)+"味 ",1)]}),_:1}),l(n,{label:"药材明细","min-width":"300","show-overflow-tooltip":""},{default:a(({row:t})=>[t.herbs&&t.herbs.length>0?(u(),L("span",Fe,x(t.herbs.map(d=>`${d.name} ${d.dosage}g`).join("、")),1)):(u(),L("span",Ge,"暂无药材"))]),_:1}),l(n,{label:"是否公开","min-width":"120"},{default:a(({row:t})=>[l(M,{type:t.is_public?"success":"info"},{default:a(()=>[s(x(t.is_public?"所有人可见":"仅自己可见"),1)]),_:2},1032,["type"])]),_:1}),l(n,{label:"创建人",prop:"creator_name","min-width":"100"}),l(n,{label:"创建时间",prop:"create_time","min-width":"160"}),l(n,{label:"操作",width:"180",fixed:"right"},{default:a(({row:t})=>[w((u(),g(m,{type:"primary",link:"",onClick:d=>Z(t)},{default:a(()=>[...e[12]||(e[12]=[s(" 查看 ",-1)])]),_:1},8,["onClick"])),[[h,["wcf.prescription/read"]]]),D(t)?w((u(),g(m,{key:0,type:"primary",link:"",onClick:d=>ee(t)},{default:a(()=>[...e[13]||(e[13]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["wcf.prescription/edit"]]]):U("",!0),i(q)(t)?w((u(),g(m,{key:1,type:"danger",link:"",onClick:d=>te(t.id)},{default:a(()=>[...e[14]||(e[14]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["wcf.prescription/delete"]]]):U("",!0)]),_:1})]),_:1},8,["data"])]),C("div",ze,[l(oe,{modelValue:i(V),"onUpdate:modelValue":e[3]||(e[3]=t=>J(V)?V.value=t:null),onChange:i(k)},null,8,["modelValue","onChange"])])]),_:1})),[[de,i(V).loading]]),l(ne,{modelValue:i(c),"onUpdate:modelValue":e[8]||(e[8]=t=>J(c)?c.value=t:null),title:i(p)==="add"?"新增处方":i(p)==="edit"?"编辑处方":"查看处方",width:"800px","close-on-click-modal":!1},Be({default:a(()=>[l(O,{ref_key:"formRef",ref:S,model:i(r),rules:G,"label-width":"120px",disabled:i(p)==="view"},{default:a(()=>[l(f,{label:"处方名称",prop:"prescription_name"},{default:a(()=>[l(y,{modelValue:i(r).prescription_name,"onUpdate:modelValue":e[4]||(e[4]=t=>i(r).prescription_name=t),placeholder:"请输入处方名称,例如:六味地黄丸、补中益气汤",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(f,{label:"处方类型",prop:"formula_type"},{default:a(()=>[l(ie,{modelValue:i(r).formula_type,"onUpdate:modelValue":e[5]||(e[5]=t=>i(r).formula_type=t)},{default:a(()=>[l(B,{value:"主方"},{default:a(()=>[...e[15]||(e[15]=[s("主方",-1)])]),_:1}),l(B,{value:"辅方"},{default:a(()=>[...e[16]||(e[16]=[s("辅方",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(f,{label:"药材配方",prop:"herbs",required:""},{default:a(()=>[C("div",He,[l(m,{type:"primary",size:"small",onClick:Q,disabled:i(p)==="view"},{default:a(()=>[...e[17]||(e[17]=[s(" 添加药材 ",-1)])]),_:1},8,["disabled"]),l(R,{data:i(r).herbs,class:"mt-2",border:""},{default:a(()=>[l(n,{label:"序号",type:"index",width:"60"}),l(n,{label:"药材名称","min-width":"220"},{default:a(({row:t})=>[l(Ae,{modelValue:t.name,"onUpdate:modelValue":d=>t.name=d,disabled:i(p)==="view"},null,8,["modelValue","onUpdate:modelValue","disabled"])]),_:1}),l(n,{label:"剂量(克)","min-width":"150"},{default:a(({row:t})=>[l(re,{modelValue:t.dosage,"onUpdate:modelValue":d=>t.dosage=d,min:0,precision:1,step:.5,placeholder:"剂量",class:"w-full",disabled:i(p)==="view"},null,8,["modelValue","onUpdate:modelValue","disabled"])]),_:1}),i(p)!=="view"?(u(),g(n,{key:0,label:"操作",width:"80"},{default:a(({$index:t})=>[l(m,{type:"danger",link:"",onClick:d=>W(t)},{default:a(()=>[...e[18]||(e[18]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})):U("",!0)]),_:1},8,["data"])])]),_:1}),l(f,{label:"是否公开",prop:"is_public"},{default:a(()=>[l(se,{modelValue:i(r).is_public,"onUpdate:modelValue":e[6]||(e[6]=t=>i(r).is_public=t),"active-value":1,"inactive-value":0,"active-text":"所有人可见","inactive-text":"仅自己可见"},null,8,["modelValue"]),e[19]||(e[19]=C("div",{class:"text-xs text-gray-400 mt-1"}," 勾选后,所有医生都可以查看和使用此处方模板 ",-1))]),_:1})]),_:1},8,["model","disabled"])]),_:2},[i(p)!=="view"?{name:"footer",fn:a(()=>[l(m,{onClick:e[7]||(e[7]=t=>c.value=!1)},{default:a(()=>[...e[20]||(e[20]=[s("取消",-1)])]),_:1}),l(m,{type:"primary",onClick:le,loading:i(N)},{default:a(()=>[...e[21]||(e[21]=[s(" 确定 ",-1)])]),_:1},8,["loading"])]),key:"0"}:void 0]),1032,["modelValue","title"])])}}}),Ml=Le(je,[["__scopeId","data-v-a94d3e62"]]);export{Ml as default}; +import{D as pe,B as me,C as ue,P as _e,Q as ce,i as fe,J as be,L as ye,M as ve,N as ge,T as Ve,G as we,I as ke,h as he,g as Ce,V as Ee}from"./element-plus-DFTWCWyi.js";import{_ as xe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{u as Ne,c as Se,i as b,_ as Le}from"./index--WnM67ZH.js";import{w as Ue}from"./@vue/runtime-dom-DDAG46FW.js";import{h as Ie,m as Pe,n as De,o as $e}from"./tcm-DzAQc_oE.js";import{u as Oe}from"./usePaging-VsbTxSU0.js";import{M as Ae}from"./index-DgkrquIz.js";import{f as F,b as Me,as as Re,ak as u,I as L,a as l,aN as a,O as s,aP as w,G as g,J as C,H as U,M as Be}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,a as J,r as T,n as E}from"./@vue/reactivity-DiY1c2vO.js";import{Q as x}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./medicine-KRcHi5G1.js";const Je={class:"prescription-library"},Te={class:"mt-4"},Fe={key:0},Ge={key:1,class:"text-gray-400"},ze={class:"flex mt-4 justify-end"},He={class:"w-full"},Ke=F({name:"prescriptionLibrary"}),je=F({...Ke,setup(qe){const _=T({prescription_name:"",formula_type:"",is_public:""}),c=E(!1),p=E("add"),N=E(!1),S=E(),r=T({id:0,prescription_name:"",formula_type:"主方",herbs:[],is_public:0}),G={prescription_name:[{required:!0,message:"请输入处方名称",trigger:"blur"}]},I=Ne(),z=[0,3],{pager:V,getLists:k,resetParams:H,resetPage:P}=Oe({fetchFun:Ie,params:_}),K=o=>{var e;return Number(o.creator_id)===Number((e=I.userInfo)==null?void 0:e.id)},j=()=>{const o=I.userInfo;if(!o)return!1;if(Number(o.root)===1)return!0;const e=Array.isArray(o.role_ids)?o.role_ids.map(y=>Number(y)):[];return z.some(y=>e.includes(y))},D=o=>j()||K(o),q=D,Q=()=>{r.herbs.push({name:"",dosage:0})},W=o=>{r.herbs.splice(o,1)},X=()=>{r.id=0,r.prescription_name="",r.formula_type="主方",r.herbs=[],r.is_public=0},Y=()=>{X(),p.value="add",c.value=!0},Z=o=>{p.value="view",r.id=o.id,r.prescription_name=o.prescription_name||"",r.formula_type=o.formula_type||"主方",r.herbs=o.herbs?JSON.parse(JSON.stringify(o.herbs)):[],r.is_public=o.is_public??0,c.value=!0},ee=o=>{p.value="edit",r.id=o.id,r.prescription_name=o.prescription_name||"",r.formula_type=o.formula_type||"主方",r.herbs=o.herbs?JSON.parse(JSON.stringify(o.herbs)):[],r.is_public=o.is_public??0,c.value=!0},le=async()=>{if(S.value){if(await S.value.validate(),!r.herbs||r.herbs.length===0){b.msgError("请至少添加一味药材");return}for(let o=0;o{await b.confirm("确定要删除该处方吗?"),await $e({id:o}),b.msgSuccess("删除成功"),k()};return Me(()=>{k()}),(o,e)=>{const y=ue,f=me,v=ce,$=_e,m=fe,O=pe,A=be,ae=Se,n=ge,M=Ve,R=ve,oe=xe,B=ke,ie=we,re=he,se=Ce,ne=Ee,h=Re("perms"),de=ye;return u(),L("div",Je,[l(A,{class:"!border-none",shadow:"never"},{default:a(()=>[l(O,{class:"mb-[-16px]",model:i(_),inline:""},{default:a(()=>[l(f,{class:"w-[280px]",label:"处方名称"},{default:a(()=>[l(y,{modelValue:i(_).prescription_name,"onUpdate:modelValue":e[0]||(e[0]=t=>i(_).prescription_name=t),placeholder:"请输入处方名称",clearable:"",onKeyup:Ue(i(P),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(f,{class:"w-[200px]",label:"处方类型"},{default:a(()=>[l($,{modelValue:i(_).formula_type,"onUpdate:modelValue":e[1]||(e[1]=t=>i(_).formula_type=t),placeholder:"全部",clearable:""},{default:a(()=>[l(v,{label:"全部",value:""}),l(v,{label:"主方",value:"主方"}),l(v,{label:"辅方",value:"辅方"})]),_:1},8,["modelValue"])]),_:1}),l(f,{class:"w-[200px]",label:"是否公开"},{default:a(()=>[l($,{modelValue:i(_).is_public,"onUpdate:modelValue":e[2]||(e[2]=t=>i(_).is_public=t),placeholder:"全部",clearable:""},{default:a(()=>[l(v,{label:"全部",value:""}),l(v,{label:"仅自己可见",value:0}),l(v,{label:"所有人可见",value:1})]),_:1},8,["modelValue"])]),_:1}),l(f,null,{default:a(()=>[l(m,{type:"primary",onClick:i(P)},{default:a(()=>[...e[9]||(e[9]=[s("查询",-1)])]),_:1},8,["onClick"]),l(m,{onClick:i(H)},{default:a(()=>[...e[10]||(e[10]=[s("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),w((u(),g(A,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[w((u(),g(m,{type:"primary",onClick:Y},{icon:a(()=>[l(ae,{name:"el-icon-Plus"})]),default:a(()=>[e[11]||(e[11]=s(" 新增处方 ",-1))]),_:1})),[[h,["wcf.prescription/add"]]]),C("div",Te,[l(R,{data:i(V).lists,size:"large"},{default:a(()=>[l(n,{label:"ID",prop:"id","min-width":"60"}),l(n,{label:"处方名称",prop:"prescription_name","min-width":"200","show-overflow-tooltip":""}),l(n,{label:"处方类型","min-width":"100"},{default:a(({row:t})=>[l(M,{type:t.formula_type==="辅方"?"warning":"primary",size:"small"},{default:a(()=>[s(x(t.formula_type||"主方"),1)]),_:2},1032,["type"])]),_:1}),l(n,{label:"药材数量","min-width":"100"},{default:a(({row:t})=>{var d;return[s(x(((d=t.herbs)==null?void 0:d.length)||0)+"味 ",1)]}),_:1}),l(n,{label:"药材明细","min-width":"300","show-overflow-tooltip":""},{default:a(({row:t})=>[t.herbs&&t.herbs.length>0?(u(),L("span",Fe,x(t.herbs.map(d=>`${d.name} ${d.dosage}g`).join("、")),1)):(u(),L("span",Ge,"暂无药材"))]),_:1}),l(n,{label:"是否公开","min-width":"120"},{default:a(({row:t})=>[l(M,{type:t.is_public?"success":"info"},{default:a(()=>[s(x(t.is_public?"所有人可见":"仅自己可见"),1)]),_:2},1032,["type"])]),_:1}),l(n,{label:"创建人",prop:"creator_name","min-width":"100"}),l(n,{label:"创建时间",prop:"create_time","min-width":"160"}),l(n,{label:"操作",width:"180",fixed:"right"},{default:a(({row:t})=>[w((u(),g(m,{type:"primary",link:"",onClick:d=>Z(t)},{default:a(()=>[...e[12]||(e[12]=[s(" 查看 ",-1)])]),_:1},8,["onClick"])),[[h,["wcf.prescription/read"]]]),D(t)?w((u(),g(m,{key:0,type:"primary",link:"",onClick:d=>ee(t)},{default:a(()=>[...e[13]||(e[13]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["wcf.prescription/edit"]]]):U("",!0),i(q)(t)?w((u(),g(m,{key:1,type:"danger",link:"",onClick:d=>te(t.id)},{default:a(()=>[...e[14]||(e[14]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["wcf.prescription/delete"]]]):U("",!0)]),_:1})]),_:1},8,["data"])]),C("div",ze,[l(oe,{modelValue:i(V),"onUpdate:modelValue":e[3]||(e[3]=t=>J(V)?V.value=t:null),onChange:i(k)},null,8,["modelValue","onChange"])])]),_:1})),[[de,i(V).loading]]),l(ne,{modelValue:i(c),"onUpdate:modelValue":e[8]||(e[8]=t=>J(c)?c.value=t:null),title:i(p)==="add"?"新增处方":i(p)==="edit"?"编辑处方":"查看处方",width:"800px","close-on-click-modal":!1},Be({default:a(()=>[l(O,{ref_key:"formRef",ref:S,model:i(r),rules:G,"label-width":"120px",disabled:i(p)==="view"},{default:a(()=>[l(f,{label:"处方名称",prop:"prescription_name"},{default:a(()=>[l(y,{modelValue:i(r).prescription_name,"onUpdate:modelValue":e[4]||(e[4]=t=>i(r).prescription_name=t),placeholder:"请输入处方名称,例如:六味地黄丸、补中益气汤",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(f,{label:"处方类型",prop:"formula_type"},{default:a(()=>[l(ie,{modelValue:i(r).formula_type,"onUpdate:modelValue":e[5]||(e[5]=t=>i(r).formula_type=t)},{default:a(()=>[l(B,{value:"主方"},{default:a(()=>[...e[15]||(e[15]=[s("主方",-1)])]),_:1}),l(B,{value:"辅方"},{default:a(()=>[...e[16]||(e[16]=[s("辅方",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(f,{label:"药材配方",prop:"herbs",required:""},{default:a(()=>[C("div",He,[l(m,{type:"primary",size:"small",onClick:Q,disabled:i(p)==="view"},{default:a(()=>[...e[17]||(e[17]=[s(" 添加药材 ",-1)])]),_:1},8,["disabled"]),l(R,{data:i(r).herbs,class:"mt-2",border:""},{default:a(()=>[l(n,{label:"序号",type:"index",width:"60"}),l(n,{label:"药材名称","min-width":"220"},{default:a(({row:t})=>[l(Ae,{modelValue:t.name,"onUpdate:modelValue":d=>t.name=d,disabled:i(p)==="view"},null,8,["modelValue","onUpdate:modelValue","disabled"])]),_:1}),l(n,{label:"剂量(克)","min-width":"150"},{default:a(({row:t})=>[l(re,{modelValue:t.dosage,"onUpdate:modelValue":d=>t.dosage=d,min:0,precision:1,step:.5,placeholder:"剂量",class:"w-full",disabled:i(p)==="view"},null,8,["modelValue","onUpdate:modelValue","disabled"])]),_:1}),i(p)!=="view"?(u(),g(n,{key:0,label:"操作",width:"80"},{default:a(({$index:t})=>[l(m,{type:"danger",link:"",onClick:d=>W(t)},{default:a(()=>[...e[18]||(e[18]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})):U("",!0)]),_:1},8,["data"])])]),_:1}),l(f,{label:"是否公开",prop:"is_public"},{default:a(()=>[l(se,{modelValue:i(r).is_public,"onUpdate:modelValue":e[6]||(e[6]=t=>i(r).is_public=t),"active-value":1,"inactive-value":0,"active-text":"所有人可见","inactive-text":"仅自己可见"},null,8,["modelValue"]),e[19]||(e[19]=C("div",{class:"text-xs text-gray-400 mt-1"}," 勾选后,所有医生都可以查看和使用此处方模板 ",-1))]),_:1})]),_:1},8,["model","disabled"])]),_:2},[i(p)!=="view"?{name:"footer",fn:a(()=>[l(m,{onClick:e[7]||(e[7]=t=>c.value=!1)},{default:a(()=>[...e[20]||(e[20]=[s("取消",-1)])]),_:1}),l(m,{type:"primary",onClick:le,loading:i(N)},{default:a(()=>[...e[21]||(e[21]=[s(" 确定 ",-1)])]),_:1},8,["loading"])]),key:"0"}:void 0]),1032,["modelValue","title"])])}}}),Ml=Le(je,[["__scopeId","data-v-a94d3e62"]]);export{Ml as default}; diff --git a/server/public/admin/assets/list-VIYlBs2m.js b/server/public/admin/assets/list-Xx7Iy3U_.js similarity index 94% rename from server/public/admin/assets/list-VIYlBs2m.js rename to server/public/admin/assets/list-Xx7Iy3U_.js index 0093c103..6f3289b5 100644 --- a/server/public/admin/assets/list-VIYlBs2m.js +++ b/server/public/admin/assets/list-Xx7Iy3U_.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-CsfWrQHN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DCW3HTOw.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/patient-BKtZKzsB.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/index-4jHuPsCG.js","assets/@tencentcloud/chat-uikit-vue3-CLQ__Wr9.js","assets/@tencentcloud/uikit-base-component-vue3-YgTqL4da.js","assets/@tencentcloud/uikit-base-component-vue3-BkrtIuVN.css","assets/tuikit-atomicx-vue3-Dln8Zi6e.js","assets/@tencentcloud/chat-uikit-engine-zx802ozq.js","assets/@tencentcloud/chat-AC2Y2r2A.js","assets/tim-upload-plugin-HO4N4AW9.js","assets/tim-profanity-filter-plugin-Dn_Cf-mP.js","assets/@tencentcloud/tui-core-8M7p1XHw.js","assets/@tencentcloud/tuiroom-engine-js-Br9swJyU.js","assets/rtc-detect-Chu-fZvE.js","assets/tcplayer.js-qpFBCYzN.js","assets/tuikit-atomicx-vue3-Qhi9ezz1.css","assets/@tencentcloud/chat-uikit-vue3-Cj2eB1Uk.css","assets/@tencentcloud/call-uikit-vue-DB7vt9Ht.js","assets/@tencentcloud/call-engine-js-BX2W9Lhf.js","assets/index-BqRj5hg7.css"])))=>i.map(i=>d[i]); -import{_ as Z}from"./jspdf-BsthCvR5.js";import{m as Qt,l as Gt,d as Ht,S as Yt,C as jt,i as Jt,p as Kt,n as Xt,o as Zt,G as te,F as ee,V as se,M as ae,N as le,T as ie,L as ne,J as oe}from"./element-plus-DFTWCWyi.js";import{_ as de}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as re}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as pe,s as ut}from"./@vue/runtime-dom-DDAG46FW.js";import{u as ue}from"./usePaging-VsbTxSU0.js";import{a as _e,m as me,l as ce}from"./doctor-B7qEhSpt.js";import{L as fe,Y as ge,Z as ve}from"./tcm-DCW3HTOw.js";import{u as ye,i as v,_ as be}from"./index-Nt5zMHcc.js";import{i as ke,f as De}from"./diabetes-discovery-display-B_wmGXQJ.js";import{g as Ce}from"./weapp-BTxqP8mz.js";import{j as Ve,a7 as Ee,a8 as _t,b as mt,d as Se,e as ct,k as ft,x as we,O as he,G as tt,X as Te,l as $e}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as ze,w as Pe,b as Ie,d as qe,as as xe,ak as _,I as y,a,aN as i,J as e,O as p,G as g,H as f,aP as P,F as Le,P as et,A as gt}from"./@vue/runtime-core-C6bnekPw.js";import{a as U,y as s,r as Re,n as b}from"./@vue/reactivity-DiY1c2vO.js";import{Q as u}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ae={class:"appointment-list"},Be={class:"list-toolbar"},Ue={class:"tab-label tab-priority"},Me={class:"tab-label"},Oe={class:"tab-label"},Fe={class:"tab-label"},Ne={class:"tab-label"},We={class:"toolbar-actions"},Qe={class:"filter-bar"},Ge={class:"filter-group"},He={class:"filter-group"},Ye={class:"table-wrap"},je={class:"patient-cell"},Je={class:"patient-info"},Ke={class:"patient-name"},Xe={class:"patient-phone"},Ze={class:"patient-extra"},ts={class:"datetime-cell"},es={class:"date-text"},ss={class:"time-text"},as={class:"prescription-tags"},ls={class:"action-btns"},is={class:"flex justify-end py-4 px-4"},ns={key:0,class:"detail-content"},os={class:"detail-section"},ds={class:"detail-section-title"},rs={class:"detail-grid"},ps={class:"detail-item"},us={class:"detail-value"},_s={class:"detail-item"},ms={class:"detail-item"},cs={class:"detail-value"},fs={class:"detail-item"},gs={class:"detail-value"},vs={class:"detail-item"},ys={class:"detail-value"},bs={class:"detail-item"},ks={class:"detail-value"},Ds={class:"detail-section"},Cs={class:"detail-section-title"},Vs={class:"detail-grid"},Es={class:"detail-item"},Ss={class:"detail-value"},ws={class:"detail-item"},hs={class:"detail-value"},Ts={class:"detail-item"},$s={class:"detail-value"},zs={class:"detail-item"},Ps={class:"detail-value"},Is={class:"detail-item"},qs={class:"detail-value"},xs={class:"detail-item"},Ls={class:"detail-value"},Rs={class:"detail-item"},As={class:"detail-value"},Bs={class:"detail-item"},Us={class:"detail-value"},Ms={class:"detail-item"},Os={class:"detail-value"},Fs={class:"detail-item"},Ns={class:"detail-value"},Ws={class:"detail-item"},Qs={class:"detail-value"},Gs={class:"detail-item"},Hs={class:"detail-value"},Ys={class:"detail-item"},js={class:"detail-value"},Js={class:"detail-item"},Ks={class:"detail-value"},Xs={class:"detail-item"},Zs={class:"detail-value"},ta={class:"detail-item"},ea={class:"detail-value"},sa={key:0,class:"detail-section"},aa={class:"detail-section-title"},la={class:"detail-grid"},ia={key:0,class:"detail-item"},na={class:"detail-value"},oa={key:1,class:"detail-item"},da={class:"detail-value"},ra={key:2,class:"detail-item detail-item-full"},pa={class:"detail-value"},ua={key:3,class:"detail-item detail-item-full"},_a={class:"detail-value"},ma={key:1,class:"detail-section"},ca={class:"detail-section-title"},fa={class:"detail-grid"},ga={key:0,class:"detail-item"},va={class:"detail-value"},ya={key:1,class:"detail-item"},ba={class:"detail-value"},ka={key:2,class:"detail-item detail-item-full"},Da={class:"detail-value"},Ca={key:3,class:"detail-item detail-item-full"},Va={class:"detail-value"},Ea={class:"detail-section"},Sa={class:"detail-remark"},wa={class:"qrcode-content"},ha={key:0,class:"qrcode-loading"},Ta={key:1,class:"qrcode-success"},$a={class:"qrcode-image-wrap"},za=["src"],Pa={class:"qrcode-info"},Ia={class:"qrcode-patient"},qa={key:2,class:"qrcode-error"},xa=2e4,La=ze({__name:"list",setup(Ra){const vt=et(()=>Z(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),yt=et(()=>Z(()=>import("./index-5vSbbrqK.js"),__vite__mapDeps([90,1,2,3,4,5,6,7,8,9,10,11,12,13,14,91,92,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,93,94,15,95,96]))),bt=et(()=>Z(()=>import("./index-4jHuPsCG.js"),__vite__mapDeps([99,1,2,3,4,5,6,7,8,9,10,11,12,13,14,53,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,86,15,100,101,102,103,104,105,106,107,108,58,59,60,109,110,111,112,113,78,114,115,116]))),st=ye(),kt=gt(()=>st.userInfo),Dt=l=>!l||l.length<11?l:l.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),Ct=gt(()=>{const l=kt.value.role_id;return Array.isArray(l)?!l.includes(1)&&!l.includes(2):l!==1&&l!==2}),r=Re({patient_name:"",doctor_name:"",status:"",start_date:"",end_date:"",date_preset:"today",diagnosis_confirmed:"",include_status_counts:0}),M=b("1"),x=b(!1),S=b({1:0,2:0,3:0,4:0}),{pager:V,getLists:at,resetPage:Vt}=ue({fetchFun:_e,params:r,firstLoading:!0});Pe(()=>[r.start_date,r.end_date],([l,t])=>{if(!r.date_preset)return;const o=new Date,c=I=>String(I).padStart(2,"0"),m=I=>`${I.getFullYear()}-${c(I.getMonth()+1)}-${c(I.getDate())}`,w=m(o),T=new Date(o);T.setDate(T.getDate()-1);const k=m(T),h=new Date(o);h.setDate(h.getDate()-2);const G=m(h),R=new Date(o);R.setDate(R.getDate()+1);const E=m(R),A=new Date(o);A.setDate(A.getDate()+2);const X=m(A),$=r.date_preset,C=$==="yesterday"?k:$==="day_before"?G:$==="today"?w:$==="tomorrow"?E:X;(l||"").split(" ")[0]!==C&&(r.date_preset="")});const Et=l=>{l==="all"?r.status="":r.status=Number(l),Vt()};let O=null;const D=async l=>{const t=(l==null?void 0:l.silent)===!0;r.include_status_counts=1;try{await at({silent:t});const o=V.extend,c=o==null?void 0:o.status_count;if(c)for(const m of[1,2,3,4]){const w=c[m]??c[String(m)];typeof w=="number"&&(S.value[m]=w)}}catch(o){if(!t)throw o}finally{r.include_status_counts=0}},St=l=>{l==="customDate"?x.value=!0:l==="reset"&&$t()},wt=()=>{r.date_preset="",x.value=!1,V.page=1,D()},ht=()=>{V.page=1,D()},Tt=l=>{const t=String(l||"");if(!t){r.date_preset="",r.start_date="",r.end_date="",D();return}const o=new Date,c=T=>String(T).padStart(2,"0");let m;t==="yesterday"?(m=new Date(o),m.setDate(m.getDate()-1)):t==="day_before"?(m=new Date(o),m.setDate(m.getDate()-2)):t==="today"?m=o:t==="tomorrow"?(m=new Date(o),m.setDate(m.getDate()+1)):(m=new Date(o),m.setDate(m.getDate()+2));const w=`${m.getFullYear()}-${c(m.getMonth()+1)}-${c(m.getDate())}`;r.date_preset=t,r.start_date=w,r.end_date=w,V.page=1,D()},lt=()=>{V.page=1,D()},$t=()=>{M.value="1",r.patient_name="",r.doctor_name="",r.date_preset="today",r.diagnosis_confirmed="";const l=new Date,t=o=>String(o).padStart(2,"0");r.start_date=`${l.getFullYear()}-${t(l.getMonth()+1)}-${t(l.getDate())}`,r.end_date=r.start_date,r.status=1,V.page=1,D()},H=b(!1),d=b(null),zt=b([]),Pt=b([]),It=b([]),qt=b([]),F=(l,t)=>{if(!t)return"-";const o=l.find(c=>c.value===t);return o?o.name:t},xt=l=>(Array.isArray(l)?l:typeof l=="string"?l.split(/[,,、]/):[]).map(o=>F(qt.value,o.trim())).filter(Boolean).join("、")||"-",Y=b(),j=b(),it=b(),L=b(!1),N=b(!1),W=b(""),Q=b(null),Lt=(l,t)=>{switch(l){case"edit":ot(t);break;case"viewCase":Mt(t);break;case"complete":nt(t);break;case"chat":dt(t);break;case"qrcode":J(t);break;case"prescription":rt(t);break;case"cancel":Rt(t);break}},Rt=async l=>{try{await v.confirm("确定要取消该挂号吗?"),await me({id:l.id}),v.msgSuccess("取消成功"),D()}catch{}},nt=async l=>{try{await v.confirm("确认患者已就诊完成?"),await ce({id:l.id}),v.msgSuccess("操作成功"),D()}catch{}},ot=l=>{var t;if(!l.patient_id){v.msgWarning("该预约没有关联诊单信息");return}(t=Y.value)==null||t.open("edit",l.patient_id)},At=l=>{ot(l)},dt=async l=>{var t;if(!l.patient_id){v.msgWarning("患者信息不完整");return}if(!l.diagnosis_id&&!l.id){v.msgWarning("预约信息不完整,无法发起聊天");return}try{const o=await fe({patient_id:l.patient_id,diagnosis_id:l.diagnosis_id||l.id});console.log("获取聊天签名成功:",o),(t=it.value)==null||t.open({patientId:l.patient_id,patientName:l.patient_name,diagnosisId:l.diagnosis_id||l.id,signatureData:o})}catch(o){console.error("获取聊天签名失败:",o),v.msgError(o.message||"获取聊天签名失败")}},J=async l=>{if(!l.patient_id){v.msgWarning("患者信息不完整");return}Q.value=l,L.value=!0,N.value=!0,W.value="";try{const t=await Ce();if(!(t!=null&&t.app_id)){v.msgError("小程序未配置,请先配置小程序信息"),L.value=!1;return}const o=st.userInfo,c=await ge({diagnosis_id:l.doctor_id||"",patient_id:l.patient_id,share_user_id:(o==null?void 0:o.id)||"",mini_program_path:"pages/login/login"});c!=null&&c.qrcode_url?W.value=c.qrcode_url:v.msgError("二维码生成失败")}catch(t){console.error("生成小程序二维码失败:",t),v.msgError((t==null?void 0:t.msg)||"生成二维码失败,请重试")}finally{N.value=!1}},Bt=()=>{var l,t;D(),(t=(l=Y.value)==null?void 0:l.refreshCaseList)==null||t.call(l)};function Ut(l){return(l==null?void 0:l.prescription_audit_status)===1&&Number(l==null?void 0:l.prescription_void_status)!==1?"查看":"开方"}const rt=l=>{var t;if(!l.diagnosis_id&&!l.patient_id){v.msgWarning("该预约缺少诊单信息,请先编辑患者");return}(t=j.value)==null||t.open(l)},Mt=async l=>{var t;if(!l.id){v.msgWarning("预约信息不完整");return}try{const o=await ve({appointment_id:l.id});o!=null&&o.id?(t=j.value)==null||t.openById(o.id):v.msgWarning("该预约暂无病历记录,请先开方")}catch(o){v.msgError((o==null?void 0:o.msg)||"获取病历失败")}},Ot=()=>{Q.value&&J(Q.value)},K=new Date,pt=l=>String(l).padStart(2,"0");return r.start_date=`${K.getFullYear()}-${pt(K.getMonth()+1)}-${pt(K.getDate())}`,r.end_date=r.start_date,r.status=1,Ie(()=>{D(),O=setInterval(()=>{D({silent:!0})},xa)}),qe(()=>{O!==null&&(clearInterval(O),O=null)}),(l,t)=>{const o=Ht,c=Yt,m=Gt,w=Qt,T=jt,k=Jt,h=Zt,G=Xt,R=Kt,E=ee,A=te,X=re,$=se,C=le,z=ie,I=ae,Ft=de,Nt=oe,q=xe("perms"),Wt=ne;return _(),y("div",Ae,[a(Nt,{class:"list-card !border-none",shadow:"never"},{default:i(()=>[e("div",Be,[a(w,{modelValue:s(M),"onUpdate:modelValue":t[0]||(t[0]=n=>U(M)?M.value=n:null),onTabChange:Et,class:"list-tabs"},{default:i(()=>[a(m,{name:"1"},{label:i(()=>[e("span",Ue,[a(o,null,{default:i(()=>[a(s(Ve))]),_:1}),t[16]||(t[16]=p("待接诊",-1)),s(S)[1]?(_(),g(c,{key:0,value:s(S)[1],class:"tab-badge tab-badge-success"},null,8,["value"])):f("",!0)])]),_:1}),a(m,{name:"all"},{label:i(()=>[e("span",Me,[a(o,null,{default:i(()=>[a(s(Ee))]),_:1}),t[17]||(t[17]=p("全部",-1))])]),_:1}),a(m,{name:"4"},{label:i(()=>[e("span",Oe,[a(o,null,{default:i(()=>[a(s(_t))]),_:1}),t[18]||(t[18]=p("已过号",-1)),s(S)[4]?(_(),g(c,{key:0,value:s(S)[4],class:"tab-badge tab-badge-danger"},null,8,["value"])):f("",!0)])]),_:1}),a(m,{name:"2"},{label:i(()=>[e("span",Fe,[a(o,null,{default:i(()=>[a(s(mt))]),_:1}),t[19]||(t[19]=p("已取消",-1)),s(S)[2]?(_(),g(c,{key:0,value:s(S)[2],class:"tab-badge tab-badge-info"},null,8,["value"])):f("",!0)])]),_:1}),a(m,{name:"3"},{label:i(()=>[e("span",Ne,[a(o,null,{default:i(()=>[a(s(Se))]),_:1}),t[20]||(t[20]=p("已完成",-1)),s(S)[3]?(_(),g(c,{key:0,value:s(S)[3],class:"tab-badge tab-badge-primary"},null,8,["value"])):f("",!0)])]),_:1})]),_:1},8,["modelValue"]),e("div",We,[a(T,{modelValue:s(r).patient_name,"onUpdate:modelValue":t[1]||(t[1]=n=>s(r).patient_name=n),placeholder:"患者姓名",clearable:"",size:"small",class:"action-input",onKeyup:pe(lt,["enter"])},null,8,["modelValue"]),a(k,{type:"primary",size:"small",onClick:lt},{default:i(()=>[...t[21]||(t[21]=[p("查询",-1)])]),_:1}),a(R,{trigger:"click",onCommand:St},{dropdown:i(()=>[a(G,null,{default:i(()=>[s(Ct)?(_(),g(h,{key:0,class:"dropdown-item-with-input",onClick:t[4]||(t[4]=ut(()=>{},["stop"]))},{default:i(()=>[t[23]||(t[23]=e("span",{class:"dropdown-label"},"医生",-1)),a(T,{modelValue:s(r).doctor_name,"onUpdate:modelValue":t[2]||(t[2]=n=>s(r).doctor_name=n),placeholder:"医生",size:"small",class:"dropdown-input",onClick:t[3]||(t[3]=ut(()=>{},["stop"]))},null,8,["modelValue"])]),_:1})):f("",!0),a(h,{command:"customDate",divided:""},{default:i(()=>[a(o,null,{default:i(()=>[a(s(ft))]),_:1}),t[24]||(t[24]=p(" 自定义日期 ",-1))]),_:1}),a(h,{command:"reset"},{default:i(()=>[a(o,null,{default:i(()=>[a(s(we))]),_:1}),t[25]||(t[25]=p(" 重置 ",-1))]),_:1})]),_:1})]),default:i(()=>[a(k,{size:"small"},{default:i(()=>[t[22]||(t[22]=p("更多",-1)),a(o,{class:"el-icon--right"},{default:i(()=>[a(s(ct))]),_:1})]),_:1})]),_:1})])]),e("div",Qe,[e("div",Ge,[t[32]||(t[32]=e("span",{class:"filter-label"},"日期",-1)),a(A,{modelValue:s(r).date_preset,"onUpdate:modelValue":t[5]||(t[5]=n=>s(r).date_preset=n),size:"small",onChange:Tt,class:"filter-radio"},{default:i(()=>[a(E,{value:"yesterday"},{default:i(()=>[...t[26]||(t[26]=[p("昨天挂号",-1)])]),_:1}),a(E,{value:"day_before"},{default:i(()=>[...t[27]||(t[27]=[p("前天挂号",-1)])]),_:1}),a(E,{value:"today"},{default:i(()=>[...t[28]||(t[28]=[p("当天挂号",-1)])]),_:1}),a(E,{value:"tomorrow"},{default:i(()=>[...t[29]||(t[29]=[p("明天挂号",-1)])]),_:1}),a(E,{value:"day_after"},{default:i(()=>[...t[30]||(t[30]=[p("后天挂号",-1)])]),_:1}),a(E,{value:""},{default:i(()=>[...t[31]||(t[31]=[p("不限",-1)])]),_:1})]),_:1},8,["modelValue"])]),e("div",He,[t[36]||(t[36]=e("span",{class:"filter-label"},"确认诊单",-1)),a(A,{modelValue:s(r).diagnosis_confirmed,"onUpdate:modelValue":t[6]||(t[6]=n=>s(r).diagnosis_confirmed=n),size:"small",onChange:ht,class:"filter-radio"},{default:i(()=>[a(E,{value:""},{default:i(()=>[...t[33]||(t[33]=[p("全部",-1)])]),_:1}),a(E,{value:"1"},{default:i(()=>[...t[34]||(t[34]=[p("已确认",-1)])]),_:1}),a(E,{value:"0"},{default:i(()=>[...t[35]||(t[35]=[p("未确认",-1)])]),_:1})]),_:1},8,["modelValue"])])]),a($,{modelValue:s(x),"onUpdate:modelValue":t[10]||(t[10]=n=>U(x)?x.value=n:null),title:"自定义日期",width:"400px","append-to-body":"","close-on-click-modal":!0},{footer:i(()=>[a(k,{onClick:t[9]||(t[9]=n=>x.value=!1)},{default:i(()=>[...t[37]||(t[37]=[p("取消",-1)])]),_:1}),a(k,{type:"primary",onClick:wt},{default:i(()=>[...t[38]||(t[38]=[p("确定",-1)])]),_:1})]),default:i(()=>[a(X,{startTime:s(r).start_date,"onUpdate:startTime":t[7]||(t[7]=n=>s(r).start_date=n),endTime:s(r).end_date,"onUpdate:endTime":t[8]||(t[8]=n=>s(r).end_date=n)},null,8,["startTime","endTime"])]),_:1},8,["modelValue"]),e("div",Ye,[P((_(),g(I,{data:s(V).lists,size:"default",class:"appointment-table"},{default:i(()=>[a(C,{label:"ID",prop:"id",width:"72",align:"center"}),a(C,{label:"患者信息","min-width":"140"},{default:i(({row:n})=>[e("div",je,[e("div",Je,[e("div",Ke,u(n.patient_name),1),e("div",Xe,u(Dt(n.patient_phone)),1),e("div",Ze,u([n.gender===1?"男":n.gender===0?"女":"",n.age!=null?n.age+"岁":"",n.height!=null?n.height+"cm":"",n.weight!=null?n.weight+"kg":""].filter(Boolean).join(" ")||"-"),1)])])]),_:1}),a(C,{label:"医生",prop:"doctor_name",width:"90","show-overflow-tooltip":""}),a(C,{label:"预约时间","min-width":"120"},{default:i(({row:n})=>[e("div",ts,[e("div",es,u(n.appointment_date),1),e("div",ss,u(n.appointment_time),1)])]),_:1}),a(C,{label:"助理",prop:"assistant_name",width:"100","show-overflow-tooltip":""},{default:i(({row:n})=>[p(u(n.assistant_name||"—"),1)]),_:1}),a(C,{label:"确认诊单",width:"90",align:"center"},{default:i(({row:n})=>[n.diagnosis_confirmed?(_(),g(z,{key:0,type:"success",size:"small",effect:"plain"},{default:i(()=>[...t[39]||(t[39]=[p("已确认",-1)])]),_:1})):(_(),g(z,{key:1,type:"warning",size:"small",effect:"plain"},{default:i(()=>[...t[40]||(t[40]=[p("未确认",-1)])]),_:1}))]),_:1}),a(C,{label:"开方",width:"120",align:"center"},{default:i(({row:n})=>[e("div",as,[n.has_prescription?(_(),g(z,{key:0,type:"success",size:"small",effect:"plain"},{default:i(()=>[...t[41]||(t[41]=[p("已开方",-1)])]),_:1})):(_(),g(z,{key:1,type:"info",size:"small",effect:"plain"},{default:i(()=>[...t[42]||(t[42]=[p("未开方",-1)])]),_:1})),n.has_prescription&&n.prescription_is_system_auto===1?(_(),g(z,{key:2,type:"warning",size:"small",effect:"plain"},{default:i(()=>[...t[43]||(t[43]=[p(" 系统代开 ",-1)])]),_:1})):f("",!0)])]),_:1}),a(C,{label:"状态",width:"90",align:"center"},{default:i(({row:n})=>[a(z,{type:n.status===1?"success":n.status===2?"info":n.status===3?"primary":"danger",size:"small",effect:"light",round:""},{default:i(()=>[p(u(n.status_desc),1)]),_:2},1032,["type"])]),_:1}),a(C,{label:"备注",prop:"remark","min-width":"120","show-overflow-tooltip":""}),a(C,{label:"操作",width:"380",fixed:"right",align:"left"},{default:i(({row:n})=>[e("div",ls,[P((_(),g(k,{type:"primary",link:"",size:"small",onClick:B=>At(n)},{default:i(()=>[...t[44]||(t[44]=[p(" 编辑患者 ",-1)])]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/edit"]]]),n.status!==3?(_(),y(Le,{key:0},[P((_(),g(k,{type:"warning",link:"",size:"small",onClick:B=>J(n),class:"action-qrcode"},{default:i(()=>[a(o,null,{default:i(()=>[a(s(he))]),_:1}),t[45]||(t[45]=p(" 视频二维码 ",-1))]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/videoQr"]]]),P((_(),g(k,{type:"primary",link:"",size:"small",onClick:B=>dt(n)},{default:i(()=>[...t[46]||(t[46]=[p(" 通话 ",-1)])]),_:1},8,["onClick"])),[[q,["doctor.appointment/prescription"]]]),P((_(),g(k,{type:"success",link:"",size:"small",onClick:B=>nt(n)},{default:i(()=>[...t[47]||(t[47]=[p(" 完成 ",-1)])]),_:1},8,["onClick"])),[[q,["doctor.appointment/complete"]]])],64)):f("",!0),P((_(),g(k,{type:"primary",link:"",size:"small",onClick:B=>rt(n)},{default:i(()=>[p(u(Ut(n)),1)]),_:2},1032,["onClick"])),[[q,["tcm.diagnosis/kaifang"]]]),a(R,{trigger:"click",onCommand:B=>Lt(B,n),placement:"bottom-end"},{dropdown:i(()=>[a(G,null,{default:i(()=>[P((_(),g(h,{command:"viewCase"},{default:i(()=>[a(o,null,{default:i(()=>[a(s(tt))]),_:1}),t[49]||(t[49]=p(" 病历 ",-1))]),_:1})),[[q,["tcm.diagnosis/kaifang"]]]),n.status===1?P((_(),g(h,{key:0,command:"cancel",divided:""},{default:i(()=>[a(o,null,{default:i(()=>[a(s(mt))]),_:1}),t[50]||(t[50]=e("span",{class:"text-danger"},"取消挂号",-1))]),_:1})),[[q,["doctor.appointment/cancel"]]]):f("",!0)]),_:2},1024)]),default:i(()=>[a(k,{type:"info",link:"",size:"small"},{default:i(()=>[t[48]||(t[48]=p(" 更多 ",-1)),a(o,{class:"el-icon--right"},{default:i(()=>[a(s(ct))]),_:1})]),_:1})]),_:2},1032,["onCommand"])])]),_:1})]),_:1},8,["data"])),[[Wt,s(V).loading]]),e("div",is,[a(Ft,{modelValue:s(V),"onUpdate:modelValue":t[11]||(t[11]=n=>U(V)?V.value=n:null),onChange:s(at)},null,8,["modelValue","onChange"])])])]),_:1}),a($,{modelValue:s(H),"onUpdate:modelValue":t[12]||(t[12]=n=>U(H)?H.value=n:null),title:"挂号详情",width:"720px",class:"detail-dialog","destroy-on-close":""},{default:i(()=>[s(d)?(_(),y("div",ns,[e("div",os,[e("div",ds,[a(o,null,{default:i(()=>[a(s(ft))]),_:1}),t[51]||(t[51]=p(" 预约信息 ",-1))]),e("div",rs,[e("div",ps,[t[52]||(t[52]=e("span",{class:"detail-label"},"挂号ID",-1)),e("span",us,u(s(d).id),1)]),e("div",_s,[t[53]||(t[53]=e("span",{class:"detail-label"},"状态",-1)),a(z,{type:s(d).status===1?"success":s(d).status===2?"info":s(d).status===3?"primary":"danger",size:"small",effect:"light"},{default:i(()=>[p(u(s(d).status_desc),1)]),_:1},8,["type"])]),e("div",ms,[t[54]||(t[54]=e("span",{class:"detail-label"},"医生",-1)),e("span",cs,u(s(d).doctor_name),1)]),e("div",fs,[t[55]||(t[55]=e("span",{class:"detail-label"},"预约时间",-1)),e("span",gs,u(s(d).appointment_date)+" "+u(s(d).appointment_time),1)]),e("div",vs,[t[56]||(t[56]=e("span",{class:"detail-label"},"时段",-1)),e("span",ys,u(s(d).period==="morning"?"上午":"下午"),1)]),e("div",bs,[t[57]||(t[57]=e("span",{class:"detail-label"},"预约类型",-1)),e("span",ks,u(s(d).appointment_type_desc),1)])])]),e("div",Ds,[e("div",Cs,[a(o,null,{default:i(()=>[a(s(Te))]),_:1}),t[58]||(t[58]=p(" 患者信息 ",-1))]),e("div",Vs,[e("div",Es,[t[59]||(t[59]=e("span",{class:"detail-label"},"姓名",-1)),e("span",Ss,u(s(d).patient_name||"-"),1)]),e("div",ws,[t[60]||(t[60]=e("span",{class:"detail-label"},"手机号",-1)),e("span",hs,u(s(d).phone||s(d).patient_phone||"-"),1)]),e("div",Ts,[t[61]||(t[61]=e("span",{class:"detail-label"},"身份证号",-1)),e("span",$s,u(s(d).id_card||"-"),1)]),e("div",zs,[t[62]||(t[62]=e("span",{class:"detail-label"},"性别",-1)),e("span",Ps,u(s(d).gender===1?"男":s(d).gender===0?"女":"-"),1)]),e("div",Is,[t[63]||(t[63]=e("span",{class:"detail-label"},"年龄",-1)),e("span",qs,u(s(d).age!=null?s(d).age+"岁":"-"),1)]),e("div",xs,[t[64]||(t[64]=e("span",{class:"detail-label"},"诊断日期",-1)),e("span",Ls,u(s(d).diagnosis_date||"-"),1)]),e("div",Rs,[t[65]||(t[65]=e("span",{class:"detail-label"},"婚姻状态",-1)),e("span",As,u(s(d).marital_status===0?"未婚":s(d).marital_status===1?"已婚":s(d).marital_status===2?"离异":"-"),1)]),e("div",Bs,[t[66]||(t[66]=e("span",{class:"detail-label"},"身高(cm)",-1)),e("span",Us,u(s(d).height??"-"),1)]),e("div",Ms,[t[67]||(t[67]=e("span",{class:"detail-label"},"体重(kg)",-1)),e("span",Os,u(s(d).weight??"-"),1)]),e("div",Fs,[t[68]||(t[68]=e("span",{class:"detail-label"},"地区",-1)),e("span",Ns,u(s(d).region||"-"),1)]),e("div",Ws,[t[69]||(t[69]=e("span",{class:"detail-label"},"收缩压(mmHg)",-1)),e("span",Qs,u(s(d).systolic_pressure??"-"),1)]),e("div",Gs,[t[70]||(t[70]=e("span",{class:"detail-label"},"舒张压(mmHg)",-1)),e("span",Hs,u(s(d).diastolic_pressure??"-"),1)]),e("div",Ys,[t[71]||(t[71]=e("span",{class:"detail-label"},"空腹血糖(mmol/L)",-1)),e("span",js,u(s(d).fasting_blood_sugar??"-"),1)]),e("div",Js,[t[72]||(t[72]=e("span",{class:"detail-label"},"诊断类型",-1)),e("span",Ks,u(F(s(zt),s(d).diagnosis_type)||"-"),1)]),e("div",Xs,[t[73]||(t[73]=e("span",{class:"detail-label"},"证型",-1)),e("span",Zs,u(F(s(Pt),s(d).syndrome_type)||"-"),1)]),e("div",ta,[t[74]||(t[74]=e("span",{class:"detail-label"},"糖尿病期数",-1)),e("span",ea,u(F(s(It),s(d).diabetes_type)||"-"),1)])])]),s(d).symptoms||s(d).local_hospital_name||s(d).past_history&&s(d).past_history.length?(_(),y("div",sa,[e("div",aa,[a(o,null,{default:i(()=>[a(s(tt))]),_:1}),t[75]||(t[75]=p(" 病史信息 ",-1))]),e("div",la,[s(ke)(s(d).diabetes_discovery_year)?(_(),y("div",ia,[t[76]||(t[76]=e("span",{class:"detail-label"},"发现糖尿病病史",-1)),e("span",na,u(s(De)(s(d).diabetes_discovery_year)),1)])):f("",!0),s(d).local_hospital_name?(_(),y("div",oa,[t[77]||(t[77]=e("span",{class:"detail-label"},"当地就诊医院",-1)),e("span",da,u(s(d).local_hospital_name),1)])):f("",!0),s(d).symptoms?(_(),y("div",ra,[t[78]||(t[78]=e("span",{class:"detail-label"},"症状补充",-1)),e("span",pa,u(s(d).symptoms),1)])):f("",!0),s(d).past_history&&s(d).past_history.length?(_(),y("div",ua,[t[79]||(t[79]=e("span",{class:"detail-label"},"既往史",-1)),e("span",_a,u(xt(s(d).past_history)),1)])):f("",!0)])])):f("",!0),s(d).tongue_coating||s(d).pulse||s(d).treatment_principle||s(d).prescription?(_(),y("div",ma,[e("div",ca,[a(o,null,{default:i(()=>[a(s(tt))]),_:1}),t[80]||(t[80]=p(" 诊断信息 ",-1))]),e("div",fa,[s(d).tongue_coating?(_(),y("div",ga,[t[81]||(t[81]=e("span",{class:"detail-label"},"舌苔",-1)),e("span",va,u(s(d).tongue_coating),1)])):f("",!0),s(d).pulse?(_(),y("div",ya,[t[82]||(t[82]=e("span",{class:"detail-label"},"脉象",-1)),e("span",ba,u(s(d).pulse),1)])):f("",!0),s(d).treatment_principle?(_(),y("div",ka,[t[83]||(t[83]=e("span",{class:"detail-label"},"治则",-1)),e("span",Da,u(s(d).treatment_principle),1)])):f("",!0),s(d).prescription?(_(),y("div",Ca,[t[84]||(t[84]=e("span",{class:"detail-label"},"处方",-1)),e("span",Va,u(s(d).prescription),1)])):f("",!0)])])):f("",!0),e("div",Ea,[t[85]||(t[85]=e("div",{class:"detail-section-title"},"备注",-1)),e("p",Sa,u(s(d).remark||"无"),1)])])):f("",!0)]),_:1},8,["modelValue"]),a(s(vt),{ref_key:"editRef",ref:Y,onSuccess:t[13]||(t[13]=()=>D({silent:!0}))},null,512),a(s(yt),{ref_key:"prescriptionRef",ref:j,onSuccess:Bt},null,512),a(s(bt),{ref_key:"chatDialogRef",ref:it},null,512),a($,{modelValue:s(L),"onUpdate:modelValue":t[15]||(t[15]=n=>U(L)?L.value=n:null),title:"小程序二维码",width:"380px","close-on-click-modal":!1,class:"qrcode-dialog"},{footer:i(()=>[a(k,{onClick:t[14]||(t[14]=n=>L.value=!1)},{default:i(()=>[...t[90]||(t[90]=[p("关闭",-1)])]),_:1}),s(N)?f("",!0):(_(),g(k,{key:0,type:"primary",onClick:Ot},{default:i(()=>[...t[91]||(t[91]=[p(" 重新生成 ",-1)])]),_:1}))]),default:i(()=>{var n;return[e("div",wa,[s(N)?(_(),y("div",ha,[a(o,{class:"is-loading",size:48},{default:i(()=>[a(s($e))]),_:1}),t[86]||(t[86]=e("div",{class:"qrcode-loading-text"},"生成中...",-1))])):s(W)?(_(),y("div",Ta,[e("div",$a,[e("img",{src:s(W),alt:"小程序二维码",class:"qrcode-image"},null,8,za)]),e("div",Pa,[e("div",Ia,"患者:"+u((n=s(Q))==null?void 0:n.patient_name),1),t[87]||(t[87]=e("div",{class:"qrcode-tip"},"请使用微信扫描二维码",-1)),t[88]||(t[88]=e("div",{class:"qrcode-path"},"pages/login/login",-1))])])):(_(),y("div",qa,[a(o,{size:40},{default:i(()=>[a(s(_t))]),_:1}),t[89]||(t[89]=e("div",null,"生成失败,请重试",-1))]))])]}),_:1},8,["modelValue"])])}}}),hl=be(La,[["__scopeId","data-v-6d7279ec"]]);export{hl as default}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DiacXhqZ.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DzAQc_oE.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/patient-BNjmKCvA.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/index-Cs5gux7p.js","assets/@tencentcloud/chat-uikit-vue3-CLQ__Wr9.js","assets/@tencentcloud/uikit-base-component-vue3-YgTqL4da.js","assets/@tencentcloud/uikit-base-component-vue3-BkrtIuVN.css","assets/tuikit-atomicx-vue3-Dln8Zi6e.js","assets/@tencentcloud/chat-uikit-engine-zx802ozq.js","assets/@tencentcloud/chat-AC2Y2r2A.js","assets/tim-upload-plugin-HO4N4AW9.js","assets/tim-profanity-filter-plugin-Dn_Cf-mP.js","assets/@tencentcloud/tui-core-8M7p1XHw.js","assets/@tencentcloud/tuiroom-engine-js-Br9swJyU.js","assets/rtc-detect-Chu-fZvE.js","assets/tcplayer.js-qpFBCYzN.js","assets/tuikit-atomicx-vue3-Qhi9ezz1.css","assets/@tencentcloud/chat-uikit-vue3-Cj2eB1Uk.css","assets/@tencentcloud/call-uikit-vue-DB7vt9Ht.js","assets/@tencentcloud/call-engine-js-BX2W9Lhf.js","assets/index-BqRj5hg7.css"])))=>i.map(i=>d[i]); +import{_ as Z}from"./jspdf-BsthCvR5.js";import{m as Qt,l as Gt,d as Ht,S as Yt,C as jt,i as Jt,p as Kt,n as Xt,o as Zt,G as te,F as ee,V as se,M as ae,N as le,T as ie,L as ne,J as oe}from"./element-plus-DFTWCWyi.js";import{_ as de}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as re}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as pe,s as ut}from"./@vue/runtime-dom-DDAG46FW.js";import{u as ue}from"./usePaging-VsbTxSU0.js";import{a as _e,m as me,l as ce}from"./doctor-BlvK2TEo.js";import{L as fe,Y as ge,Z as ve}from"./tcm-DzAQc_oE.js";import{u as ye,i as v,_ as be}from"./index--WnM67ZH.js";import{i as ke,f as De}from"./diabetes-discovery-display-B_wmGXQJ.js";import{g as Ce}from"./weapp-zf27P1tb.js";import{j as Ve,a7 as Ee,a8 as _t,b as mt,d as Se,e as ct,k as ft,x as we,O as he,G as tt,X as Te,l as $e}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as ze,w as Pe,b as Ie,d as qe,as as xe,ak as _,I as y,a,aN as i,J as e,O as p,G as g,H as f,aP as P,F as Le,P as et,A as gt}from"./@vue/runtime-core-C6bnekPw.js";import{a as U,y as s,r as Re,n as b}from"./@vue/reactivity-DiY1c2vO.js";import{Q as u}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ae={class:"appointment-list"},Be={class:"list-toolbar"},Ue={class:"tab-label tab-priority"},Me={class:"tab-label"},Oe={class:"tab-label"},Fe={class:"tab-label"},Ne={class:"tab-label"},We={class:"toolbar-actions"},Qe={class:"filter-bar"},Ge={class:"filter-group"},He={class:"filter-group"},Ye={class:"table-wrap"},je={class:"patient-cell"},Je={class:"patient-info"},Ke={class:"patient-name"},Xe={class:"patient-phone"},Ze={class:"patient-extra"},ts={class:"datetime-cell"},es={class:"date-text"},ss={class:"time-text"},as={class:"prescription-tags"},ls={class:"action-btns"},is={class:"flex justify-end py-4 px-4"},ns={key:0,class:"detail-content"},os={class:"detail-section"},ds={class:"detail-section-title"},rs={class:"detail-grid"},ps={class:"detail-item"},us={class:"detail-value"},_s={class:"detail-item"},ms={class:"detail-item"},cs={class:"detail-value"},fs={class:"detail-item"},gs={class:"detail-value"},vs={class:"detail-item"},ys={class:"detail-value"},bs={class:"detail-item"},ks={class:"detail-value"},Ds={class:"detail-section"},Cs={class:"detail-section-title"},Vs={class:"detail-grid"},Es={class:"detail-item"},Ss={class:"detail-value"},ws={class:"detail-item"},hs={class:"detail-value"},Ts={class:"detail-item"},$s={class:"detail-value"},zs={class:"detail-item"},Ps={class:"detail-value"},Is={class:"detail-item"},qs={class:"detail-value"},xs={class:"detail-item"},Ls={class:"detail-value"},Rs={class:"detail-item"},As={class:"detail-value"},Bs={class:"detail-item"},Us={class:"detail-value"},Ms={class:"detail-item"},Os={class:"detail-value"},Fs={class:"detail-item"},Ns={class:"detail-value"},Ws={class:"detail-item"},Qs={class:"detail-value"},Gs={class:"detail-item"},Hs={class:"detail-value"},Ys={class:"detail-item"},js={class:"detail-value"},Js={class:"detail-item"},Ks={class:"detail-value"},Xs={class:"detail-item"},Zs={class:"detail-value"},ta={class:"detail-item"},ea={class:"detail-value"},sa={key:0,class:"detail-section"},aa={class:"detail-section-title"},la={class:"detail-grid"},ia={key:0,class:"detail-item"},na={class:"detail-value"},oa={key:1,class:"detail-item"},da={class:"detail-value"},ra={key:2,class:"detail-item detail-item-full"},pa={class:"detail-value"},ua={key:3,class:"detail-item detail-item-full"},_a={class:"detail-value"},ma={key:1,class:"detail-section"},ca={class:"detail-section-title"},fa={class:"detail-grid"},ga={key:0,class:"detail-item"},va={class:"detail-value"},ya={key:1,class:"detail-item"},ba={class:"detail-value"},ka={key:2,class:"detail-item detail-item-full"},Da={class:"detail-value"},Ca={key:3,class:"detail-item detail-item-full"},Va={class:"detail-value"},Ea={class:"detail-section"},Sa={class:"detail-remark"},wa={class:"qrcode-content"},ha={key:0,class:"qrcode-loading"},Ta={key:1,class:"qrcode-success"},$a={class:"qrcode-image-wrap"},za=["src"],Pa={class:"qrcode-info"},Ia={class:"qrcode-patient"},qa={key:2,class:"qrcode-error"},xa=2e4,La=ze({__name:"list",setup(Ra){const vt=et(()=>Z(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),yt=et(()=>Z(()=>import("./index-C5tKSXIA.js"),__vite__mapDeps([90,1,2,3,4,5,6,7,8,9,10,11,12,13,14,91,92,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,93,94,15,95,96]))),bt=et(()=>Z(()=>import("./index-Cs5gux7p.js"),__vite__mapDeps([99,1,2,3,4,5,6,7,8,9,10,11,12,13,14,53,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,86,15,100,101,102,103,104,105,106,107,108,58,59,60,109,110,111,112,113,78,114,115,116]))),st=ye(),kt=gt(()=>st.userInfo),Dt=l=>!l||l.length<11?l:l.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),Ct=gt(()=>{const l=kt.value.role_id;return Array.isArray(l)?!l.includes(1)&&!l.includes(2):l!==1&&l!==2}),r=Re({patient_name:"",doctor_name:"",status:"",start_date:"",end_date:"",date_preset:"today",diagnosis_confirmed:"",include_status_counts:0}),M=b("1"),x=b(!1),S=b({1:0,2:0,3:0,4:0}),{pager:V,getLists:at,resetPage:Vt}=ue({fetchFun:_e,params:r,firstLoading:!0});Pe(()=>[r.start_date,r.end_date],([l,t])=>{if(!r.date_preset)return;const o=new Date,c=I=>String(I).padStart(2,"0"),m=I=>`${I.getFullYear()}-${c(I.getMonth()+1)}-${c(I.getDate())}`,w=m(o),T=new Date(o);T.setDate(T.getDate()-1);const k=m(T),h=new Date(o);h.setDate(h.getDate()-2);const G=m(h),R=new Date(o);R.setDate(R.getDate()+1);const E=m(R),A=new Date(o);A.setDate(A.getDate()+2);const X=m(A),$=r.date_preset,C=$==="yesterday"?k:$==="day_before"?G:$==="today"?w:$==="tomorrow"?E:X;(l||"").split(" ")[0]!==C&&(r.date_preset="")});const Et=l=>{l==="all"?r.status="":r.status=Number(l),Vt()};let O=null;const D=async l=>{const t=(l==null?void 0:l.silent)===!0;r.include_status_counts=1;try{await at({silent:t});const o=V.extend,c=o==null?void 0:o.status_count;if(c)for(const m of[1,2,3,4]){const w=c[m]??c[String(m)];typeof w=="number"&&(S.value[m]=w)}}catch(o){if(!t)throw o}finally{r.include_status_counts=0}},St=l=>{l==="customDate"?x.value=!0:l==="reset"&&$t()},wt=()=>{r.date_preset="",x.value=!1,V.page=1,D()},ht=()=>{V.page=1,D()},Tt=l=>{const t=String(l||"");if(!t){r.date_preset="",r.start_date="",r.end_date="",D();return}const o=new Date,c=T=>String(T).padStart(2,"0");let m;t==="yesterday"?(m=new Date(o),m.setDate(m.getDate()-1)):t==="day_before"?(m=new Date(o),m.setDate(m.getDate()-2)):t==="today"?m=o:t==="tomorrow"?(m=new Date(o),m.setDate(m.getDate()+1)):(m=new Date(o),m.setDate(m.getDate()+2));const w=`${m.getFullYear()}-${c(m.getMonth()+1)}-${c(m.getDate())}`;r.date_preset=t,r.start_date=w,r.end_date=w,V.page=1,D()},lt=()=>{V.page=1,D()},$t=()=>{M.value="1",r.patient_name="",r.doctor_name="",r.date_preset="today",r.diagnosis_confirmed="";const l=new Date,t=o=>String(o).padStart(2,"0");r.start_date=`${l.getFullYear()}-${t(l.getMonth()+1)}-${t(l.getDate())}`,r.end_date=r.start_date,r.status=1,V.page=1,D()},H=b(!1),d=b(null),zt=b([]),Pt=b([]),It=b([]),qt=b([]),F=(l,t)=>{if(!t)return"-";const o=l.find(c=>c.value===t);return o?o.name:t},xt=l=>(Array.isArray(l)?l:typeof l=="string"?l.split(/[,,、]/):[]).map(o=>F(qt.value,o.trim())).filter(Boolean).join("、")||"-",Y=b(),j=b(),it=b(),L=b(!1),N=b(!1),W=b(""),Q=b(null),Lt=(l,t)=>{switch(l){case"edit":ot(t);break;case"viewCase":Mt(t);break;case"complete":nt(t);break;case"chat":dt(t);break;case"qrcode":J(t);break;case"prescription":rt(t);break;case"cancel":Rt(t);break}},Rt=async l=>{try{await v.confirm("确定要取消该挂号吗?"),await me({id:l.id}),v.msgSuccess("取消成功"),D()}catch{}},nt=async l=>{try{await v.confirm("确认患者已就诊完成?"),await ce({id:l.id}),v.msgSuccess("操作成功"),D()}catch{}},ot=l=>{var t;if(!l.patient_id){v.msgWarning("该预约没有关联诊单信息");return}(t=Y.value)==null||t.open("edit",l.patient_id)},At=l=>{ot(l)},dt=async l=>{var t;if(!l.patient_id){v.msgWarning("患者信息不完整");return}if(!l.diagnosis_id&&!l.id){v.msgWarning("预约信息不完整,无法发起聊天");return}try{const o=await fe({patient_id:l.patient_id,diagnosis_id:l.diagnosis_id||l.id});console.log("获取聊天签名成功:",o),(t=it.value)==null||t.open({patientId:l.patient_id,patientName:l.patient_name,diagnosisId:l.diagnosis_id||l.id,signatureData:o})}catch(o){console.error("获取聊天签名失败:",o),v.msgError(o.message||"获取聊天签名失败")}},J=async l=>{if(!l.patient_id){v.msgWarning("患者信息不完整");return}Q.value=l,L.value=!0,N.value=!0,W.value="";try{const t=await Ce();if(!(t!=null&&t.app_id)){v.msgError("小程序未配置,请先配置小程序信息"),L.value=!1;return}const o=st.userInfo,c=await ge({diagnosis_id:l.doctor_id||"",patient_id:l.patient_id,share_user_id:(o==null?void 0:o.id)||"",mini_program_path:"pages/login/login"});c!=null&&c.qrcode_url?W.value=c.qrcode_url:v.msgError("二维码生成失败")}catch(t){console.error("生成小程序二维码失败:",t),v.msgError((t==null?void 0:t.msg)||"生成二维码失败,请重试")}finally{N.value=!1}},Bt=()=>{var l,t;D(),(t=(l=Y.value)==null?void 0:l.refreshCaseList)==null||t.call(l)};function Ut(l){return(l==null?void 0:l.prescription_audit_status)===1&&Number(l==null?void 0:l.prescription_void_status)!==1?"查看":"开方"}const rt=l=>{var t;if(!l.diagnosis_id&&!l.patient_id){v.msgWarning("该预约缺少诊单信息,请先编辑患者");return}(t=j.value)==null||t.open(l)},Mt=async l=>{var t;if(!l.id){v.msgWarning("预约信息不完整");return}try{const o=await ve({appointment_id:l.id});o!=null&&o.id?(t=j.value)==null||t.openById(o.id):v.msgWarning("该预约暂无病历记录,请先开方")}catch(o){v.msgError((o==null?void 0:o.msg)||"获取病历失败")}},Ot=()=>{Q.value&&J(Q.value)},K=new Date,pt=l=>String(l).padStart(2,"0");return r.start_date=`${K.getFullYear()}-${pt(K.getMonth()+1)}-${pt(K.getDate())}`,r.end_date=r.start_date,r.status=1,Ie(()=>{D(),O=setInterval(()=>{D({silent:!0})},xa)}),qe(()=>{O!==null&&(clearInterval(O),O=null)}),(l,t)=>{const o=Ht,c=Yt,m=Gt,w=Qt,T=jt,k=Jt,h=Zt,G=Xt,R=Kt,E=ee,A=te,X=re,$=se,C=le,z=ie,I=ae,Ft=de,Nt=oe,q=xe("perms"),Wt=ne;return _(),y("div",Ae,[a(Nt,{class:"list-card !border-none",shadow:"never"},{default:i(()=>[e("div",Be,[a(w,{modelValue:s(M),"onUpdate:modelValue":t[0]||(t[0]=n=>U(M)?M.value=n:null),onTabChange:Et,class:"list-tabs"},{default:i(()=>[a(m,{name:"1"},{label:i(()=>[e("span",Ue,[a(o,null,{default:i(()=>[a(s(Ve))]),_:1}),t[16]||(t[16]=p("待接诊",-1)),s(S)[1]?(_(),g(c,{key:0,value:s(S)[1],class:"tab-badge tab-badge-success"},null,8,["value"])):f("",!0)])]),_:1}),a(m,{name:"all"},{label:i(()=>[e("span",Me,[a(o,null,{default:i(()=>[a(s(Ee))]),_:1}),t[17]||(t[17]=p("全部",-1))])]),_:1}),a(m,{name:"4"},{label:i(()=>[e("span",Oe,[a(o,null,{default:i(()=>[a(s(_t))]),_:1}),t[18]||(t[18]=p("已过号",-1)),s(S)[4]?(_(),g(c,{key:0,value:s(S)[4],class:"tab-badge tab-badge-danger"},null,8,["value"])):f("",!0)])]),_:1}),a(m,{name:"2"},{label:i(()=>[e("span",Fe,[a(o,null,{default:i(()=>[a(s(mt))]),_:1}),t[19]||(t[19]=p("已取消",-1)),s(S)[2]?(_(),g(c,{key:0,value:s(S)[2],class:"tab-badge tab-badge-info"},null,8,["value"])):f("",!0)])]),_:1}),a(m,{name:"3"},{label:i(()=>[e("span",Ne,[a(o,null,{default:i(()=>[a(s(Se))]),_:1}),t[20]||(t[20]=p("已完成",-1)),s(S)[3]?(_(),g(c,{key:0,value:s(S)[3],class:"tab-badge tab-badge-primary"},null,8,["value"])):f("",!0)])]),_:1})]),_:1},8,["modelValue"]),e("div",We,[a(T,{modelValue:s(r).patient_name,"onUpdate:modelValue":t[1]||(t[1]=n=>s(r).patient_name=n),placeholder:"患者姓名",clearable:"",size:"small",class:"action-input",onKeyup:pe(lt,["enter"])},null,8,["modelValue"]),a(k,{type:"primary",size:"small",onClick:lt},{default:i(()=>[...t[21]||(t[21]=[p("查询",-1)])]),_:1}),a(R,{trigger:"click",onCommand:St},{dropdown:i(()=>[a(G,null,{default:i(()=>[s(Ct)?(_(),g(h,{key:0,class:"dropdown-item-with-input",onClick:t[4]||(t[4]=ut(()=>{},["stop"]))},{default:i(()=>[t[23]||(t[23]=e("span",{class:"dropdown-label"},"医生",-1)),a(T,{modelValue:s(r).doctor_name,"onUpdate:modelValue":t[2]||(t[2]=n=>s(r).doctor_name=n),placeholder:"医生",size:"small",class:"dropdown-input",onClick:t[3]||(t[3]=ut(()=>{},["stop"]))},null,8,["modelValue"])]),_:1})):f("",!0),a(h,{command:"customDate",divided:""},{default:i(()=>[a(o,null,{default:i(()=>[a(s(ft))]),_:1}),t[24]||(t[24]=p(" 自定义日期 ",-1))]),_:1}),a(h,{command:"reset"},{default:i(()=>[a(o,null,{default:i(()=>[a(s(we))]),_:1}),t[25]||(t[25]=p(" 重置 ",-1))]),_:1})]),_:1})]),default:i(()=>[a(k,{size:"small"},{default:i(()=>[t[22]||(t[22]=p("更多",-1)),a(o,{class:"el-icon--right"},{default:i(()=>[a(s(ct))]),_:1})]),_:1})]),_:1})])]),e("div",Qe,[e("div",Ge,[t[32]||(t[32]=e("span",{class:"filter-label"},"日期",-1)),a(A,{modelValue:s(r).date_preset,"onUpdate:modelValue":t[5]||(t[5]=n=>s(r).date_preset=n),size:"small",onChange:Tt,class:"filter-radio"},{default:i(()=>[a(E,{value:"yesterday"},{default:i(()=>[...t[26]||(t[26]=[p("昨天挂号",-1)])]),_:1}),a(E,{value:"day_before"},{default:i(()=>[...t[27]||(t[27]=[p("前天挂号",-1)])]),_:1}),a(E,{value:"today"},{default:i(()=>[...t[28]||(t[28]=[p("当天挂号",-1)])]),_:1}),a(E,{value:"tomorrow"},{default:i(()=>[...t[29]||(t[29]=[p("明天挂号",-1)])]),_:1}),a(E,{value:"day_after"},{default:i(()=>[...t[30]||(t[30]=[p("后天挂号",-1)])]),_:1}),a(E,{value:""},{default:i(()=>[...t[31]||(t[31]=[p("不限",-1)])]),_:1})]),_:1},8,["modelValue"])]),e("div",He,[t[36]||(t[36]=e("span",{class:"filter-label"},"确认诊单",-1)),a(A,{modelValue:s(r).diagnosis_confirmed,"onUpdate:modelValue":t[6]||(t[6]=n=>s(r).diagnosis_confirmed=n),size:"small",onChange:ht,class:"filter-radio"},{default:i(()=>[a(E,{value:""},{default:i(()=>[...t[33]||(t[33]=[p("全部",-1)])]),_:1}),a(E,{value:"1"},{default:i(()=>[...t[34]||(t[34]=[p("已确认",-1)])]),_:1}),a(E,{value:"0"},{default:i(()=>[...t[35]||(t[35]=[p("未确认",-1)])]),_:1})]),_:1},8,["modelValue"])])]),a($,{modelValue:s(x),"onUpdate:modelValue":t[10]||(t[10]=n=>U(x)?x.value=n:null),title:"自定义日期",width:"400px","append-to-body":"","close-on-click-modal":!0},{footer:i(()=>[a(k,{onClick:t[9]||(t[9]=n=>x.value=!1)},{default:i(()=>[...t[37]||(t[37]=[p("取消",-1)])]),_:1}),a(k,{type:"primary",onClick:wt},{default:i(()=>[...t[38]||(t[38]=[p("确定",-1)])]),_:1})]),default:i(()=>[a(X,{startTime:s(r).start_date,"onUpdate:startTime":t[7]||(t[7]=n=>s(r).start_date=n),endTime:s(r).end_date,"onUpdate:endTime":t[8]||(t[8]=n=>s(r).end_date=n)},null,8,["startTime","endTime"])]),_:1},8,["modelValue"]),e("div",Ye,[P((_(),g(I,{data:s(V).lists,size:"default",class:"appointment-table"},{default:i(()=>[a(C,{label:"ID",prop:"id",width:"72",align:"center"}),a(C,{label:"患者信息","min-width":"140"},{default:i(({row:n})=>[e("div",je,[e("div",Je,[e("div",Ke,u(n.patient_name),1),e("div",Xe,u(Dt(n.patient_phone)),1),e("div",Ze,u([n.gender===1?"男":n.gender===0?"女":"",n.age!=null?n.age+"岁":"",n.height!=null?n.height+"cm":"",n.weight!=null?n.weight+"kg":""].filter(Boolean).join(" ")||"-"),1)])])]),_:1}),a(C,{label:"医生",prop:"doctor_name",width:"90","show-overflow-tooltip":""}),a(C,{label:"预约时间","min-width":"120"},{default:i(({row:n})=>[e("div",ts,[e("div",es,u(n.appointment_date),1),e("div",ss,u(n.appointment_time),1)])]),_:1}),a(C,{label:"助理",prop:"assistant_name",width:"100","show-overflow-tooltip":""},{default:i(({row:n})=>[p(u(n.assistant_name||"—"),1)]),_:1}),a(C,{label:"确认诊单",width:"90",align:"center"},{default:i(({row:n})=>[n.diagnosis_confirmed?(_(),g(z,{key:0,type:"success",size:"small",effect:"plain"},{default:i(()=>[...t[39]||(t[39]=[p("已确认",-1)])]),_:1})):(_(),g(z,{key:1,type:"warning",size:"small",effect:"plain"},{default:i(()=>[...t[40]||(t[40]=[p("未确认",-1)])]),_:1}))]),_:1}),a(C,{label:"开方",width:"120",align:"center"},{default:i(({row:n})=>[e("div",as,[n.has_prescription?(_(),g(z,{key:0,type:"success",size:"small",effect:"plain"},{default:i(()=>[...t[41]||(t[41]=[p("已开方",-1)])]),_:1})):(_(),g(z,{key:1,type:"info",size:"small",effect:"plain"},{default:i(()=>[...t[42]||(t[42]=[p("未开方",-1)])]),_:1})),n.has_prescription&&n.prescription_is_system_auto===1?(_(),g(z,{key:2,type:"warning",size:"small",effect:"plain"},{default:i(()=>[...t[43]||(t[43]=[p(" 系统代开 ",-1)])]),_:1})):f("",!0)])]),_:1}),a(C,{label:"状态",width:"90",align:"center"},{default:i(({row:n})=>[a(z,{type:n.status===1?"success":n.status===2?"info":n.status===3?"primary":"danger",size:"small",effect:"light",round:""},{default:i(()=>[p(u(n.status_desc),1)]),_:2},1032,["type"])]),_:1}),a(C,{label:"备注",prop:"remark","min-width":"120","show-overflow-tooltip":""}),a(C,{label:"操作",width:"380",fixed:"right",align:"left"},{default:i(({row:n})=>[e("div",ls,[P((_(),g(k,{type:"primary",link:"",size:"small",onClick:B=>At(n)},{default:i(()=>[...t[44]||(t[44]=[p(" 编辑患者 ",-1)])]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/edit"]]]),n.status!==3?(_(),y(Le,{key:0},[P((_(),g(k,{type:"warning",link:"",size:"small",onClick:B=>J(n),class:"action-qrcode"},{default:i(()=>[a(o,null,{default:i(()=>[a(s(he))]),_:1}),t[45]||(t[45]=p(" 视频二维码 ",-1))]),_:1},8,["onClick"])),[[q,["tcm.diagnosis/videoQr"]]]),P((_(),g(k,{type:"primary",link:"",size:"small",onClick:B=>dt(n)},{default:i(()=>[...t[46]||(t[46]=[p(" 通话 ",-1)])]),_:1},8,["onClick"])),[[q,["doctor.appointment/prescription"]]]),P((_(),g(k,{type:"success",link:"",size:"small",onClick:B=>nt(n)},{default:i(()=>[...t[47]||(t[47]=[p(" 完成 ",-1)])]),_:1},8,["onClick"])),[[q,["doctor.appointment/complete"]]])],64)):f("",!0),P((_(),g(k,{type:"primary",link:"",size:"small",onClick:B=>rt(n)},{default:i(()=>[p(u(Ut(n)),1)]),_:2},1032,["onClick"])),[[q,["tcm.diagnosis/kaifang"]]]),a(R,{trigger:"click",onCommand:B=>Lt(B,n),placement:"bottom-end"},{dropdown:i(()=>[a(G,null,{default:i(()=>[P((_(),g(h,{command:"viewCase"},{default:i(()=>[a(o,null,{default:i(()=>[a(s(tt))]),_:1}),t[49]||(t[49]=p(" 病历 ",-1))]),_:1})),[[q,["tcm.diagnosis/kaifang"]]]),n.status===1?P((_(),g(h,{key:0,command:"cancel",divided:""},{default:i(()=>[a(o,null,{default:i(()=>[a(s(mt))]),_:1}),t[50]||(t[50]=e("span",{class:"text-danger"},"取消挂号",-1))]),_:1})),[[q,["doctor.appointment/cancel"]]]):f("",!0)]),_:2},1024)]),default:i(()=>[a(k,{type:"info",link:"",size:"small"},{default:i(()=>[t[48]||(t[48]=p(" 更多 ",-1)),a(o,{class:"el-icon--right"},{default:i(()=>[a(s(ct))]),_:1})]),_:1})]),_:2},1032,["onCommand"])])]),_:1})]),_:1},8,["data"])),[[Wt,s(V).loading]]),e("div",is,[a(Ft,{modelValue:s(V),"onUpdate:modelValue":t[11]||(t[11]=n=>U(V)?V.value=n:null),onChange:s(at)},null,8,["modelValue","onChange"])])])]),_:1}),a($,{modelValue:s(H),"onUpdate:modelValue":t[12]||(t[12]=n=>U(H)?H.value=n:null),title:"挂号详情",width:"720px",class:"detail-dialog","destroy-on-close":""},{default:i(()=>[s(d)?(_(),y("div",ns,[e("div",os,[e("div",ds,[a(o,null,{default:i(()=>[a(s(ft))]),_:1}),t[51]||(t[51]=p(" 预约信息 ",-1))]),e("div",rs,[e("div",ps,[t[52]||(t[52]=e("span",{class:"detail-label"},"挂号ID",-1)),e("span",us,u(s(d).id),1)]),e("div",_s,[t[53]||(t[53]=e("span",{class:"detail-label"},"状态",-1)),a(z,{type:s(d).status===1?"success":s(d).status===2?"info":s(d).status===3?"primary":"danger",size:"small",effect:"light"},{default:i(()=>[p(u(s(d).status_desc),1)]),_:1},8,["type"])]),e("div",ms,[t[54]||(t[54]=e("span",{class:"detail-label"},"医生",-1)),e("span",cs,u(s(d).doctor_name),1)]),e("div",fs,[t[55]||(t[55]=e("span",{class:"detail-label"},"预约时间",-1)),e("span",gs,u(s(d).appointment_date)+" "+u(s(d).appointment_time),1)]),e("div",vs,[t[56]||(t[56]=e("span",{class:"detail-label"},"时段",-1)),e("span",ys,u(s(d).period==="morning"?"上午":"下午"),1)]),e("div",bs,[t[57]||(t[57]=e("span",{class:"detail-label"},"预约类型",-1)),e("span",ks,u(s(d).appointment_type_desc),1)])])]),e("div",Ds,[e("div",Cs,[a(o,null,{default:i(()=>[a(s(Te))]),_:1}),t[58]||(t[58]=p(" 患者信息 ",-1))]),e("div",Vs,[e("div",Es,[t[59]||(t[59]=e("span",{class:"detail-label"},"姓名",-1)),e("span",Ss,u(s(d).patient_name||"-"),1)]),e("div",ws,[t[60]||(t[60]=e("span",{class:"detail-label"},"手机号",-1)),e("span",hs,u(s(d).phone||s(d).patient_phone||"-"),1)]),e("div",Ts,[t[61]||(t[61]=e("span",{class:"detail-label"},"身份证号",-1)),e("span",$s,u(s(d).id_card||"-"),1)]),e("div",zs,[t[62]||(t[62]=e("span",{class:"detail-label"},"性别",-1)),e("span",Ps,u(s(d).gender===1?"男":s(d).gender===0?"女":"-"),1)]),e("div",Is,[t[63]||(t[63]=e("span",{class:"detail-label"},"年龄",-1)),e("span",qs,u(s(d).age!=null?s(d).age+"岁":"-"),1)]),e("div",xs,[t[64]||(t[64]=e("span",{class:"detail-label"},"诊断日期",-1)),e("span",Ls,u(s(d).diagnosis_date||"-"),1)]),e("div",Rs,[t[65]||(t[65]=e("span",{class:"detail-label"},"婚姻状态",-1)),e("span",As,u(s(d).marital_status===0?"未婚":s(d).marital_status===1?"已婚":s(d).marital_status===2?"离异":"-"),1)]),e("div",Bs,[t[66]||(t[66]=e("span",{class:"detail-label"},"身高(cm)",-1)),e("span",Us,u(s(d).height??"-"),1)]),e("div",Ms,[t[67]||(t[67]=e("span",{class:"detail-label"},"体重(kg)",-1)),e("span",Os,u(s(d).weight??"-"),1)]),e("div",Fs,[t[68]||(t[68]=e("span",{class:"detail-label"},"地区",-1)),e("span",Ns,u(s(d).region||"-"),1)]),e("div",Ws,[t[69]||(t[69]=e("span",{class:"detail-label"},"收缩压(mmHg)",-1)),e("span",Qs,u(s(d).systolic_pressure??"-"),1)]),e("div",Gs,[t[70]||(t[70]=e("span",{class:"detail-label"},"舒张压(mmHg)",-1)),e("span",Hs,u(s(d).diastolic_pressure??"-"),1)]),e("div",Ys,[t[71]||(t[71]=e("span",{class:"detail-label"},"空腹血糖(mmol/L)",-1)),e("span",js,u(s(d).fasting_blood_sugar??"-"),1)]),e("div",Js,[t[72]||(t[72]=e("span",{class:"detail-label"},"诊断类型",-1)),e("span",Ks,u(F(s(zt),s(d).diagnosis_type)||"-"),1)]),e("div",Xs,[t[73]||(t[73]=e("span",{class:"detail-label"},"证型",-1)),e("span",Zs,u(F(s(Pt),s(d).syndrome_type)||"-"),1)]),e("div",ta,[t[74]||(t[74]=e("span",{class:"detail-label"},"糖尿病期数",-1)),e("span",ea,u(F(s(It),s(d).diabetes_type)||"-"),1)])])]),s(d).symptoms||s(d).local_hospital_name||s(d).past_history&&s(d).past_history.length?(_(),y("div",sa,[e("div",aa,[a(o,null,{default:i(()=>[a(s(tt))]),_:1}),t[75]||(t[75]=p(" 病史信息 ",-1))]),e("div",la,[s(ke)(s(d).diabetes_discovery_year)?(_(),y("div",ia,[t[76]||(t[76]=e("span",{class:"detail-label"},"发现糖尿病病史",-1)),e("span",na,u(s(De)(s(d).diabetes_discovery_year)),1)])):f("",!0),s(d).local_hospital_name?(_(),y("div",oa,[t[77]||(t[77]=e("span",{class:"detail-label"},"当地就诊医院",-1)),e("span",da,u(s(d).local_hospital_name),1)])):f("",!0),s(d).symptoms?(_(),y("div",ra,[t[78]||(t[78]=e("span",{class:"detail-label"},"症状补充",-1)),e("span",pa,u(s(d).symptoms),1)])):f("",!0),s(d).past_history&&s(d).past_history.length?(_(),y("div",ua,[t[79]||(t[79]=e("span",{class:"detail-label"},"既往史",-1)),e("span",_a,u(xt(s(d).past_history)),1)])):f("",!0)])])):f("",!0),s(d).tongue_coating||s(d).pulse||s(d).treatment_principle||s(d).prescription?(_(),y("div",ma,[e("div",ca,[a(o,null,{default:i(()=>[a(s(tt))]),_:1}),t[80]||(t[80]=p(" 诊断信息 ",-1))]),e("div",fa,[s(d).tongue_coating?(_(),y("div",ga,[t[81]||(t[81]=e("span",{class:"detail-label"},"舌苔",-1)),e("span",va,u(s(d).tongue_coating),1)])):f("",!0),s(d).pulse?(_(),y("div",ya,[t[82]||(t[82]=e("span",{class:"detail-label"},"脉象",-1)),e("span",ba,u(s(d).pulse),1)])):f("",!0),s(d).treatment_principle?(_(),y("div",ka,[t[83]||(t[83]=e("span",{class:"detail-label"},"治则",-1)),e("span",Da,u(s(d).treatment_principle),1)])):f("",!0),s(d).prescription?(_(),y("div",Ca,[t[84]||(t[84]=e("span",{class:"detail-label"},"处方",-1)),e("span",Va,u(s(d).prescription),1)])):f("",!0)])])):f("",!0),e("div",Ea,[t[85]||(t[85]=e("div",{class:"detail-section-title"},"备注",-1)),e("p",Sa,u(s(d).remark||"无"),1)])])):f("",!0)]),_:1},8,["modelValue"]),a(s(vt),{ref_key:"editRef",ref:Y,onSuccess:t[13]||(t[13]=()=>D({silent:!0}))},null,512),a(s(yt),{ref_key:"prescriptionRef",ref:j,onSuccess:Bt},null,512),a(s(bt),{ref_key:"chatDialogRef",ref:it},null,512),a($,{modelValue:s(L),"onUpdate:modelValue":t[15]||(t[15]=n=>U(L)?L.value=n:null),title:"小程序二维码",width:"380px","close-on-click-modal":!1,class:"qrcode-dialog"},{footer:i(()=>[a(k,{onClick:t[14]||(t[14]=n=>L.value=!1)},{default:i(()=>[...t[90]||(t[90]=[p("关闭",-1)])]),_:1}),s(N)?f("",!0):(_(),g(k,{key:0,type:"primary",onClick:Ot},{default:i(()=>[...t[91]||(t[91]=[p(" 重新生成 ",-1)])]),_:1}))]),default:i(()=>{var n;return[e("div",wa,[s(N)?(_(),y("div",ha,[a(o,{class:"is-loading",size:48},{default:i(()=>[a(s($e))]),_:1}),t[86]||(t[86]=e("div",{class:"qrcode-loading-text"},"生成中...",-1))])):s(W)?(_(),y("div",Ta,[e("div",$a,[e("img",{src:s(W),alt:"小程序二维码",class:"qrcode-image"},null,8,za)]),e("div",Pa,[e("div",Ia,"患者:"+u((n=s(Q))==null?void 0:n.patient_name),1),t[87]||(t[87]=e("div",{class:"qrcode-tip"},"请使用微信扫描二维码",-1)),t[88]||(t[88]=e("div",{class:"qrcode-path"},"pages/login/login",-1))])])):(_(),y("div",qa,[a(o,{size:40},{default:i(()=>[a(s(_t))]),_:1}),t[89]||(t[89]=e("div",null,"生成失败,请重试",-1))]))])]}),_:1},8,["modelValue"])])}}}),hl=be(La,[["__scopeId","data-v-6d7279ec"]]);export{hl as default}; diff --git a/server/public/admin/assets/login-Caw1ZFnq.js b/server/public/admin/assets/login-BK5Sfx9J.js similarity index 98% rename from server/public/admin/assets/login-Caw1ZFnq.js rename to server/public/admin/assets/login-BK5Sfx9J.js index bbfd3494..b5f5baa7 100644 --- a/server/public/admin/assets/login-Caw1ZFnq.js +++ b/server/public/admin/assets/login-BK5Sfx9J.js @@ -1 +1 @@ -import{d as Z,F as ee,G as oe,B as te,C as ne,D as re,H as ae,i as se,E as ie}from"./element-plus-DFTWCWyi.js";import{e as ce,u as le,f as N,A as B,a as de,h as ue,c as me,P as pe,_ as _e}from"./index-Nt5zMHcc.js";import{w as $}from"./@vue/runtime-dom-DDAG46FW.js";import{l as j}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as we}from"./useLockFn-X4Qce5KO.js";import{_ as fe}from"./footer.vue_vue_type_script_setup_true_lang-D3-XFFKz.js";import{u as ge,a as xe}from"./vue-router-QlpZ4wdW.js";import{f as ve,w as he,n as E,b as ke,ak as l,I as d,J as a,a as t,aN as r,F as C,O as V,H as U,A as ye}from"./@vue/runtime-core-C6bnekPw.js";import{Q as be}from"./@vue/shared-mAAVTE9n.js";import{y as c,q as P,n as _,r as Ee}from"./@vue/reactivity-DiY1c2vO.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ce={class:"login flex flex-col"},Ve={class:"flex-1 flex items-center justify-center"},Ue={class:"login-card flex rounded-md overflow-hidden"},We={class:"flex-1 h-full hidden md:inline-block"},qe={class:"login-form bg-body flex flex-col justify-center px-10 py-10 md:w-[420px] w-[380px] flex-none mx-auto"},Le={class:"text-center text-3xl font-medium mb-8"},Re={key:0,class:"text-center py-10"},ze={key:0,class:"flex justify-center mb-6"},Ie={class:"mb-5"},Se={class:"wxwork-qrcode-wrap"},Ae={key:0,class:"text-center py-10"},Fe={key:1,id:"wxwork_qrcode_container",class:"wxwork-qrcode"},Ne=ve({__name:"login",setup(Be){const W=P(),q=P(),D=ce(),L=le(),h=ge(),w=xe(),f=_(!1),R=ye(()=>D.config),s=Ee({account:"",password:""}),K={account:[{required:!0,message:"请输入账号",trigger:["blur"]}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}]},m=_("account"),z=_(!1),g=_({corp_id:"",agent_id:""}),x=_(!1),k=_(!1),M=()=>/wxwork/i.test(navigator.userAgent),I=()=>window.location.origin+window.location.pathname,T=()=>{var o;if(!s.password)return(o=W.value)==null?void 0:o.focus();y()},y=async()=>{var e;await((e=q.value)==null?void 0:e.validate()),N.set(B,{remember:f.value,account:f.value?s.account:""});const o=await L.login(s);if(o.is_paw===0){w.push("/change-password");return}if(o.need_bind_work_wechat){w.push("/bind-work-wechat");return}S()},{isLock:G,lockFn:H}=we(y),S=()=>{const{query:{redirect:o}}=h,e=typeof o=="string"?o:pe.INDEX;w.push(e)},J=async o=>{x.value=!0;try{const e=await L.workWechatLogin(o);if(e.is_paw===0){w.push("/change-password");return}if(e.need_bind_work_wechat){w.push("/bind-work-wechat");return}S()}catch(e){console.error("企业微信登录失败:",e),ie.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"企业微信登录失败,请使用账号密码登录"),x.value=!1,m.value="account"}},O=async()=>{if(!g.value.corp_id)return;k.value=!0,window.WwLogin||await new Promise((e,p)=>{const i=document.createElement("script");i.src="https://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js",i.onload=()=>e(),i.onerror=()=>p(new Error("加载企业微信JS失败")),document.head.appendChild(i)}),await E(),k.value=!1,await E();const o=encodeURIComponent(I());new window.WwLogin({id:"wxwork_qrcode_container",appid:g.value.corp_id,agentid:g.value.agent_id,redirect_uri:o,lang:"zh",state:"admin_login",href:"",self_redirect:!1})};return he(m,o=>{o==="wxwork"&&E(()=>O())}),ke(async()=>{const o=N.get(B);o!=null&&o.remember&&(f.value=o.remember,s.account=o.account);const e=new URLSearchParams(window.location.search),p=e.get("code"),i=e.get("state");if(p&&i==="admin_login"){const n=window.location.pathname+(h.query.redirect?`?redirect=${h.query.redirect}`:"");window.history.replaceState({},"",n),J(p);return}try{const n=await de();if(n!=null&&n.enabled&&(z.value=!0,g.value={corp_id:n.corp_id,agent_id:n.agent_id},M())){const b=encodeURIComponent(I()),v=`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${n.corp_id}&redirect_uri=${b}&response_type=code&scope=snsapi_privateinfo&agentid=${n.agent_id}&state=admin_login#wechat_redirect`;window.location.href=v,x.value=!0;return}}catch(n){console.warn("获取企业微信配置失败:",n)}}),(o,e)=>{const p=ue,i=Z,n=ee,b=oe,v=me,A=ne,F=te,Q=re,X=ae,Y=se;return l(),d("div",Ce,[a("div",Ve,[a("div",Ue,[a("div",We,[t(p,{src:R.value.login_image,width:400,height:"100%"},null,8,["src"])]),a("div",qe,[a("div",Le,be(R.value.web_name),1),x.value?(l(),d("div",Re,[t(i,{class:"is-loading mb-4",size:40,color:"var(--el-color-primary)"},{default:r(()=>[t(c(j))]),_:1}),e[4]||(e[4]=a("div",{class:"text-gray-500"},"企业微信授权登录中...",-1))])):(l(),d(C,{key:1},[z.value?(l(),d("div",ze,[t(b,{modelValue:m.value,"onUpdate:modelValue":e[0]||(e[0]=u=>m.value=u),size:"large"},{default:r(()=>[t(n,{value:"account"},{default:r(()=>[...e[5]||(e[5]=[V("账号登录",-1)])]),_:1}),t(n,{value:"wxwork"},{default:r(()=>[...e[6]||(e[6]=[V("企业微信",-1)])]),_:1})]),_:1},8,["modelValue"])])):U("",!0),m.value==="account"?(l(),d(C,{key:1},[t(Q,{ref_key:"formRef",ref:q,model:c(s),size:"large",rules:K},{default:r(()=>[t(F,{prop:"account"},{default:r(()=>[t(A,{modelValue:c(s).account,"onUpdate:modelValue":e[1]||(e[1]=u=>c(s).account=u),placeholder:"请输入账号",onKeyup:$(T,["enter"])},{prepend:r(()=>[t(v,{name:"el-icon-User",size:"16"})]),_:1},8,["modelValue"])]),_:1}),t(F,{prop:"password"},{default:r(()=>[t(A,{ref_key:"passwordRef",ref:W,modelValue:c(s).password,"onUpdate:modelValue":e[2]||(e[2]=u=>c(s).password=u),"show-password":"",placeholder:"请输入密码",onKeyup:$(y,["enter"])},{prepend:r(()=>[t(v,{name:"el-icon-Lock",size:"16"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"]),a("div",Ie,[t(X,{modelValue:f.value,"onUpdate:modelValue":e[3]||(e[3]=u=>f.value=u),label:"记住账号"},null,8,["modelValue"])]),t(Y,{type:"primary",size:"large",loading:c(G),onClick:c(H)},{default:r(()=>[...e[7]||(e[7]=[V(" 登录 ",-1)])]),_:1},8,["loading","onClick"])],64)):U("",!0),m.value==="wxwork"?(l(),d(C,{key:2},[a("div",Se,[k.value?(l(),d("div",Ae,[t(i,{class:"is-loading",size:32,color:"var(--el-color-primary)"},{default:r(()=>[t(c(j))]),_:1}),e[8]||(e[8]=a("div",{class:"mt-2 text-gray-400 text-sm"},"加载企业微信扫码...",-1))])):(l(),d("div",Fe))]),e[9]||(e[9]=a("div",{class:"text-center text-sm text-gray-400 mt-4"}," 请使用企业微信扫描二维码登录 ",-1))],64)):U("",!0)],64))])])]),t(fe)])}}}),Co=_e(Ne,[["__scopeId","data-v-3d794186"]]);export{Co as default}; +import{d as Z,F as ee,G as oe,B as te,C as ne,D as re,H as ae,i as se,E as ie}from"./element-plus-DFTWCWyi.js";import{e as ce,u as le,f as N,A as B,a as de,h as ue,c as me,P as pe,_ as _e}from"./index--WnM67ZH.js";import{w as $}from"./@vue/runtime-dom-DDAG46FW.js";import{l as j}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as we}from"./useLockFn-X4Qce5KO.js";import{_ as fe}from"./footer.vue_vue_type_script_setup_true_lang-8X3rKAhc.js";import{u as ge,a as xe}from"./vue-router-QlpZ4wdW.js";import{f as ve,w as he,n as E,b as ke,ak as l,I as d,J as a,a as t,aN as r,F as C,O as V,H as U,A as ye}from"./@vue/runtime-core-C6bnekPw.js";import{Q as be}from"./@vue/shared-mAAVTE9n.js";import{y as c,q as P,n as _,r as Ee}from"./@vue/reactivity-DiY1c2vO.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ce={class:"login flex flex-col"},Ve={class:"flex-1 flex items-center justify-center"},Ue={class:"login-card flex rounded-md overflow-hidden"},We={class:"flex-1 h-full hidden md:inline-block"},qe={class:"login-form bg-body flex flex-col justify-center px-10 py-10 md:w-[420px] w-[380px] flex-none mx-auto"},Le={class:"text-center text-3xl font-medium mb-8"},Re={key:0,class:"text-center py-10"},ze={key:0,class:"flex justify-center mb-6"},Ie={class:"mb-5"},Se={class:"wxwork-qrcode-wrap"},Ae={key:0,class:"text-center py-10"},Fe={key:1,id:"wxwork_qrcode_container",class:"wxwork-qrcode"},Ne=ve({__name:"login",setup(Be){const W=P(),q=P(),D=ce(),L=le(),h=ge(),w=xe(),f=_(!1),R=ye(()=>D.config),s=Ee({account:"",password:""}),K={account:[{required:!0,message:"请输入账号",trigger:["blur"]}],password:[{required:!0,message:"请输入密码",trigger:["blur"]}]},m=_("account"),z=_(!1),g=_({corp_id:"",agent_id:""}),x=_(!1),k=_(!1),M=()=>/wxwork/i.test(navigator.userAgent),I=()=>window.location.origin+window.location.pathname,T=()=>{var o;if(!s.password)return(o=W.value)==null?void 0:o.focus();y()},y=async()=>{var e;await((e=q.value)==null?void 0:e.validate()),N.set(B,{remember:f.value,account:f.value?s.account:""});const o=await L.login(s);if(o.is_paw===0){w.push("/change-password");return}if(o.need_bind_work_wechat){w.push("/bind-work-wechat");return}S()},{isLock:G,lockFn:H}=we(y),S=()=>{const{query:{redirect:o}}=h,e=typeof o=="string"?o:pe.INDEX;w.push(e)},J=async o=>{x.value=!0;try{const e=await L.workWechatLogin(o);if(e.is_paw===0){w.push("/change-password");return}if(e.need_bind_work_wechat){w.push("/bind-work-wechat");return}S()}catch(e){console.error("企业微信登录失败:",e),ie.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"企业微信登录失败,请使用账号密码登录"),x.value=!1,m.value="account"}},O=async()=>{if(!g.value.corp_id)return;k.value=!0,window.WwLogin||await new Promise((e,p)=>{const i=document.createElement("script");i.src="https://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js",i.onload=()=>e(),i.onerror=()=>p(new Error("加载企业微信JS失败")),document.head.appendChild(i)}),await E(),k.value=!1,await E();const o=encodeURIComponent(I());new window.WwLogin({id:"wxwork_qrcode_container",appid:g.value.corp_id,agentid:g.value.agent_id,redirect_uri:o,lang:"zh",state:"admin_login",href:"",self_redirect:!1})};return he(m,o=>{o==="wxwork"&&E(()=>O())}),ke(async()=>{const o=N.get(B);o!=null&&o.remember&&(f.value=o.remember,s.account=o.account);const e=new URLSearchParams(window.location.search),p=e.get("code"),i=e.get("state");if(p&&i==="admin_login"){const n=window.location.pathname+(h.query.redirect?`?redirect=${h.query.redirect}`:"");window.history.replaceState({},"",n),J(p);return}try{const n=await de();if(n!=null&&n.enabled&&(z.value=!0,g.value={corp_id:n.corp_id,agent_id:n.agent_id},M())){const b=encodeURIComponent(I()),v=`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${n.corp_id}&redirect_uri=${b}&response_type=code&scope=snsapi_privateinfo&agentid=${n.agent_id}&state=admin_login#wechat_redirect`;window.location.href=v,x.value=!0;return}}catch(n){console.warn("获取企业微信配置失败:",n)}}),(o,e)=>{const p=ue,i=Z,n=ee,b=oe,v=me,A=ne,F=te,Q=re,X=ae,Y=se;return l(),d("div",Ce,[a("div",Ve,[a("div",Ue,[a("div",We,[t(p,{src:R.value.login_image,width:400,height:"100%"},null,8,["src"])]),a("div",qe,[a("div",Le,be(R.value.web_name),1),x.value?(l(),d("div",Re,[t(i,{class:"is-loading mb-4",size:40,color:"var(--el-color-primary)"},{default:r(()=>[t(c(j))]),_:1}),e[4]||(e[4]=a("div",{class:"text-gray-500"},"企业微信授权登录中...",-1))])):(l(),d(C,{key:1},[z.value?(l(),d("div",ze,[t(b,{modelValue:m.value,"onUpdate:modelValue":e[0]||(e[0]=u=>m.value=u),size:"large"},{default:r(()=>[t(n,{value:"account"},{default:r(()=>[...e[5]||(e[5]=[V("账号登录",-1)])]),_:1}),t(n,{value:"wxwork"},{default:r(()=>[...e[6]||(e[6]=[V("企业微信",-1)])]),_:1})]),_:1},8,["modelValue"])])):U("",!0),m.value==="account"?(l(),d(C,{key:1},[t(Q,{ref_key:"formRef",ref:q,model:c(s),size:"large",rules:K},{default:r(()=>[t(F,{prop:"account"},{default:r(()=>[t(A,{modelValue:c(s).account,"onUpdate:modelValue":e[1]||(e[1]=u=>c(s).account=u),placeholder:"请输入账号",onKeyup:$(T,["enter"])},{prepend:r(()=>[t(v,{name:"el-icon-User",size:"16"})]),_:1},8,["modelValue"])]),_:1}),t(F,{prop:"password"},{default:r(()=>[t(A,{ref_key:"passwordRef",ref:W,modelValue:c(s).password,"onUpdate:modelValue":e[2]||(e[2]=u=>c(s).password=u),"show-password":"",placeholder:"请输入密码",onKeyup:$(y,["enter"])},{prepend:r(()=>[t(v,{name:"el-icon-Lock",size:"16"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"]),a("div",Ie,[t(X,{modelValue:f.value,"onUpdate:modelValue":e[3]||(e[3]=u=>f.value=u),label:"记住账号"},null,8,["modelValue"])]),t(Y,{type:"primary",size:"large",loading:c(G),onClick:c(H)},{default:r(()=>[...e[7]||(e[7]=[V(" 登录 ",-1)])]),_:1},8,["loading","onClick"])],64)):U("",!0),m.value==="wxwork"?(l(),d(C,{key:2},[a("div",Se,[k.value?(l(),d("div",Ae,[t(i,{class:"is-loading",size:32,color:"var(--el-color-primary)"},{default:r(()=>[t(c(j))]),_:1}),e[8]||(e[8]=a("div",{class:"mt-2 text-gray-400 text-sm"},"加载企业微信扫码...",-1))])):(l(),d("div",Fe))]),e[9]||(e[9]=a("div",{class:"text-center text-sm text-gray-400 mt-4"}," 请使用企业微信扫描二维码登录 ",-1))],64)):U("",!0)],64))])])]),t(fe)])}}}),Co=_e(Ne,[["__scopeId","data-v-3d794186"]]);export{Co as default}; diff --git a/server/public/admin/assets/login_register-aQkOmHjq.js b/server/public/admin/assets/login_register-FZoA6yWr.js similarity index 96% rename from server/public/admin/assets/login_register-aQkOmHjq.js rename to server/public/admin/assets/login_register-FZoA6yWr.js index f60d9138..58e77b93 100644 --- a/server/public/admin/assets/login_register-aQkOmHjq.js +++ b/server/public/admin/assets/login_register-FZoA6yWr.js @@ -1 +1 @@ -import{_ as q}from"./index-DbiC_Mh1.js";import{J as C,B,af as D,H as U,g as N,i as P,D as R}from"./element-plus-DFTWCWyi.js";import{g as F,s as S}from"./user-BJIsEXJM.js";import{f as y,as as W,ak as b,I as G,a as l,aN as r,J as t,O as a,aP as I,G as J}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,n as L,r as w}from"./@vue/reactivity-DiY1c2vO.js";import{Q as _}from"./@vue/shared-mAAVTE9n.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const j={class:"login-register"},A={class:"mt-1 ml-2"},H={class:"mt-1 ml-2"},O={class:"mt-1 ml-2"},Q={href:"https://open.weixin.qq.com/",target:"_blank"},T=y({name:"loginRegister"}),Re=y({...T,setup(z){const d=L(),o=w({login_way:[],coerce_mobile:0,login_agreement:0,third_auth:0,wechat_auth:0,qq_auth:0}),V=w({loginWay:[{required:!0,validator:(s,e,m)=>{if(o.login_way.join("").length===0)m(new Error("登录方式至少选择一项!"));else{if(o.login_way!==""){if(!d.value)return;d.value.validateField("checkPass")}m()}},trigger:"change"}],coerce_mobile:[{required:!0,trigger:"blur"}],login_agreement:[{required:!0,trigger:"blur"}],third_auth:[{required:!0,trigger:"blur"}]}),f=async()=>{try{const s=await F();for(const e in o)o[e]=s[e]}catch(s){console.log("获取=>",s)}},k=async()=>{var s;await((s=d.value)==null?void 0:s.validate());try{await S(o),f()}catch(e){console.log("保存=>",e)}};return f(),(s,e)=>{const m=U,g=D,u=B,p=N,v=C,c=P,h=R,x=q,E=W("perms");return b(),G("div",j,[l(h,{ref_key:"formRef",ref:d,rules:i(V),model:i(o),"label-width":"120px"},{default:r(()=>[l(v,{shadow:"never",class:"!border-none"},{default:r(()=>[e[10]||(e[10]=t("div",{class:"font-medium mb-7"},"通用设置",-1)),l(u,{label:"登录方式",prop:"login_way"},{default:r(()=>[t("div",null,[l(g,{modelValue:i(o).login_way,"onUpdate:modelValue":e[0]||(e[0]=n=>i(o).login_way=n)},{default:r(()=>[l(m,{value:"1"},{default:r(()=>[...e[5]||(e[5]=[a("账号密码登录",-1)])]),_:1}),l(m,{value:"2"},{default:r(()=>[...e[6]||(e[6]=[a("手机验证码登录",-1)])]),_:1})]),_:1},8,["modelValue"]),e[7]||(e[7]=t("div",{class:"form-tips"},"系统通用登录方式,至少选择一项",-1))])]),_:1}),l(u,{label:"强制绑定手机",prop:"coerce_mobile"},{default:r(()=>[t("div",null,[l(p,{modelValue:i(o).coerce_mobile,"onUpdate:modelValue":e[1]||(e[1]=n=>i(o).coerce_mobile=n),"active-value":1,"inactive-value":0},null,8,["modelValue"]),t("span",A,_(i(o).coerce_mobile?"开启":"关闭"),1),e[8]||(e[8]=t("div",{class:"form-tips"},[a(" 1、如果开启,则新用户在注册完成之后要强制绑定手机号"),t("br"),a(" 2、老用户登录时如果检测到没有绑定手机,则要重新绑定手机号 ")],-1))])]),_:1}),l(u,{label:"政策协议",prop:"login_agreement"},{default:r(()=>[t("div",null,[l(p,{modelValue:i(o).login_agreement,"onUpdate:modelValue":e[2]||(e[2]=n=>i(o).login_agreement=n),"active-value":1,"inactive-value":0},null,8,["modelValue"]),t("span",H,_(i(o).login_agreement?"开启":"关闭"),1),e[9]||(e[9]=t("div",{class:"form-tips"},"登录/注册会员时,是否显示服务协议和隐私政策",-1))])]),_:1})]),_:1}),l(v,{shadow:"never",class:"!border-none mt-4"},{default:r(()=>[e[15]||(e[15]=t("div",{class:"font-medium mb-7"},"第三方设置",-1)),l(u,{label:"第三方登录",prop:"third_auth"},{default:r(()=>[t("div",null,[l(p,{modelValue:i(o).third_auth,"onUpdate:modelValue":e[3]||(e[3]=n=>i(o).third_auth=n),"active-value":1,"inactive-value":0},null,8,["modelValue"]),t("span",O,_(i(o).third_auth?"开启":"关闭"),1),e[12]||(e[12]=t("div",{class:"form-tips"},"登录时支持第三方登录,新用户授权即自动注册账号",-1)),t("div",null,[l(m,{modelValue:i(o).wechat_auth,"onUpdate:modelValue":e[4]||(e[4]=n=>i(o).wechat_auth=n),"true-value":1,"false-value":0},{default:r(()=>[...e[11]||(e[11]=[a(" 微信登录 ",-1)])]),_:1},8,["modelValue"])])])]),_:1}),l(u,{label:"微信开放平台"},{default:r(()=>[t("div",null,[t("a",Q,[l(c,{type:"primary",link:"",class:"underline"},{default:r(()=>[...e[13]||(e[13]=[a(" 前往微信开放平台 ",-1)])]),_:1})]),e[14]||(e[14]=t("div",{class:"form-tips"},[a(" 1、在各渠道使用微信授权登录时,强烈建议配置微信开放平台"),t("br"),a(" 2、微信开放平台关联公众号、小程序和APP后,可实现各端用户账号统一,识别买家唯一微信身份"),t("br"),a(" 3、没有配置微信开放平台,同一微信号会生成多个用户,配置微信开放平台后已生成的用户账号无法合并 ")],-1))])]),_:1})]),_:1})]),_:1},8,["rules","model"]),I((b(),J(x,null,{default:r(()=>[l(c,{type:"primary",onClick:k},{default:r(()=>[...e[16]||(e[16]=[a("保存",-1)])]),_:1})]),_:1})),[[E,["setting.user.user/setRegisterConfig"]]])])}}});export{Re as default}; +import{_ as q}from"./index-j275bAO5.js";import{J as C,B,af as D,H as U,g as N,i as P,D as R}from"./element-plus-DFTWCWyi.js";import{g as F,s as S}from"./user-sO2W9aq7.js";import{f as y,as as W,ak as b,I as G,a as l,aN as r,J as t,O as a,aP as I,G as J}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,n as L,r as w}from"./@vue/reactivity-DiY1c2vO.js";import{Q as _}from"./@vue/shared-mAAVTE9n.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./lodash-D3kF6u-c.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const j={class:"login-register"},A={class:"mt-1 ml-2"},H={class:"mt-1 ml-2"},O={class:"mt-1 ml-2"},Q={href:"https://open.weixin.qq.com/",target:"_blank"},T=y({name:"loginRegister"}),Re=y({...T,setup(z){const d=L(),o=w({login_way:[],coerce_mobile:0,login_agreement:0,third_auth:0,wechat_auth:0,qq_auth:0}),V=w({loginWay:[{required:!0,validator:(s,e,m)=>{if(o.login_way.join("").length===0)m(new Error("登录方式至少选择一项!"));else{if(o.login_way!==""){if(!d.value)return;d.value.validateField("checkPass")}m()}},trigger:"change"}],coerce_mobile:[{required:!0,trigger:"blur"}],login_agreement:[{required:!0,trigger:"blur"}],third_auth:[{required:!0,trigger:"blur"}]}),f=async()=>{try{const s=await F();for(const e in o)o[e]=s[e]}catch(s){console.log("获取=>",s)}},k=async()=>{var s;await((s=d.value)==null?void 0:s.validate());try{await S(o),f()}catch(e){console.log("保存=>",e)}};return f(),(s,e)=>{const m=U,g=D,u=B,p=N,v=C,c=P,h=R,x=q,E=W("perms");return b(),G("div",j,[l(h,{ref_key:"formRef",ref:d,rules:i(V),model:i(o),"label-width":"120px"},{default:r(()=>[l(v,{shadow:"never",class:"!border-none"},{default:r(()=>[e[10]||(e[10]=t("div",{class:"font-medium mb-7"},"通用设置",-1)),l(u,{label:"登录方式",prop:"login_way"},{default:r(()=>[t("div",null,[l(g,{modelValue:i(o).login_way,"onUpdate:modelValue":e[0]||(e[0]=n=>i(o).login_way=n)},{default:r(()=>[l(m,{value:"1"},{default:r(()=>[...e[5]||(e[5]=[a("账号密码登录",-1)])]),_:1}),l(m,{value:"2"},{default:r(()=>[...e[6]||(e[6]=[a("手机验证码登录",-1)])]),_:1})]),_:1},8,["modelValue"]),e[7]||(e[7]=t("div",{class:"form-tips"},"系统通用登录方式,至少选择一项",-1))])]),_:1}),l(u,{label:"强制绑定手机",prop:"coerce_mobile"},{default:r(()=>[t("div",null,[l(p,{modelValue:i(o).coerce_mobile,"onUpdate:modelValue":e[1]||(e[1]=n=>i(o).coerce_mobile=n),"active-value":1,"inactive-value":0},null,8,["modelValue"]),t("span",A,_(i(o).coerce_mobile?"开启":"关闭"),1),e[8]||(e[8]=t("div",{class:"form-tips"},[a(" 1、如果开启,则新用户在注册完成之后要强制绑定手机号"),t("br"),a(" 2、老用户登录时如果检测到没有绑定手机,则要重新绑定手机号 ")],-1))])]),_:1}),l(u,{label:"政策协议",prop:"login_agreement"},{default:r(()=>[t("div",null,[l(p,{modelValue:i(o).login_agreement,"onUpdate:modelValue":e[2]||(e[2]=n=>i(o).login_agreement=n),"active-value":1,"inactive-value":0},null,8,["modelValue"]),t("span",H,_(i(o).login_agreement?"开启":"关闭"),1),e[9]||(e[9]=t("div",{class:"form-tips"},"登录/注册会员时,是否显示服务协议和隐私政策",-1))])]),_:1})]),_:1}),l(v,{shadow:"never",class:"!border-none mt-4"},{default:r(()=>[e[15]||(e[15]=t("div",{class:"font-medium mb-7"},"第三方设置",-1)),l(u,{label:"第三方登录",prop:"third_auth"},{default:r(()=>[t("div",null,[l(p,{modelValue:i(o).third_auth,"onUpdate:modelValue":e[3]||(e[3]=n=>i(o).third_auth=n),"active-value":1,"inactive-value":0},null,8,["modelValue"]),t("span",O,_(i(o).third_auth?"开启":"关闭"),1),e[12]||(e[12]=t("div",{class:"form-tips"},"登录时支持第三方登录,新用户授权即自动注册账号",-1)),t("div",null,[l(m,{modelValue:i(o).wechat_auth,"onUpdate:modelValue":e[4]||(e[4]=n=>i(o).wechat_auth=n),"true-value":1,"false-value":0},{default:r(()=>[...e[11]||(e[11]=[a(" 微信登录 ",-1)])]),_:1},8,["modelValue"])])])]),_:1}),l(u,{label:"微信开放平台"},{default:r(()=>[t("div",null,[t("a",Q,[l(c,{type:"primary",link:"",class:"underline"},{default:r(()=>[...e[13]||(e[13]=[a(" 前往微信开放平台 ",-1)])]),_:1})]),e[14]||(e[14]=t("div",{class:"form-tips"},[a(" 1、在各渠道使用微信授权登录时,强烈建议配置微信开放平台"),t("br"),a(" 2、微信开放平台关联公众号、小程序和APP后,可实现各端用户账号统一,识别买家唯一微信身份"),t("br"),a(" 3、没有配置微信开放平台,同一微信号会生成多个用户,配置微信开放平台后已生成的用户账号无法合并 ")],-1))])]),_:1})]),_:1})]),_:1},8,["rules","model"]),I((b(),J(x,null,{default:r(()=>[l(c,{type:"primary",onClick:k},{default:r(()=>[...e[16]||(e[16]=[a("保存",-1)])]),_:1})]),_:1})),[[E,["setting.user.user/setRegisterConfig"]]])])}}});export{Re as default}; diff --git a/server/public/admin/assets/medicine-9zqpvZKs.js b/server/public/admin/assets/medicine-CEyDY1rx.js similarity index 98% rename from server/public/admin/assets/medicine-9zqpvZKs.js rename to server/public/admin/assets/medicine-CEyDY1rx.js index 9bdc3bec..80f3f119 100644 --- a/server/public/admin/assets/medicine-9zqpvZKs.js +++ b/server/public/admin/assets/medicine-CEyDY1rx.js @@ -1 +1 @@ -import{D as ie,B as ne,C as ue,i as pe,M as de,N as me,v as ce,T as ge,L as fe,X as _e,d as ve,J as be,P as ye,Q as we,h as Ve,$ as ke,G as xe,I as Ee,V as Ce,a as he}from"./element-plus-DFTWCWyi.js";import{A as q}from"./@element-plus/icons-vue-HOEUG8sr.js";import{g as Ue,i as d,_ as ze}from"./index-Nt5zMHcc.js";import{a as Be,b as Te,c as De,m as Se}from"./medicine-D4btWglq.js";import{f as M,b as Ie,ak as _,I as h,a as l,aN as a,O as n,aP as Ne,G as U,J as m,A as z}from"./@vue/runtime-core-C6bnekPw.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";import{y as L,n as g,r as qe}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Le={class:"medicine-library"},Me={class:"flex justify-between items-center"},Pe={key:1,class:"text-gray-400"},Re={class:"text-blue-600"},Ae={class:"text-green-600 font-medium"},Fe={class:"flex justify-end mt-4"},je=["src"],$e=M({name:"medicineLibrary"}),Ge=M({...$e,setup(Qe){const k=g(!1),x=g(!1),f=g(!1),y=g(),r=qe({page_no:1,page_size:20,name:"",supplier:""}),B=g([]),T=g(0),s=g({name:"",supplier:"",unit:"克",settlement_price:0,retail_price:0,stock:0,image:"",status:1,remark:""}),P={name:[{required:!0,message:"请输入药材名称",trigger:"blur"}],supplier:[{required:!0,message:"请输入供应商名称",trigger:"blur"}],unit:[{required:!0,message:"请选择单位",trigger:"change"}],settlement_price:[{required:!0,message:"请输入结算价",trigger:"blur"}],retail_price:[{required:!0,message:"请输入零售价",trigger:"blur"}]},R=z(()=>s.value.id?"编辑药品":"添加药品"),A=z(()=>"https://admin.zhenyangtang.com.cn//api/upload/image"),F=z(()=>({token:Ue()})),D=o=>{if(o==null||o==="")return"0.00";const e=typeof o=="string"?parseFloat(o):o;return isNaN(e)?"0.00":e.toFixed(2)},j=o=>o===0?"danger":o<10?"warning":"success",E=()=>{v()},$=()=>{r.name="",r.supplier="",r.page_no=1,v()},G=()=>{s.value={name:"",supplier:"",unit:"克",settlement_price:0,retail_price:0,stock:0,image:"",status:1,remark:""},f.value=!0},Q=o=>{s.value={...o},f.value=!0},J=async o=>{try{await he.confirm("确定要删除该药品吗?","提示",{type:"warning",confirmButtonText:"确定",cancelButtonText:"取消"}),await Be({id:o.id}),d.msgSuccess("删除成功"),v()}catch(e){e!=="cancel"&&d.msgError("删除失败")}},O=async()=>{y.value&&await y.value.validate(async o=>{if(o){x.value=!0;try{s.value.id?await Te(s.value):await De(s.value),d.msgSuccess("保存成功"),f.value=!1,v()}catch{d.msgError("保存失败")}finally{x.value=!1}}})},H=()=>{var o;(o=y.value)==null||o.resetFields()},W=o=>{const e=o.type.startsWith("image/"),w=o.size/1024/1024<2;return e?w?!0:(d.msgError("图片大小不能超过 2MB!"),!1):(d.msgError("只能上传图片文件!"),!1)},X=o=>{var e;o.code===1&&((e=o.data)!=null&&e.url)?(s.value.image=o.data.url,d.msgSuccess("上传成功")):d.msgError(o.msg||"上传失败")},v=async()=>{k.value=!0;try{const o=await Se(r);B.value=o.lists||[],T.value=o.count||0}catch(o){console.error("加载数据失败:",o),d.msgError("加载数据失败")}finally{k.value=!1}};return Ie(()=>{v()}),(o,e)=>{const w=ve,c=pe,b=ue,i=ne,S=ie,u=me,K=ce,I=ge,Y=de,Z=_e,ee=be,p=we,le=ye,C=Ve,te=ke,N=Ee,ae=xe,oe=Ce,se=fe;return _(),h("div",Le,[l(ee,{shadow:"never"},{header:a(()=>[m("div",Me,[e[15]||(e[15]=m("span",{class:"text-lg font-medium"},"药品库管理",-1)),l(c,{type:"primary",onClick:G},{default:a(()=>[l(w,{class:"mr-1"},{default:a(()=>[l(L(q))]),_:1}),e[14]||(e[14]=n(" 添加药品 ",-1))]),_:1})])]),default:a(()=>[l(S,{inline:"",class:"mb-4"},{default:a(()=>[l(i,{label:"药材名称"},{default:a(()=>[l(b,{modelValue:r.name,"onUpdate:modelValue":e[0]||(e[0]=t=>r.name=t),placeholder:"请输入药材名称",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),l(i,{label:"供应商"},{default:a(()=>[l(b,{modelValue:r.supplier,"onUpdate:modelValue":e[1]||(e[1]=t=>r.supplier=t),placeholder:"请输入供应商名称",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),l(i,null,{default:a(()=>[l(c,{type:"primary",onClick:E},{default:a(()=>[...e[16]||(e[16]=[n("查询",-1)])]),_:1}),l(c,{onClick:$},{default:a(()=>[...e[17]||(e[17]=[n("重置",-1)])]),_:1})]),_:1})]),_:1}),Ne((_(),U(Y,{data:B.value,border:"",stripe:""},{default:a(()=>[l(u,{type:"index",label:"序号",width:"60",align:"center"}),l(u,{prop:"image",label:"图片",width:"100",align:"center"},{default:a(({row:t})=>[t.image?(_(),U(K,{key:0,src:t.image,"preview-src-list":[t.image],fit:"cover",class:"w-16 h-16 rounded"},null,8,["src","preview-src-list"])):(_(),h("span",Pe,"暂无图片"))]),_:1}),l(u,{prop:"name",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),l(u,{prop:"supplier",label:"供应商","min-width":"120","show-overflow-tooltip":""}),l(u,{prop:"unit",label:"单位",width:"80",align:"center"}),l(u,{prop:"settlement_price",label:"结算价(元)",width:"110",align:"right"},{default:a(({row:t})=>[m("span",Re,V(D(t.settlement_price)),1)]),_:1}),l(u,{prop:"retail_price",label:"零售价(元)",width:"110",align:"right"},{default:a(({row:t})=>[m("span",Ae,V(D(t.retail_price)),1)]),_:1}),l(u,{prop:"stock",label:"库存",width:"100",align:"center"},{default:a(({row:t})=>[l(I,{type:j(t.stock),size:"small"},{default:a(()=>[n(V(t.stock||0),1)]),_:2},1032,["type"])]),_:1}),l(u,{prop:"status",label:"状态",width:"80",align:"center"},{default:a(({row:t})=>[l(I,{type:t.status===1?"success":"info",size:"small"},{default:a(()=>[n(V(t.status===1?"启用":"停用"),1)]),_:2},1032,["type"])]),_:1}),l(u,{label:"操作",width:"160",fixed:"right",align:"center"},{default:a(({row:t})=>[l(c,{type:"primary",link:"",onClick:re=>Q(t)},{default:a(()=>[...e[18]||(e[18]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(c,{type:"danger",link:"",onClick:re=>J(t)},{default:a(()=>[...e[19]||(e[19]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[se,k.value]]),m("div",Fe,[l(Z,{"current-page":r.page_no,"onUpdate:currentPage":e[2]||(e[2]=t=>r.page_no=t),"page-size":r.page_size,"onUpdate:pageSize":e[3]||(e[3]=t=>r.page_size=t),total:T.value,"page-sizes":[10,20,50,100],layout:"total, sizes, prev, pager, next, jumper",onSizeChange:E,onCurrentChange:E},null,8,["current-page","page-size","total"])])]),_:1}),l(oe,{modelValue:f.value,"onUpdate:modelValue":e[13]||(e[13]=t=>f.value=t),title:R.value,width:"600px","destroy-on-close":"",onClose:H},{footer:a(()=>[l(c,{onClick:e[12]||(e[12]=t=>f.value=!1)},{default:a(()=>[...e[25]||(e[25]=[n("取消",-1)])]),_:1}),l(c,{type:"primary",loading:x.value,onClick:O},{default:a(()=>[...e[26]||(e[26]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(S,{ref_key:"formRef",ref:y,model:s.value,rules:P,"label-width":"100px"},{default:a(()=>[l(i,{label:"药材名称",prop:"name"},{default:a(()=>[l(b,{modelValue:s.value.name,"onUpdate:modelValue":e[4]||(e[4]=t=>s.value.name=t),placeholder:"请输入药材名称",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(i,{label:"供应商",prop:"supplier"},{default:a(()=>[l(b,{modelValue:s.value.supplier,"onUpdate:modelValue":e[5]||(e[5]=t=>s.value.supplier=t),placeholder:"请输入供应商名称",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(i,{label:"单位",prop:"unit"},{default:a(()=>[l(le,{modelValue:s.value.unit,"onUpdate:modelValue":e[6]||(e[6]=t=>s.value.unit=t),placeholder:"请选择单位",clearable:"",style:{width:"100%"}},{default:a(()=>[l(p,{label:"克",value:"克"}),l(p,{label:"千克",value:"千克"}),l(p,{label:"斤",value:"斤"}),l(p,{label:"盒",value:"盒"}),l(p,{label:"瓶",value:"瓶"}),l(p,{label:"袋",value:"袋"}),l(p,{label:"包",value:"包"}),l(p,{label:"片",value:"片"}),l(p,{label:"粒",value:"粒"}),l(p,{label:"支",value:"支"})]),_:1},8,["modelValue"])]),_:1}),l(i,{label:"结算价",prop:"settlement_price"},{default:a(()=>[l(C,{modelValue:s.value.settlement_price,"onUpdate:modelValue":e[7]||(e[7]=t=>s.value.settlement_price=t),min:0,precision:2,step:.1,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"]),e[20]||(e[20]=m("span",{class:"ml-2 text-gray-500 text-sm"},"元",-1))]),_:1}),l(i,{label:"零售价",prop:"retail_price"},{default:a(()=>[l(C,{modelValue:s.value.retail_price,"onUpdate:modelValue":e[8]||(e[8]=t=>s.value.retail_price=t),min:0,precision:2,step:.1,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"]),e[21]||(e[21]=m("span",{class:"ml-2 text-gray-500 text-sm"},"元",-1))]),_:1}),l(i,{label:"库存",prop:"stock"},{default:a(()=>[l(C,{modelValue:s.value.stock,"onUpdate:modelValue":e[9]||(e[9]=t=>s.value.stock=t),min:0,step:1,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(i,{label:"药品图片",prop:"image"},{default:a(()=>[l(te,{class:"medicine-uploader",action:A.value,headers:F.value,"show-file-list":!1,"on-success":X,"before-upload":W,accept:"image/*"},{default:a(()=>[s.value.image?(_(),h("img",{key:0,src:s.value.image,class:"medicine-image"},null,8,je)):(_(),U(w,{key:1,class:"medicine-uploader-icon"},{default:a(()=>[l(L(q))]),_:1}))]),_:1},8,["action","headers"]),e[22]||(e[22]=m("div",{class:"text-gray-500 text-xs mt-1"},"建议尺寸:300x300像素,支持jpg、png格式,大小不超过2MB",-1))]),_:1}),l(i,{label:"状态",prop:"status"},{default:a(()=>[l(ae,{modelValue:s.value.status,"onUpdate:modelValue":e[10]||(e[10]=t=>s.value.status=t)},{default:a(()=>[l(N,{label:1},{default:a(()=>[...e[23]||(e[23]=[n("启用",-1)])]),_:1}),l(N,{label:0},{default:a(()=>[...e[24]||(e[24]=[n("停用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(i,{label:"备注"},{default:a(()=>[l(b,{modelValue:s.value.remark,"onUpdate:modelValue":e[11]||(e[11]=t=>s.value.remark=t),type:"textarea",rows:3,placeholder:"请输入备注信息",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Tl=ze(Ge,[["__scopeId","data-v-ff8ad457"]]);export{Tl as default}; +import{D as ie,B as ne,C as ue,i as pe,M as de,N as me,v as ce,T as ge,L as fe,X as _e,d as ve,J as be,P as ye,Q as we,h as Ve,$ as ke,G as xe,I as Ee,V as Ce,a as he}from"./element-plus-DFTWCWyi.js";import{A as q}from"./@element-plus/icons-vue-HOEUG8sr.js";import{g as Ue,i as d,_ as ze}from"./index--WnM67ZH.js";import{a as Be,b as Te,c as De,m as Se}from"./medicine-KRcHi5G1.js";import{f as M,b as Ie,ak as _,I as h,a as l,aN as a,O as n,aP as Ne,G as U,J as m,A as z}from"./@vue/runtime-core-C6bnekPw.js";import{Q as V}from"./@vue/shared-mAAVTE9n.js";import{y as L,n as g,r as qe}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Le={class:"medicine-library"},Me={class:"flex justify-between items-center"},Pe={key:1,class:"text-gray-400"},Re={class:"text-blue-600"},Ae={class:"text-green-600 font-medium"},Fe={class:"flex justify-end mt-4"},je=["src"],$e=M({name:"medicineLibrary"}),Ge=M({...$e,setup(Qe){const k=g(!1),x=g(!1),f=g(!1),y=g(),r=qe({page_no:1,page_size:20,name:"",supplier:""}),B=g([]),T=g(0),s=g({name:"",supplier:"",unit:"克",settlement_price:0,retail_price:0,stock:0,image:"",status:1,remark:""}),P={name:[{required:!0,message:"请输入药材名称",trigger:"blur"}],supplier:[{required:!0,message:"请输入供应商名称",trigger:"blur"}],unit:[{required:!0,message:"请选择单位",trigger:"change"}],settlement_price:[{required:!0,message:"请输入结算价",trigger:"blur"}],retail_price:[{required:!0,message:"请输入零售价",trigger:"blur"}]},R=z(()=>s.value.id?"编辑药品":"添加药品"),A=z(()=>"https://admin.zhenyangtang.com.cn//api/upload/image"),F=z(()=>({token:Ue()})),D=o=>{if(o==null||o==="")return"0.00";const e=typeof o=="string"?parseFloat(o):o;return isNaN(e)?"0.00":e.toFixed(2)},j=o=>o===0?"danger":o<10?"warning":"success",E=()=>{v()},$=()=>{r.name="",r.supplier="",r.page_no=1,v()},G=()=>{s.value={name:"",supplier:"",unit:"克",settlement_price:0,retail_price:0,stock:0,image:"",status:1,remark:""},f.value=!0},Q=o=>{s.value={...o},f.value=!0},J=async o=>{try{await he.confirm("确定要删除该药品吗?","提示",{type:"warning",confirmButtonText:"确定",cancelButtonText:"取消"}),await Be({id:o.id}),d.msgSuccess("删除成功"),v()}catch(e){e!=="cancel"&&d.msgError("删除失败")}},O=async()=>{y.value&&await y.value.validate(async o=>{if(o){x.value=!0;try{s.value.id?await Te(s.value):await De(s.value),d.msgSuccess("保存成功"),f.value=!1,v()}catch{d.msgError("保存失败")}finally{x.value=!1}}})},H=()=>{var o;(o=y.value)==null||o.resetFields()},W=o=>{const e=o.type.startsWith("image/"),w=o.size/1024/1024<2;return e?w?!0:(d.msgError("图片大小不能超过 2MB!"),!1):(d.msgError("只能上传图片文件!"),!1)},X=o=>{var e;o.code===1&&((e=o.data)!=null&&e.url)?(s.value.image=o.data.url,d.msgSuccess("上传成功")):d.msgError(o.msg||"上传失败")},v=async()=>{k.value=!0;try{const o=await Se(r);B.value=o.lists||[],T.value=o.count||0}catch(o){console.error("加载数据失败:",o),d.msgError("加载数据失败")}finally{k.value=!1}};return Ie(()=>{v()}),(o,e)=>{const w=ve,c=pe,b=ue,i=ne,S=ie,u=me,K=ce,I=ge,Y=de,Z=_e,ee=be,p=we,le=ye,C=Ve,te=ke,N=Ee,ae=xe,oe=Ce,se=fe;return _(),h("div",Le,[l(ee,{shadow:"never"},{header:a(()=>[m("div",Me,[e[15]||(e[15]=m("span",{class:"text-lg font-medium"},"药品库管理",-1)),l(c,{type:"primary",onClick:G},{default:a(()=>[l(w,{class:"mr-1"},{default:a(()=>[l(L(q))]),_:1}),e[14]||(e[14]=n(" 添加药品 ",-1))]),_:1})])]),default:a(()=>[l(S,{inline:"",class:"mb-4"},{default:a(()=>[l(i,{label:"药材名称"},{default:a(()=>[l(b,{modelValue:r.name,"onUpdate:modelValue":e[0]||(e[0]=t=>r.name=t),placeholder:"请输入药材名称",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),l(i,{label:"供应商"},{default:a(()=>[l(b,{modelValue:r.supplier,"onUpdate:modelValue":e[1]||(e[1]=t=>r.supplier=t),placeholder:"请输入供应商名称",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),l(i,null,{default:a(()=>[l(c,{type:"primary",onClick:E},{default:a(()=>[...e[16]||(e[16]=[n("查询",-1)])]),_:1}),l(c,{onClick:$},{default:a(()=>[...e[17]||(e[17]=[n("重置",-1)])]),_:1})]),_:1})]),_:1}),Ne((_(),U(Y,{data:B.value,border:"",stripe:""},{default:a(()=>[l(u,{type:"index",label:"序号",width:"60",align:"center"}),l(u,{prop:"image",label:"图片",width:"100",align:"center"},{default:a(({row:t})=>[t.image?(_(),U(K,{key:0,src:t.image,"preview-src-list":[t.image],fit:"cover",class:"w-16 h-16 rounded"},null,8,["src","preview-src-list"])):(_(),h("span",Pe,"暂无图片"))]),_:1}),l(u,{prop:"name",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),l(u,{prop:"supplier",label:"供应商","min-width":"120","show-overflow-tooltip":""}),l(u,{prop:"unit",label:"单位",width:"80",align:"center"}),l(u,{prop:"settlement_price",label:"结算价(元)",width:"110",align:"right"},{default:a(({row:t})=>[m("span",Re,V(D(t.settlement_price)),1)]),_:1}),l(u,{prop:"retail_price",label:"零售价(元)",width:"110",align:"right"},{default:a(({row:t})=>[m("span",Ae,V(D(t.retail_price)),1)]),_:1}),l(u,{prop:"stock",label:"库存",width:"100",align:"center"},{default:a(({row:t})=>[l(I,{type:j(t.stock),size:"small"},{default:a(()=>[n(V(t.stock||0),1)]),_:2},1032,["type"])]),_:1}),l(u,{prop:"status",label:"状态",width:"80",align:"center"},{default:a(({row:t})=>[l(I,{type:t.status===1?"success":"info",size:"small"},{default:a(()=>[n(V(t.status===1?"启用":"停用"),1)]),_:2},1032,["type"])]),_:1}),l(u,{label:"操作",width:"160",fixed:"right",align:"center"},{default:a(({row:t})=>[l(c,{type:"primary",link:"",onClick:re=>Q(t)},{default:a(()=>[...e[18]||(e[18]=[n("编辑",-1)])]),_:1},8,["onClick"]),l(c,{type:"danger",link:"",onClick:re=>J(t)},{default:a(()=>[...e[19]||(e[19]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[se,k.value]]),m("div",Fe,[l(Z,{"current-page":r.page_no,"onUpdate:currentPage":e[2]||(e[2]=t=>r.page_no=t),"page-size":r.page_size,"onUpdate:pageSize":e[3]||(e[3]=t=>r.page_size=t),total:T.value,"page-sizes":[10,20,50,100],layout:"total, sizes, prev, pager, next, jumper",onSizeChange:E,onCurrentChange:E},null,8,["current-page","page-size","total"])])]),_:1}),l(oe,{modelValue:f.value,"onUpdate:modelValue":e[13]||(e[13]=t=>f.value=t),title:R.value,width:"600px","destroy-on-close":"",onClose:H},{footer:a(()=>[l(c,{onClick:e[12]||(e[12]=t=>f.value=!1)},{default:a(()=>[...e[25]||(e[25]=[n("取消",-1)])]),_:1}),l(c,{type:"primary",loading:x.value,onClick:O},{default:a(()=>[...e[26]||(e[26]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(S,{ref_key:"formRef",ref:y,model:s.value,rules:P,"label-width":"100px"},{default:a(()=>[l(i,{label:"药材名称",prop:"name"},{default:a(()=>[l(b,{modelValue:s.value.name,"onUpdate:modelValue":e[4]||(e[4]=t=>s.value.name=t),placeholder:"请输入药材名称",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(i,{label:"供应商",prop:"supplier"},{default:a(()=>[l(b,{modelValue:s.value.supplier,"onUpdate:modelValue":e[5]||(e[5]=t=>s.value.supplier=t),placeholder:"请输入供应商名称",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(i,{label:"单位",prop:"unit"},{default:a(()=>[l(le,{modelValue:s.value.unit,"onUpdate:modelValue":e[6]||(e[6]=t=>s.value.unit=t),placeholder:"请选择单位",clearable:"",style:{width:"100%"}},{default:a(()=>[l(p,{label:"克",value:"克"}),l(p,{label:"千克",value:"千克"}),l(p,{label:"斤",value:"斤"}),l(p,{label:"盒",value:"盒"}),l(p,{label:"瓶",value:"瓶"}),l(p,{label:"袋",value:"袋"}),l(p,{label:"包",value:"包"}),l(p,{label:"片",value:"片"}),l(p,{label:"粒",value:"粒"}),l(p,{label:"支",value:"支"})]),_:1},8,["modelValue"])]),_:1}),l(i,{label:"结算价",prop:"settlement_price"},{default:a(()=>[l(C,{modelValue:s.value.settlement_price,"onUpdate:modelValue":e[7]||(e[7]=t=>s.value.settlement_price=t),min:0,precision:2,step:.1,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"]),e[20]||(e[20]=m("span",{class:"ml-2 text-gray-500 text-sm"},"元",-1))]),_:1}),l(i,{label:"零售价",prop:"retail_price"},{default:a(()=>[l(C,{modelValue:s.value.retail_price,"onUpdate:modelValue":e[8]||(e[8]=t=>s.value.retail_price=t),min:0,precision:2,step:.1,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"]),e[21]||(e[21]=m("span",{class:"ml-2 text-gray-500 text-sm"},"元",-1))]),_:1}),l(i,{label:"库存",prop:"stock"},{default:a(()=>[l(C,{modelValue:s.value.stock,"onUpdate:modelValue":e[9]||(e[9]=t=>s.value.stock=t),min:0,step:1,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(i,{label:"药品图片",prop:"image"},{default:a(()=>[l(te,{class:"medicine-uploader",action:A.value,headers:F.value,"show-file-list":!1,"on-success":X,"before-upload":W,accept:"image/*"},{default:a(()=>[s.value.image?(_(),h("img",{key:0,src:s.value.image,class:"medicine-image"},null,8,je)):(_(),U(w,{key:1,class:"medicine-uploader-icon"},{default:a(()=>[l(L(q))]),_:1}))]),_:1},8,["action","headers"]),e[22]||(e[22]=m("div",{class:"text-gray-500 text-xs mt-1"},"建议尺寸:300x300像素,支持jpg、png格式,大小不超过2MB",-1))]),_:1}),l(i,{label:"状态",prop:"status"},{default:a(()=>[l(ae,{modelValue:s.value.status,"onUpdate:modelValue":e[10]||(e[10]=t=>s.value.status=t)},{default:a(()=>[l(N,{label:1},{default:a(()=>[...e[23]||(e[23]=[n("启用",-1)])]),_:1}),l(N,{label:0},{default:a(()=>[...e[24]||(e[24]=[n("停用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(i,{label:"备注"},{default:a(()=>[l(b,{modelValue:s.value.remark,"onUpdate:modelValue":e[11]||(e[11]=t=>s.value.remark=t),type:"textarea",rows:3,placeholder:"请输入备注信息",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Tl=ze(Ge,[["__scopeId","data-v-ff8ad457"]]);export{Tl as default}; diff --git a/server/public/admin/assets/medicine-D4btWglq.js b/server/public/admin/assets/medicine-KRcHi5G1.js similarity index 81% rename from server/public/admin/assets/medicine-D4btWglq.js rename to server/public/admin/assets/medicine-KRcHi5G1.js index 690ebd81..de6f9bd0 100644 --- a/server/public/admin/assets/medicine-D4btWglq.js +++ b/server/public/admin/assets/medicine-KRcHi5G1.js @@ -1 +1 @@ -import{r as i}from"./index-Nt5zMHcc.js";function r(e){return i.get({url:"/doctor.medicine/lists",params:e})}function n(e){return i.post({url:"/doctor.medicine/add",params:e})}function d(e){return i.post({url:"/doctor.medicine/edit",params:e})}function o(e){return i.post({url:"/doctor.medicine/delete",params:e})}export{o as a,d as b,n as c,r as m}; +import{r as i}from"./index--WnM67ZH.js";function r(e){return i.get({url:"/doctor.medicine/lists",params:e})}function n(e){return i.post({url:"/doctor.medicine/add",params:e})}function d(e){return i.post({url:"/doctor.medicine/edit",params:e})}function o(e){return i.post({url:"/doctor.medicine/delete",params:e})}export{o as a,d as b,n as c,r as m}; diff --git a/server/public/admin/assets/menu-BNilEyUZ.js b/server/public/admin/assets/menu-BtDKpBI_.js similarity index 79% rename from server/public/admin/assets/menu-BNilEyUZ.js rename to server/public/admin/assets/menu-BtDKpBI_.js index 6b2ff591..6f384801 100644 --- a/server/public/admin/assets/menu-BNilEyUZ.js +++ b/server/public/admin/assets/menu-BtDKpBI_.js @@ -1 +1 @@ -import{_ as x}from"./index-DbiC_Mh1.js";import{K as k,J as w,i as b}from"./element-plus-DFTWCWyi.js";import C from"./oa-attr-DRhy74HO.js";import y from"./oa-phone-CwkrkTuR.js";import{u as O}from"./useMenuOa-pZ-sxT1M.js";import{f as _,as as g,ak as e,I as B,a as o,aN as t,J as p,aP as n,G as s,O as l}from"./@vue/runtime-core-C6bnekPw.js";import{y as c}from"./@vue/reactivity-DiY1c2vO.js";import{_ as M}from"./index-Nt5zMHcc.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-BQY2-_X1.js";import"./oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js";import"./oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js";import"./wx_oa-BOc4Brkk.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const E={class:"menu-oa"},N={class:"lg:flex flex-1"},P={class:"mt-4 lg:mt-0 max-w-[400px]"},V=_({name:"wxOaMenu"}),A=_({...V,setup(D){const{getOaMenuFunc:d,handleSave:u,handlePublish:f}=O(void 0);return d(),(I,r)=>{const v=k,i=w,m=b,h=x,a=g("perms");return e(),B("div",E,[o(i,{class:"!border-none",shadow:"never"},{default:t(()=>[o(v,{type:"warning",title:"配置微信公众号菜单,点击确认,保存菜单并发布至微信公众号",closable:!1,"show-icon":""})]),_:1}),o(i,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[p("div",N,[o(y),p("div",P,[o(C)])])]),_:1}),o(h,null,{default:t(()=>[n((e(),s(m,{type:"primary",onClick:c(u)},{default:t(()=>[...r[0]||(r[0]=[l(" 保存 ",-1)])]),_:1},8,["onClick"])),[[a,["channel:oaMenu:save"]]]),n((e(),s(m,{type:"primary",onClick:c(f)},{default:t(()=>[...r[1]||(r[1]=[l(" 发布 ",-1)])]),_:1},8,["onClick"])),[[a,["channel:oaMenu:publish"]]])]),_:1})])}}}),Eo=M(A,[["__scopeId","data-v-f59ca9a4"]]);export{Eo as default}; +import{_ as x}from"./index-j275bAO5.js";import{K as k,J as w,i as b}from"./element-plus-DFTWCWyi.js";import C from"./oa-attr-Ct9DaDF9.js";import y from"./oa-phone-Bv_M1dC8.js";import{u as O}from"./useMenuOa-_Y0P7idX.js";import{f as _,as as g,ak as e,I as B,a as o,aN as t,J as p,aP as n,G as s,O as l}from"./@vue/runtime-core-C6bnekPw.js";import{y as c}from"./@vue/reactivity-DiY1c2vO.js";import{_ as M}from"./index--WnM67ZH.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index-SocYjCJ1.js";import"./oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js";import"./oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js";import"./wx_oa-CN0ZaZdj.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const E={class:"menu-oa"},N={class:"lg:flex flex-1"},P={class:"mt-4 lg:mt-0 max-w-[400px]"},V=_({name:"wxOaMenu"}),A=_({...V,setup(D){const{getOaMenuFunc:d,handleSave:u,handlePublish:f}=O(void 0);return d(),(I,r)=>{const v=k,i=w,m=b,h=x,a=g("perms");return e(),B("div",E,[o(i,{class:"!border-none",shadow:"never"},{default:t(()=>[o(v,{type:"warning",title:"配置微信公众号菜单,点击确认,保存菜单并发布至微信公众号",closable:!1,"show-icon":""})]),_:1}),o(i,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[p("div",N,[o(y),p("div",P,[o(C)])])]),_:1}),o(h,null,{default:t(()=>[n((e(),s(m,{type:"primary",onClick:c(u)},{default:t(()=>[...r[0]||(r[0]=[l(" 保存 ",-1)])]),_:1},8,["onClick"])),[[a,["channel:oaMenu:save"]]]),n((e(),s(m,{type:"primary",onClick:c(f)},{default:t(()=>[...r[1]||(r[1]=[l(" 发布 ",-1)])]),_:1},8,["onClick"])),[[a,["channel:oaMenu:publish"]]])]),_:1})])}}}),Eo=M(A,[["__scopeId","data-v-f59ca9a4"]]);export{Eo as default}; diff --git a/server/public/admin/assets/menu-DdD-PeZU.js b/server/public/admin/assets/menu-DAbI419p.js similarity index 96% rename from server/public/admin/assets/menu-DdD-PeZU.js rename to server/public/admin/assets/menu-DAbI419p.js index ef15a64f..190aefff 100644 --- a/server/public/admin/assets/menu-DdD-PeZU.js +++ b/server/public/admin/assets/menu-DAbI419p.js @@ -1 +1 @@ -import{y as u,w as d}from"./element-plus-DFTWCWyi.js";import{f as _,ak as t,I as r,a as f,aN as i,F as x,ap as V,G as h,J as k}from"./@vue/runtime-core-C6bnekPw.js";import{Q as y}from"./@vue/shared-mAAVTE9n.js";import{_ as g}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const v={class:"pages-menu"},B=_({__name:"menu",props:{menus:{type:Object,default:()=>({})},modelValue:{type:String,default:"1"}},emits:["update:modelValue"],setup(e,{emit:p}){const a=p,n=o=>{a("update:modelValue",o)};return(o,S)=>{const s=d,l=u;return t(),r("div",v,[f(l,{"default-active":e.modelValue,class:"w-[160px] min-h-[668px]",onSelect:n},{default:i(()=>[(t(!0),r(x,null,V(e.menus,(m,c)=>(t(),h(s,{index:c,key:m.id},{default:i(()=>[k("span",null,y(m.name),1)]),_:2},1032,["index"]))),128))]),_:1},8,["default-active"])])}}}),nt=g(B,[["__scopeId","data-v-99909138"]]);export{nt as default}; +import{y as u,w as d}from"./element-plus-DFTWCWyi.js";import{f as _,ak as t,I as r,a as f,aN as i,F as x,ap as V,G as h,J as k}from"./@vue/runtime-core-C6bnekPw.js";import{Q as y}from"./@vue/shared-mAAVTE9n.js";import{_ as g}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const v={class:"pages-menu"},B=_({__name:"menu",props:{menus:{type:Object,default:()=>({})},modelValue:{type:String,default:"1"}},emits:["update:modelValue"],setup(e,{emit:p}){const a=p,n=o=>{a("update:modelValue",o)};return(o,S)=>{const s=d,l=u;return t(),r("div",v,[f(l,{"default-active":e.modelValue,class:"w-[160px] min-h-[668px]",onSelect:n},{default:i(()=>[(t(!0),r(x,null,V(e.menus,(m,c)=>(t(),h(s,{index:c,key:m.id},{default:i(()=>[k("span",null,y(m.name),1)]),_:2},1032,["index"]))),128))]),_:1},8,["default-active"])])}}}),nt=g(B,[["__scopeId","data-v-99909138"]]);export{nt as default}; diff --git a/server/public/admin/assets/menu-Dcx2e7zx.js b/server/public/admin/assets/menu-Da1RBBpC.js similarity index 86% rename from server/public/admin/assets/menu-Dcx2e7zx.js rename to server/public/admin/assets/menu-Da1RBBpC.js index f6d6868d..57b24ce6 100644 --- a/server/public/admin/assets/menu-Dcx2e7zx.js +++ b/server/public/admin/assets/menu-Da1RBBpC.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function n(u){return t.get({url:"/auth.menu/lists",params:u})}function r(u){return t.get({url:"/auth.menu/all",params:u})}function a(u){return t.post({url:"/auth.menu/add",params:u})}function l(u){return t.post({url:"/auth.menu/edit",params:u})}function m(u){return t.post({url:"/auth.menu/delete",params:u})}function s(u){return t.get({url:"/auth.menu/detail",params:u})}export{n as a,l as b,a as c,s as d,m as e,r as m}; +import{r as t}from"./index--WnM67ZH.js";function n(u){return t.get({url:"/auth.menu/lists",params:u})}function r(u){return t.get({url:"/auth.menu/all",params:u})}function a(u){return t.post({url:"/auth.menu/add",params:u})}function l(u){return t.post({url:"/auth.menu/edit",params:u})}function m(u){return t.post({url:"/auth.menu/delete",params:u})}function s(u){return t.get({url:"/auth.menu/detail",params:u})}export{n as a,l as b,a as c,s as d,m as e,r as m}; diff --git a/server/public/admin/assets/menu-set-Cn6nqNTs.js b/server/public/admin/assets/menu-set-H0F6w48t.js similarity index 70% rename from server/public/admin/assets/menu-set-Cn6nqNTs.js rename to server/public/admin/assets/menu-set-H0F6w48t.js index 956bd2bc..0556a501 100644 --- a/server/public/admin/assets/menu-set-Cn6nqNTs.js +++ b/server/public/admin/assets/menu-set-H0F6w48t.js @@ -1 +1 @@ -import{_ as o}from"./menu-set.vue_vue_type_script_setup_true_lang-QbiHfNG8.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-D18gAY1e.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; +import{_ as o}from"./menu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BtiRSS_3.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";export{o as default}; diff --git a/server/public/admin/assets/menu-set.vue_vue_type_script_setup_true_lang-QbiHfNG8.js b/server/public/admin/assets/menu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js similarity index 94% rename from server/public/admin/assets/menu-set.vue_vue_type_script_setup_true_lang-QbiHfNG8.js rename to server/public/admin/assets/menu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js index e45129c7..1a89b69e 100644 --- a/server/public/admin/assets/menu-set.vue_vue_type_script_setup_true_lang-QbiHfNG8.js +++ b/server/public/admin/assets/menu-set.vue_vue_type_script_setup_true_lang-CvdF7wI9.js @@ -1 +1 @@ -import{B,C as D,g as z,i as N}from"./element-plus-DFTWCWyi.js";import{_ as $}from"./index-D18gAY1e.js";import{_ as F}from"./picker-W7EVmvPL.js";import{_ as I}from"./picker-cSgp8cEl.js";import{c as A,i as x}from"./index-Nt5zMHcc.js";import{D as P}from"./vuedraggable-5bKFmC7X.js";import{k as R}from"./lodash-es-C2A-Pj28.js";import{f as G,ak as n,I as H,J as d,a,aN as l,G as m,H as p,O as J,F as O,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{a as T,y as _}from"./@vue/reactivity-DiY1c2vO.js";const j={class:"mb-[18px] max-w-[400px]"},q={class:"bg-fill-light w-full p-4 mt-4"},K={class:"upload-btn w-[60px] h-[60px]"},L={class:"upload-btn w-[60px] h-[60px]"},M={class:"flex-1 flex items-center"},Q={class:"drag-move cursor-move ml-auto"},se=G({__name:"menu-set",props:{modelValue:{},max:{default:9999},min:{default:-1},itemData:{default:()=>({name:"",selected:"",unselected:"",is_show:"1",link:{}})}},emits:["update:modelValue"],setup(f,{emit:v}){const u=f,g=v,t=S({get(){return u.modelValue},set(i){g("update:modelValue",i)}}),k=()=>{var i;((i=t.value)==null?void 0:i.length){if(t.value.length<=u.min&&u.min>-1)return x.msgError(`最少保留${u.min}个`);t.value.splice(i,1)};return(i,s)=>{const r=A,V=I,c=B,b=D,w=F,y=z,U=$,C=N;return n(),H(O,null,[d("div",j,[a(_(P),{class:"draggable",modelValue:_(t),"onUpdate:modelValue":s[0]||(s[0]=e=>T(t)?t.value=e:null),animation:"300",handle:".drag-move","item-key":"index"},{item:l(({element:e,index:E})=>[a(U,{onClose:o=>h(E),class:"max-w-[400px]"},{default:l(()=>[d("div",q,[e.unselected!==void 0||e.selected!==void 0?(n(),m(c,{key:0,label:"导航图标"},{default:l(()=>[e.unselected!==void 0?(n(),m(V,{key:0,modelValue:e.unselected,"onUpdate:modelValue":o=>e.unselected=o,"upload-class":"bg-body","exclude-domain":"",size:"60px"},{upload:l(()=>[d("div",K,[a(r,{name:"el-icon-Plus",size:16}),s[1]||(s[1]=d("span",{class:"text-xs leading-5"}," 未选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])):p("",!0),e.selected!==void 0?(n(),m(V,{key:1,modelValue:e.selected,"onUpdate:modelValue":o=>e.selected=o,"upload-class":"bg-body","exclude-domain":"",size:"60px"},{upload:l(()=>[d("div",L,[a(r,{name:"el-icon-Plus",size:16}),s[2]||(s[2]=d("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])):p("",!0)]),_:2},1024)):p("",!0),e.name!==void 0?(n(),m(c,{key:1,label:"导航名称"},{default:l(()=>[a(b,{modelValue:e.name,"onUpdate:modelValue":o=>e.name=o,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)):p("",!0),e.link!==void 0?(n(),m(c,{key:2,label:"链接地址"},{default:l(()=>[a(w,{modelValue:e.link,"onUpdate:modelValue":o=>e.link=o,type:"pc"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)):p("",!0),e.is_show!==void 0?(n(),m(c,{key:3,label:"是否显示"},{default:l(()=>[d("div",M,[a(y,{modelValue:e.is_show,"onUpdate:modelValue":o=>e.is_show=o,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),d("div",Q,[a(r,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)):p("",!0)])]),_:2},1032,["onClose"])]),_:1},8,["modelValue"])]),_(t).length[a(C,{type:"primary",onClick:k},{default:l(()=>[...s[3]||(s[3]=[J(" 添加导航 ",-1)])]),_:1})]),_:1})):p("",!0)],64)}}});export{se as _}; +import{B,C as D,g as z,i as N}from"./element-plus-DFTWCWyi.js";import{_ as $}from"./index-BtiRSS_3.js";import{_ as F}from"./picker-Btcf59sz.js";import{_ as I}from"./picker-DzCeqD7m.js";import{c as A,i as x}from"./index--WnM67ZH.js";import{D as P}from"./vuedraggable-5bKFmC7X.js";import{k as R}from"./lodash-es-C2A-Pj28.js";import{f as G,ak as n,I as H,J as d,a,aN as l,G as m,H as p,O as J,F as O,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{a as T,y as _}from"./@vue/reactivity-DiY1c2vO.js";const j={class:"mb-[18px] max-w-[400px]"},q={class:"bg-fill-light w-full p-4 mt-4"},K={class:"upload-btn w-[60px] h-[60px]"},L={class:"upload-btn w-[60px] h-[60px]"},M={class:"flex-1 flex items-center"},Q={class:"drag-move cursor-move ml-auto"},se=G({__name:"menu-set",props:{modelValue:{},max:{default:9999},min:{default:-1},itemData:{default:()=>({name:"",selected:"",unselected:"",is_show:"1",link:{}})}},emits:["update:modelValue"],setup(f,{emit:v}){const u=f,g=v,t=S({get(){return u.modelValue},set(i){g("update:modelValue",i)}}),k=()=>{var i;((i=t.value)==null?void 0:i.length){if(t.value.length<=u.min&&u.min>-1)return x.msgError(`最少保留${u.min}个`);t.value.splice(i,1)};return(i,s)=>{const r=A,V=I,c=B,b=D,w=F,y=z,U=$,C=N;return n(),H(O,null,[d("div",j,[a(_(P),{class:"draggable",modelValue:_(t),"onUpdate:modelValue":s[0]||(s[0]=e=>T(t)?t.value=e:null),animation:"300",handle:".drag-move","item-key":"index"},{item:l(({element:e,index:E})=>[a(U,{onClose:o=>h(E),class:"max-w-[400px]"},{default:l(()=>[d("div",q,[e.unselected!==void 0||e.selected!==void 0?(n(),m(c,{key:0,label:"导航图标"},{default:l(()=>[e.unselected!==void 0?(n(),m(V,{key:0,modelValue:e.unselected,"onUpdate:modelValue":o=>e.unselected=o,"upload-class":"bg-body","exclude-domain":"",size:"60px"},{upload:l(()=>[d("div",K,[a(r,{name:"el-icon-Plus",size:16}),s[1]||(s[1]=d("span",{class:"text-xs leading-5"}," 未选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])):p("",!0),e.selected!==void 0?(n(),m(V,{key:1,modelValue:e.selected,"onUpdate:modelValue":o=>e.selected=o,"upload-class":"bg-body","exclude-domain":"",size:"60px"},{upload:l(()=>[d("div",L,[a(r,{name:"el-icon-Plus",size:16}),s[2]||(s[2]=d("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])):p("",!0)]),_:2},1024)):p("",!0),e.name!==void 0?(n(),m(c,{key:1,label:"导航名称"},{default:l(()=>[a(b,{modelValue:e.name,"onUpdate:modelValue":o=>e.name=o,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)):p("",!0),e.link!==void 0?(n(),m(c,{key:2,label:"链接地址"},{default:l(()=>[a(w,{modelValue:e.link,"onUpdate:modelValue":o=>e.link=o,type:"pc"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)):p("",!0),e.is_show!==void 0?(n(),m(c,{key:3,label:"是否显示"},{default:l(()=>[d("div",M,[a(y,{modelValue:e.is_show,"onUpdate:modelValue":o=>e.is_show=o,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),d("div",Q,[a(r,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)):p("",!0)])]),_:2},1032,["onClose"])]),_:1},8,["modelValue"])]),_(t).length[a(C,{type:"primary",onClick:k},{default:l(()=>[...s[3]||(s[3]=[J(" 添加导航 ",-1)])]),_:1})]),_:1})):p("",!0)],64)}}});export{se as _}; diff --git a/server/public/admin/assets/message-DMZbcMZ3.js b/server/public/admin/assets/message-E3FypG9J.js similarity index 87% rename from server/public/admin/assets/message-DMZbcMZ3.js rename to server/public/admin/assets/message-E3FypG9J.js index ac1c9ba7..47141be2 100644 --- a/server/public/admin/assets/message-DMZbcMZ3.js +++ b/server/public/admin/assets/message-E3FypG9J.js @@ -1 +1 @@ -import{r as n}from"./index-Nt5zMHcc.js";function i(t){return n.get({url:"/notice.notice/settingLists",params:t})}function s(t){return n.get({url:"/notice.notice/detail",params:t})}function o(t){return n.post({url:"/notice.notice/set",params:t})}function r(){return n.get({url:"/notice.sms_config/getConfig"})}function c(t){return n.get({url:"/notice.sms_config/detail",params:t})}function u(t){return n.post({url:"/notice.sms_config/setConfig",params:t})}export{i as a,u as b,c,r as d,s as n,o as s}; +import{r as n}from"./index--WnM67ZH.js";function i(t){return n.get({url:"/notice.notice/settingLists",params:t})}function s(t){return n.get({url:"/notice.notice/detail",params:t})}function o(t){return n.post({url:"/notice.notice/set",params:t})}function r(){return n.get({url:"/notice.sms_config/getConfig"})}function c(t){return n.get({url:"/notice.sms_config/detail",params:t})}function u(t){return n.post({url:"/notice.sms_config/setConfig",params:t})}export{i as a,u as b,c,r as d,s as n,o as s}; diff --git a/server/public/admin/assets/mobile-style-DMyb-tD1.js b/server/public/admin/assets/mobile-style-4_UCVEqX.js similarity index 91% rename from server/public/admin/assets/mobile-style-DMyb-tD1.js rename to server/public/admin/assets/mobile-style-4_UCVEqX.js index 38d8f85d..67bd52d5 100644 --- a/server/public/admin/assets/mobile-style-DMyb-tD1.js +++ b/server/public/admin/assets/mobile-style-4_UCVEqX.js @@ -1 +1 @@ -import{_ as o}from"./mobile-style.vue_vue_type_script_setup_true_lang-CvaVjBKl.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./theme-picker-BmoSb7ra.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./mobile-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./theme-picker-6MJIe8r7.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/mobile-style.vue_vue_type_script_setup_true_lang-CvaVjBKl.js b/server/public/admin/assets/mobile-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js similarity index 98% rename from server/public/admin/assets/mobile-style.vue_vue_type_script_setup_true_lang-CvaVjBKl.js rename to server/public/admin/assets/mobile-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js index 4e7de6f8..53e6783c 100644 --- a/server/public/admin/assets/mobile-style.vue_vue_type_script_setup_true_lang-CvaVjBKl.js +++ b/server/public/admin/assets/mobile-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js @@ -1 +1 @@ -import{B as k,G as B,I,D as y}from"./element-plus-DFTWCWyi.js";import{_ as D}from"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import{d as E}from"./@vueuse/core-1S4fJlii.js";import N from"./theme-picker-BmoSb7ra.js";import{f as T,ak as m,G as c,aN as n,J as o,a as t,O as C,H as i,I as d}from"./@vue/runtime-core-C6bnekPw.js";import{y as e,n as z}from"./@vue/reactivity-DiY1c2vO.js";const U="/admin/assets/blue1-gLOo1H0w.png",q="/admin/assets/blue2-CRQPdLZd.png",P="/admin/assets/blue3-D3K9OqGO.png",G="/admin/assets/green1-h1zqes95.png",O="/admin/assets/green2-C-VRKLSN.png",L="/admin/assets/green3-CPorIQiC.png",R="/admin/assets/purple1-BpMq9FWz.png",W="/admin/assets/purple2-C0tQkldV.png",K="/admin/assets/purple3-BGd0LxTa.png",Q="/admin/assets/yellow1-Ebw0T5sw.png",Z="/admin/assets/yellow2-B-WtqITJ.png",A="/admin/assets/yellow3-C_qd9cqN.png",H="/admin/assets/red1-C6Y3UuNB.png",J="/admin/assets/red2-Dw8p71sP.png",M="/admin/assets/red3-NOuWP8DK.png",S="/admin/assets/pink1-BWNZrP7C.png",Y="/admin/assets/pink2-BpEp33zy.png",$="/admin/assets/pink3-BxZ4Y6CS.png",j={key:0,class:"flex"},X={key:1,class:"flex"},h={key:2,class:"flex"},ll={key:3,class:"flex"},ol={key:4,class:"flex"},sl={key:5,class:"flex"},il=T({__name:"mobile-style",props:{modelValue:{}},emits:["update:modelValue"],setup(_,{emit:f}){const w=_,v=z([{id:1,name:"科技蓝",color1:"#2F80ED",color2:"#56CCF2",btnColor:"white"},{id:2,name:"偏绿蓝",color1:"#2EC840",color2:"#3DE650",btnColor:"white"},{id:3,name:"商务紫",color1:"#A74BFD",color2:"#CB60FF",btnColor:"white"},{id:4,name:"活力橙",color1:"#F7971E",color2:"#FFD200",btnColor:"black"},{id:5,name:"经典红",color1:"#FF2C3C",color2:"#EF1D2D",btnColor:"white"},{id:6,name:"美妆色",color1:"#FD498F",color2:"#FA444D",btnColor:"white"},{id:7,name:"自定义",color1:"#F8F8F8",color2:"#F5F5F5",btnColor:"white"}]),F=f,b=a=>{a.id!=7&&(s.value.themeColor1=a.color1,s.value.themeColor2=a.color2,s.value.navigationBarColor=a.color1,s.value.buttonColor=a.btnColor,s.value.topTextColor=a.btnColor)},s=E(w,"modelValue",F);return(a,l)=>{const p=k,u=I,g=B,x=D,V=y;return m(),c(V,{"label-width":"140px"},{default:n(()=>[o("div",null,[l[6]||(l[6]=o("div",{class:"text-xl font-medium mb-[20px]"},"系统主题色",-1)),t(p,{"label-width":"50"},{default:n(()=>[t(N,{modelValue:e(s).themeColorId,"onUpdate:modelValue":l[0]||(l[0]=r=>e(s).themeColorId=r),"theme-colors":e(v),onChange:b},null,8,["modelValue","theme-colors"])]),_:1})]),o("div",null,[l[14]||(l[14]=o("div",{class:"text-xl font-medium mt-[40px] mb-[20px]"},"样式设置",-1)),t(p,{label:"导航顶部文字颜色"},{default:n(()=>[o("div",null,[t(g,{modelValue:e(s).topTextColor,"onUpdate:modelValue":l[1]||(l[1]=r=>e(s).topTextColor=r)},{default:n(()=>[t(u,{value:"white",size:"large"},{default:n(()=>[...l[7]||(l[7]=[C("白色",-1)])]),_:1}),t(u,{value:"black",size:"large"},{default:n(()=>[...l[8]||(l[8]=[C("黑色",-1)])]),_:1})]),_:1},8,["modelValue"]),l[9]||(l[9]=o("div",null,[o("span",{class:"form-tips"},"页面导航栏文字的颜色")],-1))])]),_:1}),t(p,{label:"导航顶部背景颜色"},{default:n(()=>[o("div",null,[t(x,{resetColor:e(s).themeColor1,modelValue:e(s).navigationBarColor,"onUpdate:modelValue":l[2]||(l[2]=r=>e(s).navigationBarColor=r)},null,8,["resetColor","modelValue"]),l[10]||(l[10]=o("div",null,[o("span",{class:"form-tips"}," 页面顶部导航栏背景颜色,不设置则跟随主题色 ")],-1))])]),_:1}),e(s).themeColorId==7?(m(),c(p,{key:0,label:"自定义主题颜色"},{default:n(()=>[o("div",null,[t(x,{modelValue:e(s).themeColor1,"onUpdate:modelValue":l[3]||(l[3]=r=>e(s).themeColor1=r),"default-color":"#F8F8F8"},null,8,["modelValue"]),t(x,{modelValue:e(s).themeColor2,"onUpdate:modelValue":l[4]||(l[4]=r=>e(s).themeColor2=r),"default-color":"#F8F8F8",class:"mt-2"},null,8,["modelValue"]),l[11]||(l[11]=o("div",null,[o("span",{class:"form-tips"},"自定义主题渐变色,用于按钮类和主要文字")],-1))])]),_:1})):i("",!0),t(p,{label:"按钮文字颜色"},{default:n(()=>[o("div",null,[t(g,{modelValue:e(s).buttonColor,"onUpdate:modelValue":l[5]||(l[5]=r=>e(s).buttonColor=r)},{default:n(()=>[t(u,{value:"white",size:"large"},{default:n(()=>[...l[12]||(l[12]=[C("白色",-1)])]),_:1}),t(u,{value:"black",size:"large"},{default:n(()=>[...l[13]||(l[13]=[C("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])])]),_:1})]),o("div",null,[e(s).themeColorId==1?(m(),d("div",j,[...l[15]||(l[15]=[o("img",{class:"w-[200px]",src:U},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:q},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:P},null,-1)])])):i("",!0),e(s).themeColorId==2?(m(),d("div",X,[...l[16]||(l[16]=[o("img",{class:"w-[200px]",src:G},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:O},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:L},null,-1)])])):i("",!0),e(s).themeColorId==3?(m(),d("div",h,[...l[17]||(l[17]=[o("img",{class:"w-[200px]",src:R},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:W},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:K},null,-1)])])):i("",!0),e(s).themeColorId==4?(m(),d("div",ll,[...l[18]||(l[18]=[o("img",{class:"w-[200px]",src:Q},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:Z},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:A},null,-1)])])):i("",!0),e(s).themeColorId==5?(m(),d("div",ol,[...l[19]||(l[19]=[o("img",{class:"w-[200px]",src:H},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:J},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:M},null,-1)])])):i("",!0),e(s).themeColorId==6?(m(),d("div",sl,[...l[20]||(l[20]=[o("img",{class:"w-[200px]",src:S},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:Y},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:$},null,-1)])])):i("",!0)])]),_:1})}}});export{il as _}; +import{B as k,G as B,I,D as y}from"./element-plus-DFTWCWyi.js";import{_ as D}from"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import{d as E}from"./@vueuse/core-1S4fJlii.js";import N from"./theme-picker-6MJIe8r7.js";import{f as T,ak as m,G as c,aN as n,J as o,a as t,O as C,H as i,I as d}from"./@vue/runtime-core-C6bnekPw.js";import{y as e,n as z}from"./@vue/reactivity-DiY1c2vO.js";const U="/admin/assets/blue1-gLOo1H0w.png",q="/admin/assets/blue2-CRQPdLZd.png",P="/admin/assets/blue3-D3K9OqGO.png",G="/admin/assets/green1-h1zqes95.png",O="/admin/assets/green2-C-VRKLSN.png",L="/admin/assets/green3-CPorIQiC.png",R="/admin/assets/purple1-BpMq9FWz.png",W="/admin/assets/purple2-C0tQkldV.png",K="/admin/assets/purple3-BGd0LxTa.png",Q="/admin/assets/yellow1-Ebw0T5sw.png",Z="/admin/assets/yellow2-B-WtqITJ.png",A="/admin/assets/yellow3-C_qd9cqN.png",H="/admin/assets/red1-C6Y3UuNB.png",J="/admin/assets/red2-Dw8p71sP.png",M="/admin/assets/red3-NOuWP8DK.png",S="/admin/assets/pink1-BWNZrP7C.png",Y="/admin/assets/pink2-BpEp33zy.png",$="/admin/assets/pink3-BxZ4Y6CS.png",j={key:0,class:"flex"},X={key:1,class:"flex"},h={key:2,class:"flex"},ll={key:3,class:"flex"},ol={key:4,class:"flex"},sl={key:5,class:"flex"},il=T({__name:"mobile-style",props:{modelValue:{}},emits:["update:modelValue"],setup(_,{emit:f}){const w=_,v=z([{id:1,name:"科技蓝",color1:"#2F80ED",color2:"#56CCF2",btnColor:"white"},{id:2,name:"偏绿蓝",color1:"#2EC840",color2:"#3DE650",btnColor:"white"},{id:3,name:"商务紫",color1:"#A74BFD",color2:"#CB60FF",btnColor:"white"},{id:4,name:"活力橙",color1:"#F7971E",color2:"#FFD200",btnColor:"black"},{id:5,name:"经典红",color1:"#FF2C3C",color2:"#EF1D2D",btnColor:"white"},{id:6,name:"美妆色",color1:"#FD498F",color2:"#FA444D",btnColor:"white"},{id:7,name:"自定义",color1:"#F8F8F8",color2:"#F5F5F5",btnColor:"white"}]),F=f,b=a=>{a.id!=7&&(s.value.themeColor1=a.color1,s.value.themeColor2=a.color2,s.value.navigationBarColor=a.color1,s.value.buttonColor=a.btnColor,s.value.topTextColor=a.btnColor)},s=E(w,"modelValue",F);return(a,l)=>{const p=k,u=I,g=B,x=D,V=y;return m(),c(V,{"label-width":"140px"},{default:n(()=>[o("div",null,[l[6]||(l[6]=o("div",{class:"text-xl font-medium mb-[20px]"},"系统主题色",-1)),t(p,{"label-width":"50"},{default:n(()=>[t(N,{modelValue:e(s).themeColorId,"onUpdate:modelValue":l[0]||(l[0]=r=>e(s).themeColorId=r),"theme-colors":e(v),onChange:b},null,8,["modelValue","theme-colors"])]),_:1})]),o("div",null,[l[14]||(l[14]=o("div",{class:"text-xl font-medium mt-[40px] mb-[20px]"},"样式设置",-1)),t(p,{label:"导航顶部文字颜色"},{default:n(()=>[o("div",null,[t(g,{modelValue:e(s).topTextColor,"onUpdate:modelValue":l[1]||(l[1]=r=>e(s).topTextColor=r)},{default:n(()=>[t(u,{value:"white",size:"large"},{default:n(()=>[...l[7]||(l[7]=[C("白色",-1)])]),_:1}),t(u,{value:"black",size:"large"},{default:n(()=>[...l[8]||(l[8]=[C("黑色",-1)])]),_:1})]),_:1},8,["modelValue"]),l[9]||(l[9]=o("div",null,[o("span",{class:"form-tips"},"页面导航栏文字的颜色")],-1))])]),_:1}),t(p,{label:"导航顶部背景颜色"},{default:n(()=>[o("div",null,[t(x,{resetColor:e(s).themeColor1,modelValue:e(s).navigationBarColor,"onUpdate:modelValue":l[2]||(l[2]=r=>e(s).navigationBarColor=r)},null,8,["resetColor","modelValue"]),l[10]||(l[10]=o("div",null,[o("span",{class:"form-tips"}," 页面顶部导航栏背景颜色,不设置则跟随主题色 ")],-1))])]),_:1}),e(s).themeColorId==7?(m(),c(p,{key:0,label:"自定义主题颜色"},{default:n(()=>[o("div",null,[t(x,{modelValue:e(s).themeColor1,"onUpdate:modelValue":l[3]||(l[3]=r=>e(s).themeColor1=r),"default-color":"#F8F8F8"},null,8,["modelValue"]),t(x,{modelValue:e(s).themeColor2,"onUpdate:modelValue":l[4]||(l[4]=r=>e(s).themeColor2=r),"default-color":"#F8F8F8",class:"mt-2"},null,8,["modelValue"]),l[11]||(l[11]=o("div",null,[o("span",{class:"form-tips"},"自定义主题渐变色,用于按钮类和主要文字")],-1))])]),_:1})):i("",!0),t(p,{label:"按钮文字颜色"},{default:n(()=>[o("div",null,[t(g,{modelValue:e(s).buttonColor,"onUpdate:modelValue":l[5]||(l[5]=r=>e(s).buttonColor=r)},{default:n(()=>[t(u,{value:"white",size:"large"},{default:n(()=>[...l[12]||(l[12]=[C("白色",-1)])]),_:1}),t(u,{value:"black",size:"large"},{default:n(()=>[...l[13]||(l[13]=[C("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])])]),_:1})]),o("div",null,[e(s).themeColorId==1?(m(),d("div",j,[...l[15]||(l[15]=[o("img",{class:"w-[200px]",src:U},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:q},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:P},null,-1)])])):i("",!0),e(s).themeColorId==2?(m(),d("div",X,[...l[16]||(l[16]=[o("img",{class:"w-[200px]",src:G},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:O},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:L},null,-1)])])):i("",!0),e(s).themeColorId==3?(m(),d("div",h,[...l[17]||(l[17]=[o("img",{class:"w-[200px]",src:R},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:W},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:K},null,-1)])])):i("",!0),e(s).themeColorId==4?(m(),d("div",ll,[...l[18]||(l[18]=[o("img",{class:"w-[200px]",src:Q},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:Z},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:A},null,-1)])])):i("",!0),e(s).themeColorId==5?(m(),d("div",ol,[...l[19]||(l[19]=[o("img",{class:"w-[200px]",src:H},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:J},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:M},null,-1)])])):i("",!0),e(s).themeColorId==6?(m(),d("div",sl,[...l[20]||(l[20]=[o("img",{class:"w-[200px]",src:S},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:Y},null,-1),o("img",{class:"w-[200px] ml-[30px]",src:$},null,-1)])])):i("",!0)])]),_:1})}}});export{il as _}; diff --git a/server/public/admin/assets/mubiao-BtoeHWr-.js b/server/public/admin/assets/mubiao-KkfmSA0m.js similarity index 97% rename from server/public/admin/assets/mubiao-BtoeHWr-.js rename to server/public/admin/assets/mubiao-KkfmSA0m.js index a7c09275..3efea676 100644 --- a/server/public/admin/assets/mubiao-BtoeHWr-.js +++ b/server/public/admin/assets/mubiao-KkfmSA0m.js @@ -1 +1 @@ -import{d as Q,a2 as U,i as W,L as j}from"./element-plus-DFTWCWyi.js";import{a as q}from"./@vue/runtime-dom-DDAG46FW.js";import{a4 as H,L as B,f as K,a5 as X}from"./@element-plus/icons-vue-HOEUG8sr.js";import I from"./mubiao-dept-card-A7mXprh1.js";import{d as Z,i as tt}from"./finance-L1-WPbJt.js";import{i as F,_ as et}from"./index-Nt5zMHcc.js";import{f as z,b as at,as as ot,ak as r,I as f,J as a,a as i,aN as s,O as g,aP as L,G as x,F as T,ap as V,A as Y}from"./@vue/runtime-core-C6bnekPw.js";import{n as _,y}from"./@vue/reactivity-DiY1c2vO.js";import{Q as b}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const lt={class:"mubiao-page"},it={class:"toolbar"},nt={class:"toolbar__left"},rt={class:"toolbar__icon"},st={class:"toolbar__center"},dt={class:"month-picker-wrap"},ut={class:"toolbar__right"},mt={class:"summary-strip"},ct={class:"summary-item"},_t={class:"summary-item__val"},pt={class:"summary-item"},ft={class:"summary-item__val primary"},vt={"element-loading-text":"数据加载中…",class:"board-wrap"},ht={key:0,class:"empty-state"},gt={class:"empty-state__icon"},yt={class:"empty-state__title"},bt={class:"empty-state__desc"},kt={key:1,class:"board-grid"},wt=z({name:"financeMubiao"}),St=z({...wt,setup(xt){function k(t){const e={dept_id:Number(t.dept_id??0),dept_name:String(t.dept_name??""),dept_path:String(t.dept_path??""),target_id:Number(t.target_id??0),target_amount:Number(t.target_amount??0),remark:String(t.remark??"")},o=t.children;return Array.isArray(o)&&o.length>0&&(e.children=o.map(k)),e}function C(t){var o;let e=0;for(const l of t)e+=Number(l.target_amount??0),(o=l.children)!=null&&o.length&&(e+=C(l.children));return Math.round(e*100)/100}function M(t){var o;let e=0;for(const l of t)e+=1,(o=l.children)!=null&&o.length&&(e+=M(l.children));return e}function D(t){var o;const e=[];for(const l of t)e.push({dept_id:l.dept_id,target_amount:Number(l.target_amount??0),remark:l.remark||""}),(o=l.children)!=null&&o.length&&e.push(...D(l.children));return e}function E(){const t=new Date;return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`}function P(t){return t>=1e4?(t/1e4).toFixed(1)+"w":t.toLocaleString("zh-CN",{maximumFractionDigits:0})}const d=_(E()),p=_(!1),w=_(!1),u=_([]),v=_(!1),n=_([]),c=_(null),A=Y(()=>C(u.value)),$=Y(()=>M(u.value));function N(t){if(n.value.some(e=>e.dept_id===t.dept_id)){c.value=t.dept_id;return}n.value.push(t),c.value=t.dept_id}function G(t){const e=n.value.findIndex(o=>o.dept_id===t);e!==-1&&n.value.splice(e),c.value=n.value.length>0?n.value[n.value.length-1].dept_id:null}async function h(){if(d.value){p.value=!0,n.value=[],c.value=null;try{const t=await Z({year_month:d.value});u.value=((t==null?void 0:t.rows)||[]).map(k),v.value=!!(t!=null&&t.data_scope_limited)}catch{u.value=[],v.value=!1}finally{p.value=!1}}}async function R(){if(!d.value){F.msgWarning("请选择月份");return}await F.confirm("确认保存「"+d.value+"」各部门业绩目标?"),w.value=!0;try{const t=await tt({year_month:d.value,items:D(u.value)});t!=null&&t.rows?(u.value=t.rows.map(k),v.value=!!(t!=null&&t.data_scope_limited),n.value=[],c.value=null):await h()}finally{w.value=!1}}return at(h),(t,e)=>{const o=Q,l=U,S=W,J=ot("perms"),O=j;return r(),f("div",lt,[a("div",it,[a("div",nt,[a("div",rt,[i(o,null,{default:s(()=>[i(y(H))]),_:1})]),e[1]||(e[1]=a("div",null,[a("div",{class:"toolbar__title"},"制定业绩目标"),a("div",{class:"toolbar__desc"},[g(" 按部门设置每月销售目标,填 0 并保存将删除该记录。列表按当前账号 "),a("strong",null,"角色数据权限"),g(" 仅展示"),a("strong",null,"本部门及下级"),g("(不展示权限外的上级组织;口径与业绩看板数据范围一致)。 ")])],-1))]),a("div",st,[a("div",dt,[e[2]||(e[2]=a("span",{class:"month-picker-wrap__label"},"目标月份",-1)),i(l,{modelValue:d.value,"onUpdate:modelValue":e[0]||(e[0]=m=>d.value=m),type:"month","value-format":"YYYY-MM",placeholder:"选择月份",clearable:!1,size:"default",class:"month-picker",onChange:h},null,8,["modelValue"])])]),a("div",ut,[a("div",mt,[a("div",ct,[a("span",_t,b($.value),1),e[3]||(e[3]=a("span",{class:"summary-item__label"},"部门",-1))]),e[5]||(e[5]=a("div",{class:"summary-divider"},null,-1)),a("div",pt,[a("span",ft,"¥"+b(P(A.value)),1),e[4]||(e[4]=a("span",{class:"summary-item__label"},"目标合计",-1))])]),i(S,{circle:"",loading:p.value,onClick:h,title:"刷新"},{default:s(()=>[i(o,null,{default:s(()=>[i(y(B))]),_:1})]),_:1},8,["loading"]),L((r(),x(S,{type:"primary",loading:w.value,disabled:p.value||!d.value,onClick:R},{default:s(()=>[i(o,null,{default:s(()=>[i(y(K))]),_:1}),e[6]||(e[6]=g("保存目标 ",-1))]),_:1},8,["loading","disabled"])),[[J,["finance.dept_performance_target/batchSave"]]])])]),L((r(),f("div",vt,[!p.value&&u.value.length===0?(r(),f("div",ht,[a("div",gt,[i(o,null,{default:s(()=>[i(y(X))]),_:1})]),a("p",yt,b(v.value?"数据权限内无可选部门":"暂无部门数据"),1),a("p",bt,b(v.value?"当前角色数据范围未包含任何部门,或需在权限中绑定部门后再试。":"请检查部门配置后重试"),1),i(S,{size:"small",onClick:h},{default:s(()=>[i(o,null,{default:s(()=>[i(y(B))]),_:1}),e[7]||(e[7]=g("重新加载",-1))]),_:1})])):(r(),f("div",kt,[i(q,{name:"card",tag:"div",class:"board-grid__inner"},{default:s(()=>[(r(!0),f(T,null,V(u.value,m=>(r(),x(I,{key:"root-"+m.dept_id,node:m,"is-root":!0,"drilled-id":c.value,onDrillIn:N},null,8,["node","drilled-id"]))),128)),(r(!0),f(T,null,V(n.value,m=>(r(),x(I,{key:"drill-"+m.dept_id,node:m,"is-root":!1,"drilled-id":c.value,class:"card--drilled",onDrillIn:N,onClose:Ct=>G(m.dept_id)},null,8,["node","drilled-id","onClose"]))),128))]),_:1})]))])),[[O,p.value]])])}}}),me=et(St,[["__scopeId","data-v-9d32b132"]]);export{me as default}; +import{d as Q,a2 as U,i as W,L as j}from"./element-plus-DFTWCWyi.js";import{a as q}from"./@vue/runtime-dom-DDAG46FW.js";import{a4 as H,L as B,f as K,a5 as X}from"./@element-plus/icons-vue-HOEUG8sr.js";import I from"./mubiao-dept-card-CbtPJAzl.js";import{d as Z,i as tt}from"./finance-CuL8jhJS.js";import{i as F,_ as et}from"./index--WnM67ZH.js";import{f as z,b as at,as as ot,ak as r,I as f,J as a,a as i,aN as s,O as g,aP as L,G as x,F as T,ap as V,A as Y}from"./@vue/runtime-core-C6bnekPw.js";import{n as _,y}from"./@vue/reactivity-DiY1c2vO.js";import{Q as b}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const lt={class:"mubiao-page"},it={class:"toolbar"},nt={class:"toolbar__left"},rt={class:"toolbar__icon"},st={class:"toolbar__center"},dt={class:"month-picker-wrap"},ut={class:"toolbar__right"},mt={class:"summary-strip"},ct={class:"summary-item"},_t={class:"summary-item__val"},pt={class:"summary-item"},ft={class:"summary-item__val primary"},vt={"element-loading-text":"数据加载中…",class:"board-wrap"},ht={key:0,class:"empty-state"},gt={class:"empty-state__icon"},yt={class:"empty-state__title"},bt={class:"empty-state__desc"},kt={key:1,class:"board-grid"},wt=z({name:"financeMubiao"}),St=z({...wt,setup(xt){function k(t){const e={dept_id:Number(t.dept_id??0),dept_name:String(t.dept_name??""),dept_path:String(t.dept_path??""),target_id:Number(t.target_id??0),target_amount:Number(t.target_amount??0),remark:String(t.remark??"")},o=t.children;return Array.isArray(o)&&o.length>0&&(e.children=o.map(k)),e}function C(t){var o;let e=0;for(const l of t)e+=Number(l.target_amount??0),(o=l.children)!=null&&o.length&&(e+=C(l.children));return Math.round(e*100)/100}function M(t){var o;let e=0;for(const l of t)e+=1,(o=l.children)!=null&&o.length&&(e+=M(l.children));return e}function D(t){var o;const e=[];for(const l of t)e.push({dept_id:l.dept_id,target_amount:Number(l.target_amount??0),remark:l.remark||""}),(o=l.children)!=null&&o.length&&e.push(...D(l.children));return e}function E(){const t=new Date;return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`}function P(t){return t>=1e4?(t/1e4).toFixed(1)+"w":t.toLocaleString("zh-CN",{maximumFractionDigits:0})}const d=_(E()),p=_(!1),w=_(!1),u=_([]),v=_(!1),n=_([]),c=_(null),A=Y(()=>C(u.value)),$=Y(()=>M(u.value));function N(t){if(n.value.some(e=>e.dept_id===t.dept_id)){c.value=t.dept_id;return}n.value.push(t),c.value=t.dept_id}function G(t){const e=n.value.findIndex(o=>o.dept_id===t);e!==-1&&n.value.splice(e),c.value=n.value.length>0?n.value[n.value.length-1].dept_id:null}async function h(){if(d.value){p.value=!0,n.value=[],c.value=null;try{const t=await Z({year_month:d.value});u.value=((t==null?void 0:t.rows)||[]).map(k),v.value=!!(t!=null&&t.data_scope_limited)}catch{u.value=[],v.value=!1}finally{p.value=!1}}}async function R(){if(!d.value){F.msgWarning("请选择月份");return}await F.confirm("确认保存「"+d.value+"」各部门业绩目标?"),w.value=!0;try{const t=await tt({year_month:d.value,items:D(u.value)});t!=null&&t.rows?(u.value=t.rows.map(k),v.value=!!(t!=null&&t.data_scope_limited),n.value=[],c.value=null):await h()}finally{w.value=!1}}return at(h),(t,e)=>{const o=Q,l=U,S=W,J=ot("perms"),O=j;return r(),f("div",lt,[a("div",it,[a("div",nt,[a("div",rt,[i(o,null,{default:s(()=>[i(y(H))]),_:1})]),e[1]||(e[1]=a("div",null,[a("div",{class:"toolbar__title"},"制定业绩目标"),a("div",{class:"toolbar__desc"},[g(" 按部门设置每月销售目标,填 0 并保存将删除该记录。列表按当前账号 "),a("strong",null,"角色数据权限"),g(" 仅展示"),a("strong",null,"本部门及下级"),g("(不展示权限外的上级组织;口径与业绩看板数据范围一致)。 ")])],-1))]),a("div",st,[a("div",dt,[e[2]||(e[2]=a("span",{class:"month-picker-wrap__label"},"目标月份",-1)),i(l,{modelValue:d.value,"onUpdate:modelValue":e[0]||(e[0]=m=>d.value=m),type:"month","value-format":"YYYY-MM",placeholder:"选择月份",clearable:!1,size:"default",class:"month-picker",onChange:h},null,8,["modelValue"])])]),a("div",ut,[a("div",mt,[a("div",ct,[a("span",_t,b($.value),1),e[3]||(e[3]=a("span",{class:"summary-item__label"},"部门",-1))]),e[5]||(e[5]=a("div",{class:"summary-divider"},null,-1)),a("div",pt,[a("span",ft,"¥"+b(P(A.value)),1),e[4]||(e[4]=a("span",{class:"summary-item__label"},"目标合计",-1))])]),i(S,{circle:"",loading:p.value,onClick:h,title:"刷新"},{default:s(()=>[i(o,null,{default:s(()=>[i(y(B))]),_:1})]),_:1},8,["loading"]),L((r(),x(S,{type:"primary",loading:w.value,disabled:p.value||!d.value,onClick:R},{default:s(()=>[i(o,null,{default:s(()=>[i(y(K))]),_:1}),e[6]||(e[6]=g("保存目标 ",-1))]),_:1},8,["loading","disabled"])),[[J,["finance.dept_performance_target/batchSave"]]])])]),L((r(),f("div",vt,[!p.value&&u.value.length===0?(r(),f("div",ht,[a("div",gt,[i(o,null,{default:s(()=>[i(y(X))]),_:1})]),a("p",yt,b(v.value?"数据权限内无可选部门":"暂无部门数据"),1),a("p",bt,b(v.value?"当前角色数据范围未包含任何部门,或需在权限中绑定部门后再试。":"请检查部门配置后重试"),1),i(S,{size:"small",onClick:h},{default:s(()=>[i(o,null,{default:s(()=>[i(y(B))]),_:1}),e[7]||(e[7]=g("重新加载",-1))]),_:1})])):(r(),f("div",kt,[i(q,{name:"card",tag:"div",class:"board-grid__inner"},{default:s(()=>[(r(!0),f(T,null,V(u.value,m=>(r(),x(I,{key:"root-"+m.dept_id,node:m,"is-root":!0,"drilled-id":c.value,onDrillIn:N},null,8,["node","drilled-id"]))),128)),(r(!0),f(T,null,V(n.value,m=>(r(),x(I,{key:"drill-"+m.dept_id,node:m,"is-root":!1,"drilled-id":c.value,class:"card--drilled",onDrillIn:N,onClose:Ct=>G(m.dept_id)},null,8,["node","drilled-id","onClose"]))),128))]),_:1})]))])),[[O,p.value]])])}}}),me=et(St,[["__scopeId","data-v-9d32b132"]]);export{me as default}; diff --git a/server/public/admin/assets/mubiao-dept-card-A7mXprh1.js b/server/public/admin/assets/mubiao-dept-card-CbtPJAzl.js similarity index 99% rename from server/public/admin/assets/mubiao-dept-card-A7mXprh1.js rename to server/public/admin/assets/mubiao-dept-card-CbtPJAzl.js index 33d403b0..eb283e0e 100644 --- a/server/public/admin/assets/mubiao-dept-card-A7mXprh1.js +++ b/server/public/admin/assets/mubiao-dept-card-CbtPJAzl.js @@ -1 +1 @@ -import{d as R,h as A,C as G,T as H}from"./element-plus-DFTWCWyi.js";import{g as S,c as J}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as O,ak as n,I as d,F as h,ap as E,J as t,G as F,aN as b,a as m,H as c,O as U,A as u}from"./@vue/runtime-core-C6bnekPw.js";import{o as v,Q as s,p as Q}from"./@vue/shared-mAAVTE9n.js";import{y as w}from"./@vue/reactivity-DiY1c2vO.js";import{_ as j}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const q={key:0,class:"dept-card__crumb"},K={class:"crumb-seg__text"},P={class:"dept-card__header"},W={class:"dept-card__meta"},X={class:"dept-card__name"},Y={key:0,class:"dept-card__sub-count"},Z={key:0,class:"dept-card__sub-total"},ee={class:"dept-card__actions"},te={key:0,class:"status-badge status-badge--saved"},ae={key:1,class:"status-badge status-badge--new"},oe={class:"dept-card__body"},le={class:"field-row"},ne={class:"field-block"},de={key:0,class:"field-block__hint"},re={class:"field-block field-block--remark"},se={class:"child-header"},ie={class:"child-header__count"},ce={class:"child-list"},me={class:"child-row__name-wrap"},ue={class:"child-row__name"},_e={class:"child-row__inputs"},pe=["title"],ge=["title","onClick"],fe={class:"dept-card__footer"},he=O({__name:"mubiao-dept-card",props:{node:{},isRoot:{type:Boolean},drilledId:{}},emits:["drill-in","close"],setup(l,{emit:D}){const i=l,C=D;function p(o){var r;let e=Number(o.target_amount??0);if((r=o.children)!=null&&r.length)for(const g of o.children)e+=p(g);return e}const k=u(()=>{var o;return(o=i.node.children)!=null&&o.length?i.node.children.reduce((e,r)=>e+p(r),0):0}),y=u(()=>Number(i.node.target_amount??0)+k.value),T=u(()=>y.value===0),$=u(()=>{var o;return i.node.target_id?(o=i.node.children)!=null&&o.length?i.node.children.every(e=>e.target_id>0):!0:!1}),V=u(()=>{if(!i.node.dept_path)return null;const o=i.node.dept_path.split(/\s*\/\s*/).filter(Boolean);return o.length>1?o:null}),L=u(()=>{const o=["linear-gradient(135deg,#667eea,#764ba2)","linear-gradient(135deg,#f093fb,#f5576c)","linear-gradient(135deg,#4facfe,#00f2fe)","linear-gradient(135deg,#43e97b,#38f9d7)","linear-gradient(135deg,#fa709a,#fee140)","linear-gradient(135deg,#30cfd0,#330867)","linear-gradient(135deg,#a18cd1,#fbc2eb)","linear-gradient(135deg,#fccb90,#d57eeb)","linear-gradient(135deg,#e0c3fc,#8ec5fc)","linear-gradient(135deg,#f6d365,#fda085)"];let e=0;for(let r=0;r=1e4?(o/1e4).toFixed(1)+"w":o.toLocaleString("zh-CN",{maximumFractionDigits:0})}return(o,e)=>{var z,B;const r=R,g=A,I=G,M=H;return n(),d("div",{class:v(["dept-card",{"dept-card--saved":$.value,"dept-card--empty":T.value}])},[!l.isRoot&&V.value?(n(),d("div",q,[(n(!0),d(h,null,E(V.value,(a,_)=>(n(),d("span",{key:_,class:"crumb-seg"},[t("span",K,s(a),1),_[m(w(S))]),_:1})):c("",!0)]))),128))])):c("",!0),t("div",P,[t("div",{class:"dept-card__avatar",style:Q({background:L.value})},s(l.node.dept_name.slice(0,1)),5),t("div",W,[t("div",X,s(l.node.dept_name),1),(z=l.node.children)!=null&&z.length?(n(),d("div",Y,[U(s(l.node.children.length)+" 个子部门 ",1),k.value>0?(n(),d("span",Z,"· ¥"+s(N(k.value)),1)):c("",!0)])):c("",!0)]),t("div",ee,[l.node.target_id?(n(),d("span",te,"已保存")):(n(),d("span",ae,"未设置")),l.isRoot?c("",!0):(n(),d("button",{key:2,class:"close-btn",title:"关闭此卡片",onClick:e[0]||(e[0]=a=>C("close"))},[m(r,null,{default:b(()=>[m(w(J))]),_:1})]))])]),t("div",oe,[t("div",le,[t("div",ne,[e[3]||(e[3]=t("label",{class:"field-block__label"},"目标金额",-1)),m(g,{modelValue:l.node.target_amount,"onUpdate:modelValue":e[1]||(e[1]=a=>l.node.target_amount=a),min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"field-block__input"},null,8,["modelValue"]),l.node.target_amount>0?(n(),d("span",de," ¥ "+s(x(l.node.target_amount)),1)):c("",!0)]),t("div",re,[e[4]||(e[4]=t("label",{class:"field-block__label"},"备注",-1)),m(I,{modelValue:l.node.remark,"onUpdate:modelValue":e[2]||(e[2]=a=>l.node.remark=a),maxlength:"255",placeholder:"备注(选填)",clearable:""},null,8,["modelValue"])])])]),(B=l.node.children)!=null&&B.length?(n(),d(h,{key:1},[t("div",se,[e[5]||(e[5]=t("span",{class:"child-header__title"},"子部门",-1)),t("span",ie,s(l.node.children.length),1)]),t("div",ce,[(n(!0),d(h,null,E(l.node.children,a=>{var _;return n(),d("div",{key:a.dept_id,class:v(["child-row",{"child-row--active":l.drilledId===a.dept_id}])},[t("div",me,[e[7]||(e[7]=t("div",{class:"child-row__dot"},null,-1)),t("span",ue,s(a.dept_name),1),a.target_id?(n(),F(M,{key:0,size:"small",type:"success",effect:"plain",round:"",class:"child-row__tag"},{default:b(()=>[...e[6]||(e[6]=[U("已保存",-1)])]),_:1})):c("",!0)]),t("div",_e,[m(g,{modelValue:a.target_amount,"onUpdate:modelValue":f=>a.target_amount=f,min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"child-row__amount"},null,8,["modelValue","onUpdate:modelValue"]),m(I,{modelValue:a.remark,"onUpdate:modelValue":f=>a.remark=f,maxlength:"255",placeholder:"备注",clearable:"",size:"small",class:"child-row__remark"},null,8,["modelValue","onUpdate:modelValue"]),(_=a.children)!=null&&_.length?(n(),d(h,{key:0},[p(a)>0?(n(),d("span",{key:0,class:"child-subtree-total",title:`「${a.dept_name}」含下级合计`}," ="+s(N(p(a))),9,pe)):c("",!0),t("button",{class:v(["drill-btn",{"drill-btn--active":l.drilledId===a.dept_id}]),title:`展开「${a.dept_name}」的 ${a.children.length} 个子部门`,onClick:f=>C("drill-in",a)},[m(r,null,{default:b(()=>[m(w(S))]),_:1}),t("span",null,s(a.children.length),1)],10,ge)],64)):c("",!0)])],2)}),128))])],64)):c("",!0),t("div",fe,[e[8]||(e[8]=t("span",{class:"dept-card__footer-label"},"本卡合计",-1)),t("span",{class:v(["dept-card__footer-total",{"is-nonzero":y.value>0}])}," ¥ "+s(x(y.value)),3)])],2)}}}),tt=j(he,[["__scopeId","data-v-27adbc27"]]);export{tt as default}; +import{d as R,h as A,C as G,T as H}from"./element-plus-DFTWCWyi.js";import{g as S,c as J}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as O,ak as n,I as d,F as h,ap as E,J as t,G as F,aN as b,a as m,H as c,O as U,A as u}from"./@vue/runtime-core-C6bnekPw.js";import{o as v,Q as s,p as Q}from"./@vue/shared-mAAVTE9n.js";import{y as w}from"./@vue/reactivity-DiY1c2vO.js";import{_ as j}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const q={key:0,class:"dept-card__crumb"},K={class:"crumb-seg__text"},P={class:"dept-card__header"},W={class:"dept-card__meta"},X={class:"dept-card__name"},Y={key:0,class:"dept-card__sub-count"},Z={key:0,class:"dept-card__sub-total"},ee={class:"dept-card__actions"},te={key:0,class:"status-badge status-badge--saved"},ae={key:1,class:"status-badge status-badge--new"},oe={class:"dept-card__body"},le={class:"field-row"},ne={class:"field-block"},de={key:0,class:"field-block__hint"},re={class:"field-block field-block--remark"},se={class:"child-header"},ie={class:"child-header__count"},ce={class:"child-list"},me={class:"child-row__name-wrap"},ue={class:"child-row__name"},_e={class:"child-row__inputs"},pe=["title"],ge=["title","onClick"],fe={class:"dept-card__footer"},he=O({__name:"mubiao-dept-card",props:{node:{},isRoot:{type:Boolean},drilledId:{}},emits:["drill-in","close"],setup(l,{emit:D}){const i=l,C=D;function p(o){var r;let e=Number(o.target_amount??0);if((r=o.children)!=null&&r.length)for(const g of o.children)e+=p(g);return e}const k=u(()=>{var o;return(o=i.node.children)!=null&&o.length?i.node.children.reduce((e,r)=>e+p(r),0):0}),y=u(()=>Number(i.node.target_amount??0)+k.value),T=u(()=>y.value===0),$=u(()=>{var o;return i.node.target_id?(o=i.node.children)!=null&&o.length?i.node.children.every(e=>e.target_id>0):!0:!1}),V=u(()=>{if(!i.node.dept_path)return null;const o=i.node.dept_path.split(/\s*\/\s*/).filter(Boolean);return o.length>1?o:null}),L=u(()=>{const o=["linear-gradient(135deg,#667eea,#764ba2)","linear-gradient(135deg,#f093fb,#f5576c)","linear-gradient(135deg,#4facfe,#00f2fe)","linear-gradient(135deg,#43e97b,#38f9d7)","linear-gradient(135deg,#fa709a,#fee140)","linear-gradient(135deg,#30cfd0,#330867)","linear-gradient(135deg,#a18cd1,#fbc2eb)","linear-gradient(135deg,#fccb90,#d57eeb)","linear-gradient(135deg,#e0c3fc,#8ec5fc)","linear-gradient(135deg,#f6d365,#fda085)"];let e=0;for(let r=0;r=1e4?(o/1e4).toFixed(1)+"w":o.toLocaleString("zh-CN",{maximumFractionDigits:0})}return(o,e)=>{var z,B;const r=R,g=A,I=G,M=H;return n(),d("div",{class:v(["dept-card",{"dept-card--saved":$.value,"dept-card--empty":T.value}])},[!l.isRoot&&V.value?(n(),d("div",q,[(n(!0),d(h,null,E(V.value,(a,_)=>(n(),d("span",{key:_,class:"crumb-seg"},[t("span",K,s(a),1),_[m(w(S))]),_:1})):c("",!0)]))),128))])):c("",!0),t("div",P,[t("div",{class:"dept-card__avatar",style:Q({background:L.value})},s(l.node.dept_name.slice(0,1)),5),t("div",W,[t("div",X,s(l.node.dept_name),1),(z=l.node.children)!=null&&z.length?(n(),d("div",Y,[U(s(l.node.children.length)+" 个子部门 ",1),k.value>0?(n(),d("span",Z,"· ¥"+s(N(k.value)),1)):c("",!0)])):c("",!0)]),t("div",ee,[l.node.target_id?(n(),d("span",te,"已保存")):(n(),d("span",ae,"未设置")),l.isRoot?c("",!0):(n(),d("button",{key:2,class:"close-btn",title:"关闭此卡片",onClick:e[0]||(e[0]=a=>C("close"))},[m(r,null,{default:b(()=>[m(w(J))]),_:1})]))])]),t("div",oe,[t("div",le,[t("div",ne,[e[3]||(e[3]=t("label",{class:"field-block__label"},"目标金额",-1)),m(g,{modelValue:l.node.target_amount,"onUpdate:modelValue":e[1]||(e[1]=a=>l.node.target_amount=a),min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"field-block__input"},null,8,["modelValue"]),l.node.target_amount>0?(n(),d("span",de," ¥ "+s(x(l.node.target_amount)),1)):c("",!0)]),t("div",re,[e[4]||(e[4]=t("label",{class:"field-block__label"},"备注",-1)),m(I,{modelValue:l.node.remark,"onUpdate:modelValue":e[2]||(e[2]=a=>l.node.remark=a),maxlength:"255",placeholder:"备注(选填)",clearable:""},null,8,["modelValue"])])])]),(B=l.node.children)!=null&&B.length?(n(),d(h,{key:1},[t("div",se,[e[5]||(e[5]=t("span",{class:"child-header__title"},"子部门",-1)),t("span",ie,s(l.node.children.length),1)]),t("div",ce,[(n(!0),d(h,null,E(l.node.children,a=>{var _;return n(),d("div",{key:a.dept_id,class:v(["child-row",{"child-row--active":l.drilledId===a.dept_id}])},[t("div",me,[e[7]||(e[7]=t("div",{class:"child-row__dot"},null,-1)),t("span",ue,s(a.dept_name),1),a.target_id?(n(),F(M,{key:0,size:"small",type:"success",effect:"plain",round:"",class:"child-row__tag"},{default:b(()=>[...e[6]||(e[6]=[U("已保存",-1)])]),_:1})):c("",!0)]),t("div",_e,[m(g,{modelValue:a.target_amount,"onUpdate:modelValue":f=>a.target_amount=f,min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"child-row__amount"},null,8,["modelValue","onUpdate:modelValue"]),m(I,{modelValue:a.remark,"onUpdate:modelValue":f=>a.remark=f,maxlength:"255",placeholder:"备注",clearable:"",size:"small",class:"child-row__remark"},null,8,["modelValue","onUpdate:modelValue"]),(_=a.children)!=null&&_.length?(n(),d(h,{key:0},[p(a)>0?(n(),d("span",{key:0,class:"child-subtree-total",title:`「${a.dept_name}」含下级合计`}," ="+s(N(p(a))),9,pe)):c("",!0),t("button",{class:v(["drill-btn",{"drill-btn--active":l.drilledId===a.dept_id}]),title:`展开「${a.dept_name}」的 ${a.children.length} 个子部门`,onClick:f=>C("drill-in",a)},[m(r,null,{default:b(()=>[m(w(S))]),_:1}),t("span",null,s(a.children.length),1)],10,ge)],64)):c("",!0)])],2)}),128))])],64)):c("",!0),t("div",fe,[e[8]||(e[8]=t("span",{class:"dept-card__footer-label"},"本卡合计",-1)),t("span",{class:v(["dept-card__footer-total",{"is-nonzero":y.value>0}])}," ¥ "+s(x(y.value)),3)])],2)}}}),tt=j(he,[["__scopeId","data-v-27adbc27"]]);export{tt as default}; diff --git a/server/public/admin/assets/mubiao-dept-node-CdPbyfnv.js b/server/public/admin/assets/mubiao-dept-node-B-dTX5VO.js similarity index 98% rename from server/public/admin/assets/mubiao-dept-node-CdPbyfnv.js rename to server/public/admin/assets/mubiao-dept-node-B-dTX5VO.js index b5c5bb4e..fed7891f 100644 --- a/server/public/admin/assets/mubiao-dept-node-CdPbyfnv.js +++ b/server/public/admin/assets/mubiao-dept-node-B-dTX5VO.js @@ -1 +1 @@ -import{d as N,h as x,C as B,T as C}from"./element-plus-DFTWCWyi.js";import{a3 as D}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as E,ar as I,ak as a,I as d,J as o,a as s,aN as r,O as i,G as l,F as m,ap as k,H as p,A as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as M}from"./@vue/reactivity-DiY1c2vO.js";import{Q as u,p as U}from"./@vue/shared-mAAVTE9n.js";import{_ as z}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const S={key:0,class:"group"},T={class:"group__header"},F={class:"group__name"},j={class:"group__amount-wrap"},A={class:"group__remark-wrap"},G={class:"group__badge-wrap"},H={key:1,class:"group__unsaved-dot"},J={key:0,class:"group__body"},L=["data-depth"],O={class:"row__dept"},P={class:"row__dept-text"},Q={class:"row__name"},$={key:0,class:"row__path"},q={class:"row__amount"},K={class:"row__remark"},R=E({name:"MubiaoDeptNode",__name:"mubiao-dept-node",props:{node:{},depth:{}},setup(e){const y=e,V=w(()=>y.node.dept_path.split(/\s*\/\s*/).filter(Boolean)),c=w(()=>V.value.slice(0,-1).join(" › "));return(W,t)=>{var v;const b=N,_=x,g=B,h=C,f=I("MubiaoDeptNode",!0);return e.depth===0?(a(),d("div",S,[o("div",T,[t[5]||(t[5]=o("div",{class:"group__accent"},null,-1)),o("div",F,[s(b,{class:"group__name-icon"},{default:r(()=>[s(M(D))]),_:1}),i(" "+u(e.node.dept_name),1)]),o("div",j,[s(_,{modelValue:e.node.target_amount,"onUpdate:modelValue":t[0]||(t[0]=n=>e.node.target_amount=n),min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"group__amount-input"},null,8,["modelValue"])]),o("div",A,[s(g,{modelValue:e.node.remark,"onUpdate:modelValue":t[1]||(t[1]=n=>e.node.remark=n),maxlength:"255",placeholder:"备注(选填)",clearable:""},null,8,["modelValue"])]),o("div",G,[e.node.target_id?(a(),l(h,{key:0,size:"small",type:"success",effect:"plain",round:""},{default:r(()=>[...t[4]||(t[4]=[i("已保存",-1)])]),_:1})):(a(),d("span",H))])]),(v=e.node.children)!=null&&v.length?(a(),d("div",J,[(a(!0),d(m,null,k(e.node.children,n=>(a(),l(f,{key:n.dept_id,node:n,depth:1},null,8,["node"]))),128))])):p("",!0)])):(a(),d(m,{key:1},[o("div",{class:"row","data-depth":String(Math.min(e.depth,4))},[o("div",{class:"row__indent",style:U({width:`${(e.depth-1)*20+16}px`})},[...t[6]||(t[6]=[o("div",{class:"row__connector"},null,-1)])],4),o("div",O,[t[8]||(t[8]=o("div",{class:"row__dot"},null,-1)),o("div",P,[o("span",Q,u(e.node.dept_name),1),c.value?(a(),d("span",$,u(c.value),1)):p("",!0)]),e.node.target_id?(a(),l(h,{key:0,size:"small",type:"success",effect:"plain",round:"",class:"row__saved"},{default:r(()=>[...t[7]||(t[7]=[i("已保存",-1)])]),_:1})):p("",!0)]),o("div",q,[s(_,{modelValue:e.node.target_amount,"onUpdate:modelValue":t[2]||(t[2]=n=>e.node.target_amount=n),min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"row__amount-input"},null,8,["modelValue"])]),o("div",K,[s(g,{modelValue:e.node.remark,"onUpdate:modelValue":t[3]||(t[3]=n=>e.node.remark=n),maxlength:"255",placeholder:"备注(选填)",clearable:""},null,8,["modelValue"])])],8,L),(a(!0),d(m,null,k(e.node.children,n=>(a(),l(f,{key:n.dept_id,node:n,depth:e.depth+1},null,8,["node","depth"]))),128))],64))}}}),Se=z(R,[["__scopeId","data-v-02198f38"]]);export{Se as default}; +import{d as N,h as x,C as B,T as C}from"./element-plus-DFTWCWyi.js";import{a3 as D}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as E,ar as I,ak as a,I as d,J as o,a as s,aN as r,O as i,G as l,F as m,ap as k,H as p,A as w}from"./@vue/runtime-core-C6bnekPw.js";import{y as M}from"./@vue/reactivity-DiY1c2vO.js";import{Q as u,p as U}from"./@vue/shared-mAAVTE9n.js";import{_ as z}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const S={key:0,class:"group"},T={class:"group__header"},F={class:"group__name"},j={class:"group__amount-wrap"},A={class:"group__remark-wrap"},G={class:"group__badge-wrap"},H={key:1,class:"group__unsaved-dot"},J={key:0,class:"group__body"},L=["data-depth"],O={class:"row__dept"},P={class:"row__dept-text"},Q={class:"row__name"},$={key:0,class:"row__path"},q={class:"row__amount"},K={class:"row__remark"},R=E({name:"MubiaoDeptNode",__name:"mubiao-dept-node",props:{node:{},depth:{}},setup(e){const y=e,V=w(()=>y.node.dept_path.split(/\s*\/\s*/).filter(Boolean)),c=w(()=>V.value.slice(0,-1).join(" › "));return(W,t)=>{var v;const b=N,_=x,g=B,h=C,f=I("MubiaoDeptNode",!0);return e.depth===0?(a(),d("div",S,[o("div",T,[t[5]||(t[5]=o("div",{class:"group__accent"},null,-1)),o("div",F,[s(b,{class:"group__name-icon"},{default:r(()=>[s(M(D))]),_:1}),i(" "+u(e.node.dept_name),1)]),o("div",j,[s(_,{modelValue:e.node.target_amount,"onUpdate:modelValue":t[0]||(t[0]=n=>e.node.target_amount=n),min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"group__amount-input"},null,8,["modelValue"])]),o("div",A,[s(g,{modelValue:e.node.remark,"onUpdate:modelValue":t[1]||(t[1]=n=>e.node.remark=n),maxlength:"255",placeholder:"备注(选填)",clearable:""},null,8,["modelValue"])]),o("div",G,[e.node.target_id?(a(),l(h,{key:0,size:"small",type:"success",effect:"plain",round:""},{default:r(()=>[...t[4]||(t[4]=[i("已保存",-1)])]),_:1})):(a(),d("span",H))])]),(v=e.node.children)!=null&&v.length?(a(),d("div",J,[(a(!0),d(m,null,k(e.node.children,n=>(a(),l(f,{key:n.dept_id,node:n,depth:1},null,8,["node"]))),128))])):p("",!0)])):(a(),d(m,{key:1},[o("div",{class:"row","data-depth":String(Math.min(e.depth,4))},[o("div",{class:"row__indent",style:U({width:`${(e.depth-1)*20+16}px`})},[...t[6]||(t[6]=[o("div",{class:"row__connector"},null,-1)])],4),o("div",O,[t[8]||(t[8]=o("div",{class:"row__dot"},null,-1)),o("div",P,[o("span",Q,u(e.node.dept_name),1),c.value?(a(),d("span",$,u(c.value),1)):p("",!0)]),e.node.target_id?(a(),l(h,{key:0,size:"small",type:"success",effect:"plain",round:"",class:"row__saved"},{default:r(()=>[...t[7]||(t[7]=[i("已保存",-1)])]),_:1})):p("",!0)]),o("div",q,[s(_,{modelValue:e.node.target_amount,"onUpdate:modelValue":t[2]||(t[2]=n=>e.node.target_amount=n),min:0,precision:2,step:1e3,"controls-position":"right",placeholder:"0.00",class:"row__amount-input"},null,8,["modelValue"])]),o("div",K,[s(g,{modelValue:e.node.remark,"onUpdate:modelValue":t[3]||(t[3]=n=>e.node.remark=n),maxlength:"255",placeholder:"备注(选填)",clearable:""},null,8,["modelValue"])])],8,L),(a(!0),d(m,null,k(e.node.children,n=>(a(),l(f,{key:n.dept_id,node:n,depth:e.depth+1},null,8,["node","depth"]))),128))],64))}}}),Se=z(R,[["__scopeId","data-v-02198f38"]]);export{Se as default}; diff --git a/server/public/admin/assets/oa-attr-DRhy74HO.js b/server/public/admin/assets/oa-attr-Ct9DaDF9.js similarity index 86% rename from server/public/admin/assets/oa-attr-DRhy74HO.js rename to server/public/admin/assets/oa-attr-Ct9DaDF9.js index 3628e8e9..3157100f 100644 --- a/server/public/admin/assets/oa-attr-DRhy74HO.js +++ b/server/public/admin/assets/oa-attr-Ct9DaDF9.js @@ -1 +1 @@ -import{_ as S}from"./index-D18gAY1e.js";import{_ as A}from"./index-BQY2-_X1.js";import{i as B,d as N}from"./element-plus-DFTWCWyi.js";import{q as $}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as O}from"./oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js";import{_ as y}from"./oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js";import{u as R}from"./useMenuOa-pZ-sxT1M.js";import{f as V,ar as g,ak as r,I as s,ap as h,aP as q,J as i,a as t,aN as n,F as v,O as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as p,q as F}from"./@vue/reactivity-DiY1c2vO.js";import{Q as U}from"./@vue/shared-mAAVTE9n.js";import{_ as L}from"./index-Nt5zMHcc.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./wx_oa-BOc4Brkk.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const J={class:"flex items-center w-full p-4 mt-4 rounded bg-fill-light"},Q={class:"flex-1"},j={class:"mr-auto"},z=V({__name:"oa-attr",setup(G){const u=F(),{menuList:k,menuIndex:m,handleAddSubMenu:x,handleEditSubMenu:T,handleDelMenu:E,handleDelSubMenu:w}=R(u);return(H,a)=>{const P=g("EditPen"),_=N,l=B,C=g("Delete"),D=A,M=S;return r(!0),s(v,null,h(p(k),(e,f)=>q((r(),s("div",{key:f,class:"flex-1 oa-attr min-w-0"},[a[2]||(a[2]=i("div",{class:"text-base oa-attr-title"},"菜单配置",-1)),t(M,{onClose:a[0]||(a[0]=o=>p(E)(p(m)))},{default:n(()=>[i("div",J,[t(O,{ref_for:!0,ref_key:"menuRef",ref:u,modular:"master",name:e.name,"onUpdate:name":o=>e.name=o,menuType:e.has_menu,"onUpdate:menuType":o=>e.has_menu=o,visitType:e.type,"onUpdate:visitType":o=>e.type=o,url:e.url,"onUpdate:url":o=>e.url=o,appId:e.appid,"onUpdate:appId":o=>e.appid=o,pagePath:e.pagepath,"onUpdate:pagePath":o=>e.pagepath=o},{default:n(()=>[i("div",Q,[i("ul",null,[(r(!0),s(v,null,h(e.sub_button,(o,d)=>(r(),s("li",{class:"flex",key:d,style:{padding:"8px"}},[i("span",j,U(o.name),1),t(y,{modular:"edit",subItem:o,onEdit:c=>p(T)(c,d)},{default:n(()=>[t(l,{link:""},{default:n(()=>[t(_,null,{default:n(()=>[t(P)]),_:1})]),_:1})]),_:1},8,["subItem","onEdit"]),t(D,{onConfirm:c=>p(w)(p(m),d)},{trigger:n(()=>[t(l,{link:""},{default:n(()=>[t(_,{class:"ml-5"},{default:n(()=>[t(C)]),_:1})]),_:1})]),default:n(()=>[a[1]||(a[1]=b(" 是否删除当前子菜单? ",-1))]),_:1},8,["onConfirm"])]))),128))]),t(y,{modular:"add",onAdd:p(x)},{default:n(()=>[t(l,{type:"primary",link:"",disabled:e.sub_button.length>=5},{default:n(()=>[b(" 添加子菜单("+U(e.sub_button.length)+"/5) ",1)]),_:2},1032,["disabled"])]),_:2},1032,["onAdd"])])]),_:2},1032,["name","onUpdate:name","menuType","onUpdate:menuType","visitType","onUpdate:visitType","url","onUpdate:url","appId","onUpdate:appId","pagePath","onUpdate:pagePath"])])]),_:2},1024)],512)),[[$,f===p(m)]])),128)}}}),Re=L(z,[["__scopeId","data-v-0fd60009"]]);export{Re as default}; +import{_ as S}from"./index-BtiRSS_3.js";import{_ as A}from"./index-SocYjCJ1.js";import{i as B,d as N}from"./element-plus-DFTWCWyi.js";import{q as $}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as O}from"./oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js";import{_ as y}from"./oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js";import{u as R}from"./useMenuOa-_Y0P7idX.js";import{f as V,ar as g,ak as r,I as s,ap as h,aP as q,J as i,a as t,aN as n,F as v,O as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as p,q as F}from"./@vue/reactivity-DiY1c2vO.js";import{Q as U}from"./@vue/shared-mAAVTE9n.js";import{_ as L}from"./index--WnM67ZH.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./wx_oa-CN0ZaZdj.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const J={class:"flex items-center w-full p-4 mt-4 rounded bg-fill-light"},Q={class:"flex-1"},j={class:"mr-auto"},z=V({__name:"oa-attr",setup(G){const u=F(),{menuList:k,menuIndex:m,handleAddSubMenu:x,handleEditSubMenu:T,handleDelMenu:E,handleDelSubMenu:w}=R(u);return(H,a)=>{const P=g("EditPen"),_=N,l=B,C=g("Delete"),D=A,M=S;return r(!0),s(v,null,h(p(k),(e,f)=>q((r(),s("div",{key:f,class:"flex-1 oa-attr min-w-0"},[a[2]||(a[2]=i("div",{class:"text-base oa-attr-title"},"菜单配置",-1)),t(M,{onClose:a[0]||(a[0]=o=>p(E)(p(m)))},{default:n(()=>[i("div",J,[t(O,{ref_for:!0,ref_key:"menuRef",ref:u,modular:"master",name:e.name,"onUpdate:name":o=>e.name=o,menuType:e.has_menu,"onUpdate:menuType":o=>e.has_menu=o,visitType:e.type,"onUpdate:visitType":o=>e.type=o,url:e.url,"onUpdate:url":o=>e.url=o,appId:e.appid,"onUpdate:appId":o=>e.appid=o,pagePath:e.pagepath,"onUpdate:pagePath":o=>e.pagepath=o},{default:n(()=>[i("div",Q,[i("ul",null,[(r(!0),s(v,null,h(e.sub_button,(o,d)=>(r(),s("li",{class:"flex",key:d,style:{padding:"8px"}},[i("span",j,U(o.name),1),t(y,{modular:"edit",subItem:o,onEdit:c=>p(T)(c,d)},{default:n(()=>[t(l,{link:""},{default:n(()=>[t(_,null,{default:n(()=>[t(P)]),_:1})]),_:1})]),_:1},8,["subItem","onEdit"]),t(D,{onConfirm:c=>p(w)(p(m),d)},{trigger:n(()=>[t(l,{link:""},{default:n(()=>[t(_,{class:"ml-5"},{default:n(()=>[t(C)]),_:1})]),_:1})]),default:n(()=>[a[1]||(a[1]=b(" 是否删除当前子菜单? ",-1))]),_:1},8,["onConfirm"])]))),128))]),t(y,{modular:"add",onAdd:p(x)},{default:n(()=>[t(l,{type:"primary",link:"",disabled:e.sub_button.length>=5},{default:n(()=>[b(" 添加子菜单("+U(e.sub_button.length)+"/5) ",1)]),_:2},1032,["disabled"])]),_:2},1032,["onAdd"])])]),_:2},1032,["name","onUpdate:name","menuType","onUpdate:menuType","visitType","onUpdate:visitType","url","onUpdate:url","appId","onUpdate:appId","pagePath","onUpdate:pagePath"])])]),_:2},1024)],512)),[[$,f===p(m)]])),128)}}}),Re=L(z,[["__scopeId","data-v-0fd60009"]]);export{Re as default}; diff --git a/server/public/admin/assets/oa-menu-form-CRceKfGE.js b/server/public/admin/assets/oa-menu-form-BVjP1ZgE.js similarity index 86% rename from server/public/admin/assets/oa-menu-form-CRceKfGE.js rename to server/public/admin/assets/oa-menu-form-BVjP1ZgE.js index 8d8d5ce2..e55de0b3 100644 --- a/server/public/admin/assets/oa-menu-form-CRceKfGE.js +++ b/server/public/admin/assets/oa-menu-form-BVjP1ZgE.js @@ -1 +1 @@ -import{_ as o}from"./oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./useMenuOa-pZ-sxT1M.js";import"./wx_oa-BOc4Brkk.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./useMenuOa-_Y0P7idX.js";import"./wx_oa-CN0ZaZdj.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/oa-menu-form-edit-D78PgDzI.js b/server/public/admin/assets/oa-menu-form-edit-PrVRlCrB.js similarity index 83% rename from server/public/admin/assets/oa-menu-form-edit-D78PgDzI.js rename to server/public/admin/assets/oa-menu-form-edit-PrVRlCrB.js index 4899074d..6065c1d3 100644 --- a/server/public/admin/assets/oa-menu-form-edit-D78PgDzI.js +++ b/server/public/admin/assets/oa-menu-form-edit-PrVRlCrB.js @@ -1 +1 @@ -import{_ as o}from"./oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js";import"./index-BQY2-_X1.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js";import"./useMenuOa-pZ-sxT1M.js";import"./wx_oa-BOc4Brkk.js";export{o as default}; +import{_ as o}from"./oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js";import"./index-SocYjCJ1.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js";import"./useMenuOa-_Y0P7idX.js";import"./wx_oa-CN0ZaZdj.js";export{o as default}; diff --git a/server/public/admin/assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js b/server/public/admin/assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js similarity index 90% rename from server/public/admin/assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js rename to server/public/admin/assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js index 73241caf..416a11ea 100644 --- a/server/public/admin/assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CIpJXPoO.js +++ b/server/public/admin/assets/oa-menu-form-edit.vue_vue_type_script_setup_true_lang-CE6BgcS2.js @@ -1 +1 @@ -import{_ as y}from"./index-BQY2-_X1.js";import{_ as g}from"./oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js";import{f as c,aJ as k,ak as v,G as R,aN as d,a as F,aq as _}from"./@vue/runtime-core-C6bnekPw.js";import{q as i}from"./@vue/reactivity-DiY1c2vO.js";const b=c({__name:"oa-menu-form-edit",props:{modular:{default:"edit"},subItem:{default:{}}},emits:["add","edit"],setup(m,{emit:l}){const r=l,n=m,p=i(),s=i(),e={name:"",type:"view",url:"",appid:"",pagepath:""};k(()=>{if(Object.keys(n.subItem).length!=0)for(const o in e)e[o]=n.subItem[o]});const u=async()=>{await p.value.menuFormRef.validate(),n.modular==="edit"?r("edit",{...e}):r("add",{...e}),s.value.close(),p.value.menuFormRef.resetFields()};return(o,t)=>{const f=y;return v(),R(f,{ref_key:"menuFromPopupRef",ref:s,async:"",clickModalClose:!1,title:`${m.modular==="add"?"新增":"编辑"}子菜单`,onConfirm:u},{trigger:d(()=>[_(o.$slots,"default")]),default:d(()=>[F(g,{ref_key:"menuFormEditRef",ref:p,modular:"secondary",name:e.name,"onUpdate:name":t[0]||(t[0]=a=>e.name=a),visitType:e.type,"onUpdate:visitType":t[1]||(t[1]=a=>e.type=a),url:e.url,"onUpdate:url":t[2]||(t[2]=a=>e.url=a),appId:e.appid,"onUpdate:appId":t[3]||(t[3]=a=>e.appid=a),pagePath:e.pagepath,"onUpdate:pagePath":t[4]||(t[4]=a=>e.pagepath=a)},null,8,["name","visitType","url","appId","pagePath"])]),_:3},8,["title"])}}});export{b as _}; +import{_ as y}from"./index-SocYjCJ1.js";import{_ as g}from"./oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js";import{f as c,aJ as k,ak as v,G as R,aN as d,a as F,aq as _}from"./@vue/runtime-core-C6bnekPw.js";import{q as i}from"./@vue/reactivity-DiY1c2vO.js";const b=c({__name:"oa-menu-form-edit",props:{modular:{default:"edit"},subItem:{default:{}}},emits:["add","edit"],setup(m,{emit:l}){const r=l,n=m,p=i(),s=i(),e={name:"",type:"view",url:"",appid:"",pagepath:""};k(()=>{if(Object.keys(n.subItem).length!=0)for(const o in e)e[o]=n.subItem[o]});const u=async()=>{await p.value.menuFormRef.validate(),n.modular==="edit"?r("edit",{...e}):r("add",{...e}),s.value.close(),p.value.menuFormRef.resetFields()};return(o,t)=>{const f=y;return v(),R(f,{ref_key:"menuFromPopupRef",ref:s,async:"",clickModalClose:!1,title:`${m.modular==="add"?"新增":"编辑"}子菜单`,onConfirm:u},{trigger:d(()=>[_(o.$slots,"default")]),default:d(()=>[F(g,{ref_key:"menuFormEditRef",ref:p,modular:"secondary",name:e.name,"onUpdate:name":t[0]||(t[0]=a=>e.name=a),visitType:e.type,"onUpdate:visitType":t[1]||(t[1]=a=>e.type=a),url:e.url,"onUpdate:url":t[2]||(t[2]=a=>e.url=a),appId:e.appid,"onUpdate:appId":t[3]||(t[3]=a=>e.appid=a),pagePath:e.pagepath,"onUpdate:pagePath":t[4]||(t[4]=a=>e.pagepath=a)},null,8,["name","visitType","url","appId","pagePath"])]),_:3},8,["title"])}}});export{b as _}; diff --git a/server/public/admin/assets/oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js b/server/public/admin/assets/oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js similarity index 97% rename from server/public/admin/assets/oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js rename to server/public/admin/assets/oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js index 51061cf5..8d9ae391 100644 --- a/server/public/admin/assets/oa-menu-form.vue_vue_type_script_setup_true_lang-YeZeaXR3.js +++ b/server/public/admin/assets/oa-menu-form.vue_vue_type_script_setup_true_lang-BikYI1Nf.js @@ -1 +1 @@ -import{B as E,C as F,G as P,I as U,D as x}from"./element-plus-DFTWCWyi.js";import{r as B}from"./useMenuOa-pZ-sxT1M.js";import{f as R,w as C,aJ as N,ak as d,G as V,aN as u,a as t,O as f,H as i,aq as G,I as _,F as g}from"./@vue/runtime-core-C6bnekPw.js";import{n as q,y as l,q as A}from"./@vue/reactivity-DiY1c2vO.js";const S=R({__name:"oa-menu-form",props:{modular:{default:"master"},name:{default:""},menuType:{type:Boolean,default:!1},visitType:{default:"view"},url:{default:""},appId:{default:""},pagePath:{default:""}},emits:["update:name","update:menuType","update:visitType","update:url","update:appId","update:pagePath"],setup(r,{expose:b,emit:k}){const m=k,y=r,T=A(),e=q({...y});return C(()=>y,v=>{e.value=v},{immediate:!0}),N(()=>{y.modular==="master"&&m("update:menuType",e.value.menuType),m("update:name",e.value.name),m("update:visitType",e.value.visitType),m("update:url",e.value.url),m("update:appId",e.value.appId),m("update:pagePath",e.value.pagePath)}),b({menuFormRef:T}),(v,a)=>{const n=F,p=E,s=U,I=P,w=x;return d(),V(w,{ref_key:"menuFormRef",ref:T,rules:l(B),model:l(e),"label-width":"100px"},{default:u(()=>[t(p,{label:r.modular==="master"?"主菜单名称":"子菜单名称",prop:"name"},{default:u(()=>[t(n,{modelValue:l(e).name,"onUpdate:modelValue":a[0]||(a[0]=o=>l(e).name=o)},null,8,["modelValue"])]),_:1},8,["label"]),r.modular==="master"?(d(),V(p,{key:0,label:"主菜单类型",prop:"menuType"},{default:u(()=>[t(I,{modelValue:l(e).menuType,"onUpdate:modelValue":a[1]||(a[1]=o=>l(e).menuType=o)},{default:u(()=>[t(s,{value:!1},{default:u(()=>[...a[6]||(a[6]=[f("不配置子菜单",-1)])]),_:1}),t(s,{value:!0},{default:u(()=>[...a[7]||(a[7]=[f("配置子菜单",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(e).menuType&&r.modular==="master"?(d(),V(p,{key:1,label:""},{default:u(()=>[G(v.$slots,"default")]),_:3})):i("",!0),l(e).menuType?i("",!0):(d(),_(g,{key:2},[t(p,{label:"跳转链接",prop:"visitType"},{default:u(()=>[t(I,{modelValue:l(e).visitType,"onUpdate:modelValue":a[2]||(a[2]=o=>l(e).visitType=o)},{default:u(()=>[t(s,{value:"view"},{default:u(()=>[...a[8]||(a[8]=[f("网页",-1)])]),_:1}),t(s,{value:"miniprogram"},{default:u(()=>[...a[9]||(a[9]=[f("小程序",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"网址",prop:"url"},{default:u(()=>[t(n,{modelValue:l(e).url,"onUpdate:modelValue":a[3]||(a[3]=o=>l(e).url=o)},null,8,["modelValue"])]),_:1}),l(e).visitType=="miniprogram"?(d(),_(g,{key:0},[t(p,{label:"AppId",prop:"appId"},{default:u(()=>[t(n,{modelValue:l(e).appId,"onUpdate:modelValue":a[4]||(a[4]=o=>l(e).appId=o)},null,8,["modelValue"])]),_:1}),t(p,{label:"路径",prop:"pagePath"},{default:u(()=>[t(n,{modelValue:l(e).pagePath,"onUpdate:modelValue":a[5]||(a[5]=o=>l(e).pagePath=o)},null,8,["modelValue"])]),_:1})],64)):i("",!0)],64))]),_:3},8,["rules","model"])}}});export{S as _}; +import{B as E,C as F,G as P,I as U,D as x}from"./element-plus-DFTWCWyi.js";import{r as B}from"./useMenuOa-_Y0P7idX.js";import{f as R,w as C,aJ as N,ak as d,G as V,aN as u,a as t,O as f,H as i,aq as G,I as _,F as g}from"./@vue/runtime-core-C6bnekPw.js";import{n as q,y as l,q as A}from"./@vue/reactivity-DiY1c2vO.js";const S=R({__name:"oa-menu-form",props:{modular:{default:"master"},name:{default:""},menuType:{type:Boolean,default:!1},visitType:{default:"view"},url:{default:""},appId:{default:""},pagePath:{default:""}},emits:["update:name","update:menuType","update:visitType","update:url","update:appId","update:pagePath"],setup(r,{expose:b,emit:k}){const m=k,y=r,T=A(),e=q({...y});return C(()=>y,v=>{e.value=v},{immediate:!0}),N(()=>{y.modular==="master"&&m("update:menuType",e.value.menuType),m("update:name",e.value.name),m("update:visitType",e.value.visitType),m("update:url",e.value.url),m("update:appId",e.value.appId),m("update:pagePath",e.value.pagePath)}),b({menuFormRef:T}),(v,a)=>{const n=F,p=E,s=U,I=P,w=x;return d(),V(w,{ref_key:"menuFormRef",ref:T,rules:l(B),model:l(e),"label-width":"100px"},{default:u(()=>[t(p,{label:r.modular==="master"?"主菜单名称":"子菜单名称",prop:"name"},{default:u(()=>[t(n,{modelValue:l(e).name,"onUpdate:modelValue":a[0]||(a[0]=o=>l(e).name=o)},null,8,["modelValue"])]),_:1},8,["label"]),r.modular==="master"?(d(),V(p,{key:0,label:"主菜单类型",prop:"menuType"},{default:u(()=>[t(I,{modelValue:l(e).menuType,"onUpdate:modelValue":a[1]||(a[1]=o=>l(e).menuType=o)},{default:u(()=>[t(s,{value:!1},{default:u(()=>[...a[6]||(a[6]=[f("不配置子菜单",-1)])]),_:1}),t(s,{value:!0},{default:u(()=>[...a[7]||(a[7]=[f("配置子菜单",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(e).menuType&&r.modular==="master"?(d(),V(p,{key:1,label:""},{default:u(()=>[G(v.$slots,"default")]),_:3})):i("",!0),l(e).menuType?i("",!0):(d(),_(g,{key:2},[t(p,{label:"跳转链接",prop:"visitType"},{default:u(()=>[t(I,{modelValue:l(e).visitType,"onUpdate:modelValue":a[2]||(a[2]=o=>l(e).visitType=o)},{default:u(()=>[t(s,{value:"view"},{default:u(()=>[...a[8]||(a[8]=[f("网页",-1)])]),_:1}),t(s,{value:"miniprogram"},{default:u(()=>[...a[9]||(a[9]=[f("小程序",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"网址",prop:"url"},{default:u(()=>[t(n,{modelValue:l(e).url,"onUpdate:modelValue":a[3]||(a[3]=o=>l(e).url=o)},null,8,["modelValue"])]),_:1}),l(e).visitType=="miniprogram"?(d(),_(g,{key:0},[t(p,{label:"AppId",prop:"appId"},{default:u(()=>[t(n,{modelValue:l(e).appId,"onUpdate:modelValue":a[4]||(a[4]=o=>l(e).appId=o)},null,8,["modelValue"])]),_:1}),t(p,{label:"路径",prop:"pagePath"},{default:u(()=>[t(n,{modelValue:l(e).pagePath,"onUpdate:modelValue":a[5]||(a[5]=o=>l(e).pagePath=o)},null,8,["modelValue"])]),_:1})],64)):i("",!0)],64))]),_:3},8,["rules","model"])}}});export{S as _}; diff --git a/server/public/admin/assets/oa-phone-CwkrkTuR.js b/server/public/admin/assets/oa-phone-Bv_M1dC8.js similarity index 95% rename from server/public/admin/assets/oa-phone-CwkrkTuR.js rename to server/public/admin/assets/oa-phone-Bv_M1dC8.js index ae26154b..b874e174 100644 --- a/server/public/admin/assets/oa-phone-CwkrkTuR.js +++ b/server/public/admin/assets/oa-phone-Bv_M1dC8.js @@ -1 +1 @@ -import{d as w}from"./element-plus-DFTWCWyi.js";import{f as F,q as N}from"./@vue/runtime-dom-DDAG46FW.js";import{l as P,_ as V}from"./index-Nt5zMHcc.js";import{u as d}from"./useMenuOa-pZ-sxT1M.js";import{f as j,A,ar as _,ak as e,I as o,J as r,a as i,aN as f,F as h,ap as v,aP as B,H as D}from"./@vue/runtime-core-C6bnekPw.js";import{y as s}from"./@vue/reactivity-DiY1c2vO.js";import{o as E,Q as x}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./wx_oa-BOc4Brkk.js";const G={class:"oa-phone mr-[35px]"},L={class:"flex oa-phone-menu"},M={class:"flex items-center justify-center oa-phone-menu-switch"},O=["onClick"],q={class:"oa-phone-menu-subitem"},z=j({__name:"oa-phone",setup(H){F(y=>({v5d8c0dd7:s(k)}));const C=P(),k=A(()=>C.theme||"#4A5DFF"),{menuList:a,menuIndex:p,handleAddMenu:l}=d(d);return(y,n)=>{const b=_("Grid"),c=w,g=_("Plus");return e(),o("div",G,[n[1]||(n[1]=r("div",{class:"oa-phone-content"},null,-1)),r("div",L,[r("div",M,[i(c,null,{default:f(()=>[i(b)]),_:1})]),(e(!0),o(h,null,v(s(a),(t,m)=>(e(),o("div",{key:m,class:"relative flex-1",onClick:u=>p.value=m},[r("div",{class:E(["flex items-center justify-center flex-1 text-sm oa-phone-menu-item",{"active-menu":s(p)===m}])},x(t.name),3),B(r("div",q,[(e(!0),o(h,null,v(t.sub_button,(u,S)=>(e(),o("div",{key:S,class:"oa-phone-menu-subitem-title"},x(u.name),1))),128))],512),[[N,t.sub_button.length&&t.has_menu]])],8,O))),128)),s(a).length<=2?(e(),o("div",{key:0,class:"flex items-center justify-center flex-1 h-full",onClick:n[0]||(n[0]=(...t)=>s(l)&&s(l)(...t))},[i(c,null,{default:f(()=>[i(g)]),_:1})])):D("",!0)])])}}}),Nt=V(z,[["__scopeId","data-v-e8e53db5"]]);export{Nt as default}; +import{d as w}from"./element-plus-DFTWCWyi.js";import{f as F,q as N}from"./@vue/runtime-dom-DDAG46FW.js";import{l as P,_ as V}from"./index--WnM67ZH.js";import{u as d}from"./useMenuOa-_Y0P7idX.js";import{f as j,A,ar as _,ak as e,I as o,J as r,a as i,aN as f,F as h,ap as v,aP as B,H as D}from"./@vue/runtime-core-C6bnekPw.js";import{y as s}from"./@vue/reactivity-DiY1c2vO.js";import{o as E,Q as x}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./wx_oa-CN0ZaZdj.js";const G={class:"oa-phone mr-[35px]"},L={class:"flex oa-phone-menu"},M={class:"flex items-center justify-center oa-phone-menu-switch"},O=["onClick"],q={class:"oa-phone-menu-subitem"},z=j({__name:"oa-phone",setup(H){F(y=>({v5d8c0dd7:s(k)}));const C=P(),k=A(()=>C.theme||"#4A5DFF"),{menuList:a,menuIndex:p,handleAddMenu:l}=d(d);return(y,n)=>{const b=_("Grid"),c=w,g=_("Plus");return e(),o("div",G,[n[1]||(n[1]=r("div",{class:"oa-phone-content"},null,-1)),r("div",L,[r("div",M,[i(c,null,{default:f(()=>[i(b)]),_:1})]),(e(!0),o(h,null,v(s(a),(t,m)=>(e(),o("div",{key:m,class:"relative flex-1",onClick:u=>p.value=m},[r("div",{class:E(["flex items-center justify-center flex-1 text-sm oa-phone-menu-item",{"active-menu":s(p)===m}])},x(t.name),3),B(r("div",q,[(e(!0),o(h,null,v(t.sub_button,(u,S)=>(e(),o("div",{key:S,class:"oa-phone-menu-subitem-title"},x(u.name),1))),128))],512),[[N,t.sub_button.length&&t.has_menu]])],8,O))),128)),s(a).length<=2?(e(),o("div",{key:0,class:"flex items-center justify-center flex-1 h-full",onClick:n[0]||(n[0]=(...t)=>s(l)&&s(l)(...t))},[i(c,null,{default:f(()=>[i(g)]),_:1})])):D("",!0)])])}}}),Nt=V(z,[["__scopeId","data-v-e8e53db5"]]);export{Nt as default}; diff --git a/server/public/admin/assets/open_setting-BvP5LkON.js b/server/public/admin/assets/open_setting-CLvZN6m0.js similarity index 96% rename from server/public/admin/assets/open_setting-BvP5LkON.js rename to server/public/admin/assets/open_setting-CLvZN6m0.js index 62c6dec4..9ae94635 100644 --- a/server/public/admin/assets/open_setting-BvP5LkON.js +++ b/server/public/admin/assets/open_setting-CLvZN6m0.js @@ -1 +1 @@ -import{_ as y}from"./index-DbiC_Mh1.js";import{K as k,J as A,B as E,C as x,D as B,i as I}from"./element-plus-DFTWCWyi.js";import{r as f}from"./index-Nt5zMHcc.js";import{f as g,as as S,ak as u,I as q,a as t,aN as r,J as a,aP as N,G as R,O}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,r as F,q as J}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function U(s){return f.post({url:"/channel.open_setting/setConfig",params:s})}function G(){return f.get({url:"/channel.open_setting/getConfig"})}const K={class:"w-80"},P={class:"w-80"},T=g({name:"wxDevConfig"}),Ee=g({...T,setup(s){const o=F({app_id:"",app_secret:""}),l=J(),v={app_id:[{required:!0,message:"请输入AppID",trigger:["blur","change"]}],app_secret:[{required:!0,message:"请输入AppSecret",trigger:["blur","change"]}]},m=async()=>{const p=await G();for(const e in o)o[e]=p[e]},w=async()=>{var p;await((p=l.value)==null?void 0:p.validate()),await U(o),m()};return m(),(p,e)=>{const b=k,_=A,c=x,d=E,C=B,h=I,D=y,V=S("perms");return u(),q("div",null,[t(_,{class:"!border-none",shadow:"never"},{default:r(()=>[t(b,{type:"warning",title:"温馨提示:填写微信开放平台开发配置,请前往微信开放平台创建应用并完成认证;网站应用配置主要用于网站微信登录和微信支付",closable:!1,"show-icon":""})]),_:1}),t(C,{ref_key:"formRef",ref:l,model:n(o),rules:v,"label-width":"160px"},{default:r(()=>[t(_,{class:"!border-none mt-4",shadow:"never"},{default:r(()=>[e[2]||(e[2]=a("div",{class:"font-medium mb-7"},"网站应用",-1)),t(d,{label:"AppID",prop:"app_id"},{default:r(()=>[a("div",K,[t(c,{modelValue:n(o).app_id,"onUpdate:modelValue":e[0]||(e[0]=i=>n(o).app_id=i),placeholder:"请输入AppID"},null,8,["modelValue"])])]),_:1}),t(d,{label:"AppSecret",prop:"app_secret"},{default:r(()=>[a("div",null,[a("div",P,[t(c,{modelValue:n(o).app_secret,"onUpdate:modelValue":e[1]||(e[1]=i=>n(o).app_secret=i),placeholder:"请输入AppSecret"},null,8,["modelValue"])])])]),_:1})]),_:1})]),_:1},8,["model"]),N((u(),R(D,null,{default:r(()=>[t(h,{type:"primary",onClick:w},{default:r(()=>[...e[3]||(e[3]=[O("保存",-1)])]),_:1})]),_:1})),[[V,["channel.open_setting/setConfig"]]])])}}});export{Ee as default}; +import{_ as y}from"./index-j275bAO5.js";import{K as k,J as A,B as E,C as x,D as B,i as I}from"./element-plus-DFTWCWyi.js";import{r as f}from"./index--WnM67ZH.js";import{f as g,as as S,ak as u,I as q,a as t,aN as r,J as a,aP as N,G as R,O}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,r as F,q as J}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function U(s){return f.post({url:"/channel.open_setting/setConfig",params:s})}function G(){return f.get({url:"/channel.open_setting/getConfig"})}const K={class:"w-80"},P={class:"w-80"},T=g({name:"wxDevConfig"}),Ee=g({...T,setup(s){const o=F({app_id:"",app_secret:""}),l=J(),v={app_id:[{required:!0,message:"请输入AppID",trigger:["blur","change"]}],app_secret:[{required:!0,message:"请输入AppSecret",trigger:["blur","change"]}]},m=async()=>{const p=await G();for(const e in o)o[e]=p[e]},w=async()=>{var p;await((p=l.value)==null?void 0:p.validate()),await U(o),m()};return m(),(p,e)=>{const b=k,_=A,c=x,d=E,C=B,h=I,D=y,V=S("perms");return u(),q("div",null,[t(_,{class:"!border-none",shadow:"never"},{default:r(()=>[t(b,{type:"warning",title:"温馨提示:填写微信开放平台开发配置,请前往微信开放平台创建应用并完成认证;网站应用配置主要用于网站微信登录和微信支付",closable:!1,"show-icon":""})]),_:1}),t(C,{ref_key:"formRef",ref:l,model:n(o),rules:v,"label-width":"160px"},{default:r(()=>[t(_,{class:"!border-none mt-4",shadow:"never"},{default:r(()=>[e[2]||(e[2]=a("div",{class:"font-medium mb-7"},"网站应用",-1)),t(d,{label:"AppID",prop:"app_id"},{default:r(()=>[a("div",K,[t(c,{modelValue:n(o).app_id,"onUpdate:modelValue":e[0]||(e[0]=i=>n(o).app_id=i),placeholder:"请输入AppID"},null,8,["modelValue"])])]),_:1}),t(d,{label:"AppSecret",prop:"app_secret"},{default:r(()=>[a("div",null,[a("div",P,[t(c,{modelValue:n(o).app_secret,"onUpdate:modelValue":e[1]||(e[1]=i=>n(o).app_secret=i),placeholder:"请输入AppSecret"},null,8,["modelValue"])])])]),_:1})]),_:1})]),_:1},8,["model"]),N((u(),R(D,null,{default:r(()=>[t(h,{type:"primary",onClick:w},{default:r(()=>[...e[3]||(e[3]=[O("保存",-1)])]),_:1})]),_:1})),[[V,["channel.open_setting/setConfig"]]])])}}});export{Ee as default}; diff --git a/server/public/admin/assets/order-6mkZv6ss.js b/server/public/admin/assets/order-BqE0MdhI.js similarity index 96% rename from server/public/admin/assets/order-6mkZv6ss.js rename to server/public/admin/assets/order-BqE0MdhI.js index aa406020..f0767e40 100644 --- a/server/public/admin/assets/order-6mkZv6ss.js +++ b/server/public/admin/assets/order-BqE0MdhI.js @@ -1 +1 @@ -import{r as e}from"./index-Nt5zMHcc.js";function o(r){return e.get({url:"/order.order/lists",params:r})}function n(r){return e.get({url:"/order.order/syncWechatWorkBills",params:r})}function u(r){return e.get({url:"/order.order/syncWechatWorkBillsDebug",params:r})}function s(){return e.get({url:"/order.order/todayRevenue"})}function d(r){return e.get({url:"/order.order/orderStats",params:r})}function a(r){return e.post({url:"/order.order/detail",params:r})}function i(r){return e.post({url:"/order.order/create",params:r})}function c(r){return e.post({url:"/order.order/createForWechatWork",params:r})}function l(r){return e.post({url:"/order.order/edit",params:r})}function f(r){return e.post({url:"/order.order/delete",params:r})}function p(r){return e.post({url:"/order.order/pay",params:r})}function g(r){return e.post({url:"/order.order/alipay",params:r})}function h(r){return e.post({url:"/order.order/wechat",params:r})}function y(r){return e.post({url:"/order.order/cancel",params:r})}function W(r){return e.post({url:"/order.order/refund",params:r})}function k(r){return e.get({url:"/order.order/export",params:r},{isReturnDefaultResponse:!0})}function m(r){return e.post({url:"/order.order/split",params:r})}function S(r){return e.get({url:"/tcm.diagnosis/searchPatient",params:r})}function x(r){return e.get({url:"/order.order/actionLogs",params:r})}function A(r){return e.get({url:"/order.order/actionLogStats",params:r})}function B(r){return e.post({url:"/order.order/assignAssistant",params:r})}function D(r){return e.post({url:"/order.order/setExempt",params:r})}export{k as a,B as b,s as c,x as d,A as e,u as f,n as g,c as h,i,l as j,m as k,a as l,p as m,g as n,o,y as p,W as q,f as r,S as s,D as t,d as u,h as w}; +import{r as e}from"./index--WnM67ZH.js";function o(r){return e.get({url:"/order.order/lists",params:r})}function n(r){return e.get({url:"/order.order/syncWechatWorkBills",params:r})}function u(r){return e.get({url:"/order.order/syncWechatWorkBillsDebug",params:r})}function s(){return e.get({url:"/order.order/todayRevenue"})}function d(r){return e.get({url:"/order.order/orderStats",params:r})}function a(r){return e.post({url:"/order.order/detail",params:r})}function i(r){return e.post({url:"/order.order/create",params:r})}function c(r){return e.post({url:"/order.order/createForWechatWork",params:r})}function l(r){return e.post({url:"/order.order/edit",params:r})}function f(r){return e.post({url:"/order.order/delete",params:r})}function p(r){return e.post({url:"/order.order/pay",params:r})}function g(r){return e.post({url:"/order.order/alipay",params:r})}function h(r){return e.post({url:"/order.order/wechat",params:r})}function y(r){return e.post({url:"/order.order/cancel",params:r})}function W(r){return e.post({url:"/order.order/refund",params:r})}function k(r){return e.get({url:"/order.order/export",params:r},{isReturnDefaultResponse:!0})}function m(r){return e.post({url:"/order.order/split",params:r})}function S(r){return e.get({url:"/tcm.diagnosis/searchPatient",params:r})}function x(r){return e.get({url:"/order.order/actionLogs",params:r})}function A(r){return e.get({url:"/order.order/actionLogStats",params:r})}function B(r){return e.post({url:"/order.order/assignAssistant",params:r})}function D(r){return e.post({url:"/order.order/setExempt",params:r})}export{k as a,B as b,s as c,x as d,A as e,u as f,n as g,c as h,i,l as j,m as k,a as l,p as m,g as n,o,y as p,W as q,f as r,S as s,D as t,d as u,h as w}; diff --git a/server/public/admin/assets/order_list-DMkGC0-h.js b/server/public/admin/assets/order_list-BN8dBg8z.js similarity index 98% rename from server/public/admin/assets/order_list-DMkGC0-h.js rename to server/public/admin/assets/order_list-BN8dBg8z.js index 91903e08..16247cbd 100644 --- a/server/public/admin/assets/order_list-DMkGC0-h.js +++ b/server/public/admin/assets/order_list-BN8dBg8z.js @@ -1,3 +1,3 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-CsfWrQHN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DCW3HTOw.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/patient-BKtZKzsB.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); -import{_ as Gn,E as Wn}from"./jspdf-BsthCvR5.js";import{J as Kn,d as Qn,L as Yn,D as Jn,B as Xn,C as Zn,P as ei,Q as ti,W as ai,i as si,M as li,N as ni,T as ii,a1 as ri,r as oi,a9 as ui,K as di,a6 as pi,a7 as ci,a4 as _i,a5 as mi,aa as fi,ab as vi,R as gi,k as yi,j as bi,_ as xi,ac as ki,ad as hi,G as wi,F as Si,e as Ni,h as Vi,V as Ci,a8 as Pi,g as Ti,I as Oi,m as Ai,l as Ri,a as ut}from"./element-plus-DFTWCWyi.js";import{_ as Ei}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as Di}from"./index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js";import{w as dt,s as wa,q as Sa}from"./@vue/runtime-dom-DDAG46FW.js";import{u as $i}from"./vue-router-QlpZ4wdW.js";import{k as Ui,G as zi,R as Fi,V as ji,i as Li,W as Ii,N as Ds,L as qi,l as Mi}from"./@element-plus/icons-vue-HOEUG8sr.js";import{_ as Bi}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{q as Hi,g as Gi,a as Wi,l as Ki,r as Qi,s as Yi,t as $s,u as Y,v as Ji,w as Xi,x as Na,y as Zi,z as er,A as tr,B as Us,C as ar,D as sr,E as lr,F as nr,G as ir,H as rr,I as or,J as ur,c as dr,b as Va}from"./tcm-DCW3HTOw.js";import pr from"./html2canvas-QH1iLAAe.js";import{u as cr,i as O,m as _r,_ as mr}from"./index-Nt5zMHcc.js";import{d as fr}from"./department-CSUh_x-a.js";import{u as vr}from"./usePaging-VsbTxSU0.js";import{f as Fs,w as zs,b as gr,n as pt,as as yr,ak as o,I as m,a,aN as l,J as n,F as A,ap as z,H as v,aP as E,O as c,G as y,M as br,P as xr,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{o as I,Q as u}from"./@vue/shared-mAAVTE9n.js";import{y as F,a as kr,n as h,r as Ne}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const hr={class:"prescription-order-page prescription-order-list px-4 py-4 pb-8"},wr={class:"flex flex-col gap-3"},Sr={key:0,class:"flex items-center gap-2 flex-wrap"},Nr=["onClick"],Vr={class:"font-medium"},Cr={class:"flex items-center gap-2 flex-wrap"},Pr=["onClick"],Tr={class:"font-medium"},Or={class:"flex items-center gap-2 flex-wrap"},Ar=["onClick"],Rr={class:"font-medium"},Er={class:"flex items-center gap-2 flex-wrap"},Dr=["onClick"],$r={class:"font-medium"},Ur={class:"flex items-center gap-2 flex-wrap"},zr=["onClick"],Fr={class:"font-medium"},jr={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},Lr={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Ir={class:"relative flex items-start justify-between gap-3"},qr={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},Mr={class:"mt-2 space-y-1.5 min-w-0"},Br={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},Hr={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},Gr={class:"text-slate-400"},Wr={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},Kr={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},Qr={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Yr={class:"relative flex items-start justify-between gap-3"},Jr={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},Xr={class:"mt-2 space-y-1.5 min-w-0"},Zr={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},eo={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},to={class:"text-slate-400"},ao={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},so={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},lo={class:"po-table-toolbar"},no={class:"po-table-toolbar__title-wrap"},io={class:"po-table-hint text-gray-400"},ro={class:"po-focus-board"},oo={class:"po-focus-board__value"},uo={class:"po-focus-board__value"},po={class:"po-focus-board__value"},co={class:"po-focus-board__value"},_o={class:"po-order-no-cell"},mo={class:"po-order-no-main"},fo={class:"po-order-no-sub"},vo={class:"text-gray-400"},go={key:0,class:"ml-1"},yo={class:"flex items-center gap-1"},bo={class:"text-red-500 font-medium whitespace-nowrap"},xo={class:"text-sm"},ko={class:"flex justify-between mb-1"},ho={class:"font-medium text-red-500"},wo={class:"flex justify-between mb-1"},So={class:"flex justify-between mb-1"},No={class:"font-medium"},Vo={key:0,class:"flex justify-between"},Co={class:"font-medium text-orange-600"},Po=["title"],To={key:1},Oo={key:0,class:"text-gray-400"},Ao={class:"flex items-center gap-1 flex-wrap"},Ro={class:"flex justify-end mt-4"},Eo={class:"po-detail-drawer-head flex items-center justify-between"},Do={class:"flex items-center"},$o={key:2,class:"flex items-center gap-2 ml-4 shrink-0"},Uo={key:0,class:"flex items-center gap-2 mr-6"},zo={key:1,class:"po-detail-body px-6 pb-6 h-full overflow-y-auto"},Fo={class:"text-sm leading-relaxed"},jo={class:"font-mono font-semibold text-red-700"},Lo={class:"font-mono font-semibold text-red-700"},Io={class:"text-sm leading-relaxed space-y-1.5"},qo={key:0,class:"flex flex-wrap gap-1.5 items-center"},Mo={key:1,class:"list-disc pl-5 space-y-1 text-red-50"},Bo={class:"bg-gray-50/80 border border-gray-100 rounded-lg p-5 mb-5 shadow-sm"},Ho={key:0,class:"text-red-500 font-medium"},Go={key:1},Wo={key:2,class:"text-green-600"},Ko={key:3,class:"text-gray-400"},Qo={key:0,class:"text-red-500 font-medium"},Yo={key:1},Jo={key:2,class:"text-green-600"},Xo={key:3,class:"text-gray-400"},Zo={key:0,class:"text-amber-600 font-medium"},eu={key:1,class:"text-primary font-medium"},tu={key:2},au={key:3,class:"text-green-600"},su={key:4,class:"text-red-500 font-medium"},lu={class:"flex items-center justify-between mb-1"},nu={class:"stat-value text-red-500 font-bold text-xl"},iu={class:"stat-value text-green-600 font-bold text-xl"},ru={class:"stat-value text-primary font-bold text-xl"},ou={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},uu={key:0,class:"audit-stamp stamp-pass"},du={key:1,class:"audit-stamp stamp-reject"},pu={class:"flex items-center justify-between"},cu={class:"flex items-center gap-3"},_u={key:0,class:"text-xs text-gray-500"},mu={class:"text-primary font-medium"},fu={class:"text-xs text-gray-400"},vu={class:"text-red-500 font-medium"},gu={key:1,class:"ml-2 text-gray-500"},yu={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},bu={key:0,class:"mt-4"},xu={class:"flex flex-col gap-4 h-full"},ku={class:"text-red-500"},hu={key:0,class:"audit-stamp stamp-pass"},wu={key:1,class:"audit-stamp stamp-reject"},Su={class:"flex items-center justify-between"},Nu={class:"flex items-center gap-3"},Vu={key:0,class:"text-xs text-gray-500"},Cu={class:"text-primary font-medium"},Pu={class:"text-red-500"},Tu={class:"font-mono"},Ou={key:0,class:"text-[13px] space-y-1"},Au={class:"font-medium text-gray-900"},Ru={key:0,class:"text-gray-500 ml-2 font-mono text-xs"},Eu={key:0,class:"text-gray-600 text-xs leading-relaxed"},Du={key:1,class:"text-gray-400"},$u={key:0,class:"space-y-1.5"},Uu={class:"text-gray-800 break-all"},zu={key:1,class:"text-gray-400"},Fu={class:"flex flex-wrap items-center gap-x-4 gap-y-1 text-[13px]"},ju={class:"font-mono text-primary"},Lu={class:"text-gray-500"},Iu={key:0},qu={key:1,class:"text-gray-500"},Mu={key:0,class:"text-xs text-gray-500 mt-1"},Bu={key:1,class:"text-gray-400"},Hu={class:"po-audit-remark"},Gu={class:"po-audit-remark"},Wu={class:"flex items-center gap-2 flex-wrap"},Ku={class:"text-xs text-gray-400 font-mono"},Qu={class:"flex flex-wrap items-center gap-3 mb-4"},Yu={class:"ml-2 flex items-center gap-4 border-l pl-4 border-gray-200"},Ju={key:1,class:"py-6 text-center text-sm text-gray-500"},Xu={key:2,class:"logistics-content bg-gray-50/50 p-4 rounded-md"},Zu={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},ed={class:"text-gray-800"},td={key:1,class:"text-xs text-gray-400 ml-1"},ad={key:2,class:"text-xs text-gray-400"},sd={class:"flex items-center gap-2 mb-1"},ld={class:"font-medium text-[13px]"},nd={class:"text-sm text-gray-700 font-medium"},id={class:"create-order-dialog__inner"},rd={key:0,class:"create-order-rx-card"},od={class:"create-order-rx-card__head"},ud={class:"create-order-rx-card__meta"},dd={class:"create-order-rx-card__id"},pd={key:0,class:"create-order-rx-card__sn"},cd={class:"create-order-rx-card__patient"},_d={class:"create-order-rx-card__herbs"},md={class:"text-sm text-gray-700 mt-1"},fd={class:"create-order-step-lead"},vd={class:"flex gap-2 w-full"},gd={class:"create-order-step-panel"},yd={class:"create-order-step-panel"},bd={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},xd={class:"text-xs text-gray-400"},kd={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},hd={key:0,class:"space-y-1.5"},wd={class:"text-gray-800 break-all"},Sd={key:1,class:"text-gray-400"},Nd={class:"flex items-center gap-1 w-full"},Vd={class:"flex gap-2 w-full"},Cd={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},Pd={class:"flex items-center justify-between"},Td={class:"font-medium text-[13px] text-gray-800"},Od={class:"text-orange-500 font-medium ml-4"},Ad={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},Rd={class:"truncate pr-2"},Ed={class:"shrink-0"},Dd={class:"create-order-pay-hint text-gray-500"},$d={class:"text-amber-600 font-medium"},Ud={class:"create-order-step-panel"},zd={class:"create-order-deposit-bar__cell"},Fd={class:"create-order-deposit-bar__sub"},jd={class:"create-order-deposit-bar__cell"},Ld={class:"create-order-deposit-bar__sub"},Id={class:"create-order-footer"},qd={key:0,class:"create-order-footer__hint"},Md={class:"create-order-footer__step"},Bd={key:0,class:"create-order-footer__warn"},Hd={class:"create-order-footer__actions"},Gd={class:"text-sm"},Wd={class:"text-gray-600"},Kd={class:"text-gray-600"},Qd={class:"min-h-[52px]"},Yd={class:"text-xs leading-relaxed space-y-1.5"},Jd={key:0,class:"flex flex-wrap gap-1 items-center"},Xd={key:1,class:"list-disc pl-4 space-y-0.5 text-red-50"},Zd={class:"flex items-center justify-between"},ep={class:"text-sm"},tp={class:"text-orange-500 font-medium ml-4"},ap={class:"flex items-center justify-between w-full pr-2 gap-3"},sp={key:0,class:"flex items-center gap-2 shrink-0"},lp={class:"rx-wrap"},np={key:1,class:"rx-statusbar"},ip={key:2,class:"rx-status rx-status-danger"},rp={key:3,class:"rx-status rx-status-danger"},op={key:0,class:"mt-1"},up={key:4,class:"rx-status rx-status-danger"},dp={key:0,class:"mt-1"},pp={class:"rx-title"},cp={class:"rx-notice"},_p={class:"rx-notice-meta"},mp={class:"rx-meta-item"},fp={class:"rx-meta-value"},vp={class:"rx-meta-item"},gp={class:"rx-meta-value"},yp={class:"rx-meta-item"},bp={class:"rx-meta-value"},xp={key:0,class:"rx-meta-item"},kp={class:"rx-meta-value"},hp={class:"rx-info"},wp={class:"rx-info-row"},Sp={class:"rx-info-cell"},Np={class:"rx-val"},Vp={class:"rx-info-cell"},Cp={class:"rx-val"},Pp={class:"rx-info-cell"},Tp={class:"rx-val"},Op={class:"rx-info-cell"},Ap={class:"rx-val"},Rp={class:"rx-info-row rx-info-row-full"},Ep={class:"rx-info-cell"},Dp={class:"rx-val"},$p={class:"rx-info-row rx-info-row-full"},Up={class:"rx-info-cell"},zp={class:"rx-val"},Fp={class:"rx-rp"},jp={class:"rx-watermark"},Lp={class:"rx-rp-head"},Ip={class:"rx-rp-cols-head"},qp={class:"rx-rp-col-head"},Mp={class:"rx-rp-col-head"},Bp={class:"rx-herbs"},Hp={class:"rx-herb-name"},Gp={class:"rx-herb-total"},Wp={class:"rx-herb-name"},Kp={class:"rx-herb-total"},Qp={class:"rx-herb-name"},Yp={class:"rx-herb-total"},Jp={class:"rx-text"},Xp={key:0},Zp={key:1},ec={key:2},tc={key:3},ac={key:4},sc={key:5,class:"rx-text-warn"},lc={key:6,class:"rx-text-warn"},nc={class:"rx-bottom"},ic={class:"rx-bot-row rx-bot-row-1"},rc={class:"rx-bot-cell rx-bot-doctor"},oc={class:"rx-bot-doctor-body"},uc=["src"],dc={class:"rx-bot-cell rx-bot-meta"},pc={class:"rx-bot-meta-val"},cc={class:"rx-bot-cell rx-bot-meta"},_c={class:"rx-bot-meta-val"},mc={class:"rx-bot-cell rx-bot-meta"},fc={class:"rx-bot-meta-val"},vc={key:6,class:"rx-audit"},gc={key:0},yc={key:0,class:"ml-2 text-gray-400"},bc={key:1,class:"mt-1"},xc={key:0,class:"px-4"},kc={class:"flex items-center justify-between"},hc={class:"text-lg font-semibold text-orange-600"},wc={class:"text-lg font-semibold text-blue-600"},Sc={class:"text-lg font-semibold text-green-600"},Nc={class:"text-xl font-bold text-red-600"},Vc={class:"text-sm text-gray-500 mt-1.5"},Cc={class:"font-medium text-gray-700"},Pc={key:0},Tc={class:"text-sm text-gray-700 leading-relaxed"},Oc={class:"flex items-center justify-between"},Ac={class:"text-sm text-gray-500"},Rc={class:"font-medium text-orange-600"},Ec={class:"text-base font-medium"},Dc={class:"text-base font-medium"},$c=Fs({name:"prescriptionOrderList"}),Uc=Fs({...$c,setup(zc){const js=xr(()=>Gn(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),Ve=cr(),Ls=$i(),Ca=h(null);function Is(){var e,s;const t=Number((e=p.value)==null?void 0:e.diagnosis_id);if(!t){O.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(s=Ca.value)==null||s.openViewOnly(t)}const qs=2,Ms=[0,3,6],ve=S(()=>{const t=Ve.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes(qs)?e.some(s=>Ms.includes(s)):!0}),Bs=S(()=>ve.value?"详情/审核":"详情"),Hs=[0,3,6],Gs=[0,3],Ht=()=>{const t=Ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return Hs.some(s=>e.includes(s))},ct=h([]),Ie=h([]),Gt=h([]),qe=h([]),_t=h([]),Ws={value:"id",label:"name",children:"children"};function Pa(t,e){for(const s of t||[]){if(s==null||typeof s!="object")continue;const r=s;if(Number(r.id)===e)return r;const d=Pa(r.children||[],e);if(d)return d}return null}function Ta(t){const e=Number(t.id),s=[];Number.isFinite(e)&&e>0&&s.push(e);for(const r of t.children||[])r&&typeof r=="object"&&s.push(...Ta(r));return s}function Ks(t,e){const s=Pa(e,t);return s?Ta(s):[t]}async function Qs(){try{const[t,e,s]=await Promise.all([Gi(),Wi(),fr()]);Gt.value=Array.isArray(t)?t:[],qe.value=Array.isArray(e)?e:[];const r=Array.isArray(s)?s:[];_t.value=r}catch{Gt.value=[],qe.value=[],_t.value=[]}}const Ys=t=>t.map(e=>{var s;return{value:e.province,label:e.province,code:e.code,children:((s=e.citys)==null?void 0:s.map(r=>{var d;return{value:r.city,label:r.city,code:r.code,children:((d=r.areas)==null?void 0:d.map(g=>({value:g.area,label:g.area,code:g.code})))||[]}}))||[]}}),Js=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const s=await e.json();console.log("加载的数据条数:",s==null?void 0:s.length),ct.value=Ys(s),console.log("regionOptions 已设置,条数:",ct.value.length)}catch(t){console.error("加载省市区数据失败:",t),ct.value=[]}},Xs=async()=>{try{const t=await _r({type:"server_order"});Ie.value=((t==null?void 0:t.server_order)||[]).filter(e=>e.status!==0),console.log("服务套餐选项已加载:",Ie.value.length)}catch(t){console.error("加载服务套餐选项失败:",t),Ie.value=[]}},Zs=[{label:"全部",value:""},{label:"待双审通过",value:1},{label:"待发货",value:2},{label:"已发货",value:5},{label:"已签收",value:6},{label:"已完成",value:3},{label:"已取消",value:4},{label:"进行中",value:7},{label:"暂不制药",value:8},{label:"拒收",value:9},{label:"退款",value:10},{label:"保留药方",value:11},{label:"制药缓发",value:12}];function el(t){te.value="",x.exclude_fulfillment_cancelled=0,x.fulfillment_status=t,K()}const te=h(""),tl=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"自营",value:"self"}];function al(t){x.supply_mode=t,K()}const sl=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function ll(t){x.express_company=t,K()}const x=Ne({start_time:"",end_time:"",order_no:"",prescription_id:"",patient_keyword:"",express_keyword:"",express_company:"",doctor_id:"",assistant_id:"",assistant_dept_id:"",fulfillment_status:"",prescription_audit_status:"",payment_slip_audit_status:"",supply_mode:"",service_channel:"",exclude_fulfillment_cancelled:0}),nl=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],il=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function rl(t){te.value="",x.exclude_fulfillment_cancelled=0,x.prescription_audit_status=t,K()}function ol(t){te.value="",x.exclude_fulfillment_cancelled=0,x.payment_slip_audit_status=t,K()}function mt(t){if(te.value===t){te.value="",x.prescription_audit_status="",x.payment_slip_audit_status="",x.fulfillment_status="",x.exclude_fulfillment_cancelled=0,K();return}te.value=t,x.prescription_audit_status="",x.payment_slip_audit_status="",x.fulfillment_status="",x.exclude_fulfillment_cancelled=0,t==="pendingRx"?(x.prescription_audit_status=0,x.exclude_fulfillment_cancelled=1):t==="pendingPay"?(x.prescription_audit_status=1,x.payment_slip_audit_status=0):t==="pendingShip"?x.fulfillment_status=2:t==="risk"&&(x.payment_slip_audit_status=2),K()}function Oa(t){const e={...t};if(e.prescription_id===""||e.prescription_id===void 0?delete e.prescription_id:e.prescription_id=Number(e.prescription_id),e.fulfillment_status===""||e.fulfillment_status===void 0||e.fulfillment_status===null?delete e.fulfillment_status:e.fulfillment_status=Number(e.fulfillment_status),e.prescription_audit_status===""||e.prescription_audit_status===void 0||e.prescription_audit_status===null?delete e.prescription_audit_status:e.prescription_audit_status=Number(e.prescription_audit_status),e.payment_slip_audit_status===""||e.payment_slip_audit_status===void 0||e.payment_slip_audit_status===null?delete e.payment_slip_audit_status:e.payment_slip_audit_status=Number(e.payment_slip_audit_status),(!e.supply_mode||e.supply_mode==="")&&delete e.supply_mode,e.doctor_id===""||e.doctor_id===void 0||e.doctor_id===null?delete e.doctor_id:e.doctor_id=Number(e.doctor_id),e.assistant_id===""||e.assistant_id===void 0||e.assistant_id===null?delete e.assistant_id:e.assistant_id=Number(e.assistant_id),e.assistant_dept_id===""||e.assistant_dept_id===void 0||e.assistant_dept_id===null?delete e.assistant_dept_id:e.assistant_dept_id=Number(e.assistant_dept_id),e.order_no||delete e.order_no,String(e.patient_keyword||"").trim()||delete e.patient_keyword,String(e.express_keyword||"").trim()||delete e.express_keyword,(!e.express_company||e.express_company==="")&&delete e.express_company,e.service_channel===""||e.service_channel===void 0||e.service_channel===null?delete e.service_channel:(e.service_channel=String(e.service_channel).trim(),e.service_channel===""&&delete e.service_channel),Number(e.exclude_fulfillment_cancelled)!==1&&delete e.exclude_fulfillment_cancelled,!String(e.start_time||"").trim()||!String(e.end_time||"").trim())delete e.start_time,delete e.end_time;else{const s=String(e.start_time||"").trim(),r=String(e.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(s)&&/^\d{4}-\d{2}-\d{2}$/.test(r)&&(e.start_time=`${s} 00:00:00`,e.end_time=`${r} 23:59:59`)}return e}async function ul(t){const e=Oa({...t});return Ki(e)}const dl=S(()=>Oa({...x})),{pager:ue,getLists:G,resetPage:K,resetParams:pl}=vr({fetchFun:ul,params:x});function cl(){const t=Ls.query,e=_=>{const C=_!=null?String(_).trim():"";return C?C.length>=10?C.slice(0,10):C:""},s=e(t.start_time),r=e(t.end_time);s&&(x.start_time=s),r&&(x.end_time=r);const d=t.assistant_dept_id;if(d!=null&&String(d)!==""){const _=Number(d);Number.isFinite(_)&&_>0&&(x.assistant_dept_id=_)}const g=t.assistant_id;if(g!=null&&String(g)!==""){const _=Number(g);Number.isFinite(_)&&_>0&&(x.assistant_id=_)}}const Aa=S(()=>{const t=x.assistant_dept_id;if(t===""||t==null)return qe.value;const e=Number(t);if(!Number.isFinite(e))return qe.value;const s=new Set(Ks(e,_t.value));return qe.value.filter(r=>{const d=r.dept_ids;return!Array.isArray(d)||d.length===0?!1:d.map(Number).some(g=>s.has(g))})});function _l(){const t=x.assistant_id;if(t!==""&&t!=null){const e=Number(t);Aa.value.some(r=>Number(r.id)===e)||(x.assistant_id="")}K()}const de=S(()=>{const t=ue.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),s=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),r=Q=>{const oe=Number(Q);return Number.isFinite(oe)?Math.round(oe*100)/100:0},d=Q=>Q.toFixed(2),g=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,_=(t==null?void 0:t.stats_linked_pay_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_linked_pay_amount_cancelled)!==void 0,C=r(g?t==null?void 0:t.stats_order_amount_not_cancelled:e),H=g?r(t==null?void 0:t.stats_order_amount_cancelled):0,k=r(_?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:s),re=_?r(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,ee=(t==null?void 0:t.stats_order_amount_performance)!==void 0?r(t==null?void 0:t.stats_order_amount_performance):C,T=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?r(t==null?void 0:t.stats_linked_pay_amount_performance):k,V=String((t==null?void 0:t.stats_time_start)??"").trim(),Lt=String((t==null?void 0:t.stats_time_end)??"").trim(),he=V&&Lt?`统计时间:${V} ~ ${Lt}`:"统计时间:—",lt=String((t==null?void 0:t.stats_scope)??"restricted");let we="统计口径:与当前列表数据可见范围一致";lt==="all"?we="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":lt==="assistant"?we="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":lt==="own_rx"&&(we="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const Mt=String(x.start_time||"").trim()!==""&&String(x.end_time||"").trim()!==""?"区间":"今日";return{order:r(e),pay:r(s),orderStr:d(r(e)),payStr:d(r(s)),orderNotCancelledStr:d(C),orderCancelledStr:d(H),payNotCancelledStr:d(k),payCancelledStr:d(re),orderPerformanceStr:d(ee),payPerformanceStr:d(T),orderHeading:`${Mt}业绩(业务订单额)`,payHeading:`${Mt}业绩(关联实付)`,periodLine:he,scopeHint:we,orderSplitHint:"业绩 = 除履约已取消(4)外全部订单金额;下方为合计与已取消明细"}}),ft=S(()=>{const t=ue.extend,e=_=>{const C=Number(_);return!Number.isFinite(C)||C<0?0:Math.trunc(C)},s=e(t==null?void 0:t.focus_pending_rx_count),r=e(t==null?void 0:t.focus_pending_pay_count),d=e(t==null?void 0:t.focus_pending_ship_count),g=e(t==null?void 0:t.focus_risk_count);return{pendingRx:s,pendingPay:r,pendingShip:d,risk:g}});function Wt(t,e){const s=Number(e==null?void 0:e.prescription_audit_status),r=Number(e==null?void 0:e.payment_slip_audit_status),d=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&s===0||t==="pay"&&s===1&&r===0||t==="fulfillment"&&d===2?"po-status-tag is-focus":t==="rx"&&s===2||t==="pay"&&r===2||t==="fulfillment"&&d===4?"po-status-tag is-risk":"po-status-tag"}function ml({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),s=Number(t==null?void 0:t.payment_slip_audit_status),r=Number(t==null?void 0:t.fulfillment_status),d=kt(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||s===2||d?"po-row-risk":e===0||e===1&&s===0||r===2?"po-row-focus":r===3||r===6?"po-row-done":""}zs(ve,t=>{t||x.prescription_audit_status===""||x.prescription_audit_status===void 0||(x.prescription_audit_status="",x.exclude_fulfillment_cancelled=0,K())},{immediate:!0});function fl(){te.value="",x.start_time="",x.end_time="",x.order_no="",x.prescription_id="",x.patient_keyword="",x.express_keyword="",x.express_company="",x.doctor_id="",x.assistant_id="",x.assistant_dept_id="",x.fulfillment_status="",x.prescription_audit_status="",x.payment_slip_audit_status="",x.supply_mode="",x.service_channel="",x.exclude_fulfillment_cancelled=0,pl()}function vt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"}[Number(t)]??"—"}function vl(t){if(!t)return"—";let e=[];return Array.isArray(t)?e=t:typeof t=="string"&&(e=t.split(",").filter(r=>r.trim()!=="")),e.length===0?"—":e.map(r=>{const d=Ie.value.find(g=>g.value===r);return d?d.name:r}).join("、")}function Ra(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function Ea(t){return t===1?"success":t===2?"danger":"info"}function Kt(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function gl(t){const e=Number(t);return e===3||e===6?"success":e===5?"primary":e===4?"danger":e===2||e===7?"warning":e===8||e===11||e===12?"info":e===9||e===10?"danger":"info"}function ae(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function Ce(t){if(t==null||t==="")return"—";if(typeof t=="number"&&t>1e9&&t<1e11){const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}return String(t)}function Da(){const t=Ve.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[]).some(s=>Gs.includes(s)):!1}function $a(t){var s;const e=Number((s=Ve.userInfo)==null?void 0:s.id);return e>0&&Number(t.creator_id)===e}function Ua(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function za(t){const e=Number(t.fulfillment_status);if(e===3||e===4||$a(t)&&Ua(t)&&!Da())return!1;const s=String(t.gancao_reciperl_order_no||"").trim(),r=Number(t.gancao_submit_time||0);return s!==""||r>0?[1,2,5,7].includes(e):e===1||e===2}function yl(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function bl(t){const e=Number(t.fulfillment_status);return e===3||e===4?!1:Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===0}function xl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),r=Number(t.payment_slip_audit_status);return(s===1||s===2)&&r===0}function kl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),r=Number(t.payment_slip_audit_status);return s===1&&(r===1||r===2)}function hl(t){return Number(t.fulfillment_status)===1}function Qt(t){return Number(t.fulfillment_status)===2}const wl=S(()=>{const t=Ve.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/setShipMode")});function se(t){return String(t||"").toLowerCase()==="direct"?"direct":"gancao"}function Sl(t){return se(t)==="direct"?"洛阳药房":"甘草药房"}function Nl(t){return String(t.gancao_reciperl_order_no||"").trim()!==""}function Fa(t){const e=Number(t.fulfillment_status);return e!==3&&e!==4}const Yt=h(!1);function Jt(t,e){const s=Number(t),r=Number(e);return s>0&&s===r}const Vl=S(()=>se(W.ship_mode)==="direct"?"洛阳药房直发":"甘草药房直发");async function Cl(t){const e=p.value;if(!(e!=null&&e.id))return;const s=se(t),r=se(e.ship_mode);if(s!==r){if(!Fa(e)){O.msgWarning("当前订单状态不可修改发货类型");return}Yt.value=!0;try{await Qi({id:e.id,ship_mode:s}),p.value&&(p.value.ship_mode=s),xe.value&&Jt(ke.value,e.id)&&(W.ship_mode=s),await oa(),O.msgSuccess("发货类型已保存"),G(),St(e.id)}catch{}finally{Yt.value=!1}}}function ja(t){const e=Number(t.fulfillment_status);return e===5||e===6}function La(t){const e=Number(t.fulfillment_status);return(e===5||e===6)&&Number(t.payment_slip_audit_status)===1}function Pl(t){return Number(t.fulfillment_status)===5}function Xt(t){if(!(t!=null&&t.id))return!1;const e=Number(t.fulfillment_status);return e!==3&&e!==4}function Tl(t){const e=Number(t.prescription_audit_status),s=String(t.gancao_reciperl_order_no||"").trim();return e===1&&s===""}function Ia(t){return{1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"}[Number(t)]??"—"}const J=h(!1),Zt=h(!1),p=h(null),gt=S(()=>{if(!p.value)return 0;const t=Number(p.value.fulfillment_status),e=Number(p.value.prescription_audit_status),s=Number(p.value.payment_slip_audit_status);return t===3||[8,9,10,11,12].includes(t)?5:t===6||t===5||t===7?4:t===4?e===2?1:s===2?2:3:t===2?3:e===0||e===2?1:s===0||s===2?2:3}),yt=S(()=>{var e;const t=Number((e=p.value)==null?void 0:e.prescription_audit_status);return t===1?"success":t===2?"error":gt.value===1?"process":"wait"}),bt=S(()=>{var e;const t=Number((e=p.value)==null?void 0:e.payment_slip_audit_status);return t===1?"success":t===2?"error":gt.value===2?"process":"wait"}),Pe=S(()=>{var e;const t=Number((e=p.value)==null?void 0:e.fulfillment_status);return t===3||t===5||t===6||t===8||t===11||t===12?"success":t===4||t===9||t===10?"error":t===7||gt.value===3?"process":"wait"}),ea=S(()=>{const t=p.value;if(!t)return[];const e=t.linked_pay_orders;return Array.isArray(e)?e:[]}),qa=S(()=>{const t=p.value;if(!t)return 0;const e=Number(t.amount)||0,s=Number(t.linked_pay_paid_total)||0;return Math.round((e-s)*100)/100}),Te=h([]);async function Ol(t,e,s){var r;if(!t){Te.value=[];return}try{const d=await Va({diagnosis_id:t,prescription_order_id:e}),g=(d==null?void 0:d.lists)??((r=d==null?void 0:d.data)==null?void 0:r.lists)??[],_=Array.isArray(g)?g.filter(C=>!s.includes(C.id)):[];Te.value=_}catch{Te.value=[]}}function Ma(t){return t?Array.isArray(t)?t.map(e=>({name:String((e==null?void 0:e.name)??"").trim(),dosage:Number(e==null?void 0:e.dosage)||0})):[]:[]}const R=S(()=>{var e;const t=(e=p.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null});function xt(t){return t==null?"":String(t).replace(/\s/g,"").trim()}function kt(t,e){const s=xt(t),r=xt(e);return!s||!r?!1:s!==r}const Me=S(()=>{var s,r;const t=(s=R.value)==null?void 0:s.phone,e=(r=p.value)==null?void 0:r.recipient_phone;return kt(e,t)}),Al=S(()=>{var e;return xt((e=R.value)==null?void 0:e.phone)||"—"}),Rl=S(()=>{var e;return xt((e=p.value)==null?void 0:e.recipient_phone)||"—"}),Ba=S(()=>{var e,s;const t=String(((e=p.value)==null?void 0:e.order_creator_dept_path)??((s=p.value)==null?void 0:s.diagnosis_creator_dept_path)??"").trim();return t?t.split(";").map(r=>r.trim()).filter(Boolean).map(r=>r.includes(" / ")?r.split(" / ").map(d=>d.trim()).filter(Boolean):r.split("/").map(d=>d.trim()).filter(Boolean)).filter(r=>r.length>0):[]}),Ha=S(()=>{const t=p.value;if(!t)return"";const e=String(t.creator_account??"").trim(),s=String(t.creator_mobile??"").trim(),r=[];return e&&r.push(`登录账号:${e}`),s&&r.push(`手机:${s}`),r.join(" · ")}),X=S(()=>{var e;const t=(e=p.value)==null?void 0:e.linked_appointment;return t&&typeof t=="object"?t:null}),Ga=S(()=>{var e;const t=String(((e=X.value)==null?void 0:e.resolved_from)||"");return t==="prescription"?"处方绑定挂号":t==="diagnosis"?"诊单关联挂号":""}),Wa=S(()=>{const t=X.value;if(!t)return"";const e=String(t.channel_source_desc??"").trim();return e||String(t.channel_source??"").trim()}),Ka=S(()=>{var t;return Ma((t=R.value)==null?void 0:t.herbs)}),El=S(()=>{var t;return((t=p.value)==null?void 0:t.prescription_detail_herbs_visible)!==!1}),Dl=S(()=>{const t=p.value;if(!t)return"—";const e=[];return t.shipping_province&&e.push(t.shipping_province),t.shipping_city&&e.push(t.shipping_city),t.shipping_district&&e.push(t.shipping_district),t.shipping_address&&e.push(t.shipping_address),e.length>0?e.join(" "):"—"}),Qa=S(()=>`${f.dose_unit||"剂"}数`);function $l(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function Ul(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function Ya(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function Ja(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):Ce(t)}const Be=h("auto"),ht=h(!1),B=h(null),He=h("");let ta=0;function zl(){ta+=1,B.value=null}function aa(t){var e,s;return t.requestSeq!==ta||Number((e=p.value)==null?void 0:e.id)!==t.orderId?!1:String(((s=p.value)==null?void 0:s.tracking_number)||"").trim()===t.trackingNumber}function Xa(t,e,s){const r=(t==null?void 0:t.data)??t;if(!r||typeof r!="object")return null;const d=r,g=String(d.tracking_number||"").trim();if(g&&g!==e)return null;const _=Number(d.order_id);return _>0&&_!==s?null:d}const Oe=h([]),Ge=h(!1),sa=h(!1),wt=h(),_e=Ne({id:0,amount:void 0}),Fl={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,s)=>{const r=Number(e);if(!Number.isFinite(r)||r<=0){s(new Error("订单金额必须大于0"));return}s()},trigger:"blur"}]};function jl(){const t=Ve.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function St(t){if(!jl()){Oe.value=[];return}try{const e=await Yi({id:t});Oe.value=(e==null?void 0:e.data)??e??[]}catch{Oe.value=[]}}function Ll(t){return{create:"创建",edit:"编辑",audit_rx_approve:"处方审核",audit_rx_reject:"处方审核",audit_pay_approve:"支付审核",audit_pay_reject:"支付审核",fill_tracking:"填快递单",ship:"确认发货",withdraw:"撤销",link_pay_order:"关联支付单",completion_request:"完单申请",auto_complete:"自动完成",revoke_rx_audit:"撤回处方审核",revoke_pay_audit:"撤回支付审核",gancao_submit:"甘草下单",patch_rx_patient:"处方患者信息",update_amount:"修改订单金额",complete:"完成订单"}[t]||t}const la=S(()=>{var s;const t=String(((s=p.value)==null?void 0:s.tracking_number)||"").trim();if(!t)return{sf:"javascript:void(0)",jd:"javascript:void(0)",jt:"javascript:void(0)"};const e=encodeURIComponent(t);return{sf:`https://www.sf-express.com/cn/sc/dynamic_function/waybill/#search/bill-number/${e}`,jd:`https://www.jdl.com/#/trackQuery?waybillCode=${e}`,jt:`https://www.jtexpress.com.cn/index/query/gzquery.html?bills=${e}`}}),Za=S(()=>{const t=B.value;return!t||!Array.isArray(t.traces)?[]:t.traces}),es=["拒收","拒签","退件","客户拒收","拦截退回","退回发件","派件退回","无人签收","退回快件"];function Nt(t){const e=String(t??"");return es.some(s=>e.includes(s))}function Il(t){return Nt(t)}function ts(t){if(!t)return{show:!1,keywords:[],lines:[]};const e=Array.isArray(t.traces)?t.traces:[],s=[];t.state_text&&s.push(String(t.state_text)),t.hint&&s.push(String(t.hint));for(const _ of e)_.context&&s.push(String(_.context));const r=s.join(` +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DiacXhqZ.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DzAQc_oE.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/patient-BNjmKCvA.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); +import{_ as Gn,E as Wn}from"./jspdf-BsthCvR5.js";import{J as Kn,d as Qn,L as Yn,D as Jn,B as Xn,C as Zn,P as ei,Q as ti,W as ai,i as si,M as li,N as ni,T as ii,a1 as ri,r as oi,a9 as ui,K as di,a6 as pi,a7 as ci,a4 as _i,a5 as mi,aa as fi,ab as vi,R as gi,k as yi,j as bi,_ as xi,ac as ki,ad as hi,G as wi,F as Si,e as Ni,h as Vi,V as Ci,a8 as Pi,g as Ti,I as Oi,m as Ai,l as Ri,a as ut}from"./element-plus-DFTWCWyi.js";import{_ as Ei}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{_ as Di}from"./index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js";import{w as dt,s as wa,q as Sa}from"./@vue/runtime-dom-DDAG46FW.js";import{u as $i}from"./vue-router-QlpZ4wdW.js";import{k as Ui,G as zi,R as Fi,V as ji,i as Li,W as Ii,N as Ds,L as qi,l as Mi}from"./@element-plus/icons-vue-HOEUG8sr.js";import{_ as Bi}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{q as Hi,g as Gi,a as Wi,l as Ki,r as Qi,s as Yi,t as $s,u as Y,v as Ji,w as Xi,x as Na,y as Zi,z as er,A as tr,B as Us,C as ar,D as sr,E as lr,F as nr,G as ir,H as rr,I as or,J as ur,c as dr,b as Va}from"./tcm-DzAQc_oE.js";import pr from"./html2canvas-QH1iLAAe.js";import{u as cr,i as O,m as _r,_ as mr}from"./index--WnM67ZH.js";import{d as fr}from"./department-D5OVad_r.js";import{u as vr}from"./usePaging-VsbTxSU0.js";import{f as Fs,w as zs,b as gr,n as pt,as as yr,ak as o,I as m,a,aN as l,J as n,F as A,ap as z,H as v,aP as E,O as c,G as y,M as br,P as xr,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{o as I,Q as u}from"./@vue/shared-mAAVTE9n.js";import{y as F,a as kr,n as h,r as Ne}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const hr={class:"prescription-order-page prescription-order-list px-4 py-4 pb-8"},wr={class:"flex flex-col gap-3"},Sr={key:0,class:"flex items-center gap-2 flex-wrap"},Nr=["onClick"],Vr={class:"font-medium"},Cr={class:"flex items-center gap-2 flex-wrap"},Pr=["onClick"],Tr={class:"font-medium"},Or={class:"flex items-center gap-2 flex-wrap"},Ar=["onClick"],Rr={class:"font-medium"},Er={class:"flex items-center gap-2 flex-wrap"},Dr=["onClick"],$r={class:"font-medium"},Ur={class:"flex items-center gap-2 flex-wrap"},zr=["onClick"],Fr={class:"font-medium"},jr={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},Lr={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Ir={class:"relative flex items-start justify-between gap-3"},qr={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},Mr={class:"mt-2 space-y-1.5 min-w-0"},Br={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},Hr={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},Gr={class:"text-slate-400"},Wr={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},Kr={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},Qr={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Yr={class:"relative flex items-start justify-between gap-3"},Jr={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},Xr={class:"mt-2 space-y-1.5 min-w-0"},Zr={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},eo={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},to={class:"text-slate-400"},ao={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},so={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},lo={class:"po-table-toolbar"},no={class:"po-table-toolbar__title-wrap"},io={class:"po-table-hint text-gray-400"},ro={class:"po-focus-board"},oo={class:"po-focus-board__value"},uo={class:"po-focus-board__value"},po={class:"po-focus-board__value"},co={class:"po-focus-board__value"},_o={class:"po-order-no-cell"},mo={class:"po-order-no-main"},fo={class:"po-order-no-sub"},vo={class:"text-gray-400"},go={key:0,class:"ml-1"},yo={class:"flex items-center gap-1"},bo={class:"text-red-500 font-medium whitespace-nowrap"},xo={class:"text-sm"},ko={class:"flex justify-between mb-1"},ho={class:"font-medium text-red-500"},wo={class:"flex justify-between mb-1"},So={class:"flex justify-between mb-1"},No={class:"font-medium"},Vo={key:0,class:"flex justify-between"},Co={class:"font-medium text-orange-600"},Po=["title"],To={key:1},Oo={key:0,class:"text-gray-400"},Ao={class:"flex items-center gap-1 flex-wrap"},Ro={class:"flex justify-end mt-4"},Eo={class:"po-detail-drawer-head flex items-center justify-between"},Do={class:"flex items-center"},$o={key:2,class:"flex items-center gap-2 ml-4 shrink-0"},Uo={key:0,class:"flex items-center gap-2 mr-6"},zo={key:1,class:"po-detail-body px-6 pb-6 h-full overflow-y-auto"},Fo={class:"text-sm leading-relaxed"},jo={class:"font-mono font-semibold text-red-700"},Lo={class:"font-mono font-semibold text-red-700"},Io={class:"text-sm leading-relaxed space-y-1.5"},qo={key:0,class:"flex flex-wrap gap-1.5 items-center"},Mo={key:1,class:"list-disc pl-5 space-y-1 text-red-50"},Bo={class:"bg-gray-50/80 border border-gray-100 rounded-lg p-5 mb-5 shadow-sm"},Ho={key:0,class:"text-red-500 font-medium"},Go={key:1},Wo={key:2,class:"text-green-600"},Ko={key:3,class:"text-gray-400"},Qo={key:0,class:"text-red-500 font-medium"},Yo={key:1},Jo={key:2,class:"text-green-600"},Xo={key:3,class:"text-gray-400"},Zo={key:0,class:"text-amber-600 font-medium"},eu={key:1,class:"text-primary font-medium"},tu={key:2},au={key:3,class:"text-green-600"},su={key:4,class:"text-red-500 font-medium"},lu={class:"flex items-center justify-between mb-1"},nu={class:"stat-value text-red-500 font-bold text-xl"},iu={class:"stat-value text-green-600 font-bold text-xl"},ru={class:"stat-value text-primary font-bold text-xl"},ou={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},uu={key:0,class:"audit-stamp stamp-pass"},du={key:1,class:"audit-stamp stamp-reject"},pu={class:"flex items-center justify-between"},cu={class:"flex items-center gap-3"},_u={key:0,class:"text-xs text-gray-500"},mu={class:"text-primary font-medium"},fu={class:"text-xs text-gray-400"},vu={class:"text-red-500 font-medium"},gu={key:1,class:"ml-2 text-gray-500"},yu={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},bu={key:0,class:"mt-4"},xu={class:"flex flex-col gap-4 h-full"},ku={class:"text-red-500"},hu={key:0,class:"audit-stamp stamp-pass"},wu={key:1,class:"audit-stamp stamp-reject"},Su={class:"flex items-center justify-between"},Nu={class:"flex items-center gap-3"},Vu={key:0,class:"text-xs text-gray-500"},Cu={class:"text-primary font-medium"},Pu={class:"text-red-500"},Tu={class:"font-mono"},Ou={key:0,class:"text-[13px] space-y-1"},Au={class:"font-medium text-gray-900"},Ru={key:0,class:"text-gray-500 ml-2 font-mono text-xs"},Eu={key:0,class:"text-gray-600 text-xs leading-relaxed"},Du={key:1,class:"text-gray-400"},$u={key:0,class:"space-y-1.5"},Uu={class:"text-gray-800 break-all"},zu={key:1,class:"text-gray-400"},Fu={class:"flex flex-wrap items-center gap-x-4 gap-y-1 text-[13px]"},ju={class:"font-mono text-primary"},Lu={class:"text-gray-500"},Iu={key:0},qu={key:1,class:"text-gray-500"},Mu={key:0,class:"text-xs text-gray-500 mt-1"},Bu={key:1,class:"text-gray-400"},Hu={class:"po-audit-remark"},Gu={class:"po-audit-remark"},Wu={class:"flex items-center gap-2 flex-wrap"},Ku={class:"text-xs text-gray-400 font-mono"},Qu={class:"flex flex-wrap items-center gap-3 mb-4"},Yu={class:"ml-2 flex items-center gap-4 border-l pl-4 border-gray-200"},Ju={key:1,class:"py-6 text-center text-sm text-gray-500"},Xu={key:2,class:"logistics-content bg-gray-50/50 p-4 rounded-md"},Zu={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},ed={class:"text-gray-800"},td={key:1,class:"text-xs text-gray-400 ml-1"},ad={key:2,class:"text-xs text-gray-400"},sd={class:"flex items-center gap-2 mb-1"},ld={class:"font-medium text-[13px]"},nd={class:"text-sm text-gray-700 font-medium"},id={class:"create-order-dialog__inner"},rd={key:0,class:"create-order-rx-card"},od={class:"create-order-rx-card__head"},ud={class:"create-order-rx-card__meta"},dd={class:"create-order-rx-card__id"},pd={key:0,class:"create-order-rx-card__sn"},cd={class:"create-order-rx-card__patient"},_d={class:"create-order-rx-card__herbs"},md={class:"text-sm text-gray-700 mt-1"},fd={class:"create-order-step-lead"},vd={class:"flex gap-2 w-full"},gd={class:"create-order-step-panel"},yd={class:"create-order-step-panel"},bd={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},xd={class:"text-xs text-gray-400"},kd={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},hd={key:0,class:"space-y-1.5"},wd={class:"text-gray-800 break-all"},Sd={key:1,class:"text-gray-400"},Nd={class:"flex items-center gap-1 w-full"},Vd={class:"flex gap-2 w-full"},Cd={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},Pd={class:"flex items-center justify-between"},Td={class:"font-medium text-[13px] text-gray-800"},Od={class:"text-orange-500 font-medium ml-4"},Ad={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},Rd={class:"truncate pr-2"},Ed={class:"shrink-0"},Dd={class:"create-order-pay-hint text-gray-500"},$d={class:"text-amber-600 font-medium"},Ud={class:"create-order-step-panel"},zd={class:"create-order-deposit-bar__cell"},Fd={class:"create-order-deposit-bar__sub"},jd={class:"create-order-deposit-bar__cell"},Ld={class:"create-order-deposit-bar__sub"},Id={class:"create-order-footer"},qd={key:0,class:"create-order-footer__hint"},Md={class:"create-order-footer__step"},Bd={key:0,class:"create-order-footer__warn"},Hd={class:"create-order-footer__actions"},Gd={class:"text-sm"},Wd={class:"text-gray-600"},Kd={class:"text-gray-600"},Qd={class:"min-h-[52px]"},Yd={class:"text-xs leading-relaxed space-y-1.5"},Jd={key:0,class:"flex flex-wrap gap-1 items-center"},Xd={key:1,class:"list-disc pl-4 space-y-0.5 text-red-50"},Zd={class:"flex items-center justify-between"},ep={class:"text-sm"},tp={class:"text-orange-500 font-medium ml-4"},ap={class:"flex items-center justify-between w-full pr-2 gap-3"},sp={key:0,class:"flex items-center gap-2 shrink-0"},lp={class:"rx-wrap"},np={key:1,class:"rx-statusbar"},ip={key:2,class:"rx-status rx-status-danger"},rp={key:3,class:"rx-status rx-status-danger"},op={key:0,class:"mt-1"},up={key:4,class:"rx-status rx-status-danger"},dp={key:0,class:"mt-1"},pp={class:"rx-title"},cp={class:"rx-notice"},_p={class:"rx-notice-meta"},mp={class:"rx-meta-item"},fp={class:"rx-meta-value"},vp={class:"rx-meta-item"},gp={class:"rx-meta-value"},yp={class:"rx-meta-item"},bp={class:"rx-meta-value"},xp={key:0,class:"rx-meta-item"},kp={class:"rx-meta-value"},hp={class:"rx-info"},wp={class:"rx-info-row"},Sp={class:"rx-info-cell"},Np={class:"rx-val"},Vp={class:"rx-info-cell"},Cp={class:"rx-val"},Pp={class:"rx-info-cell"},Tp={class:"rx-val"},Op={class:"rx-info-cell"},Ap={class:"rx-val"},Rp={class:"rx-info-row rx-info-row-full"},Ep={class:"rx-info-cell"},Dp={class:"rx-val"},$p={class:"rx-info-row rx-info-row-full"},Up={class:"rx-info-cell"},zp={class:"rx-val"},Fp={class:"rx-rp"},jp={class:"rx-watermark"},Lp={class:"rx-rp-head"},Ip={class:"rx-rp-cols-head"},qp={class:"rx-rp-col-head"},Mp={class:"rx-rp-col-head"},Bp={class:"rx-herbs"},Hp={class:"rx-herb-name"},Gp={class:"rx-herb-total"},Wp={class:"rx-herb-name"},Kp={class:"rx-herb-total"},Qp={class:"rx-herb-name"},Yp={class:"rx-herb-total"},Jp={class:"rx-text"},Xp={key:0},Zp={key:1},ec={key:2},tc={key:3},ac={key:4},sc={key:5,class:"rx-text-warn"},lc={key:6,class:"rx-text-warn"},nc={class:"rx-bottom"},ic={class:"rx-bot-row rx-bot-row-1"},rc={class:"rx-bot-cell rx-bot-doctor"},oc={class:"rx-bot-doctor-body"},uc=["src"],dc={class:"rx-bot-cell rx-bot-meta"},pc={class:"rx-bot-meta-val"},cc={class:"rx-bot-cell rx-bot-meta"},_c={class:"rx-bot-meta-val"},mc={class:"rx-bot-cell rx-bot-meta"},fc={class:"rx-bot-meta-val"},vc={key:6,class:"rx-audit"},gc={key:0},yc={key:0,class:"ml-2 text-gray-400"},bc={key:1,class:"mt-1"},xc={key:0,class:"px-4"},kc={class:"flex items-center justify-between"},hc={class:"text-lg font-semibold text-orange-600"},wc={class:"text-lg font-semibold text-blue-600"},Sc={class:"text-lg font-semibold text-green-600"},Nc={class:"text-xl font-bold text-red-600"},Vc={class:"text-sm text-gray-500 mt-1.5"},Cc={class:"font-medium text-gray-700"},Pc={key:0},Tc={class:"text-sm text-gray-700 leading-relaxed"},Oc={class:"flex items-center justify-between"},Ac={class:"text-sm text-gray-500"},Rc={class:"font-medium text-orange-600"},Ec={class:"text-base font-medium"},Dc={class:"text-base font-medium"},$c=Fs({name:"prescriptionOrderList"}),Uc=Fs({...$c,setup(zc){const js=xr(()=>Gn(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),Ve=cr(),Ls=$i(),Ca=h(null);function Is(){var e,s;const t=Number((e=p.value)==null?void 0:e.diagnosis_id);if(!t){O.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(s=Ca.value)==null||s.openViewOnly(t)}const qs=2,Ms=[0,3,6],ve=S(()=>{const t=Ve.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes(qs)?e.some(s=>Ms.includes(s)):!0}),Bs=S(()=>ve.value?"详情/审核":"详情"),Hs=[0,3,6],Gs=[0,3],Ht=()=>{const t=Ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return Hs.some(s=>e.includes(s))},ct=h([]),Ie=h([]),Gt=h([]),qe=h([]),_t=h([]),Ws={value:"id",label:"name",children:"children"};function Pa(t,e){for(const s of t||[]){if(s==null||typeof s!="object")continue;const r=s;if(Number(r.id)===e)return r;const d=Pa(r.children||[],e);if(d)return d}return null}function Ta(t){const e=Number(t.id),s=[];Number.isFinite(e)&&e>0&&s.push(e);for(const r of t.children||[])r&&typeof r=="object"&&s.push(...Ta(r));return s}function Ks(t,e){const s=Pa(e,t);return s?Ta(s):[t]}async function Qs(){try{const[t,e,s]=await Promise.all([Gi(),Wi(),fr()]);Gt.value=Array.isArray(t)?t:[],qe.value=Array.isArray(e)?e:[];const r=Array.isArray(s)?s:[];_t.value=r}catch{Gt.value=[],qe.value=[],_t.value=[]}}const Ys=t=>t.map(e=>{var s;return{value:e.province,label:e.province,code:e.code,children:((s=e.citys)==null?void 0:s.map(r=>{var d;return{value:r.city,label:r.city,code:r.code,children:((d=r.areas)==null?void 0:d.map(g=>({value:g.area,label:g.area,code:g.code})))||[]}}))||[]}}),Js=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const s=await e.json();console.log("加载的数据条数:",s==null?void 0:s.length),ct.value=Ys(s),console.log("regionOptions 已设置,条数:",ct.value.length)}catch(t){console.error("加载省市区数据失败:",t),ct.value=[]}},Xs=async()=>{try{const t=await _r({type:"server_order"});Ie.value=((t==null?void 0:t.server_order)||[]).filter(e=>e.status!==0),console.log("服务套餐选项已加载:",Ie.value.length)}catch(t){console.error("加载服务套餐选项失败:",t),Ie.value=[]}},Zs=[{label:"全部",value:""},{label:"待双审通过",value:1},{label:"待发货",value:2},{label:"已发货",value:5},{label:"已签收",value:6},{label:"已完成",value:3},{label:"已取消",value:4},{label:"进行中",value:7},{label:"暂不制药",value:8},{label:"拒收",value:9},{label:"退款",value:10},{label:"保留药方",value:11},{label:"制药缓发",value:12}];function el(t){te.value="",x.exclude_fulfillment_cancelled=0,x.fulfillment_status=t,K()}const te=h(""),tl=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"自营",value:"self"}];function al(t){x.supply_mode=t,K()}const sl=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function ll(t){x.express_company=t,K()}const x=Ne({start_time:"",end_time:"",order_no:"",prescription_id:"",patient_keyword:"",express_keyword:"",express_company:"",doctor_id:"",assistant_id:"",assistant_dept_id:"",fulfillment_status:"",prescription_audit_status:"",payment_slip_audit_status:"",supply_mode:"",service_channel:"",exclude_fulfillment_cancelled:0}),nl=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],il=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function rl(t){te.value="",x.exclude_fulfillment_cancelled=0,x.prescription_audit_status=t,K()}function ol(t){te.value="",x.exclude_fulfillment_cancelled=0,x.payment_slip_audit_status=t,K()}function mt(t){if(te.value===t){te.value="",x.prescription_audit_status="",x.payment_slip_audit_status="",x.fulfillment_status="",x.exclude_fulfillment_cancelled=0,K();return}te.value=t,x.prescription_audit_status="",x.payment_slip_audit_status="",x.fulfillment_status="",x.exclude_fulfillment_cancelled=0,t==="pendingRx"?(x.prescription_audit_status=0,x.exclude_fulfillment_cancelled=1):t==="pendingPay"?(x.prescription_audit_status=1,x.payment_slip_audit_status=0):t==="pendingShip"?x.fulfillment_status=2:t==="risk"&&(x.payment_slip_audit_status=2),K()}function Oa(t){const e={...t};if(e.prescription_id===""||e.prescription_id===void 0?delete e.prescription_id:e.prescription_id=Number(e.prescription_id),e.fulfillment_status===""||e.fulfillment_status===void 0||e.fulfillment_status===null?delete e.fulfillment_status:e.fulfillment_status=Number(e.fulfillment_status),e.prescription_audit_status===""||e.prescription_audit_status===void 0||e.prescription_audit_status===null?delete e.prescription_audit_status:e.prescription_audit_status=Number(e.prescription_audit_status),e.payment_slip_audit_status===""||e.payment_slip_audit_status===void 0||e.payment_slip_audit_status===null?delete e.payment_slip_audit_status:e.payment_slip_audit_status=Number(e.payment_slip_audit_status),(!e.supply_mode||e.supply_mode==="")&&delete e.supply_mode,e.doctor_id===""||e.doctor_id===void 0||e.doctor_id===null?delete e.doctor_id:e.doctor_id=Number(e.doctor_id),e.assistant_id===""||e.assistant_id===void 0||e.assistant_id===null?delete e.assistant_id:e.assistant_id=Number(e.assistant_id),e.assistant_dept_id===""||e.assistant_dept_id===void 0||e.assistant_dept_id===null?delete e.assistant_dept_id:e.assistant_dept_id=Number(e.assistant_dept_id),e.order_no||delete e.order_no,String(e.patient_keyword||"").trim()||delete e.patient_keyword,String(e.express_keyword||"").trim()||delete e.express_keyword,(!e.express_company||e.express_company==="")&&delete e.express_company,e.service_channel===""||e.service_channel===void 0||e.service_channel===null?delete e.service_channel:(e.service_channel=String(e.service_channel).trim(),e.service_channel===""&&delete e.service_channel),Number(e.exclude_fulfillment_cancelled)!==1&&delete e.exclude_fulfillment_cancelled,!String(e.start_time||"").trim()||!String(e.end_time||"").trim())delete e.start_time,delete e.end_time;else{const s=String(e.start_time||"").trim(),r=String(e.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(s)&&/^\d{4}-\d{2}-\d{2}$/.test(r)&&(e.start_time=`${s} 00:00:00`,e.end_time=`${r} 23:59:59`)}return e}async function ul(t){const e=Oa({...t});return Ki(e)}const dl=S(()=>Oa({...x})),{pager:ue,getLists:G,resetPage:K,resetParams:pl}=vr({fetchFun:ul,params:x});function cl(){const t=Ls.query,e=_=>{const C=_!=null?String(_).trim():"";return C?C.length>=10?C.slice(0,10):C:""},s=e(t.start_time),r=e(t.end_time);s&&(x.start_time=s),r&&(x.end_time=r);const d=t.assistant_dept_id;if(d!=null&&String(d)!==""){const _=Number(d);Number.isFinite(_)&&_>0&&(x.assistant_dept_id=_)}const g=t.assistant_id;if(g!=null&&String(g)!==""){const _=Number(g);Number.isFinite(_)&&_>0&&(x.assistant_id=_)}}const Aa=S(()=>{const t=x.assistant_dept_id;if(t===""||t==null)return qe.value;const e=Number(t);if(!Number.isFinite(e))return qe.value;const s=new Set(Ks(e,_t.value));return qe.value.filter(r=>{const d=r.dept_ids;return!Array.isArray(d)||d.length===0?!1:d.map(Number).some(g=>s.has(g))})});function _l(){const t=x.assistant_id;if(t!==""&&t!=null){const e=Number(t);Aa.value.some(r=>Number(r.id)===e)||(x.assistant_id="")}K()}const de=S(()=>{const t=ue.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),s=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),r=Q=>{const oe=Number(Q);return Number.isFinite(oe)?Math.round(oe*100)/100:0},d=Q=>Q.toFixed(2),g=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,_=(t==null?void 0:t.stats_linked_pay_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_linked_pay_amount_cancelled)!==void 0,C=r(g?t==null?void 0:t.stats_order_amount_not_cancelled:e),H=g?r(t==null?void 0:t.stats_order_amount_cancelled):0,k=r(_?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:s),re=_?r(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,ee=(t==null?void 0:t.stats_order_amount_performance)!==void 0?r(t==null?void 0:t.stats_order_amount_performance):C,T=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?r(t==null?void 0:t.stats_linked_pay_amount_performance):k,V=String((t==null?void 0:t.stats_time_start)??"").trim(),Lt=String((t==null?void 0:t.stats_time_end)??"").trim(),he=V&&Lt?`统计时间:${V} ~ ${Lt}`:"统计时间:—",lt=String((t==null?void 0:t.stats_scope)??"restricted");let we="统计口径:与当前列表数据可见范围一致";lt==="all"?we="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":lt==="assistant"?we="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":lt==="own_rx"&&(we="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const Mt=String(x.start_time||"").trim()!==""&&String(x.end_time||"").trim()!==""?"区间":"今日";return{order:r(e),pay:r(s),orderStr:d(r(e)),payStr:d(r(s)),orderNotCancelledStr:d(C),orderCancelledStr:d(H),payNotCancelledStr:d(k),payCancelledStr:d(re),orderPerformanceStr:d(ee),payPerformanceStr:d(T),orderHeading:`${Mt}业绩(业务订单额)`,payHeading:`${Mt}业绩(关联实付)`,periodLine:he,scopeHint:we,orderSplitHint:"业绩 = 除履约已取消(4)外全部订单金额;下方为合计与已取消明细"}}),ft=S(()=>{const t=ue.extend,e=_=>{const C=Number(_);return!Number.isFinite(C)||C<0?0:Math.trunc(C)},s=e(t==null?void 0:t.focus_pending_rx_count),r=e(t==null?void 0:t.focus_pending_pay_count),d=e(t==null?void 0:t.focus_pending_ship_count),g=e(t==null?void 0:t.focus_risk_count);return{pendingRx:s,pendingPay:r,pendingShip:d,risk:g}});function Wt(t,e){const s=Number(e==null?void 0:e.prescription_audit_status),r=Number(e==null?void 0:e.payment_slip_audit_status),d=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&s===0||t==="pay"&&s===1&&r===0||t==="fulfillment"&&d===2?"po-status-tag is-focus":t==="rx"&&s===2||t==="pay"&&r===2||t==="fulfillment"&&d===4?"po-status-tag is-risk":"po-status-tag"}function ml({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),s=Number(t==null?void 0:t.payment_slip_audit_status),r=Number(t==null?void 0:t.fulfillment_status),d=kt(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||s===2||d?"po-row-risk":e===0||e===1&&s===0||r===2?"po-row-focus":r===3||r===6?"po-row-done":""}zs(ve,t=>{t||x.prescription_audit_status===""||x.prescription_audit_status===void 0||(x.prescription_audit_status="",x.exclude_fulfillment_cancelled=0,K())},{immediate:!0});function fl(){te.value="",x.start_time="",x.end_time="",x.order_no="",x.prescription_id="",x.patient_keyword="",x.express_keyword="",x.express_company="",x.doctor_id="",x.assistant_id="",x.assistant_dept_id="",x.fulfillment_status="",x.prescription_audit_status="",x.payment_slip_audit_status="",x.supply_mode="",x.service_channel="",x.exclude_fulfillment_cancelled=0,pl()}function vt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"}[Number(t)]??"—"}function vl(t){if(!t)return"—";let e=[];return Array.isArray(t)?e=t:typeof t=="string"&&(e=t.split(",").filter(r=>r.trim()!=="")),e.length===0?"—":e.map(r=>{const d=Ie.value.find(g=>g.value===r);return d?d.name:r}).join("、")}function Ra(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function Ea(t){return t===1?"success":t===2?"danger":"info"}function Kt(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function gl(t){const e=Number(t);return e===3||e===6?"success":e===5?"primary":e===4?"danger":e===2||e===7?"warning":e===8||e===11||e===12?"info":e===9||e===10?"danger":"info"}function ae(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function Ce(t){if(t==null||t==="")return"—";if(typeof t=="number"&&t>1e9&&t<1e11){const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}return String(t)}function Da(){const t=Ve.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[]).some(s=>Gs.includes(s)):!1}function $a(t){var s;const e=Number((s=Ve.userInfo)==null?void 0:s.id);return e>0&&Number(t.creator_id)===e}function Ua(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function za(t){const e=Number(t.fulfillment_status);if(e===3||e===4||$a(t)&&Ua(t)&&!Da())return!1;const s=String(t.gancao_reciperl_order_no||"").trim(),r=Number(t.gancao_submit_time||0);return s!==""||r>0?[1,2,5,7].includes(e):e===1||e===2}function yl(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function bl(t){const e=Number(t.fulfillment_status);return e===3||e===4?!1:Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===0}function xl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),r=Number(t.payment_slip_audit_status);return(s===1||s===2)&&r===0}function kl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),r=Number(t.payment_slip_audit_status);return s===1&&(r===1||r===2)}function hl(t){return Number(t.fulfillment_status)===1}function Qt(t){return Number(t.fulfillment_status)===2}const wl=S(()=>{const t=Ve.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/setShipMode")});function se(t){return String(t||"").toLowerCase()==="direct"?"direct":"gancao"}function Sl(t){return se(t)==="direct"?"洛阳药房":"甘草药房"}function Nl(t){return String(t.gancao_reciperl_order_no||"").trim()!==""}function Fa(t){const e=Number(t.fulfillment_status);return e!==3&&e!==4}const Yt=h(!1);function Jt(t,e){const s=Number(t),r=Number(e);return s>0&&s===r}const Vl=S(()=>se(W.ship_mode)==="direct"?"洛阳药房直发":"甘草药房直发");async function Cl(t){const e=p.value;if(!(e!=null&&e.id))return;const s=se(t),r=se(e.ship_mode);if(s!==r){if(!Fa(e)){O.msgWarning("当前订单状态不可修改发货类型");return}Yt.value=!0;try{await Qi({id:e.id,ship_mode:s}),p.value&&(p.value.ship_mode=s),xe.value&&Jt(ke.value,e.id)&&(W.ship_mode=s),await oa(),O.msgSuccess("发货类型已保存"),G(),St(e.id)}catch{}finally{Yt.value=!1}}}function ja(t){const e=Number(t.fulfillment_status);return e===5||e===6}function La(t){const e=Number(t.fulfillment_status);return(e===5||e===6)&&Number(t.payment_slip_audit_status)===1}function Pl(t){return Number(t.fulfillment_status)===5}function Xt(t){if(!(t!=null&&t.id))return!1;const e=Number(t.fulfillment_status);return e!==3&&e!==4}function Tl(t){const e=Number(t.prescription_audit_status),s=String(t.gancao_reciperl_order_no||"").trim();return e===1&&s===""}function Ia(t){return{1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"}[Number(t)]??"—"}const J=h(!1),Zt=h(!1),p=h(null),gt=S(()=>{if(!p.value)return 0;const t=Number(p.value.fulfillment_status),e=Number(p.value.prescription_audit_status),s=Number(p.value.payment_slip_audit_status);return t===3||[8,9,10,11,12].includes(t)?5:t===6||t===5||t===7?4:t===4?e===2?1:s===2?2:3:t===2?3:e===0||e===2?1:s===0||s===2?2:3}),yt=S(()=>{var e;const t=Number((e=p.value)==null?void 0:e.prescription_audit_status);return t===1?"success":t===2?"error":gt.value===1?"process":"wait"}),bt=S(()=>{var e;const t=Number((e=p.value)==null?void 0:e.payment_slip_audit_status);return t===1?"success":t===2?"error":gt.value===2?"process":"wait"}),Pe=S(()=>{var e;const t=Number((e=p.value)==null?void 0:e.fulfillment_status);return t===3||t===5||t===6||t===8||t===11||t===12?"success":t===4||t===9||t===10?"error":t===7||gt.value===3?"process":"wait"}),ea=S(()=>{const t=p.value;if(!t)return[];const e=t.linked_pay_orders;return Array.isArray(e)?e:[]}),qa=S(()=>{const t=p.value;if(!t)return 0;const e=Number(t.amount)||0,s=Number(t.linked_pay_paid_total)||0;return Math.round((e-s)*100)/100}),Te=h([]);async function Ol(t,e,s){var r;if(!t){Te.value=[];return}try{const d=await Va({diagnosis_id:t,prescription_order_id:e}),g=(d==null?void 0:d.lists)??((r=d==null?void 0:d.data)==null?void 0:r.lists)??[],_=Array.isArray(g)?g.filter(C=>!s.includes(C.id)):[];Te.value=_}catch{Te.value=[]}}function Ma(t){return t?Array.isArray(t)?t.map(e=>({name:String((e==null?void 0:e.name)??"").trim(),dosage:Number(e==null?void 0:e.dosage)||0})):[]:[]}const R=S(()=>{var e;const t=(e=p.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null});function xt(t){return t==null?"":String(t).replace(/\s/g,"").trim()}function kt(t,e){const s=xt(t),r=xt(e);return!s||!r?!1:s!==r}const Me=S(()=>{var s,r;const t=(s=R.value)==null?void 0:s.phone,e=(r=p.value)==null?void 0:r.recipient_phone;return kt(e,t)}),Al=S(()=>{var e;return xt((e=R.value)==null?void 0:e.phone)||"—"}),Rl=S(()=>{var e;return xt((e=p.value)==null?void 0:e.recipient_phone)||"—"}),Ba=S(()=>{var e,s;const t=String(((e=p.value)==null?void 0:e.order_creator_dept_path)??((s=p.value)==null?void 0:s.diagnosis_creator_dept_path)??"").trim();return t?t.split(";").map(r=>r.trim()).filter(Boolean).map(r=>r.includes(" / ")?r.split(" / ").map(d=>d.trim()).filter(Boolean):r.split("/").map(d=>d.trim()).filter(Boolean)).filter(r=>r.length>0):[]}),Ha=S(()=>{const t=p.value;if(!t)return"";const e=String(t.creator_account??"").trim(),s=String(t.creator_mobile??"").trim(),r=[];return e&&r.push(`登录账号:${e}`),s&&r.push(`手机:${s}`),r.join(" · ")}),X=S(()=>{var e;const t=(e=p.value)==null?void 0:e.linked_appointment;return t&&typeof t=="object"?t:null}),Ga=S(()=>{var e;const t=String(((e=X.value)==null?void 0:e.resolved_from)||"");return t==="prescription"?"处方绑定挂号":t==="diagnosis"?"诊单关联挂号":""}),Wa=S(()=>{const t=X.value;if(!t)return"";const e=String(t.channel_source_desc??"").trim();return e||String(t.channel_source??"").trim()}),Ka=S(()=>{var t;return Ma((t=R.value)==null?void 0:t.herbs)}),El=S(()=>{var t;return((t=p.value)==null?void 0:t.prescription_detail_herbs_visible)!==!1}),Dl=S(()=>{const t=p.value;if(!t)return"—";const e=[];return t.shipping_province&&e.push(t.shipping_province),t.shipping_city&&e.push(t.shipping_city),t.shipping_district&&e.push(t.shipping_district),t.shipping_address&&e.push(t.shipping_address),e.length>0?e.join(" "):"—"}),Qa=S(()=>`${f.dose_unit||"剂"}数`);function $l(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function Ul(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function Ya(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function Ja(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):Ce(t)}const Be=h("auto"),ht=h(!1),B=h(null),He=h("");let ta=0;function zl(){ta+=1,B.value=null}function aa(t){var e,s;return t.requestSeq!==ta||Number((e=p.value)==null?void 0:e.id)!==t.orderId?!1:String(((s=p.value)==null?void 0:s.tracking_number)||"").trim()===t.trackingNumber}function Xa(t,e,s){const r=(t==null?void 0:t.data)??t;if(!r||typeof r!="object")return null;const d=r,g=String(d.tracking_number||"").trim();if(g&&g!==e)return null;const _=Number(d.order_id);return _>0&&_!==s?null:d}const Oe=h([]),Ge=h(!1),sa=h(!1),wt=h(),_e=Ne({id:0,amount:void 0}),Fl={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,s)=>{const r=Number(e);if(!Number.isFinite(r)||r<=0){s(new Error("订单金额必须大于0"));return}s()},trigger:"blur"}]};function jl(){const t=Ve.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function St(t){if(!jl()){Oe.value=[];return}try{const e=await Yi({id:t});Oe.value=(e==null?void 0:e.data)??e??[]}catch{Oe.value=[]}}function Ll(t){return{create:"创建",edit:"编辑",audit_rx_approve:"处方审核",audit_rx_reject:"处方审核",audit_pay_approve:"支付审核",audit_pay_reject:"支付审核",fill_tracking:"填快递单",ship:"确认发货",withdraw:"撤销",link_pay_order:"关联支付单",completion_request:"完单申请",auto_complete:"自动完成",revoke_rx_audit:"撤回处方审核",revoke_pay_audit:"撤回支付审核",gancao_submit:"甘草下单",patch_rx_patient:"处方患者信息",update_amount:"修改订单金额",complete:"完成订单"}[t]||t}const la=S(()=>{var s;const t=String(((s=p.value)==null?void 0:s.tracking_number)||"").trim();if(!t)return{sf:"javascript:void(0)",jd:"javascript:void(0)",jt:"javascript:void(0)"};const e=encodeURIComponent(t);return{sf:`https://www.sf-express.com/cn/sc/dynamic_function/waybill/#search/bill-number/${e}`,jd:`https://www.jdl.com/#/trackQuery?waybillCode=${e}`,jt:`https://www.jtexpress.com.cn/index/query/gzquery.html?bills=${e}`}}),Za=S(()=>{const t=B.value;return!t||!Array.isArray(t.traces)?[]:t.traces}),es=["拒收","拒签","退件","客户拒收","拦截退回","退回发件","派件退回","无人签收","退回快件"];function Nt(t){const e=String(t??"");return es.some(s=>e.includes(s))}function Il(t){return Nt(t)}function ts(t){if(!t)return{show:!1,keywords:[],lines:[]};const e=Array.isArray(t.traces)?t.traces:[],s=[];t.state_text&&s.push(String(t.state_text)),t.hint&&s.push(String(t.hint));for(const _ of e)_.context&&s.push(String(_.context));const r=s.join(` `),d=es.filter(_=>r.includes(_));if(!d.length)return{show:!1,keywords:[],lines:[]};const g=[];for(const _ of e){const C=String(_.context||"");if(Nt(C)&&(g.push(C),g.length>=5))break}return!g.length&&Nt(t.state_text)&&g.push(`最新状态:${t.state_text}`),!g.length&&Nt(t.hint)&&g.push(String(t.hint)),{show:!0,keywords:d,lines:g}}const ge=S(()=>ts(B.value)),Ae=h(null),Vt=h(!1),We=S(()=>ts(Ae.value));function ql(t){const e=String(t||"").toLowerCase();return e==="sf"?"顺丰速运":e==="jd"?"京东快递":e==="jt"||e==="jtexpress"?"极兔速递":"自动识别"}async function na(){var d,g;const t=Number((d=p.value)==null?void 0:d.id),e=String(((g=p.value)==null?void 0:g.tracking_number)||"").trim();if(!t||!e)return;const r={requestSeq:++ta,orderId:t,trackingNumber:e};ht.value=!0;try{const _=String(He.value||"").replace(/\D/g,""),C={id:t,express_company:Be.value};_.length>=4&&(C.phone_tail=_);const H=await $s(C);if(!aa(r))return;B.value=Xa(H,e,t)}catch{if(!aa(r))return;B.value=null}finally{aa(r)&&(ht.value=!1)}}const Ke=h(!1),ia=h(!1),ra=h(),le=Ne({patient_name:"",phone:""}),Ml={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function Bl(){const t=R.value,e=p.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){O.msgWarning("无处方数据");return}le.patient_name=String(t.patient_name??"").trim(),le.phone=String(t.phone??"").trim(),Ke.value=!0,pt(()=>{var s;return(s=ra.value)==null?void 0:s.clearValidate()})}function Hl(){le.patient_name="",le.phone=""}function Gl(){var t;_e.id=0,_e.amount=void 0,(t=wt.value)==null||t.clearValidate()}function Wl(){const t=p.value;if(!Xt(t)){O.msgWarning("当前订单状态不允许修改金额");return}_e.id=Number(t==null?void 0:t.id)||0,_e.amount=Number(t==null?void 0:t.amount)||void 0,Ge.value=!0,pt(()=>{var e;return(e=wt.value)==null?void 0:e.clearValidate()})}async function oa(){var e;const t=(e=p.value)==null?void 0:e.id;if(t)try{const s=await Y({id:t}),r=(s==null?void 0:s.data)??s??null;r&&(p.value=r)}catch{}}async function Kl(){var s;const t=ra.value;if(!t)return;try{await t.validate()}catch{return}const e=(s=p.value)==null?void 0:s.id;if(e){ia.value=!0;try{await Ji({id:e,patient_name:le.patient_name.trim(),phone:le.phone.trim()}),Ke.value=!1,await oa(),await St(e)}catch(r){console.error(r)}finally{ia.value=!1}}}async function as(){const t=wt.value;if(!t)return;try{await t.validate()}catch{return}if(!Xt(p.value)){O.msgWarning("当前订单状态不允许修改金额");return}const e=_e.id;sa.value=!0;try{await Xi({id:e,amount:Number(_e.amount)}),O.msgSuccess("修改成功"),Ge.value=!1,await oa(),await St(e),G()}catch{}finally{sa.value=!1}}async function Ql(t){p.value=null,Te.value=[],zl(),Be.value="auto",He.value="",Oe.value=[],J.value=!0,Zt.value=!0;try{const e=await Y({id:t}),s=(e==null?void 0:e.data)??e??null;if(p.value=s,s){Be.value=String(s.express_company||"auto")||"auto";const r=String(s.recipient_phone||"").replace(/\D/g,"");He.value=r.length>=4?r:"",String(s.tracking_number||"").trim()&&na(),St(t);const d=s.diagnosis_id,g=s.pay_order_ids||[];d&&Ol(d,t,g)}}catch(e){O.msgError((e==null?void 0:e.message)||"加载失败"),J.value=!1}finally{Zt.value=!1}}const ye=h(!1),ua=h(!1),da=h(!1),q=h(0),ne=h(null),ie=h(!1),Ct=h(""),Yl=S(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][q.value]??""),ss=S(()=>{const t=ne.value,e=Ma(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const s=e.map(r=>`${r.name} ${r.dosage}g`).join("、");return s.length>120?`${s.slice(0,120)}…`:s}),Jl=["recipient_name","recipient_phone","region","shipping_address"],be=h(),f=Ne({id:0,prescription_id:0,diagnosis_id:0,recipient_name:"",recipient_phone:"",region:[],shipping_address:"",is_follow_up:0,medication_days:void 0,dose_count:1,dose_unit:"剂",prev_staff:"",service_channel:"",service_package:[],express_company:"auto",tracking_number:"",fee_type:3,amount:0,remark_extra:"",remark_assistant:"",pay_order_ids:[],internal_cost:void 0,assistant_id:0,diagnosis_creator_id:0,diagnosis_creator_name:"",diagnosis_creator_dept_path:""}),ls=S(()=>{const t=String(f.diagnosis_creator_dept_path||"").trim();return t?t.split(";").map(e=>e.trim()).filter(Boolean).map(e=>e.includes(" / ")?e.split(" / ").map(s=>s.trim()).filter(Boolean):e.split("/").map(s=>s.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Qe=h([]),pa=h(!1),M=h(0);function ca(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const _a=S(()=>{const t=new Set(f.pay_order_ids.map(s=>Number(s)));let e=0;for(const s of Qe.value)t.has(Number(s.id))&&(e+=Number(s.amount)||0);return Math.round(e*100)/100}),Xl=S(()=>{const t=M.value;return t>0?Math.round(t*100)/100:0});async function Zl(t,e){var s,r;if(!t){Qe.value=[];return}try{pa.value=!0;const d=await Va({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),g=(d==null?void 0:d.lists)??((s=d==null?void 0:d.data)==null?void 0:s.lists)??[];Qe.value=Array.isArray(g)?g:[];const _=Number((d==null?void 0:d.deposit_min_amount)??((r=d==null?void 0:d.data)==null?void 0:r.deposit_min_amount));!Number.isNaN(_)&&_>=0&&(M.value=_)}catch{Qe.value=[]}finally{pa.value=!1}}const en=S(()=>{const t={recipient_name:[{required:!0,message:"请输入收货人",trigger:"blur"}],recipient_phone:[{required:!0,message:"请输入收货手机",trigger:"blur"}],region:[{required:!0,message:"请选择省/市/区",trigger:"change",type:"array"}],shipping_address:[{required:!0,message:"请输入收货地址",trigger:"blur"}],fee_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(e,s,r)=>{const d=M.value,g=Number(s);if(d>0&&(!Number.isFinite(g)||g0){const e=`已开启关联支付门槛(¥${ae(M.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function tn(){var t;q.value=0,ne.value=null,ie.value=!1,Ct.value="",(t=be.value)==null||t.clearValidate()}function an(){q.value>0&&(q.value-=1)}async function sn(){const t=be.value;if(t)try{q.value===0?await t.validateField([...Jl]):q.value===1&&M.value>0&&await t.validateField(["pay_order_ids"]),q.value<2&&(q.value+=1)}catch{}}async function ln(t){if(!za(t)){$a(t)&&Ua(t)&&!Da()&&O.msgWarning("处方与支付单均已审核通过,创建人不可再编辑");return}q.value=0,ne.value=null,ye.value=!0,ua.value=!0;try{const e=await Y({id:t.id}),s=(e==null?void 0:e.data)??e;if(!s){O.msgError("加载数据结构异常"),ye.value=!1;return}const r=s.prescription;r&&typeof r=="object"?ne.value=r:Number(s.prescription_id)>0?ne.value={id:Number(s.prescription_id),sn:"",patient_name:String(s.recipient_name||""),herbs:[]}:ne.value=null,f.id=s.id,f.prescription_id=Number(s.prescription_id)||0,f.diagnosis_id=Number(s.diagnosis_id)||0,f.assistant_id=Number(s.assistant_id)||0,f.diagnosis_creator_id=Number(s.diagnosis_creator_id)||0,f.diagnosis_creator_name=s.diagnosis_creator_name!=null&&s.diagnosis_creator_name!==""?String(s.diagnosis_creator_name):"",f.diagnosis_creator_dept_path=s.diagnosis_creator_dept_path!=null&&s.diagnosis_creator_dept_path!==""?String(s.diagnosis_creator_dept_path):"",f.recipient_name=s.recipient_name||"",f.recipient_phone=s.recipient_phone||"";const d=s.shipping_province||"",g=s.shipping_city||"",_=s.shipping_district||"";d||g||_?f.region=[d,g,_].filter(V=>V!==""):f.region=[],f.shipping_address=s.shipping_address||"",f.is_follow_up=s.is_follow_up?1:0,f.medication_days=s.medication_days>0?s.medication_days:void 0,f.dose_count=s.dose_count>0?s.dose_count:1,f.dose_unit=s.dose_unit||"剂",f.prev_staff=s.prev_staff||"",f.service_channel=s.service_channel||"",s.service_package?Array.isArray(s.service_package)?f.service_package=s.service_package:typeof s.service_package=="string"?f.service_package=s.service_package.split(",").filter(V=>V.trim()!==""):f.service_package=[]:f.service_package=[],f.express_company=String(s.express_company||"auto")||"auto",f.tracking_number=s.tracking_number||"",f.fee_type=Number(s.fee_type)||3,M.value=Number(s.deposit_min_amount)||0;let C=Number(s.amount)||0;const H=Math.round((Number(s.linked_pay_paid_total)||0)*100)/100,k=M.value;if(k>0){const V=Math.round(k*100)/100;CNumber(V)).filter(V=>!Number.isNaN(V)):[],f.internal_cost=s.internal_cost!=null&&s.internal_cost!==""?Number(s.internal_cost):void 0;const ee=String(s.gancao_reciperl_order_no||"").trim(),T=Number(s.gancao_submit_time||0);ie.value=ee!==""||T>0,Ct.value=ee||"",await Zl(f.diagnosis_id,f.id),pt(()=>{var V;(V=be.value)==null||V.clearValidate()})}catch(e){O.msgError((e==null?void 0:e.message)||"加载异常"),ye.value=!1}finally{ua.value=!1}}async function nn(){if(!be.value)return;const t=ie.value;if(!(!t&&q.value!==2)){t?be.value.clearValidate():await be.value.validate(),da.value=!0;try{const e={id:f.id,recipient_name:f.recipient_name,recipient_phone:f.recipient_phone,shipping_address:f.shipping_address,is_follow_up:f.is_follow_up,prev_staff:f.prev_staff||"",service_channel:f.service_channel||"",service_package:Array.isArray(f.service_package)?f.service_package.join(","):"",express_company:f.express_company||"auto",tracking_number:f.tracking_number||"",fee_type:f.fee_type,amount:f.amount,remark_extra:f.remark_extra||"",remark_assistant:f.remark_assistant||"",medication_days:f.medication_days!=null&&String(f.medication_days).trim()!==""?f.medication_days:"",dose_unit:f.dose_unit||"剂",dose_count:f.dose_count||1,internal_cost:f.internal_cost!=null&&String(f.internal_cost).trim()!==""?f.internal_cost:""};f.region&&f.region.length>0?(e.shipping_province=f.region[0]||"",e.shipping_city=f.region[1]||"",e.shipping_district=f.region[2]||""):(e.shipping_province="",e.shipping_city="",e.shipping_district=""),e.pay_order_ids=[...f.pay_order_ids],await Na(e),O.msgSuccess("保存成功"),ye.value=!1,G()}catch{}finally{da.value=!1}}}const Ye=h(!1),ma=h("prescription"),Pt=h(0),Je=h(null),Re=h(""),Tt=h(!1),rn=S(()=>ma.value==="prescription"?"处方业务审核":"关联支付单审核");function ns(t,e){ma.value=e,Pt.value=t.id,Je.value=t,Re.value="",Ye.value=!0}async function is(t){if(t==="reject"&&!Re.value.trim()){O.msgError("驳回或阻止时必须填写明确的审核意见");return}Tt.value=!0;try{const e={id:Pt.value,action:t,remark:Re.value.trim()};if(ma.value==="prescription"?await Zi(e):await er(e),O.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),Ye.value=!1,G(),J.value&&Pt.value)try{const s=await Y({id:Pt.value}),r=(s==null?void 0:s.data)??s??null;r&&(p.value=r)}catch{}}catch{}finally{Tt.value=!1}}async function on(t){try{await ut.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await tr({id:t.id}),O.msgSuccess("撤回成功"),G()}catch{}}const fa=h(0),Ot=h(!1),Ee=h(!1),L=h(null);function va(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,s=Number(t.proces_cost)||0,r=Number(t.lis_cost)||0;return(e+s+r).toFixed(2)}function un(t,e){const s=parseFloat(va(t))||0,r=Number(e)||0;return r<=0?"—":(s/r*100).toFixed(2)}function dn(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((s,r)=>s+(Number(r.quantity)||0),0).toFixed(0)}async function pn(){if(!f.id){O.msgError("请先保存订单");return}Ee.value=!0;try{const t=await Us({id:f.id,dose_count:f.dose_count||1,medication_days:f.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(L.value=e,Ot.value=!0,O.msgSuccess("预下单测试成功"))}catch{}finally{Ee.value=!1}}async function cn(){var t,e;if(!((t=p.value)!=null&&t.id)){O.msgError("订单数据不存在");return}Ee.value=!0;try{const s=await Us({id:p.value.id,dose_count:p.value.dose_count||1,medication_days:p.value.medication_days||void 0}),r=(s==null?void 0:s.data)??s;if(r&&r.success&&(L.value=r,Ot.value=!0,Ht()&&r.fee)){const d=va(r.fee);try{const g=await Y({id:p.value.id}),_=(g==null?void 0:g.data)??g;if(_!=null&&_.id){const C=_.service_package,H=Array.isArray(C)?C.join(","):String(C||"");if(await Na({id:_.id,recipient_name:_.recipient_name||"",recipient_phone:_.recipient_phone||"",shipping_province:_.shipping_province||"",shipping_city:_.shipping_city||"",shipping_district:_.shipping_district||"",shipping_address:_.shipping_address||"",is_follow_up:_.is_follow_up?1:0,medication_days:_.medication_days!=null&&String(_.medication_days).trim()!==""?_.medication_days:"",dose_unit:_.dose_unit||"剂",dose_count:_.dose_count>0?_.dose_count:1,prev_staff:_.prev_staff||"",service_channel:_.service_channel||"",service_package:H,express_company:_.express_company||"auto",tracking_number:_.tracking_number||"",fee_type:Number(_.fee_type)||3,amount:Number(_.amount)||0,remark_extra:_.remark_extra||"",remark_assistant:_.remark_assistant||"",internal_cost:d,pay_order_ids:Array.isArray(_.pay_order_ids)?_.pay_order_ids:[]}),O.msgSuccess("内部成本已按预报价总计更新"),G(),J.value&&Number((e=p.value)==null?void 0:e.id)===Number(_.id))try{const k=await Y({id:_.id}),re=(k==null?void 0:k.data)??k??null;re&&(p.value=re)}catch{p.value={...p.value,internal_cost:d}}}}catch{}}}catch{}finally{Ee.value=!1}}async function _n(t){var e;try{await ut.confirm("将把本单关联处方提交至甘草药管家开放平台(先 CTM_PREVIEW 预检查再 CTM_SUBMIT_RECIPEL 正式下单;成功后将按甘草侧规则扣费,详见 https://apidoc.igancao.com/service-doc/scm-outer-recipel.html )。确定继续?","上传甘草药方",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),fa.value=t.id;const s=await ar({id:t.id}),r=(s==null?void 0:s.data)??s,d=(r==null?void 0:r.recipel_order_no)!=null?String(r.recipel_order_no):"";if(O.msgSuccess(d?`上传成功,甘草处方单号:${d}`:"上传成功"),G(),J.value&&Number((e=p.value)==null?void 0:e.id)===t.id)try{const g=await Y({id:t.id}),_=(g==null?void 0:g.data)??g??null;_&&(p.value=_)}catch{}}catch{}finally{fa.value=0}}gr(async()=>{await Js(),await Xs(),await Qs(),cl(),await pt(),G()});const Xe=h(!1),At=h(!1),Ze=h(0),Z=Ne({express_company:"auto",tracking_number:""});function mn(t){Ze.value=t.id,Z.express_company=String(t.express_company||"auto")||"auto",Z.tracking_number=String(t.tracking_number||""),Xe.value=!0}async function rs(){var t;if(!Z.tracking_number.trim()){O.msgError("请填写快递单号");return}At.value=!0;try{const e=await Y({id:Ze.value}),s=(e==null?void 0:e.data)??e;if(!s){O.msgError("加载订单数据失败");return}if(await Na({id:s.id,recipient_name:s.recipient_name||"",recipient_phone:s.recipient_phone||"",shipping_province:s.shipping_province||"",shipping_city:s.shipping_city||"",shipping_district:s.shipping_district||"",shipping_address:s.shipping_address||"",is_follow_up:s.is_follow_up?1:0,medication_days:s.medication_days!=null&&String(s.medication_days).trim()!==""?s.medication_days:"",prev_staff:s.prev_staff||"",service_channel:s.service_channel||"",service_package:s.service_package||"",fee_type:Number(s.fee_type)||3,amount:Number(s.amount)||0,remark_extra:s.remark_extra||"",remark_assistant:s.remark_assistant||"",internal_cost:s.internal_cost!=null&&s.internal_cost!==""?s.internal_cost:"",pay_order_ids:Array.isArray(s.pay_order_ids)?s.pay_order_ids:[],express_company:Z.express_company||"auto",tracking_number:Z.tracking_number.trim()}),O.msgSuccess("快递单号已保存"),Xe.value=!1,G(),J.value&&((t=p.value)==null?void 0:t.id)===Ze.value)try{const r=await Y({id:Ze.value}),d=(r==null?void 0:r.data)??r??null;d&&(p.value=d)}catch{}if(Qt({fulfillment_status:Number(s.fulfillment_status)}))try{await ut.confirm(`快递单号「${Z.tracking_number}」已保存,是否立即确认发货?`,"确认发货",{type:"success",confirmButtonText:"确认发货",cancelButtonText:"稍后再说"}),ga({id:Ze.value,tracking_number:Z.tracking_number,express_company:Z.express_company})}catch{}}catch{}finally{At.value=!1}}const xe=h(!1),Rt=h(!1),ke=h(0),W=Ne({ship_mode:"gancao",express_company:"auto",tracking_number:""});function fn(t){var e;return Jt((e=p.value)==null?void 0:e.id,t.id)?se(p.value.ship_mode):se(t.ship_mode)}function ga(t){ke.value=Number(t.id),W.ship_mode=fn(t),W.express_company=String(t.express_company||"auto")||"auto",W.tracking_number=String(t.tracking_number||""),xe.value=!0}zs(()=>{var t;return(t=p.value)==null?void 0:t.ship_mode},t=>{var e;!xe.value||!ke.value||!Jt((e=p.value)==null?void 0:e.id,ke.value)||(W.ship_mode=se(t))});async function os(){var t;if(!W.tracking_number.trim()){O.msgError("请先填写快递单号再确认发货");return}Rt.value=!0;try{if(await sr({id:ke.value,ship_mode:se(W.ship_mode),express_company:W.express_company||"auto",tracking_number:W.tracking_number.trim()}),O.msgSuccess("确认发货成功,订单已进入「已发货」状态"),xe.value=!1,G(),J.value&&((t=p.value)==null?void 0:t.id)===ke.value)try{const e=await Y({id:ke.value}),s=(e==null?void 0:e.data)??e??null;s&&(p.value=s)}catch{}}catch{}finally{Rt.value=!1}}const vn=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],et=h(!1),De=h(0),Et=h(3),ya=h(!1);let tt=0;function gn(){De.value=0,tt+=1,Ae.value=null,Vt.value=!1}async function yn(t){const e=Number(t.id),s=String(t.tracking_number||"").trim();if(!e||!s)return;const r=++tt;Vt.value=!0,Ae.value=null;try{const d=String(t.recipient_phone||"").replace(/\D/g,""),g={id:e,express_company:String(t.express_company||"auto")||"auto"};d.length>=4&&(g.phone_tail=d);const _=await $s(g);if(r!==tt||De.value!==e)return;Ae.value=Xa(_,s,e)}catch{if(r!==tt||De.value!==e)return;Ae.value=null}finally{r===tt&&De.value===e&&(Vt.value=!1)}}async function bn(){var e;const t=De.value;if(t){ya.value=!0;try{if(await lr({id:t,fulfillment_status:Et.value}),O.msgSuccess("订单状态已更新"),et.value=!1,G(),J.value&&((e=p.value)==null?void 0:e.id)===t)try{const s=await Y({id:t}),r=(s==null?void 0:s.data)??s??null;r&&(p.value=r)}catch{}}catch{}finally{ya.value=!1}}}const at=h(!1),Dt=h(!1),$e=h(0),$t=h(),ba=h(!1),Ut=h([]),xn=S(()=>D.add_mode==="completion_only"?"不创建或关联支付单,仅提交完单申请,由审核人员在支付审核时处理。":"可以手动创建新支付单,或关联已存在但未绑定的支付单。"),D=Ne({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),kn=S(()=>{const t={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}]};return D.add_mode==="create"?(t.order_type=[{required:!0,message:"请选择费用类别",trigger:"change"}],t.pay_amount=[{validator:(e,s,r)=>{if(s==null||s===""){r(new Error("请输入支付金额"));return}const d=Number(s);!Number.isFinite(d)||d<0?r(new Error("金额不能小于 0")):r()},trigger:"blur"}]):D.add_mode==="link"&&(t.link_pay_order_ids=[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(e,s,r)=>{!Array.isArray(s)||s.length===0?r(new Error("请至少选择一个支付单")):r()}}]),t});async function hn(t,e=[]){var s;if(!t){Ut.value=[];return}try{ba.value=!0;const r=await Va({diagnosis_id:t}),d=(r==null?void 0:r.lists)??((s=r==null?void 0:r.data)==null?void 0:s.lists)??[],g=Array.isArray(d)?d.filter(_=>!e.includes(_.id)):[];Ut.value=g}catch{Ut.value=[]}finally{ba.value=!1}}function us(t){var r,d;$e.value=t.id,D.add_mode="create",D.order_type=3,D.pay_amount=void 0,D.pay_remark="",D.link_pay_order_ids=[],D.completion_request=0,at.value=!0;const e=t.diagnosis_id||((r=p.value)==null?void 0:r.diagnosis_id),s=t.pay_order_ids||((d=p.value)==null?void 0:d.pay_order_ids)||[];e&&hn(e,s)}async function wn(){var t;if($t.value){await $t.value.validate(),Dt.value=!0;try{if(D.add_mode==="completion_only")await nr({id:$e.value}),O.msgSuccess("完单申请已提交,请等待支付审核");else if(D.add_mode==="create")await ir({id:$e.value,order_type:D.order_type,pay_amount:D.pay_amount,pay_remark:D.pay_remark||"",completion_request:D.completion_request}),O.msgSuccess("支付单已新增,请等待审核");else{const e=D.link_pay_order_ids;if(e.length===0){O.msgError("请至少选择一个支付单");return}await rr({id:$e.value,pay_order_ids:e,completion_request:D.completion_request}),O.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}if(at.value=!1,G(),J.value&&((t=p.value)==null?void 0:t.id)===$e.value)try{const e=await Y({id:$e.value}),s=(e==null?void 0:e.data)??e??null;s&&(p.value=s)}catch{}}catch{}finally{Dt.value=!1}}}function ds(t){De.value=t.id,Et.value=3,Ae.value=null,et.value=!0,String(t.tracking_number||"").trim()&&yn(t)}async function Sn(t){var e;try{if(await ut.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await or({id:t.id}),O.msgSuccess("处方审核已撤回"),G(),J.value&&((e=p.value)==null?void 0:e.id)===t.id)try{const s=await Y({id:t.id}),r=(s==null?void 0:s.data)??s??null;r&&(p.value=r)}catch{}}catch{}}async function Nn(t){var e;try{if(await ut.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await ur({id:t.id}),O.msgSuccess("支付单审核已撤回"),G(),J.value&&((e=p.value)==null?void 0:e.id)===t.id)try{const s=await Y({id:t.id}),r=(s==null?void 0:s.data)??s??null;r&&(p.value=r)}catch{}}catch{}}const zt=h(!1),Ft=h(!1),w=h(null),pe=h("internal"),ps=h(null),Ue=h(!1);function cs(t){return t==="辅方"?"辅方":"主方"}function Vn(t="浓缩水丸"){return t==="饮片"?{dosage_amount:50,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:t==="浓缩水丸"?{dosage_amount:5,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:{dosage_amount:1,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}}function Cn(t,e){const s=Vn(e);if(!t||typeof t!="object")return{...s};const r=t;return{dosage_amount:r.dosage_amount!==null&&r.dosage_amount!==void 0&&r.dosage_amount!==""?Number(r.dosage_amount):s.dosage_amount,dosage_bag_count:r.dosage_bag_count!=null?Number(r.dosage_bag_count)||1:s.dosage_bag_count,need_decoction:r.need_decoction===1||r.need_decoction===!0,bags_per_dose:r.bags_per_dose!=null?Number(r.bags_per_dose)||1:s.bags_per_dose,times_per_day:r.times_per_day!=null?Number(r.times_per_day)||3:s.times_per_day,usage_days:r.usage_days!=null?Number(r.usage_days)||7:s.usage_days}}function _s(t,e,s){const r=t.prescription_type||"浓缩水丸",d=Number(t.times_per_day)>0?Number(t.times_per_day):3,g=t.dosage_amount!=null?Number(t.dosage_amount):10,_=t.dosage_unit||(r==="饮片"?"ml":"g"),C=t.usage_way||e||"温水送服",H=t.usage_time||s||"",k=[];if(k.push(`每天${d}次`),r==="浓缩水丸"){const re=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;k.push(`一次${re}袋`),k.push(`每袋${g}${_}`)}else k.push(`一次${g}${_}`);return k.push(C),H&&k.push(H),k.join(", ")}const ze=S(()=>{var e;const t=(e=w.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),ms=S(()=>ze.value.filter(t=>cs(t==null?void 0:t.formula_type)==="主方")),xa=S(()=>ze.value.filter(t=>cs(t==null?void 0:t.formula_type)==="辅方")),Pn=S(()=>{const t=w.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸")return null;const e=Number(t.medication_days??t.usage_days??t.dose_count),s=Number(t.times_per_day),r=Number(t.dosage_amount),d=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;return!Number.isFinite(e)||!Number.isFinite(s)||!Number.isFinite(r)||e<=0||s<=0||r<=0?null:e*s*r*d}),jt=t=>String(t).padStart(2,"0"),Tn=S(()=>{const t=w.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const s=String(e).length===10?Number(e)*1e3:Number(e),r=new Date(s);if(!isNaN(r.getTime()))return`${r.getFullYear()}-${jt(r.getMonth()+1)}-${jt(r.getDate())} ${jt(r.getHours())}:${jt(r.getMinutes())}`}return t.prescription_date||"—"}),On=S(()=>{const t=w.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const s=String(t.visit_no??"").trim();return s||"—"}),An=S(()=>{const t=w.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),fs=S(()=>{const t=w.value;return t?String(t.order_no??"").trim():""}),Rn=S(()=>{const t=w.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let s=t.region;return Array.isArray(s)&&(s=s.filter(Boolean).join("")),s&&e.push(String(s)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),vs=S(()=>{var e;const t=Number((e=w.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),En=S(()=>{const e=ze.value.reduce((s,r)=>s+(Number(r==null?void 0:r.dosage)||0),0);return st(e)}),gs=t=>{const e=Number(t)||0;return st(e*vs.value)},Dn=S(()=>{const t=w.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return e==="饮片"?"饮片":/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),ys=S(()=>{const t=w.value;return t?t.usage_text?t.usage_text:_s(t):"—"}),bs=S(()=>{const t=w.value;if(!t||!xa.value.length)return"";const e=Cn(t.aux_usage,t.prescription_type||"浓缩水丸");return _s({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),$n=S(()=>{const t=Pn.value;if(typeof t=="number"&&isFinite(t)&&t>0)return st(t);const e=w.value;if(!e)return"";const s=e.out_pellet||e.total_weight;if(s&&Number(s)>0)return st(Number(s));const r=ze.value;if(!r.length)return"";const d=r.reduce((g,_)=>g+(Number(_==null?void 0:_.dosage)||0),0);return st(d*vs.value)}),xs=S(()=>{const t=w.value;return t&&t.medical_advice||""}),ks=S(()=>{const t=w.value;if(!t)return"";const e=[];return e.push(`共${ze.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),hs=S(()=>{const t=w.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),ws=S(()=>{const t=$n.value;return t?`${t}克`:""});function st(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function Ss(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Un(t){return t?Ss(t):"—"}function zn(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function Fn(t){return t==null||t===""?"—":`${t}岁`}function jn(){Ns(f)}async function Ns(t){if(!t.prescription_id){O.msgWarning("该订单未关联处方");return}zt.value=!0,Ft.value=!0,w.value=null,pe.value="internal";try{const e=await dr({id:t.prescription_id}),s=(e==null?void 0:e.data)??e??null;if(s){const r=t.medication_days,d={...s};r!=null&&String(r).trim()!==""&&(d.medication_days=r),t.order_no&&!d.order_no&&(d.order_no=t.order_no),t.recipient_name&&!d.recipient_name&&(d.recipient_name=t.recipient_name),t.recipient_phone&&!d.recipient_phone&&(d.recipient_phone=t.recipient_phone),t.shipping_address&&!d.shipping_address&&(d.shipping_address=t.shipping_address),t.amount!=null&&d.order_amount==null&&(d.order_amount=t.amount),t.dose_count!=null&&String(t.dose_count).trim()!==""&&Number(t.dose_count)>0&&(d.dose_count=Number(t.dose_count)),t.dose_unit!=null&&String(t.dose_unit).trim()!==""&&(d.dose_unit=String(t.dose_unit));const g=t.linked_appointment;(!d.appointment_id||Number(d.appointment_id)<=0)&&g&&typeof g=="object"&&Number(g.id)>0&&(d.appointment_id=Number(g.id)),w.value=d}else w.value=null}catch(e){O.msgError((e==null?void 0:e.message)||"加载处方详情失败"),zt.value=!1}finally{Ft.value=!1}}async function Ln(t){const e=t.querySelectorAll('img[src^="http"]'),s=Array.from(e).map(async r=>{try{const d=await fetch(r.src,{mode:"cors"});if(!d.ok)return;const g=await d.blob(),_=await new Promise((C,H)=>{const k=new FileReader;k.onload=()=>C(k.result),k.onerror=H,k.readAsDataURL(g)});r.src=_}catch{}});await Promise.allSettled(s)}async function Vs(){await pt();const t=ps.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Ln(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),pr(t,{scale:2,useCORS:!0,allowTaint:!1,logging:!1,backgroundColor:"#ffffff",windowWidth:t.scrollWidth,windowHeight:t.scrollHeight,width:t.scrollWidth,height:t.scrollHeight,ignoreElements:e=>e instanceof HTMLElement&&e.classList.contains("cf-slip-no-export")})}function Cs(){var s;const t=(s=w.value)==null?void 0:s.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function In(){if(w.value){Ue.value=!0;try{const t=await Vs(),e=document.createElement("a");e.download=`${Cs()}.png`,e.href=t.toDataURL("image/png"),e.click(),O.msgSuccess("图片已下载")}catch{O.msgError("下载图片失败")}finally{Ue.value=!1}}}async function qn(){if(w.value){Ue.value=!0;try{const t=await Vs(),e=t.toDataURL("image/jpeg",.95),s=new Wn({orientation:"portrait",unit:"mm",format:"a4"}),r=210,d=297,g=r,_=t.height*g/t.width;if(_<=d)s.addImage(e,"JPEG",0,0,g,_);else{let C=_,H=0;for(;C>0;)s.addImage(e,"JPEG",0,H,g,_),C-=d,H-=d,C>0&&s.addPage()}s.save(`${Cs()}.pdf`),O.msgSuccess("PDF已下载")}catch{O.msgError("下载PDF失败")}finally{Ue.value=!1}}}return(t,e)=>{const s=Kn,r=Qn,d=Xn,g=Zn,_=ti,C=ei,H=ai,k=si,re=Di,ee=Jn,T=ii,V=ni,Lt=ri,It=oi,he=li,lt=Ei,we=Si,qt=wi,Mt=ui,Q=di,oe=ci,Ps=pi,j=mi,Fe=_i,P=vi,nt=fi,je=gi,Ts=bi,Os=yi,ka=xi,As=hi,Rs=ki,ha=Ni,Le=Vi,me=Ci,Mn=Pi,Bn=Ti,it=Oi,Es=Ri,Hn=Ai,fe=Yn,U=yr("perms");return o(),m("div",hr,[a(s,{class:"!border-none shadow-sm mb-4",shadow:"never"},{default:l(()=>[n("div",wr,[ve.value?(o(),m("div",Sr,[e[85]||(e[85]=n("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),m(A,null,z(nl,i=>n("div",{key:i.value,class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",x.prescription_audit_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:b=>rl(i.value)},[n("span",Vr,u(i.label),1)],10,Nr)),64))])):v("",!0),n("div",Cr,[e[86]||(e[86]=n("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),m(A,null,z(il,i=>n("div",{key:i.value,class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",x.payment_slip_audit_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:b=>ol(i.value)},[n("span",Tr,u(i.label),1)],10,Pr)),64))]),n("div",Or,[e[87]||(e[87]=n("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),m(A,null,z(Zs,i=>n("div",{key:"fs-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",x.fulfillment_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:b=>el(i.value)},[n("span",Rr,u(i.label),1)],10,Ar)),64))]),n("div",Er,[e[88]||(e[88]=n("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),m(A,null,z(tl,i=>n("div",{key:"sm-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",x.supply_mode===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:b=>al(i.value)},[n("span",$r,u(i.label),1)],10,Dr)),64))]),n("div",Ur,[e[89]||(e[89]=n("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),m(A,null,z(sl,i=>n("div",{key:"ec-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",x.express_company===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:b=>ll(i.value)},[n("span",Fr,u(i.label),1)],10,zr)),64))])])]),_:1}),a(s,{class:"!border-none po-filter-card shadow-sm",shadow:"never"},{default:l(()=>[E((o(),m("div",jr,[n("div",Lr,[e[90]||(e[90]=n("div",{class:"po-stat-deco po-stat-deco--o pointer-events-none absolute -right-6 -top-8 h-28 w-28 rounded-full opacity-40"},null,-1)),n("div",Ir,[n("div",null,[n("div",qr,[a(r,{size:16,class:"text-sky-500"},{default:l(()=>[a(F(Ui))]),_:1}),c(" "+u(de.value.orderHeading),1)]),n("div",Mr,[n("div",Br," ¥"+u(de.value.orderPerformanceStr),1),n("div",Hr,[n("span",null,"合计 ¥"+u(de.value.orderStr),1),n("span",Gr,"已取消 ¥"+u(de.value.orderCancelledStr),1)])])]),n("div",Wr,[a(r,{size:20},{default:l(()=>[a(F(zi))]),_:1})])]),n("p",Kr,u(de.value.periodLine),1)]),n("div",Qr,[e[91]||(e[91]=n("div",{class:"po-stat-deco po-stat-deco--p pointer-events-none absolute -right-6 -top-8 h-28 w-28 rounded-full opacity-40"},null,-1)),n("div",Yr,[n("div",null,[n("div",Jr,[a(r,{size:16,class:"text-emerald-500"},{default:l(()=>[a(F(Fi))]),_:1}),c(" "+u(de.value.payHeading),1)]),n("div",Xr,[n("div",Zr," ¥"+u(de.value.payPerformanceStr),1),n("div",eo,[n("span",null,"合计 ¥"+u(de.value.payStr),1),n("span",to,"已取消 ¥"+u(de.value.payCancelledStr),1)])])]),n("div",ao,[a(r,{size:20},{default:l(()=>[a(F(ji))]),_:1})])]),n("p",so,u(de.value.periodLine),1)])])),[[fe,F(ue).loading]]),a(ee,{class:"ls-form",model:x,inline:""},{default:l(()=>[a(d,{class:"w-[360px] min-w-[240px] max-w-full",label:"创建时间"},{default:l(()=>[a(Bi,{startTime:x.start_time,"onUpdate:startTime":e[0]||(e[0]=i=>x.start_time=i),endTime:x.end_time,"onUpdate:endTime":e[1]||(e[1]=i=>x.end_time=i),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始日期","end-placeholder":"结束日期",class:"!w-full"},null,8,["startTime","endTime"])]),_:1}),a(d,{class:"w-[260px]",label:"订单号"},{default:l(()=>[a(g,{modelValue:x.order_no,"onUpdate:modelValue":e[2]||(e[2]=i=>x.order_no=i),placeholder:"业务订单号",clearable:"",onKeyup:dt(F(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(d,{class:"w-[140px]",label:"处方ID"},{default:l(()=>[a(g,{modelValue:x.prescription_id,"onUpdate:modelValue":e[3]||(e[3]=i=>x.prescription_id=i),placeholder:"处方ID",clearable:"",onKeyup:dt(F(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(d,{class:"w-[220px]",label:"患者"},{default:l(()=>[a(g,{modelValue:x.patient_keyword,"onUpdate:modelValue":e[4]||(e[4]=i=>x.patient_keyword=i),placeholder:"姓名 / 手机号",clearable:"",onKeyup:dt(F(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(d,{class:"w-[220px]",label:"快递"},{default:l(()=>[a(g,{modelValue:x.express_keyword,"onUpdate:modelValue":e[5]||(e[5]=i=>x.express_keyword=i),placeholder:"快递单号 / 公司",clearable:"",onKeyup:dt(F(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(d,{class:"w-[200px]",label:"医生"},{default:l(()=>[a(C,{modelValue:x.doctor_id,"onUpdate:modelValue":e[6]||(e[6]=i=>x.doctor_id=i),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:l(()=>[(o(!0),m(A,null,z(Gt.value,i=>(o(),y(_,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(d,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:l(()=>[a(H,{modelValue:x.assistant_dept_id,"onUpdate:modelValue":e[7]||(e[7]=i=>x.assistant_dept_id=i),data:_t.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:Ws,placeholder:"医助部门(选父级含子级)",onChange:_l},null,8,["modelValue","data"])]),_:1}),a(d,{class:"w-[200px]",label:"医助"},{default:l(()=>[a(C,{modelValue:x.assistant_id,"onUpdate:modelValue":e[8]||(e[8]=i=>x.assistant_id=i),clearable:"",filterable:"",placeholder:"订单创建人",class:"!w-full"},{default:l(()=>[(o(!0),m(A,null,z(Aa.value,i=>(o(),y(_,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(d,{class:"w-[160px]",label:"服务渠道"},{default:l(()=>[a(C,{modelValue:x.service_channel,"onUpdate:modelValue":e[9]||(e[9]=i=>x.service_channel=i),clearable:"",placeholder:"全部",class:"!w-full"},{default:l(()=>[a(_,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1}),a(d,null,{default:l(()=>[a(k,{type:"primary",onClick:F(K)},{default:l(()=>[...e[92]||(e[92]=[c("查询",-1)])]),_:1},8,["onClick"]),a(k,{onClick:fl},{default:l(()=>[...e[93]||(e[93]=[c("重置",-1)])]),_:1}),E(a(re,{class:"ml-2.5","fetch-fun":F(Hi),params:dl.value,"page-size":F(ue).size,"export-hint":"导出范围与上方筛选一致(履约状态、创建时间及其他条件均会生效)。含「自媒体渠道(挂号渠道来源)」:优先取该单关联处方登记的挂号;无则诊单下同患者挂号取 id 最大的一条(与前台挂号选择的记录一致);业绩侧栏带渠道筛选导出时与同页列表高亮挂号同源。"},null,8,["fetch-fun","params","page-size"]),[[U,["tcm.prescriptionOrder/export"]]])]),_:1})]),_:1},8,["model"])]),_:1}),E((o(),y(s,{class:"!border-none mt-4 po-table-card shadow-sm",shadow:"never"},{default:l(()=>[n("div",lo,[n("div",no,[e[94]||(e[94]=n("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),n("span",io,"共 "+u(F(ue).count)+" 条",1)]),n("div",ro,[n("div",{class:I(["po-focus-board__item is-pending-rx",{"is-active":te.value==="pendingRx"}]),onClick:e[10]||(e[10]=i=>mt("pendingRx"))},[e[95]||(e[95]=n("span",{class:"po-focus-board__label"},"待处方审核",-1)),n("strong",oo,u(ft.value.pendingRx),1)],2),n("div",{class:I(["po-focus-board__item is-pending-pay",{"is-active":te.value==="pendingPay"}]),onClick:e[11]||(e[11]=i=>mt("pendingPay"))},[e[96]||(e[96]=n("span",{class:"po-focus-board__label"},"待支付审核",-1)),n("strong",uo,u(ft.value.pendingPay),1)],2),n("div",{class:I(["po-focus-board__item is-pending-ship",{"is-active":te.value==="pendingShip"}]),onClick:e[12]||(e[12]=i=>mt("pendingShip"))},[e[97]||(e[97]=n("span",{class:"po-focus-board__label"},"待发货",-1)),n("strong",po,u(ft.value.pendingShip),1)],2),n("div",{class:I(["po-focus-board__item is-risk",{"is-active":te.value==="risk"}]),onClick:e[13]||(e[13]=i=>mt("risk"))},[e[98]||(e[98]=n("span",{class:"po-focus-board__label"},"重点异常",-1)),n("strong",co,u(ft.value.risk),1)],2)])]),a(he,{data:F(ue).lists,size:"default",stripe:"",class:"po-data-table","row-class-name":ml},{default:l(()=>[a(V,{label:"订单号","min-width":"178","show-overflow-tooltip":""},{default:l(({row:i})=>[n("div",_o,[n("div",mo,u(i.order_no||"—"),1),n("div",fo,[a(T,{size:"small",effect:"plain",type:String(i.gancao_reciperl_order_no||"").trim()?"success":"info"},{default:l(()=>[c(u(String(i.gancao_reciperl_order_no||"").trim()?"甘草":"自营"),1)]),_:2},1032,["type"]),n("span",vo,"#"+u(i.id),1)])])]),_:1}),a(V,{label:"处方ID",prop:"prescription_id",width:"86"}),a(V,{label:"诊单ID",prop:"diagnosis_id",width:"86"}),a(V,{label:"收货人","min-width":"100"},{default:l(({row:i})=>[n("div",null,u(i.recipient_name||"—"),1),n("div",{class:I(["text-xs",kt(i.recipient_phone,i.prescription_phone)?"text-red-600 font-semibold":"text-gray-400"])},[c(u(i.recipient_phone||"—")+" ",1),kt(i.recipient_phone,i.prescription_phone)?(o(),m("span",go,"(与处方手机不一致)")):v("",!0)],2)]),_:1}),a(V,{label:"费用类别",width:"96"},{default:l(({row:i})=>[c(u(vt(i.fee_type)),1)]),_:1}),a(V,{label:"金额","min-width":"100"},{default:l(({row:i})=>[n("div",yo,[n("span",bo,"¥"+u(i.amount),1),a(Lt,{placement:"top",width:200,trigger:"hover"},{reference:l(()=>[a(r,{class:"text-gray-400 cursor-pointer hover:text-primary"},{default:l(()=>[a(F(Li))]),_:1})]),default:l(()=>[n("div",xo,[n("div",ko,[e[99]||(e[99]=n("span",{class:"text-gray-500"},"业务订单单据:",-1)),n("span",ho,"¥"+u(i.amount),1)]),n("div",wo,[e[100]||(e[100]=n("span",{class:"text-gray-500"},"定金下限:",-1)),n("span",null,"¥"+u(ae(i.deposit_min_amount)),1)]),n("div",So,[e[101]||(e[101]=n("span",{class:"text-gray-500"},"实付(关联):",-1)),n("span",No,"¥"+u(ae(i.linked_pay_paid_total)),1)]),Ht()&&i.internal_cost!=null&&i.internal_cost!==""?(o(),m("div",Vo,[e[102]||(e[102]=n("span",{class:"text-gray-500"},"内部成本:",-1)),n("span",Co,"¥"+u(ae(i.internal_cost)),1)])):v("",!0)])]),_:2},1024)])]),_:1}),Ht()?(o(),y(V,{key:0,label:"内部成本",width:"92"},{default:l(({row:i})=>[c(u(i.internal_cost!=null&&i.internal_cost!==""?`¥${i.internal_cost}`:"—"),1)]),_:1})):v("",!0),a(V,{label:"处方审核",width:"110"},{default:l(({row:i})=>[a(T,{type:Ea(i.prescription_audit_status),size:"small",class:I(Wt("rx",i))},{default:l(()=>[c(u(Ra(i.prescription_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),a(V,{label:"支付单审核",width:"110"},{default:l(({row:i})=>[a(T,{type:Ea(i.payment_slip_audit_status),size:"small",class:I(Wt("pay",i))},{default:l(()=>[c(u(Ra(i.payment_slip_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),a(V,{label:"履约",width:"108"},{default:l(({row:i})=>[a(T,{type:gl(i.fulfillment_status),size:"small",class:I(Wt("fulfillment",i))},{default:l(()=>[c(u(Kt(i.fulfillment_status)),1)]),_:2},1032,["type","class"])]),_:1}),a(V,{label:"关联支付单",width:"100"},{default:l(({row:i})=>[Number(i.linked_pay_order_count)>0?(o(),m("span",{key:0,class:"text-primary cursor-default",title:i.linked_pay_order_id?`#${i.linked_pay_order_id}…`:""},u(i.linked_pay_order_count)+" 笔 ",9,Po)):(o(),m("span",To,"—"))]),_:1}),a(V,{label:"创建时间","min-width":"144"},{default:l(({row:i})=>[c(u(Ce(i.create_time)),1)]),_:1}),a(V,{label:"开方人",prop:"doctor_name",width:"90","show-overflow-tooltip":""}),a(V,{label:"创建人",prop:"creator_name",width:"90","show-overflow-tooltip":""}),a(V,{"min-width":"128","show-overflow-tooltip":""},{header:l(()=>[e[103]||(e[103]=n("span",null,"二中心·指派",-1)),a(It,{placement:"top","max-width":"320",content:"与诊单「指派记录」快照一致:仅当本条业务单在操作瞬间为快照中的「关联业务单」(创建人+创建时间命中)时显示。绿色=新医助在名称含「二中心」的部门及其下级;灰色=系统自动释放诊单医助。"},{default:l(()=>[a(r,{class:"ml-0.5 align-middle text-gray-400 cursor-help"},{default:l(()=>[a(F(Ii))]),_:1})]),_:1})]),default:l(({row:i})=>[Number(i.po_assign_snapshot_hit)?Number(i.po_assign_is_release)?(o(),y(T,{key:1,type:"info",size:"small"},{default:l(()=>[...e[104]||(e[104]=[c("已释放",-1)])]),_:1})):Number(i.po_assign_to_er_center)?(o(),y(T,{key:2,type:"success",size:"small"},{default:l(()=>[c(u(i.po_assign_to_assistant_name||"医助#"+i.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),y(T,{key:3,type:"warning",size:"small",effect:"plain"},{default:l(()=>[c(" 非二中心 "+u(i.po_assign_to_assistant_name||"医助#"+i.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),m("span",Oo,"—"))]),_:1}),a(V,{label:"操作",width:"310",fixed:"right"},{default:l(({row:i})=>[n("div",Ao,[E((o(),y(k,{type:"primary",link:"",onClick:b=>Ql(i.id)},{default:l(()=>[c(u(Bs.value),1)]),_:1},8,["onClick"])),[[U,["tcm.prescriptionOrder/detail"]]]),za(i)?E((o(),y(k,{key:0,type:"primary",link:"",onClick:b=>ln(i)},{default:l(()=>[...e[105]||(e[105]=[c("编辑",-1)])]),_:1},8,["onClick"])),[[U,["tcm.prescriptionOrder/edit"]]]):v("",!0),Pl(i)?E((o(),y(k,{key:1,type:"success",link:"",onClick:b=>mn(i)},{default:l(()=>[...e[106]||(e[106]=[c("修改单号",-1)])]),_:1},8,["onClick"])),[[U,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),Qt(i)?E((o(),y(k,{key:2,type:"primary",link:"",onClick:b=>ga(i)},{default:l(()=>[...e[107]||(e[107]=[c("确认发货",-1)])]),_:1},8,["onClick"])),[[U,["tcm.prescriptionOrder/ship"]]]):v("",!0),ja(i)?E((o(),y(k,{key:3,type:"success",link:"",onClick:b=>us(i)},{default:l(()=>[...e[108]||(e[108]=[c("补齐支付单",-1)])]),_:1},8,["onClick"])),[[U,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),La(i)?E((o(),y(k,{key:4,type:"primary",link:"",onClick:b=>ds(i)},{default:l(()=>[...e[109]||(e[109]=[c("完成订单",-1)])]),_:1},8,["onClick"])),[[U,["tcm.prescriptionOrder/complete"]]]):v("",!0),hl(i)?E((o(),y(k,{key:5,type:"danger",link:"",onClick:b=>on(i)},{default:l(()=>[...e[110]||(e[110]=[c("撤回",-1)])]),_:1},8,["onClick"])),[[U,["tcm.prescriptionOrder/withdraw"]]]):v("",!0),Tl(i)?E((o(),y(k,{key:6,type:"warning",link:"",loading:fa.value===i.id,onClick:b=>_n(i)},{default:l(()=>[...e[111]||(e[111]=[c("上传药方",-1)])]),_:1},8,["loading","onClick"])),[[U,["tcm.prescriptionOrder/submitGancaoRecipel"]]]):v("",!0)])]),_:1})]),_:1},8,["data"]),n("div",Ro,[a(lt,{modelValue:F(ue),"onUpdate:modelValue":e[14]||(e[14]=i=>kr(ue)?ue.value=i:null),"page-sizes":[15,20,30,40,100,150,200],onChange:F(G)},null,8,["modelValue","onChange"])])]),_:1})),[[fe,F(ue).loading]]),a(ha,{modelValue:J.value,"onUpdate:modelValue":e[25]||(e[25]=i=>J.value=i),class:"po-detail-drawer",size:"80%","destroy-on-close":"","close-on-click-modal":!1},{header:l(()=>{var i,b;return[n("div",Eo,[n("div",Do,[e[115]||(e[115]=n("span",{class:"po-detail-drawer-title text-gray-800 font-semibold text-lg"},"业务订单详情",-1)),(i=p.value)!=null&&i.order_no?(o(),y(T,{key:0,type:"primary",effect:"plain",round:"",class:"ml-3"},{default:l(()=>[c(u(p.value.order_no),1)]),_:1})):v("",!0),(b=p.value)!=null&&b.gancao_reciperl_order_no?(o(),y(T,{key:1,type:"success",effect:"plain",round:"",class:"ml-2"},{default:l(()=>[c("甘草 "+u(p.value.gancao_reciperl_order_no),1)]),_:1})):v("",!0),p.value?(o(),m("div",$o,[e[114]||(e[114]=n("span",{class:"text-sm text-gray-500"},"发货类型",-1)),E((o(),y(qt,{"model-value":se(p.value.ship_mode),size:"small",disabled:Yt.value||!Fa(p.value),onChange:Cl},{default:l(()=>[a(we,{label:"gancao"},{default:l(()=>[...e[112]||(e[112]=[c("甘草药房",-1)])]),_:1}),a(we,{label:"direct",disabled:Nl(p.value)},{default:l(()=>[...e[113]||(e[113]=[c("洛阳药房",-1)])]),_:1},8,["disabled"])]),_:1},8,["model-value","disabled"])),[[U,["tcm.prescriptionOrder/setShipMode"]]]),wl.value?v("",!0):(o(),y(T,{key:0,type:se(p.value.ship_mode)==="direct"?"warning":"success",effect:"plain",round:""},{default:l(()=>[c(u(Sl(p.value.ship_mode)),1)]),_:1},8,["type"]))])):v("",!0)]),p.value?(o(),m("div",Uo,[yl(p.value)?E((o(),y(k,{key:0,type:"warning",size:"small",plain:"",onClick:e[15]||(e[15]=N=>ns(p.value,"prescription"))},{default:l(()=>[...e[116]||(e[116]=[c(" 处方审核 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),xl(p.value)?E((o(),y(k,{key:1,type:"info",size:"small",plain:"",onClick:e[16]||(e[16]=N=>Sn(p.value))},{default:l(()=>[...e[117]||(e[117]=[c(" 撤回处方审核 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),bl(p.value)?E((o(),y(k,{key:2,type:"warning",size:"small",plain:"",onClick:e[17]||(e[17]=N=>ns(p.value,"payment"))},{default:l(()=>[...e[118]||(e[118]=[c(" 支付审核 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),kl(p.value)?E((o(),y(k,{key:3,type:"info",size:"small",plain:"",onClick:e[18]||(e[18]=N=>Nn(p.value))},{default:l(()=>[...e[119]||(e[119]=[c(" 撤回支付审核 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Qt(p.value)?E((o(),y(k,{key:4,type:"primary",size:"small",plain:"",onClick:e[19]||(e[19]=N=>ga(p.value))},{default:l(()=>[...e[120]||(e[120]=[c(" 确认发货 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/ship"]]]):v("",!0),ja(p.value)?E((o(),y(k,{key:5,type:"success",size:"small",plain:"",onClick:e[20]||(e[20]=N=>us(p.value))},{default:l(()=>[...e[121]||(e[121]=[c(" 关联支付单 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),La(p.value)?E((o(),y(k,{key:6,type:"primary",size:"small",plain:"",onClick:e[21]||(e[21]=N=>ds(p.value))},{default:l(()=>[...e[122]||(e[122]=[c(" 完成订单 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/complete"]]]):v("",!0)])):v("",!0)])]}),default:l(()=>{var i;return[Zt.value?(o(),y(Mt,{key:0,rows:12,animated:"",class:"px-6 py-4"})):p.value?(o(),m("div",zo,[Me.value?(o(),y(Q,{key:0,type:"error",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:"业务订单收货手机与处方登记手机不一致"},{default:l(()=>[n("div",Fo,[n("div",null,[e[123]||(e[123]=c(" 处方手机: ",-1)),n("span",jo,u(Al.value),1)]),n("div",null,[e[124]||(e[124]=c(" 订单收货手机: ",-1)),n("span",Lo,u(Rl.value),1)]),e[125]||(e[125]=n("div",{class:"text-gray-600 mt-1"},"请核对是否代收货或录入错误,避免物流与回访联系错人。",-1))])]),_:1})):v("",!0),ge.value.show&&String(((i=p.value)==null?void 0:i.tracking_number)||"").trim()?(o(),y(Q,{key:1,type:"error",effect:"dark",closable:!1,"show-icon":"",class:"mb-4 !items-start ring-2 ring-red-600/90 shadow-lg",title:"物流异常:轨迹中出现拒收 / 退回等字样,请优先跟进处理"},{default:l(()=>[n("div",Io,[ge.value.keywords.length?(o(),m("div",qo,[e[126]||(e[126]=n("span",{class:"text-red-100 text-xs"},"命中关键词:",-1)),(o(!0),m(A,null,z(ge.value.keywords,b=>(o(),y(T,{key:b,type:"danger",effect:"plain",size:"small",class:"!border-white/40 !text-white"},{default:l(()=>[c(u(b),1)]),_:2},1024))),128))])):v("",!0),ge.value.lines.length?(o(),m("ul",Mo,[(o(!0),m(A,null,z(ge.value.lines,(b,N)=>(o(),m("li",{key:N},u(b),1))),128))])):v("",!0),e[127]||(e[127]=n("div",{class:"text-xs text-red-100/90 pt-1 border-t border-white/15"}," 请核实是否需改址重发、拦截退件或协调患者签收,并在备注中记录处理结果。 ",-1))])]),_:1})):v("",!0),n("div",Bo,[a(Ps,{active:gt.value,"align-center":"","finish-status":"success"},{default:l(()=>[a(oe,{title:"业务订单创建",description:Ce(p.value.create_time)},null,8,["description"]),a(oe,{title:"处方单双审",status:yt.value},{description:l(()=>[yt.value==="error"?(o(),m("span",Ho,"处方被驳回")):yt.value==="wait"?(o(),m("span",Go,"等待审核")):yt.value==="success"?(o(),m("span",Wo,"双审通过")):(o(),m("span",Ko,"进行中"))]),_:1},8,["status"]),a(oe,{title:"支付单审核",status:bt.value},{description:l(()=>[bt.value==="error"?(o(),m("span",Qo,"支付审核驳回")):bt.value==="wait"?(o(),m("span",Yo,"等待审核")):bt.value==="success"?(o(),m("span",Jo,"审核通过")):(o(),m("span",Xo,"进行中"))]),_:1},8,["status"]),a(oe,{title:"发货与履约",status:Pe.value},{description:l(()=>{var b,N,$;return[Pe.value==="process"&&Number((b=p.value)==null?void 0:b.fulfillment_status)===7?(o(),m("span",Zo,"进行中")):Pe.value==="process"?(o(),m("span",eu,"等待发货/补充单号")):Pe.value==="wait"?(o(),m("span",tu,"待转入履约")):Pe.value==="success"?(o(),m("span",au,u(Kt((N=p.value)==null?void 0:N.fulfillment_status)),1)):Pe.value==="error"?(o(),m("span",su,u(Kt(($=p.value)==null?void 0:$.fulfillment_status)),1)):v("",!0)]}),_:1},8,["status"]),a(oe,{title:"订单完成"})]),_:1},8,["active"])]),a(Fe,{gutter:16,class:"mb-5"},{default:l(()=>[a(j,{xs:12,sm:6},{default:l(()=>[a(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[n("div",lu,[e[129]||(e[129]=n("div",{class:"stat-title text-gray-500 text-xs"},"总金额",-1)),Xt(p.value)?E((o(),y(k,{key:0,type:"primary",size:"small",link:"",onClick:Wl},{default:l(()=>[...e[128]||(e[128]=[c(" 修改 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/updateAmount"]]]):v("",!0)]),n("div",nu,"¥"+u(p.value.amount),1)]),_:1})]),_:1}),a(j,{xs:12,sm:6},{default:l(()=>[a(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[130]||(e[130]=n("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付总额",-1)),n("div",iu,"¥"+u(p.value.linked_pay_paid_total||0),1)]),_:1})]),_:1}),a(j,{xs:12,sm:6},{default:l(()=>[a(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[131]||(e[131]=n("div",{class:"stat-title text-gray-500 text-xs mb-1"},"需代收",-1)),n("div",{class:I(["stat-value font-bold text-xl",qa.value>0?"text-amber-600":"text-gray-500"])}," ¥"+u(ae(qa.value)),3)]),_:1})]),_:1}),a(j,{xs:12,sm:6},{default:l(()=>[a(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[132]||(e[132]=n("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付笔数",-1)),n("div",ru,u(ea.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),n("div",ou,[a(s,{shadow:"never",class:"po-panel po-panel-rx border-gray-100 h-full relative overflow-hidden"},{header:l(()=>[n("div",pu,[n("div",cu,[e[139]||(e[139]=n("span",{class:"font-medium text-[15px]"},"处方详情",-1)),p.value.doctor_name?(o(),m("span",_u,[e[135]||(e[135]=c(" 开方人:",-1)),n("span",mu,u(p.value.doctor_name),1)])):v("",!0),p.value.prescription_id&&R.value&&!String(p.value.prescription_detail_error||"").trim()?E((o(),y(k,{key:1,type:"default",size:"small",link:"",onClick:Bl},{default:l(()=>[...e[136]||(e[136]=[c(" 改患者信息 ",-1)])]),_:1})),[[U,["tcm.prescriptionOrder/patchPrescriptionPatient"]]]):v("",!0),p.value.prescription_id&&ve.value?(o(),y(k,{key:2,type:"primary",size:"small",link:"",onClick:e[22]||(e[22]=b=>Ns(p.value))},{default:l(()=>[...e[137]||(e[137]=[c(" 详细 ",-1)])]),_:1})):v("",!0),p.value.id&&ve.value?(o(),y(k,{key:3,type:"warning",size:"small",link:"",loading:Ee.value,icon:F(Ds),onClick:cn},{default:l(()=>[...e[138]||(e[138]=[c(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0)]),n("span",fu,"ID: "+u(p.value.prescription_id||"—"),1)])]),default:l(()=>[p.value.prescription_audit_status===1?(o(),m("div",uu,[...e[133]||(e[133]=[n("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),p.value.prescription_audit_status===2?(o(),m("div",du,[...e[134]||(e[134]=[n("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),String(p.value.prescription_detail_error||"").trim()?(o(),y(Q,{key:2,title:p.value.prescription_detail_error,type:"warning",closable:!1,"show-icon":"",class:"mb-3"},null,8,["title"])):R.value?(o(),m(A,{key:3},[a(nt,{column:2,border:"",size:"small",class:"po-desc bg-white"},{default:l(()=>[a(P,{label:"处方编号",span:2},{default:l(()=>[c(u(R.value.sn||"—"),1)]),_:1}),a(P,{label:"患者"},{default:l(()=>[c(u(R.value.patient_name||"—"),1)]),_:1}),a(P,{label:"性别 / 年龄"},{default:l(()=>[c(u(R.value.gender_desc||"—")+" · "+u(R.value.age??"—")+"岁 ",1)]),_:1}),a(P,{label:"手机"},{default:l(()=>[n("span",{class:I(Me.value?"rx-phone-mismatch text-red-600 font-bold":"")},u(R.value.phone||"—"),3),Me.value?(o(),y(T,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:l(()=>[...e[140]||(e[140]=[c(" 与订单手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),a(P,{label:"处方日期"},{default:l(()=>[c(u(R.value.prescription_date||"—"),1)]),_:1}),a(P,{label:"医师"},{default:l(()=>[c(u(R.value.doctor_name||"—"),1)]),_:1}),a(P,{label:"类型"},{default:l(()=>[c(u(R.value.prescription_type||"—"),1)]),_:1}),a(P,{label:"临床诊断",span:2},{default:l(()=>[c(u(R.value.clinical_diagnosis||"—"),1)]),_:1}),ve.value?(o(),y(P,{key:0,label:"剂数 / 用法",span:2},{default:l(()=>[c(u(p.value.dose_count??R.value.dose_count??"—")+" "+u(p.value.dose_unit||"剂")+" · "+u(R.value.usage_instruction||R.value.usage_method||"—"),1)]),_:1})):v("",!0),a(P,{label:"处方金额"},{default:l(()=>[n("span",vu,"¥"+u(R.value.amount??"—"),1)]),_:1}),a(P,{label:"消费者审核"},{default:l(()=>[a(T,{type:Ul(R.value.audit_status),size:"small"},{default:l(()=>[c(u($l(R.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),a(P,{label:"用量"},{default:l(()=>[R.value.dosage_amount?(o(),m(A,{key:0},[c(u(R.value.dosage_amount)+u(R.value.dosage_unit||"g")+" ",1),R.value.prescription_type==="浓缩水丸"?(o(),m(A,{key:0},[c(" · "+u(Number(R.value.dosage_bag_count)>0?Number(R.value.dosage_bag_count):1)+"袋 ",1)],64)):v("",!0),R.value.prescription_type==="饮片"&&R.value.need_decoction!==null?(o(),m("span",gu," ("+u(R.value.need_decoction?"代煎":"不代煎")+") ",1)):v("",!0)],64)):(o(),m(A,{key:1},[c("—")],64))]),_:1}),a(P,{label:"服用方式"},{default:l(()=>[n("div",yu,[n("div",null,[e[141]||(e[141]=n("span",{class:"text-gray-500"},"每天次数:",-1)),c(" "+u(R.value.times_per_day?R.value.times_per_day+" 次":"—"),1)]),n("div",null,[e[142]||(e[142]=n("span",{class:"text-gray-500"},"处方开立:",-1)),c(" "+u(R.value.usage_days!=null&&R.value.usage_days!==""?R.value.usage_days+" 天":"—"),1)]),n("div",null,[e[143]||(e[143]=n("span",{class:"text-gray-500"},"订单设置:",-1)),c(" "+u(p.value.medication_days!=null&&String(p.value.medication_days).trim()!==""?p.value.medication_days+" 天":"—"),1)])])]),_:1}),a(P,{label:"状态",span:2},{default:l(()=>[a(T,{type:Number(R.value.void_status)===1?"danger":"success",size:"small"},{default:l(()=>[c(u(Number(R.value.void_status)===1?"已作废":"正常"),1)]),_:1},8,["type"])]),_:1})]),_:1}),El.value?(o(),m("div",bu,[e[144]||(e[144]=n("div",{class:"text-xs font-medium text-gray-500 mb-2 px-1"},"药材明细",-1)),Ka.value.length?(o(),y(he,{key:0,data:Ka.value,size:"small",border:"",stripe:"","max-height":"260"},{default:l(()=>[a(V,{type:"index",label:"#",width:"48",align:"center"}),a(V,{prop:"name",label:"药名","min-width":"120","show-overflow-tooltip":""}),a(V,{prop:"dosage",label:"用量(g)",width:"96",align:"right"})]),_:1},8,["data"])):(o(),y(je,{key:1,description:"无处方药材明细","image-size":64}))])):v("",!0)],64)):(o(),y(je,{key:4,description:"无处方数据","image-size":72}))]),_:1}),n("div",xu,[a(s,{shadow:"never",class:"po-panel border-gray-100"},{header:l(()=>[...e[145]||(e[145]=[n("div",{class:"flex items-center justify-between"},[n("span",{class:"font-medium text-[15px]"},"未关联的收款记录"),n("span",{class:"text-xs text-gray-400"},"本诊单下未被占用的支付单")],-1)])]),default:l(()=>[Te.value.length?(o(),y(he,{key:0,data:Te.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[a(V,{prop:"id",label:"ID",width:"70"}),a(V,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),a(V,{label:"类型",width:"90"},{default:l(({row:b})=>[c(u(b.order_type_desc||vt(b.order_type)),1)]),_:1}),a(V,{label:"金额",width:"86",align:"right"},{default:l(({row:b})=>[n("span",ku,"¥"+u(b.amount),1)]),_:1}),a(V,{label:"状态",width:"100",align:"center"},{default:l(({row:b})=>[a(T,{type:Ya(b.status),size:"small"},{default:l(()=>[c(u(b.status_desc||Ia(b.status)),1)]),_:2},1032,["type"]),b.is_exempt===1?(o(),y(T,{key:0,type:"warning",size:"small",class:"ml-1"},{default:l(()=>[...e[146]||(e[146]=[c("豁免",-1)])]),_:1})):v("",!0)]),_:1}),a(V,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),a(V,{label:"创建时间","min-width":"136"},{default:l(({row:b})=>[c(u(Ja(b.create_time)),1)]),_:1})]),_:1},8,["data"])):(o(),y(je,{key:1,description:"无未关联的收款单","image-size":60}))]),_:1}),a(s,{shadow:"never",class:"po-panel po-panel-pay border-gray-100 relative overflow-hidden"},{header:l(()=>[n("div",Su,[n("div",Nu,[e[150]||(e[150]=n("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),p.value.creator_name?(o(),m("span",Vu,[e[149]||(e[149]=c(" 创建人:",-1)),n("span",Cu,u(p.value.creator_name),1)])):v("",!0)])])]),default:l(()=>[p.value.payment_slip_audit_status===1?(o(),m("div",hu,[...e[147]||(e[147]=[n("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),p.value.payment_slip_audit_status===2?(o(),m("div",wu,[...e[148]||(e[148]=[n("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),ea.value.length?(o(),y(he,{key:2,data:ea.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[a(V,{prop:"id",label:"ID",width:"70"}),a(V,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),a(V,{label:"类型",width:"90"},{default:l(({row:b})=>[c(u(b.order_type_desc||vt(b.order_type)),1)]),_:1}),a(V,{label:"金额",width:"86",align:"right"},{default:l(({row:b})=>[n("span",Pu,"¥"+u(b.amount),1)]),_:1}),a(V,{label:"状态",width:"100",align:"center"},{default:l(({row:b})=>[a(T,{type:Ya(b.status),size:"small"},{default:l(()=>[c(u(b.status_desc||Ia(b.status)),1)]),_:2},1032,["type"]),b.is_exempt===1?(o(),y(T,{key:0,type:"warning",size:"small",class:"ml-1"},{default:l(()=>[...e[151]||(e[151]=[c("豁免",-1)])]),_:1})):v("",!0)]),_:1}),a(V,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),a(V,{label:"创建时间","min-width":"136"},{default:l(({row:b})=>[c(u(Ja(b.create_time)),1)]),_:1})]),_:1},8,["data"])):(o(),y(je,{key:3,description:"未关联收款单","image-size":60}))]),_:1})])]),a(s,{shadow:"never",class:"po-panel po-panel-biz border-gray-100 mb-4"},{header:l(()=>[...e[152]||(e[152]=[n("span",{class:"font-medium text-[15px]"},"履约与收货信息",-1)])]),default:l(()=>[a(nt,{column:3,border:"",size:"small",class:"po-desc"},{default:l(()=>[a(P,{label:"诊单ID",span:3},{default:l(()=>[n("span",Tu,u(p.value.diagnosis_id),1),Number(p.value.diagnosis_id)>0?(o(),y(k,{key:0,type:"primary",link:"",size:"small",class:"ml-2 align-baseline",onClick:Is},{default:l(()=>[...e[153]||(e[153]=[c(" 查看患者信息 ",-1)])]),_:1})):v("",!0)]),_:1}),a(P,{label:"创建时间",span:1},{default:l(()=>[c(u(Ce(p.value.create_time)),1)]),_:1}),a(P,{label:"业务订单创建人",span:2},{default:l(()=>[Number(p.value.creator_id)>0||p.value.creator_name?(o(),m("div",Ou,[n("div",null,[n("span",Au,u(p.value.creator_name||"—"),1),Number(p.value.creator_id)>0?(o(),m("span",Ru,"ID "+u(p.value.creator_id),1)):v("",!0)]),Ha.value?(o(),m("div",Eu,u(Ha.value),1)):v("",!0)])):(o(),m("span",Du,"—"))]),_:1}),a(P,{label:"创建人所属部门",span:3},{default:l(()=>[Ba.value.length?(o(),m("div",$u,[(o(!0),m(A,null,z(Ba.value,(b,N)=>(o(),m("div",{key:N,class:"min-w-0"},[b.length?(o(),y(Os,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:l(()=>[(o(!0),m(A,null,z(b,($,Se)=>(o(),y(Ts,{key:Se},{default:l(()=>[n("span",Uu,u($),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),m("span",zu,"—"))]),_:1}),a(P,{label:"收货人"},{default:l(()=>[c(u(p.value.recipient_name),1)]),_:1}),a(P,{label:"挂号关联",span:3},{default:l(()=>[X.value?(o(),m(A,{key:0},[n("div",Fu,[n("span",null,[e[154]||(e[154]=c("流转编号(挂号) ",-1)),n("span",ju,"#"+u(X.value.id),1)]),n("span",Lu,"时间:"+u(X.value.appointment_date)+" "+u(X.value.period)+" "+u(X.value.appointment_time),1),a(T,{size:"small",type:"info"},{default:l(()=>[c(u(X.value.appointment_type_desc),1)]),_:1}),a(T,{size:"small"},{default:l(()=>[c(u(X.value.status_desc),1)]),_:1}),X.value.doctor_name?(o(),m("span",Iu,"接诊:"+u(X.value.doctor_name),1)):v("",!0),Wa.value?(o(),m("span",qu,"渠道:"+u(Wa.value),1)):v("",!0),Ga.value?(o(),y(T,{key:2,size:"small",effect:"plain"},{default:l(()=>[c(u(Ga.value),1)]),_:1})):v("",!0)]),String(X.value.remark||"").trim()?(o(),m("p",Mu," 备注:"+u(X.value.remark),1)):v("",!0)],64)):(o(),m("span",Bu,"暂无挂号预约记录(未绑定或诊单下无预约)"))]),_:1}),a(P,{label:"收货手机"},{default:l(()=>[n("span",{class:I(Me.value?"text-red-600 font-bold font-mono":"font-mono")},u(p.value.recipient_phone||"—"),3),Me.value?(o(),y(T,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:l(()=>[...e[155]||(e[155]=[c(" 与处方手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),a(P,{label:"收货地址",span:2},{default:l(()=>[c(u(Dl.value),1)]),_:1}),a(P,{label:"复诊"},{default:l(()=>[c(u(p.value.is_follow_up?"是":"否"),1)]),_:1}),a(P,{label:"用药疗程"},{default:l(()=>[c(u(p.value.medication_days?p.value.medication_days+" 天":"—"),1)]),_:1}),a(P,{label:"上次医护"},{default:l(()=>[c(u(p.value.prev_staff||"—"),1)]),_:1}),a(P,{label:"服务渠道"},{default:l(()=>[c(u(p.value.service_channel||"—"),1)]),_:1}),a(P,{label:"服务套餐"},{default:l(()=>[c(u(vl(p.value.service_package)),1)]),_:1}),a(P,{label:"费用类别"},{default:l(()=>[c(u(vt(p.value.fee_type)),1)]),_:1}),p.value.internal_cost!=null&&p.value.internal_cost!==""?(o(),y(P,{key:0,label:"内部成本"},{default:l(()=>[c(" ¥"+u(p.value.internal_cost),1)]),_:1})):v("",!0),a(P,{label:"快递单号",span:p.value.internal_cost!=null&&p.value.internal_cost!==""?1:2},{default:l(()=>[c(u(p.value.tracking_number||"—"),1)]),_:1},8,["span"]),a(P,{label:"快递公司"},{default:l(()=>[c(u(ql(p.value.express_company)),1)]),_:1}),E((o(),y(P,{label:"药房备注",span:3},{default:l(()=>[c(u(p.value.remark_extra||"—"),1)]),_:1})),[[U,["tcm.prescriptionOrder/editRemarkExtra"]]]),a(P,{label:"医助备注",span:3},{default:l(()=>[c(u(p.value.remark_assistant||"—"),1)]),_:1}),a(P,{label:"处方审核意见",span:3},{default:l(()=>[n("span",Hu,u(p.value.prescription_audit_remark||"—"),1)]),_:1}),a(P,{label:"支付审核意见",span:3},{default:l(()=>[n("span",Gu,u(p.value.payment_slip_audit_remark||"—"),1)]),_:1})]),_:1})]),_:1}),String(p.value.tracking_number||"").trim()?(o(),y(s,{key:2,shadow:"never",class:I(["po-panel po-panel-logistics",ge.value.show?"!border-2 !border-red-500 shadow-md shadow-red-500/10":"border-gray-100"])},{header:l(()=>[n("div",Wu,[e[157]||(e[157]=n("span",{class:"font-medium text-[15px]"},"物流轨迹",-1)),n("span",Ku,u(p.value.tracking_number),1),ge.value.show?(o(),y(T,{key:0,type:"danger",effect:"dark",size:"small"},{default:l(()=>[...e[156]||(e[156]=[c(" 拒收/退回 · 待处理 ",-1)])]),_:1})):v("",!0)])]),default:l(()=>{var b,N,$,Se,rt,ot;return[e[163]||(e[163]=n("p",{class:"po-logistics-tip text-gray-400 text-xs mb-3 font-normal"}," 优先读库,无记录时走快递100。顺丰会校验单号+电话(快递100要求完整手机号更易通过);默认预填订单收货手机,若仍提示验证码错误请改成与顺丰面单一致的号码。 ",-1)),n("div",Qu,[a(g,{modelValue:He.value,"onUpdate:modelValue":e[23]||(e[23]=ce=>He.value=ce),clearable:"",maxlength:"20",placeholder:"收件手机(建议11位,与面单一致)",class:"w-[180px]",onKeyup:dt(na,["enter"])},null,8,["modelValue"]),a(C,{modelValue:Be.value,"onUpdate:modelValue":e[24]||(e[24]=ce=>Be.value=ce),placeholder:"承运商",style:{width:"140px"}},{default:l(()=>[a(_,{label:"自动识别",value:"auto"}),a(_,{label:"顺丰速运",value:"sf"}),a(_,{label:"京东快递",value:"jd"}),a(_,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),E((o(),y(k,{type:"primary",plain:"",size:"default",loading:ht.value,onClick:na},{icon:l(()=>[a(r,null,{default:l(()=>[a(F(qi))]),_:1})]),default:l(()=>[e[158]||(e[158]=c(" 刷新轨迹 ",-1))]),_:1},8,["loading"])),[[U,["tcm.prescriptionOrder/logisticsTrace"]]]),n("div",Yu,[a(ka,{href:la.value.sf,target:"_blank",type:"primary",underline:!1,class:"text-[13px]"},{default:l(()=>[...e[159]||(e[159]=[c("顺丰官网",-1)])]),_:1},8,["href"]),a(ka,{href:la.value.jd,target:"_blank",type:"primary",underline:!1,class:"text-[13px]"},{default:l(()=>[...e[160]||(e[160]=[c("京东物流",-1)])]),_:1},8,["href"]),a(ka,{href:la.value.jt,target:"_blank",type:"primary",underline:!1,class:"text-[13px]"},{default:l(()=>[...e[161]||(e[161]=[c("极兔",-1)])]),_:1},8,["href"])])]),String(((b=B.value)==null?void 0:b.hint)||"").trim()?(o(),y(Q,{key:0,title:String(((N=B.value)==null?void 0:N.hint)||""),type:"info",closable:!1,class:"mb-4","show-icon":""},null,8,["title"])):v("",!0),ht.value&&!B.value?(o(),m("div",Ju,[a(r,{class:"is-loading mr-1"},{default:l(()=>[a(F(Mi))]),_:1}),e[162]||(e[162]=c("正在加载物流轨迹... ",-1))])):B.value?(o(),m("div",Xu,[($=B.value)!=null&&$.state_text?(o(),m("div",Zu,[n("span",ed,"状态:"+u(B.value.state_text),1),(Se=B.value)!=null&&Se.carrier_label?(o(),y(T,{key:0,size:"small",type:"info"},{default:l(()=>[c(u(B.value.carrier_label),1)]),_:1})):v("",!0),(rt=B.value)!=null&&rt.source?(o(),m("span",td," ["+u(B.value.source==="database"?"数据库缓存":"API拉取")+"] ",1)):v("",!0),(ot=B.value)!=null&&ot.last_query_time?(o(),m("span",ad," 更新时间:"+u(B.value.last_query_time),1)):v("",!0)])):v("",!0),Za.value.length?(o(),y(Rs,{key:1,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m(A,null,z(Za.value,(ce,Bt)=>(o(),y(As,{key:Bt,type:Bt===0?"primary":"info",hollow:Bt!==0,timestamp:ce.time,placement:"top"},{default:l(()=>[n("span",{class:I([Bt===0?"text-gray-800 font-medium":"text-gray-500",Il(ce.context)?"!text-red-700 font-semibold bg-red-50 px-1.5 py-0.5 rounded":""])},u(ce.context),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(o(),y(je,{key:2,description:"暂无轨迹节点记录","image-size":64}))])):v("",!0)]}),_:1},8,["class"])):v("",!0),E((o(),y(s,{shadow:"never",class:"po-panel border-gray-100 mt-4"},{header:l(()=>[...e[164]||(e[164]=[n("span",{class:"font-medium text-[15px]"},"操作日志",-1)])]),default:l(()=>[Oe.value.length?(o(),y(Rs,{key:0,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m(A,null,z(Oe.value,(b,N)=>(o(),y(As,{key:b.id,type:N===0?"primary":"info",hollow:N!==0,timestamp:Ce(b.create_time),placement:"top"},{default:l(()=>[n("div",sd,[n("span",ld,u(b.admin_name),1),a(T,{size:"small",type:"info"},{default:l(()=>[c(u(Ll(b.action)),1)]),_:2},1024)]),n("span",{class:I(N===0?"text-gray-800 font-medium":"text-gray-500")},u(b.summary),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(o(),y(je,{key:1,description:"暂无操作日志","image-size":64}))]),_:1})),[[U,["tcm.prescriptionOrder/logs"]]])])):v("",!0)]}),_:1},8,["modelValue"]),a(me,{modelValue:Ge.value,"onUpdate:modelValue":e[28]||(e[28]=i=>Ge.value=i),title:"修改订单金额",width:"420px","destroy-on-close":"","close-on-click-modal":!1,onClosed:Gl},{footer:l(()=>[a(k,{onClick:e[27]||(e[27]=i=>Ge.value=!1)},{default:l(()=>[...e[166]||(e[166]=[c("取消",-1)])]),_:1}),a(k,{type:"primary",loading:sa.value,onClick:as},{default:l(()=>[...e[167]||(e[167]=[c(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(ee,{ref_key:"updateAmountFormRef",ref:wt,model:_e,rules:Fl,"label-width":"96px",class:"pr-2",onSubmit:wa(as,["prevent"])},{default:l(()=>[a(d,{label:"当前金额"},{default:l(()=>{var i;return[n("div",nd,"¥"+u(ae((i=p.value)==null?void 0:i.amount)),1)]}),_:1}),a(d,{label:"新金额",prop:"amount"},{default:l(()=>[a(Le,{modelValue:_e.amount,"onUpdate:modelValue":e[26]||(e[26]=i=>_e.amount=i),min:.01,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[165]||(e[165]=n("div",{class:"text-xs text-gray-400 pl-[96px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),a(me,{modelValue:ye.value,"onUpdate:modelValue":e[51]||(e[51]=i=>ye.value=i),title:ie.value?"修改物流信息(甘草订单)":"编辑业务订单",width:"940px",top:"4vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog",onClosed:tn},{footer:l(()=>[n("div",Id,[ie.value?v("",!0):(o(),m("div",qd,[n("span",Md,"第 "+u(q.value+1)+" / 3 步",1),q.value===2&&M.value>0?(o(),m("span",Bd," 订单金额与关联支付单合计须 ≥ ¥"+u(ae(M.value)),1)):v("",!0)])),n("div",Hd,[a(k,{size:"large",onClick:e[50]||(e[50]=i=>ye.value=!1)},{default:l(()=>[...e[180]||(e[180]=[c("取消",-1)])]),_:1}),ie.value?v("",!0):(o(),m(A,{key:0},[q.value>0?(o(),y(k,{key:0,size:"large",onClick:an},{default:l(()=>[...e[181]||(e[181]=[c("上一步",-1)])]),_:1})):v("",!0),q.value<2?(o(),y(k,{key:1,type:"primary",size:"large",onClick:sn},{default:l(()=>[...e[182]||(e[182]=[c(" 下一步 ",-1)])]),_:1})):v("",!0)],64)),ie.value||q.value===2?(o(),y(k,{key:1,type:"primary",size:"large",loading:da.value,onClick:nn},{default:l(()=>[...e[183]||(e[183]=[c(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:l(()=>[E((o(),m("div",id,[ne.value?(o(),m("div",rd,[n("div",od,[e[168]||(e[168]=n("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),n("div",ud,[n("span",dd,"#"+u(ne.value.id),1),ne.value.sn?(o(),m("span",pd,u(ne.value.sn),1)):v("",!0),n("span",cd,u(ne.value.patient_name||"—"),1)])]),a(It,{content:ss.value,placement:"bottom","show-after":300},{default:l(()=>[n("div",_d,u(ss.value),1)]),_:1},8,["content"])])):v("",!0),ie.value?(o(),y(Q,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4",title:"订单已提交甘草,仅可修改快递单号与承运商;地址、金额等变更请先走取消流程。"},br({_:2},[Ct.value?{name:"default",fn:l(()=>[n("div",md,"甘草处方单号:"+u(Ct.value),1)]),key:"0"}:void 0]),1024)):v("",!0),ie.value?v("",!0):(o(),m(A,{key:2},[a(Ps,{active:q.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:l(()=>[a(oe,{title:"患者与收货",description:"诊单与物流地址"}),a(oe,{title:"服务与支付单",description:"套餐与关联收款"}),a(oe,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),n("p",fd,u(Yl.value),1)],64)),a(ee,{ref_key:"editFormRef",ref:be,model:f,rules:en.value,"label-width":"108px",class:"create-order-form"},{default:l(()=>[ie.value?(o(),y(Fe,{key:0,gutter:20},{default:l(()=>[a(j,{span:24},{default:l(()=>[a(d,{label:"物流设置"},{default:l(()=>[n("div",vd,[a(C,{modelValue:f.express_company,"onUpdate:modelValue":e[29]||(e[29]=i=>f.express_company=i),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:l(()=>[a(_,{label:"自动识别",value:"auto"}),a(_,{label:"顺丰速运",value:"sf"}),a(_,{label:"京东快递",value:"jd"}),a(_,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),a(g,{modelValue:f.tracking_number,"onUpdate:modelValue":e[30]||(e[30]=i=>f.tracking_number=i),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1})]),_:1})):v("",!0),ie.value?v("",!0):(o(),m(A,{key:1},[E(n("div",gd,[a(Fe,{gutter:20},{default:l(()=>[a(j,{span:12},{default:l(()=>[a(d,{label:"收货人",prop:"recipient_name"},{default:l(()=>[a(g,{modelValue:f.recipient_name,"onUpdate:modelValue":e[31]||(e[31]=i=>f.recipient_name=i),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),a(j,{span:12},{default:l(()=>[a(d,{label:"收货手机",prop:"recipient_phone"},{default:l(()=>[a(g,{modelValue:f.recipient_phone,"onUpdate:modelValue":e[32]||(e[32]=i=>f.recipient_phone=i),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),a(j,{span:24},{default:l(()=>[a(d,{label:"省市区",prop:"region"},{default:l(()=>[a(Mn,{modelValue:f.region,"onUpdate:modelValue":e[33]||(e[33]=i=>f.region=i),options:ct.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),a(j,{span:24},{default:l(()=>[a(d,{label:"详细地址",prop:"shipping_address"},{default:l(()=>[a(g,{modelValue:f.shipping_address,"onUpdate:modelValue":e[34]||(e[34]=i=>f.shipping_address=i),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[Sa,q.value===0]]),E(n("div",yd,[ve.value?(o(),y(Fe,{key:0,gutter:20,class:"mb-1"},{default:l(()=>[a(j,{span:24},{default:l(()=>[n("div",bd,[e[171]||(e[171]=n("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),f.prescription_id?(o(),y(k,{key:0,type:"primary",size:"small",link:"",onClick:jn},{default:l(()=>[...e[169]||(e[169]=[c(" 详细 ",-1)])]),_:1})):v("",!0),f.id?(o(),y(k,{key:1,type:"warning",size:"small",link:"",loading:Ee.value,icon:F(Ds),onClick:pn},{default:l(()=>[...e[170]||(e[170]=[c(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),n("span",xd,"ID: "+u(f.prescription_id||"—"),1)]),n("div",kd,[ls.value.length?(o(),m("div",hd,[e[172]||(e[172]=n("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),m(A,null,z(ls.value,(i,b)=>(o(),m("div",{key:b,class:"pl-0 min-w-0"},[i.length?(o(),y(Os,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:l(()=>[(o(!0),m(A,null,z(i,(N,$)=>(o(),y(Ts,{key:$},{default:l(()=>[n("span",wd,u(N),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),m("div",Sd,"创建人所属部门:—"))])]),_:1}),a(j,{xs:24,sm:8},{default:l(()=>[a(d,{label:"复诊"},{default:l(()=>[a(Bn,{modelValue:f.is_follow_up,"onUpdate:modelValue":e[35]||(e[35]=i=>f.is_follow_up=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),a(j,{xs:24,sm:8},{default:l(()=>[a(d,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:l(()=>[n("div",Nd,[a(Le,{modelValue:f.medication_days,"onUpdate:modelValue":e[36]||(e[36]=i=>f.medication_days=i),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[173]||(e[173]=n("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),a(j,{xs:24,sm:8},{default:l(()=>[a(d,{label:"上次医生"},{default:l(()=>[a(g,{modelValue:f.prev_staff,"onUpdate:modelValue":e[37]||(e[37]=i=>f.prev_staff=i),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),a(j,{span:12},{default:l(()=>[a(d,{label:Qa.value,prop:"dose_count"},{default:l(()=>[a(Le,{modelValue:f.dose_count,"onUpdate:modelValue":e[38]||(e[38]=i=>f.dose_count=i),min:1,placeholder:Qa.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),a(j,{span:12},{default:l(()=>[a(d,{label:"剂量单位",prop:"dose_unit"},{default:l(()=>[a(C,{modelValue:f.dose_unit,"onUpdate:modelValue":e[39]||(e[39]=i=>f.dose_unit=i),placeholder:"请选择",class:"w-full"},{default:l(()=>[a(_,{label:"剂",value:"剂"}),a(_,{label:"丸",value:"丸"}),a(_,{label:"袋",value:"袋"}),a(_,{label:"盒",value:"盒"}),a(_,{label:"瓶",value:"瓶"}),a(_,{label:"膏",value:"膏"}),a(_,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),a(Fe,{gutter:20},{default:l(()=>[a(j,{span:12},{default:l(()=>[a(d,{label:"服务渠道"},{default:l(()=>[a(C,{modelValue:f.service_channel,"onUpdate:modelValue":e[40]||(e[40]=i=>f.service_channel=i),class:"w-full",filterable:"","allow-create":"","default-first-option":"",clearable:"",placeholder:"可选或自定义输入"},{default:l(()=>[a(_,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(j,{span:12},{default:l(()=>[a(d,{label:"服务套餐"},{default:l(()=>[a(C,{modelValue:f.service_package,"onUpdate:modelValue":e[41]||(e[41]=i=>f.service_package=i),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:l(()=>[(o(!0),m(A,null,z(Ie.value,i=>(o(),y(_,{key:i.value,label:i.name,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(j,{span:24},{default:l(()=>[a(d,{label:"物流设置"},{default:l(()=>[n("div",Vd,[a(C,{modelValue:f.express_company,"onUpdate:modelValue":e[42]||(e[42]=i=>f.express_company=i),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:l(()=>[a(_,{label:"自动识别",value:"auto"}),a(_,{label:"顺丰速运",value:"sf"}),a(_,{label:"京东快递",value:"jd"}),a(_,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),a(g,{modelValue:f.tracking_number,"onUpdate:modelValue":e[43]||(e[43]=i=>f.tracking_number=i),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),a(j,{span:24},{default:l(()=>[a(d,{label:"关联支付单",prop:"pay_order_ids",required:M.value>0},{default:l(()=>[a(C,{modelValue:f.pay_order_ids,"onUpdate:modelValue":e[44]||(e[44]=i=>f.pay_order_ids=i),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:M.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:pa.value},{default:l(()=>[(o(!0),m(A,null,z(Qe.value,i=>(o(),y(_,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${ca(i.order_type)}`,value:i.id,class:"!h-auto py-1.5"},{default:l(()=>[n("div",Cd,[n("div",Pd,[n("span",Td,u(i.order_no),1),n("span",Od,"¥"+u(i.amount),1)]),n("div",Ad,[n("span",Rd,[c(u(ca(i.order_type)),1),i.remark?(o(),m(A,{key:0},[c(" · "+u(i.remark),1)],64)):v("",!0)]),n("span",Ed,u(String(i.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),n("div",Dd,[M.value>0?(o(),m(A,{key:0},[n("span",$d,"当前已开启关联支付门槛(¥"+u(ae(M.value))+"),须至少选择一笔支付单。",1),e[174]||(e[174]=n("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[176]||(e[176]=c(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),a(It,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:l(()=>[...e[175]||(e[175]=[n("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[Sa,q.value===1]]),E(n("div",Ud,[n("div",{class:I(["create-order-deposit-bar",_a.value>=M.value?"is-ok":"is-warn"])},[n("div",zd,[e[177]||(e[177]=n("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),n("strong",null,"¥"+u(ae(M.value)),1),n("span",Fd,u(M.value>0?"须 ≥ 此值":"未设置"),1)]),e[179]||(e[179]=n("div",{class:"create-order-deposit-bar__sep"},null,-1)),n("div",jd,[e[178]||(e[178]=n("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),n("strong",null,"¥"+u(ae(_a.value)),1),n("span",Ld,u(_a.value>=M.value?"已达标":"未达标"),1)])],2),a(Fe,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:l(()=>[a(j,{span:12},{default:l(()=>[a(d,{label:"费用类别",prop:"fee_type"},{default:l(()=>[a(C,{modelValue:f.fee_type,"onUpdate:modelValue":e[45]||(e[45]=i=>f.fee_type=i),placeholder:"请选择",class:"w-full"},{default:l(()=>[a(_,{label:"挂号费",value:1}),a(_,{label:"问诊费",value:2}),a(_,{label:"药品费用",value:3}),a(_,{label:"首付费用",value:4}),a(_,{label:"尾款费用",value:5}),a(_,{label:"其他费用",value:6}),a(_,{label:"全部费用",value:7}),a(_,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),a(j,{span:12},{default:l(()=>[a(d,{label:"总金额",prop:"amount"},{default:l(()=>[a(Le,{modelValue:f.amount,"onUpdate:modelValue":e[46]||(e[46]=i=>f.amount=i),min:Xl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),E((o(),y(j,{span:12},{default:l(()=>[a(d,{label:"内部成本"},{default:l(()=>[a(Le,{modelValue:f.internal_cost,"onUpdate:modelValue":e[47]||(e[47]=i=>f.internal_cost=i),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[U,["finance.account_log/lists"]]]),a(j,{span:24},{default:l(()=>[E((o(),y(d,{label:"药房备注"},{default:l(()=>[a(g,{modelValue:f.remark_extra,"onUpdate:modelValue":e[48]||(e[48]=i=>f.remark_extra=i),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[U,["tcm.prescriptionOrder/editRemarkExtra"]]]),a(d,{label:"医助备注"},{default:l(()=>[a(g,{modelValue:f.remark_assistant,"onUpdate:modelValue":e[49]||(e[49]=i=>f.remark_assistant=i),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[Sa,q.value===2]])],64))]),_:1},8,["model","rules"])])),[[fe,ua.value]])]),_:1},8,["modelValue","title"]),a(me,{modelValue:Ye.value,"onUpdate:modelValue":e[56]||(e[56]=i=>Ye.value=i),title:rn.value,width:"480px","destroy-on-close":"",onClosed:e[57]||(e[57]=i=>Re.value="")},{footer:l(()=>[a(k,{onClick:e[53]||(e[53]=i=>Ye.value=!1)},{default:l(()=>[...e[185]||(e[185]=[c("取消",-1)])]),_:1}),a(k,{type:"primary",loading:Tt.value,onClick:e[54]||(e[54]=i=>is("approve"))},{default:l(()=>[...e[186]||(e[186]=[c("同意通过",-1)])]),_:1},8,["loading"]),a(k,{type:"danger",loading:Tt.value,onClick:e[55]||(e[55]=i=>is("reject"))},{default:l(()=>[...e[187]||(e[187]=[c("驳回阻止",-1)])]),_:1},8,["loading"])]),default:l(()=>[Je.value&&Je.value.completion_request===1?(o(),y(Q,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:l(()=>[n("div",Gd,[e[184]||(e[184]=n("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),n("div",Wd," 申请人:"+u(Je.value.completion_request_by_name||"—"),1),n("div",Kd," 申请时间:"+u(Ce(Je.value.completion_request_time)),1)])]),_:1})):v("",!0),e[188]||(e[188]=n("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),a(g,{modelValue:Re.value,"onUpdate:modelValue":e[52]||(e[52]=i=>Re.value=i),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),a(me,{modelValue:Xe.value,"onUpdate:modelValue":e[61]||(e[61]=i=>Xe.value=i),title:"修改快递单号",width:"420px","destroy-on-close":"","close-on-click-modal":!1},{footer:l(()=>[a(k,{onClick:e[60]||(e[60]=i=>Xe.value=!1)},{default:l(()=>[...e[190]||(e[190]=[c("取消",-1)])]),_:1}),a(k,{type:"primary",loading:At.value,onClick:rs},{default:l(()=>[...e[191]||(e[191]=[c("保存单号",-1)])]),_:1},8,["loading"])]),default:l(()=>[E((o(),y(ee,{"label-width":"90px",class:"pr-2",onSubmit:wa(rs,["prevent"])},{default:l(()=>[a(d,{label:"承运商"},{default:l(()=>[a(C,{modelValue:Z.express_company,"onUpdate:modelValue":e[58]||(e[58]=i=>Z.express_company=i),class:"w-full",placeholder:"选择承运商"},{default:l(()=>[a(_,{label:"自动识别",value:"auto"}),a(_,{label:"顺丰速运",value:"sf"}),a(_,{label:"京东快递",value:"jd"}),a(_,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),a(d,{label:"快递单号"},{default:l(()=>[a(g,{modelValue:Z.tracking_number,"onUpdate:modelValue":e[59]||(e[59]=i=>Z.tracking_number=i),maxlength:"80",placeholder:"请输入快递单号",clearable:"",autofocus:""},null,8,["modelValue"])]),_:1}),e[189]||(e[189]=n("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[fe,At.value]])]),_:1},8,["modelValue"]),a(me,{modelValue:xe.value,"onUpdate:modelValue":e[65]||(e[65]=i=>xe.value=i),title:"确认发货",width:"440px","destroy-on-close":"","close-on-click-modal":!1},{footer:l(()=>[a(k,{onClick:e[64]||(e[64]=i=>xe.value=!1)},{default:l(()=>[...e[193]||(e[193]=[c("取消",-1)])]),_:1}),a(k,{type:"primary",loading:Rt.value,onClick:os},{default:l(()=>[...e[194]||(e[194]=[c(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(Q,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),E((o(),y(ee,{"label-width":"90px",class:"pr-2",onSubmit:wa(os,["prevent"])},{default:l(()=>[a(d,{label:"发货方式"},{default:l(()=>[a(T,{type:se(W.ship_mode)==="direct"?"warning":"success",effect:"plain",size:"default"},{default:l(()=>[c(u(Vl.value),1)]),_:1},8,["type"]),e[192]||(e[192]=n("span",{class:"text-xs text-gray-400 ml-2"},"请在订单详情顶部「发货类型」中设置,此处不可修改",-1))]),_:1}),a(d,{label:"承运商"},{default:l(()=>[a(C,{modelValue:W.express_company,"onUpdate:modelValue":e[62]||(e[62]=i=>W.express_company=i),class:"w-full"},{default:l(()=>[a(_,{label:"自动识别",value:"auto"}),a(_,{label:"顺丰速运",value:"sf"}),a(_,{label:"京东快递",value:"jd"}),a(_,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),a(d,{label:"快递单号"},{default:l(()=>[a(g,{modelValue:W.tracking_number,"onUpdate:modelValue":e[63]||(e[63]=i=>W.tracking_number=i),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[fe,Rt.value]])]),_:1},8,["modelValue"]),a(me,{modelValue:et.value,"onUpdate:modelValue":e[68]||(e[68]=i=>et.value=i),title:"完成订单",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:gn},{footer:l(()=>[a(k,{onClick:e[67]||(e[67]=i=>et.value=!1)},{default:l(()=>[...e[198]||(e[198]=[c("取消",-1)])]),_:1}),a(k,{type:"primary",loading:ya.value,onClick:bn},{default:l(()=>[...e[199]||(e[199]=[c(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[E((o(),m("div",Qd,[We.value.show?(o(),y(Q,{key:0,type:"error",effect:"dark",closable:!1,"show-icon":"",class:"mb-3 !items-start ring-2 ring-red-600/70",title:"物流异常:轨迹含拒收/退回等,请先核实处理再结案"},{default:l(()=>[n("div",Yd,[We.value.keywords.length?(o(),m("div",Jd,[e[195]||(e[195]=n("span",{class:"text-red-100/90"},"命中:",-1)),(o(!0),m(A,null,z(We.value.keywords,i=>(o(),y(T,{key:i,type:"danger",effect:"plain",size:"small",class:"!border-white/35 !text-white"},{default:l(()=>[c(u(i),1)]),_:2},1024))),128))])):v("",!0),We.value.lines.length?(o(),m("ul",Xd,[(o(!0),m(A,null,z(We.value.lines,(i,b)=>(o(),m("li",{key:b},u(i),1))),128))])):v("",!0),e[196]||(e[196]=n("div",{class:"text-red-100/85 border-t border-white/15 pt-1.5"}," 确认已协调拒收/退回后续(重发、退款、改址等)后再完成订单。 ",-1))])]),_:1})):v("",!0),e[197]||(e[197]=n("p",{class:"text-sm text-gray-600 mb-3"},"请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总。",-1)),a(C,{modelValue:Et.value,"onUpdate:modelValue":e[66]||(e[66]=i=>Et.value=i),class:"w-full",placeholder:"请选择"},{default:l(()=>[(o(),m(A,null,z(vn,i=>a(_,{key:i.value,label:i.label,value:i.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])])),[[fe,Vt.value]])]),_:1},8,["modelValue"]),a(me,{modelValue:at.value,"onUpdate:modelValue":e[76]||(e[76]=i=>at.value=i),title:"补齐支付单",width:"600px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[77]||(e[77]=i=>{var b;return(b=$t.value)==null?void 0:b.clearValidate()})},{footer:l(()=>[a(k,{onClick:e[75]||(e[75]=i=>at.value=!1)},{default:l(()=>[...e[208]||(e[208]=[c("取消",-1)])]),_:1}),a(k,{type:"primary",loading:Dt.value,onClick:wn},{default:l(()=>[c(u(D.add_mode==="completion_only"?"提交申请":"确认新增"),1)]),_:1},8,["loading"])]),default:l(()=>[a(Q,{title:xn.value,type:"info",closable:!1,"show-icon":"",class:"mb-4"},null,8,["title"]),E((o(),y(ee,{ref_key:"addPayOrderFormRef",ref:$t,model:D,rules:kn.value,"label-width":"90px",class:"pr-2"},{default:l(()=>[a(d,{label:"添加方式",prop:"add_mode"},{default:l(()=>[a(qt,{modelValue:D.add_mode,"onUpdate:modelValue":e[69]||(e[69]=i=>D.add_mode=i)},{default:l(()=>[a(it,{value:"create"},{default:l(()=>[...e[200]||(e[200]=[c("手动创建",-1)])]),_:1}),a(it,{value:"link"},{default:l(()=>[...e[201]||(e[201]=[c("关联已有",-1)])]),_:1}),a(it,{value:"completion_only"},{default:l(()=>[...e[202]||(e[202]=[c("直接完单申请",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),D.add_mode==="create"?(o(),m(A,{key:0},[a(d,{label:"费用类别",prop:"order_type"},{default:l(()=>[a(C,{modelValue:D.order_type,"onUpdate:modelValue":e[70]||(e[70]=i=>D.order_type=i),class:"w-full"},{default:l(()=>[a(_,{label:"挂号费",value:1}),a(_,{label:"问诊费",value:2}),a(_,{label:"药品费用",value:3}),a(_,{label:"首付费用",value:4}),a(_,{label:"尾款费用",value:5}),a(_,{label:"其他费用",value:6}),a(_,{label:"全部费用",value:7}),a(_,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),a(d,{label:"支付金额",prop:"pay_amount"},{default:l(()=>[a(Le,{modelValue:D.pay_amount,"onUpdate:modelValue":e[71]||(e[71]=i=>D.pay_amount=i),min:0,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元,可为 0)"},null,8,["modelValue"])]),_:1}),a(d,{label:"备注",prop:"pay_remark"},{default:l(()=>[a(g,{modelValue:D.pay_remark,"onUpdate:modelValue":e[72]||(e[72]=i=>D.pay_remark=i),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):D.add_mode==="completion_only"?(o(),y(Q,{key:1,type:"warning",closable:!1,"show-icon":"",class:"!mb-0"},{title:l(()=>[...e[203]||(e[203]=[c(" 不新增或关联支付单,仅向审核人员提交「完成订单」申请;提交后支付审核将变为待审核,审核通过后将自动结案。 ",-1)])]),_:1})):(o(),y(d,{key:2,label:"选择支付单",prop:"link_pay_order_id"},{default:l(()=>[a(C,{modelValue:D.link_pay_order_ids,"onUpdate:modelValue":e[73]||(e[73]=i=>D.link_pay_order_ids=i),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:ba.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:l(()=>[(o(!0),m(A,null,z(Ut.value,i=>(o(),y(_,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${ca(i.order_type)}`,value:i.id},{default:l(()=>[n("div",Zd,[n("span",ep,u(i.order_no),1),n("span",tp,"¥"+u(i.amount),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[204]||(e[204]=n("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),D.add_mode!=="completion_only"?(o(),y(d,{key:3,label:"完单申请"},{default:l(()=>[a(qt,{modelValue:D.completion_request,"onUpdate:modelValue":e[74]||(e[74]=i=>D.completion_request=i)},{default:l(()=>[a(it,{value:0},{default:l(()=>[...e[205]||(e[205]=[c("不申请",-1)])]),_:1}),a(it,{value:1},{default:l(()=>[...e[206]||(e[206]=[c("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[207]||(e[207]=n("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})):v("",!0)]),_:1},8,["model","rules"])),[[fe,Dt.value]])]),_:1},8,["modelValue"]),a(me,{modelValue:Ke.value,"onUpdate:modelValue":e[81]||(e[81]=i=>Ke.value=i),title:"修改处方患者信息",width:"440px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:Hl},{footer:l(()=>[a(k,{onClick:e[80]||(e[80]=i=>Ke.value=!1)},{default:l(()=>[...e[209]||(e[209]=[c("取消",-1)])]),_:1}),a(k,{type:"primary",loading:ia.value,onClick:Kl},{default:l(()=>[...e[210]||(e[210]=[c(" 保存 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(ee,{ref_key:"patchRxPatientFormRef",ref:ra,model:le,rules:Ml,"label-width":"96px"},{default:l(()=>[a(d,{label:"患者姓名",prop:"patient_name"},{default:l(()=>[a(g,{modelValue:le.patient_name,"onUpdate:modelValue":e[78]||(e[78]=i=>le.patient_name=i),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),a(d,{label:"手机",prop:"phone"},{default:l(()=>[a(g,{modelValue:le.phone,"onUpdate:modelValue":e[79]||(e[79]=i=>le.phone=i),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),a(ha,{modelValue:zt.value,"onUpdate:modelValue":e[83]||(e[83]=i=>zt.value=i),size:"920px","close-on-click-modal":!1},{header:l(()=>[n("div",ap,[e[213]||(e[213]=n("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),w.value&&!Ft.value?(o(),m("div",sp,[a(k,{size:"small",loading:Ue.value,onClick:In},{default:l(()=>[...e[211]||(e[211]=[c(" 下载图片 ",-1)])]),_:1},8,["loading"]),a(k,{size:"small",loading:Ue.value,onClick:qn},{default:l(()=>[...e[212]||(e[212]=[c(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:l(()=>{var i;return[E((o(),m("div",lp,[w.value?(o(),y(Hn,{key:0,modelValue:pe.value,"onUpdate:modelValue":e[82]||(e[82]=b=>pe.value=b),class:"mx-4 mt-2",style:{"margin-bottom":"0px","z-index":"1",position:"relative"}},{default:l(()=>[a(Es,{label:"药房联",name:"internal"}),a(Es,{label:"处方联",name:"user"})]),_:1},8,["modelValue"])):v("",!0),w.value?(o(),m("div",np,[Number(w.value.void_status)===1?(o(),y(T,{key:0,type:"danger",size:"small"},{default:l(()=>[...e[214]||(e[214]=[c("已作废",-1)])]),_:1})):Number(w.value.business_prescription_audit_rejected)===1?(o(),y(T,{key:1,type:"danger",size:"small"},{default:l(()=>[...e[215]||(e[215]=[c("业务订单已驳回",-1)])]),_:1})):Number(w.value.audit_status)===1?(o(),y(T,{key:2,type:"success",size:"small"},{default:l(()=>[...e[216]||(e[216]=[c("已通过",-1)])]),_:1})):Number(w.value.audit_status)===0?(o(),y(T,{key:3,type:"warning",size:"small"},{default:l(()=>[...e[217]||(e[217]=[c("待审核",-1)])]),_:1})):(o(),y(T,{key:4,type:"danger",size:"small"},{default:l(()=>[...e[218]||(e[218]=[c("已驳回",-1)])]),_:1}))])):v("",!0),w.value&&Number(w.value.void_status)===1?(o(),m("div",ip," 作废人:"+u(w.value.void_by_name||"—")+",作废时间:"+u(Un(w.value.void_time)),1)):w.value&&Number(w.value.business_prescription_audit_rejected)===1?(o(),m("div",rp,[e[219]||(e[219]=n("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),w.value.business_prescription_audit_remark?(o(),m("div",op," 驳回意见:"+u(w.value.business_prescription_audit_remark),1)):v("",!0)])):w.value&&Number(w.value.audit_status)===2?(o(),m("div",up,[e[220]||(e[220]=n("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),w.value.audit_remark?(o(),m("div",dp,"驳回意见:"+u(w.value.audit_remark),1)):v("",!0)])):v("",!0),w.value?(o(),m("div",{key:5,ref_key:"prescriptionSlipPrintRef",ref:ps,class:"rx-paper"},[n("div",pp,u(pe.value==="internal"?"药房联":"处方单"),1),n("div",cp,[e[225]||(e[225]=n("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),n("div",_p,[n("div",mp,[e[221]||(e[221]=n("span",{class:"rx-meta-label"},"日期",-1)),n("span",fp,u(Tn.value),1)]),n("div",vp,[e[222]||(e[222]=n("span",{class:"rx-meta-label"},"处方编号",-1)),n("span",gp,u(On.value),1)]),n("div",yp,[e[223]||(e[223]=n("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),n("span",bp,u(An.value),1)]),fs.value?(o(),m("div",xp,[e[224]||(e[224]=n("span",{class:"rx-meta-label"},"业务单号",-1)),n("span",kp,u(fs.value),1)])):v("",!0)])]),n("div",hp,[n("div",wp,[n("div",Sp,[e[226]||(e[226]=n("span",{class:"rx-key"},"姓名",-1)),n("span",Np,u(w.value.patient_name||"—"),1)]),n("div",Vp,[e[227]||(e[227]=n("span",{class:"rx-key"},"性别",-1)),n("span",Cp,u(zn(w.value.gender)),1)]),n("div",Pp,[e[228]||(e[228]=n("span",{class:"rx-key"},"年龄",-1)),n("span",Tp,u(Fn(w.value.age)),1)]),n("div",Op,[e[229]||(e[229]=n("span",{class:"rx-key"},"电话",-1)),n("span",Ap,u(w.value.phone||w.value.recipient_phone||"—"),1)])]),n("div",Rp,[n("div",Ep,[e[230]||(e[230]=n("span",{class:"rx-key"},"收件信息",-1)),n("span",Dp,u(Rn.value),1)])]),n("div",$p,[n("div",Up,[e[231]||(e[231]=n("span",{class:"rx-key"},"临床诊断",-1)),n("span",zp,u(w.value.clinical_diagnosis||"—"),1)])])]),n("div",Fp,[n("div",jp,u(pe.value==="internal"?"药房联":"处方联"),1),n("div",Lp,[e[234]||(e[234]=n("div",{class:"rx-rp-label"},"Rp.",-1)),n("div",Ip,[n("div",qp,[e[232]||(e[232]=n("span",null,"用药 (单剂)",-1)),n("span",null,u(pe.value==="user"?"用量":"总量"),1)]),n("div",Mp,[e[233]||(e[233]=n("span",null,"用药 (单剂)",-1)),n("span",null,u(pe.value==="user"?"用量":"总量"),1)])])]),n("div",Bp,[pe.value==="internal"?(o(),m(A,{key:0},[ms.value.length?(o(),m(A,{key:0},[e[235]||(e[235]=n("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),m(A,null,z(ms.value,(b,N)=>(o(),m("div",{key:"main-"+N,class:"rx-herb-cell"},[n("span",Hp,u(b.name)+" ("+u(b.dosage)+"克)",1),n("span",Gp,u(gs(b.dosage))+"克",1)]))),128))],64)):v("",!0),xa.value.length?(o(),m(A,{key:1},[e[236]||(e[236]=n("div",{class:"rx-herb-section-label rx-herb-section-label--aux"},"辅方",-1)),(o(!0),m(A,null,z(xa.value,(b,N)=>(o(),m("div",{key:"aux-"+N,class:"rx-herb-cell"},[n("span",Wp,u(b.name)+" ("+u(b.dosage)+"克)",1),n("span",Kp,u(gs(b.dosage))+"克",1)]))),128))],64)):v("",!0)],64)):(o(!0),m(A,{key:1},z(ze.value,(b,N)=>(o(),m("div",{key:N,class:"rx-herb-cell"},[n("span",Qp,u(b.name),1),n("span",Yp,u(b.dosage)+"克",1)]))),128))])]),n("div",Jp,[pe.value==="internal"?(o(),m("p",Xp,"主方服法:"+u(ys.value),1)):(o(),m("p",Zp,"服法:"+u(ys.value),1)),pe.value==="internal"&&bs.value?(o(),m("p",ec,"辅方服法:"+u(bs.value),1)):v("",!0),xs.value?(o(),m("p",tc,"医嘱:"+u(xs.value),1)):v("",!0),ks.value?(o(),m("p",ac,"备注:"+u(ks.value),1)):v("",!0),hs.value?(o(),m("p",sc," 药房备注:"+u(hs.value),1)):v("",!0),ws.value&&((i=w.value)==null?void 0:i.prescription_type)!=="饮片"?(o(),m("p",lc," 出丸:"+u(ws.value),1)):v("",!0)]),n("div",nc,[n("div",ic,[n("div",rc,[e[237]||(e[237]=n("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),n("div",oc,[w.value.doctor_signature?(o(),m("img",{key:0,src:w.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,uc)):v("",!0)])]),n("div",dc,[e[238]||(e[238]=n("span",{class:"rx-bot-meta-key"},"类型:",-1)),n("span",pc,u(Dn.value),1)]),n("div",cc,[e[239]||(e[239]=n("span",{class:"rx-bot-meta-key"},"天数:",-1)),n("span",_c,u(p.value.medication_days!=null&&String(p.value.medication_days).trim()!==""?p.value.medication_days+" 天":"—"),1)]),n("div",mc,[e[240]||(e[240]=n("span",{class:"rx-bot-meta-key"},"剂量:",-1)),n("span",fc,u(En.value)+"克",1)])])]),e[241]||(e[241]=n("div",{class:"rx-bot-row rx-hospital-row"},[n("div",{class:"rx-hospital-line"},"成都双流甄养堂互联网医院有限公司 联系方式:4001667339"),n("div",{class:"rx-hospital-line"},"地址:四川省成都市双流区黄甲街道黄龙大道二段280号")],-1))],512)):v("",!0),w.value&&(w.value.audit_by_name||w.value.audit_remark)?(o(),m("div",vc,[w.value.audit_by_name?(o(),m("div",gc,[c(" 审核人:"+u(w.value.audit_by_name)+" ",1),w.value.audit_time?(o(),m("span",yc,u(Ss(w.value.audit_time)),1)):v("",!0)])):v("",!0),w.value.audit_remark?(o(),m("div",bc,"审核意见:"+u(w.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[fe,Ft.value]])]}),_:1},8,["modelValue"]),a(ha,{modelValue:Ot.value,"onUpdate:modelValue":e[84]||(e[84]=i=>Ot.value=i),title:"甘草预下单测试结果",size:"800px","destroy-on-close":""},{default:l(()=>{var i,b;return[L.value?(o(),m("div",xc,[a(s,{shadow:"never",class:"mb-4"},{header:l(()=>[n("div",kc,[e[243]||(e[243]=n("span",{class:"font-semibold"},"价格信息",-1)),a(T,{type:"success"},{default:l(()=>[...e[242]||(e[242]=[c("预下单成功",-1)])]),_:1})])]),default:l(()=>[a(nt,{column:2,border:""},{default:l(()=>[a(P,{label:"药材成本"},{default:l(()=>{var N;return[n("span",hc,"¥"+u(((N=L.value.fee)==null?void 0:N.m_cost)||"0.00"),1)]}),_:1}),a(P,{label:"制作费"},{default:l(()=>{var N;return[n("span",wc,"¥"+u((((N=L.value.fee)==null?void 0:N.proces_cost)||0).toFixed(2)),1)]}),_:1}),a(P,{label:"物流费"},{default:l(()=>{var N;return[n("span",Sc,"¥"+u((((N=L.value.fee)==null?void 0:N.lis_cost)||0).toFixed(2)),1)]}),_:1}),a(P,{label:"总计"},{default:l(()=>[n("div",null,[n("span",Nc," ¥"+u(va(L.value.fee)),1),E((o(),m("div",Vc,[e[244]||(e[244]=c(" 占订单总金额: ",-1)),n("span",Cc,u(un(L.value.fee,L.value.amount)),1),L.value.amount>0?(o(),m("span",Pc,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[U,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),a(s,{shadow:"never",class:"mb-4"},{header:l(()=>[...e[245]||(e[245]=[n("span",{class:"font-semibold"},"配送信息",-1)])]),default:l(()=>[a(nt,{column:2,border:""},{default:l(()=>[a(P,{label:"调配中心"},{default:l(()=>{var N;return[c(u(((N=L.value.result)==null?void 0:N.ds_name)||"—"),1)]}),_:1}),a(P,{label:"调配中心ID"},{default:l(()=>{var N;return[c(u(((N=L.value.result)==null?void 0:N.ds_id)||"—"),1)]}),_:1}),a(P,{label:"服用天数范围",span:2},{default:l(()=>{var N,$,Se,rt,ot,ce;return[c(u((($=(N=L.value.result)==null?void 0:N.take_days)==null?void 0:$.min)||"—")+" - "+u(((rt=(Se=L.value.result)==null?void 0:Se.take_days)==null?void 0:rt.max)||"—")+" 天 (默认: "+u(((ce=(ot=L.value.result)==null?void 0:ot.take_days)==null?void 0:ce.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(b=(i=L.value.result)==null?void 0:i.rule_check)!=null&&b.length?(o(),y(s,{key:0,shadow:"never",class:"mb-4"},{header:l(()=>[...e[246]||(e[246]=[n("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:l(()=>[n("div",Tc,u(L.value.result.rule_check.map(N=>N.msg).join(" ")),1)]),_:1})):v("",!0),a(s,{shadow:"never"},{header:l(()=>{var N,$;return[n("div",Oc,[e[247]||(e[247]=n("span",{class:"font-semibold"},"药材明细",-1)),n("span",Ac,"共 "+u((($=(N=L.value.result)==null?void 0:N.m_list)==null?void 0:$.length)||0)+" 味药",1)])]}),default:l(()=>{var N;return[a(he,{data:((N=L.value.result)==null?void 0:N.m_list)||[],border:"",stripe:"","max-height":"400"},{default:l(()=>[a(V,{type:"index",label:"#",width:"50",align:"center"}),a(V,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),a(V,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:l(({row:$})=>[c(u($.quantity)+u($.unit),1)]),_:1}),a(V,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:l(({row:$})=>[c(" ¥"+u(Number($.price).toFixed(4)),1)]),_:1}),a(V,{label:"小计",width:"100",align:"right"},{default:l(({row:$})=>[n("span",Rc," ¥"+u((Number($.price)*Number($.quantity)).toFixed(2)),1)]),_:1}),a(V,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:l(({row:$})=>[a(T,{type:$.is_available===1?"success":"danger",size:"small"},{default:l(()=>[c(u($.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),a(V,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),a(s,{shadow:"never",class:"mt-4"},{header:l(()=>[...e[248]||(e[248]=[n("span",{class:"font-semibold"},"订单信息",-1)])]),default:l(()=>[a(nt,{column:2,border:""},{default:l(()=>[a(P,{label:"订单号",span:2},{default:l(()=>[c(u(L.value.order_no||"—"),1)]),_:1}),a(P,{label:"剂数"},{default:l(()=>[n("span",Ec,u(L.value.dose_count||"—")+"剂",1)]),_:1}),a(P,{label:"单剂量"},{default:l(()=>{var N;return[n("span",Dc,u(dn((N=L.value.result)==null?void 0:N.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),a(F(js),{ref_key:"diagnosisViewRef",ref:Ca},null,512)])}}}),T_=mr(Uc,[["__scopeId","data-v-b3ef55a9"]]);export{T_ as default}; diff --git a/server/public/admin/assets/order_list_h5-C8MQ7JcZ.js b/server/public/admin/assets/order_list_h5-Cw3qXm8_.js similarity index 98% rename from server/public/admin/assets/order_list_h5-C8MQ7JcZ.js rename to server/public/admin/assets/order_list_h5-Cw3qXm8_.js index 5821010f..a308781b 100644 --- a/server/public/admin/assets/order_list_h5-C8MQ7JcZ.js +++ b/server/public/admin/assets/order_list_h5-Cw3qXm8_.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-CsfWrQHN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DCW3HTOw.js","assets/index-Nt5zMHcc.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-DkIPMPyD.js","assets/DailyMatrix-j3uF_86P.js","assets/picker-cSgp8cEl.js","assets/index-BQY2-_X1.js","assets/index-B3imPWFk.css","assets/index--GZeyamQ.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-D18gAY1e.js","assets/index-D0f1Mn00.css","assets/index-DMnmuOhU.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-dC1LMm1W.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-BFQuq0si.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bo5qAgx7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DvHFqqux.js","assets/RecordingPlaybackBlock-39655xEj.js","assets/RecordingVideoPlayer-CRxrgEoO.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DpRXSwhQ.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-B1IM06sV.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CHr1S2Xh.js","assets/doctor-B7qEhSpt.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BrIUegAJ.js","assets/patient-BKtZKzsB.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-MM0hhqMY.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-5vSbbrqK.js","assets/index-afeGV-gc.js","assets/medicine-D4btWglq.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); -import{_ as rn,E as on}from"./jspdf-BsthCvR5.js";import{J as un,d as dn,L as pn,T as cn,D as _n,B as mn,C as fn,P as vn,Q as gn,W as yn,i as bn,R as xn,p as kn,n as hn,o as wn,a9 as Sn,K as Vn,a6 as Nn,a7 as Cn,a4 as Pn,a5 as Tn,aa as An,ab as On,M as Rn,N as En,_ as Dn,ac as $n,ad as zn,e as Un,h as Fn,V as jn,r as In,a8 as Ln,k as qn,j as Mn,g as Bn,G as Hn,I as Gn,a as Xe}from"./element-plus-DFTWCWyi.js";import{_ as Wn}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as Ze,q as At,s as Ot}from"./@vue/runtime-dom-DDAG46FW.js";import{k as Kn,G as Yn,R as Qn,V as Jn,N as da,e as us,i as Xn,X as Zn,L as ei,l as ti}from"./@element-plus/icons-vue-HOEUG8sr.js";import{_ as ai}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{g as si,a as li,l as ni,t as ii,v as ri,w as oi,u as Z,x as ds,y as ui,z as di,A as pi,B as ps,C as ci,D as _i,E as mi,G as fi,H as vi,I as gi,J as yi,c as bi,b as pa,s as xi}from"./tcm-DCW3HTOw.js";import ki from"./html2canvas-QH1iLAAe.js";import{u as hi,i as T,m as wi,_ as Si}from"./index-Nt5zMHcc.js";import{d as Vi}from"./department-CSUh_x-a.js";import{u as Ni}from"./usePaging-VsbTxSU0.js";import{f as cs,w as Ci,b as Pi,as as Ti,ak as o,I as m,J as a,a as s,aN as l,F as D,ap as B,H as v,aP as A,O as p,G as g,P as Ai,A as S,n as Rt}from"./@vue/runtime-core-C6bnekPw.js";import{o as I,Q as r}from"./@vue/shared-mAAVTE9n.js";import{y as R,a as Oi,n as k,r as be}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ri={class:"prescription-order-page prescription-order-list prescription-order-h5 po-h5-app"},Ei={class:"flex flex-col gap-3"},Di={key:0,class:"flex items-center gap-2 flex-wrap"},$i=["onClick"],zi={class:"font-medium"},Ui={class:"flex items-center gap-2 flex-wrap"},Fi=["onClick"],ji={class:"font-medium"},Ii={class:"flex items-center gap-2 flex-wrap"},Li=["onClick"],qi={class:"font-medium"},Mi={class:"flex items-center gap-2 flex-wrap"},Bi=["onClick"],Hi={class:"font-medium"},Gi={class:"flex items-center gap-2 flex-wrap"},Wi=["onClick"],Ki={class:"font-medium"},Yi={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},Qi={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Ji={class:"relative flex items-start justify-between gap-3"},Xi={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},Zi={class:"mt-2 space-y-1.5 min-w-0"},er={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},tr={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},ar={class:"text-slate-400"},sr={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},lr={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},nr={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},ir={class:"relative flex items-start justify-between gap-3"},rr={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},or={class:"mt-2 space-y-1.5 min-w-0"},ur={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},dr={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},pr={class:"text-slate-400"},cr={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},_r={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},mr={class:"po-filter-toggle__label"},fr={class:"po-h5-list-head"},vr={class:"po-table-toolbar"},gr={class:"po-table-toolbar__title-wrap"},yr={class:"po-table-hint text-gray-400"},br={class:"po-focus-board"},xr={class:"po-focus-board__value"},kr={class:"po-focus-board__value"},hr={class:"po-focus-board__value"},wr={class:"po-focus-board__value"},Sr={class:"po-card-list"},Vr=["onClick"],Nr={class:"po-card__head"},Cr={class:"po-card__order-no"},Pr={class:"po-card__order-no-main"},Tr={class:"po-card__tags"},Ar={class:"po-card__id"},Or={key:0,class:"po-card__alert"},Rr={class:"po-card__row"},Er={class:"po-card__field"},Dr={class:"po-card__value"},$r={class:"po-card__field po-card__field--right"},zr={class:"po-card__value po-card__amount"},Ur={class:"po-card__row"},Fr={class:"po-card__field"},jr={class:"po-card__field po-card__field--right"},Ir={class:"po-card__value"},Lr={class:"po-card__row"},qr={class:"po-card__field"},Mr={class:"po-card__value"},Br={class:"po-card__field po-card__field--right"},Hr={class:"po-card__value"},Gr={key:1,class:"po-card__row"},Wr={class:"po-card__field"},Kr={class:"po-card__value text-orange-600 font-semibold"},Yr={class:"po-card__field po-card__field--right"},Qr={class:"po-card__value"},Jr={key:0,class:"text-primary"},Xr={key:1},Zr={key:2,class:"po-card__row"},eo={class:"po-card__field"},to={class:"po-card__value"},ao={key:0,class:"text-primary"},so={key:1},lo={class:"po-card__field po-card__field--right"},no={class:"po-card__value po-card__time"},io={class:"po-card__tags-row"},ro={class:"po-card__meta"},oo={key:0},uo={key:1},po={key:2,class:"po-card__meta-time"},co={class:"flex justify-end mt-4"},_o={class:"po-detail-drawer-head flex w-full min-w-0 flex-col gap-2"},mo={class:"po-detail-drawer-head-main flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1"},fo={key:0,class:"po-detail-drawer-actions flex flex-wrap items-center gap-2"},vo={key:1,class:"po-detail-body px-6 pb-6 h-full overflow-y-auto"},go={class:"min-w-0 break-words text-sm leading-relaxed"},yo={class:"font-mono font-semibold text-red-700"},bo={class:"font-mono font-semibold text-red-700"},xo={class:"po-workflow-steps-wrap bg-gray-50/80 border border-gray-100 rounded-lg p-5 mb-5 shadow-sm"},ko={key:0,class:"text-red-500 font-medium"},ho={key:1},wo={key:2,class:"text-green-600"},So={key:3,class:"text-gray-400"},Vo={key:0,class:"text-red-500 font-medium"},No={key:1},Co={key:2,class:"text-green-600"},Po={key:3,class:"text-gray-400"},To={key:0,class:"text-amber-600 font-medium"},Ao={key:1,class:"text-primary font-medium"},Oo={key:2},Ro={key:3,class:"text-green-600"},Eo={key:4,class:"text-red-500 font-medium"},Do={class:"flex items-center justify-between mb-1"},$o={class:"stat-value text-red-500 font-bold text-xl"},zo={class:"stat-value text-green-600 font-bold text-xl"},Uo={class:"stat-value text-primary font-bold text-xl"},Fo={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},jo={key:0,class:"audit-stamp stamp-pass"},Io={key:1,class:"audit-stamp stamp-reject"},Lo={class:"po-panel-rx-header flex w-full min-w-0 flex-col gap-2"},qo={class:"flex w-full min-w-0 flex-wrap items-center justify-between gap-x-2 gap-y-1"},Mo={class:"shrink-0 text-xs text-gray-400 tabular-nums"},Bo={key:0,class:"min-w-0 text-xs leading-snug text-gray-500"},Ho={class:"text-primary font-medium"},Go={class:"flex w-full min-w-0 flex-wrap items-center gap-x-3 gap-y-1"},Wo={class:"text-red-500 font-medium"},Ko={key:1,class:"ml-2 text-gray-500"},Yo={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},Qo={key:0,class:"mt-4"},Jo={class:"flex flex-col gap-4 h-full"},Xo={class:"text-red-500"},Zo={key:0,class:"audit-stamp stamp-pass"},eu={key:1,class:"audit-stamp stamp-reject"},tu={class:"flex items-center justify-between"},au={class:"flex items-center gap-3"},su={key:0,class:"text-xs text-gray-500"},lu={class:"text-primary font-medium"},nu={class:"text-red-500"},iu={class:"po-biz-diagnosis-id flex min-w-0 flex-col gap-3 rounded-2xl border border-slate-200/90 bg-gradient-to-br from-slate-50 to-white px-4 py-3.5 shadow-sm sm:flex-row sm:items-center sm:justify-between"},ru={class:"flex min-w-0 flex-col gap-1"},ou={class:"font-mono text-[1.125rem] font-semibold leading-tight tracking-tight text-slate-900 tabular-nums"},uu={class:"flex flex-wrap items-center gap-x-4 gap-y-1 text-[13px]"},du={class:"font-mono text-primary"},pu={class:"text-gray-500"},cu={key:0},_u={key:1,class:"text-gray-500"},mu={key:0,class:"text-xs text-gray-500 mt-1"},fu={key:1,class:"text-gray-400"},vu={class:"po-audit-remark"},gu={class:"po-audit-remark"},yu={class:"po-logistics-toolbar flex flex-wrap items-center gap-2 mb-4"},bu={class:"po-logistics-toolbar__links flex items-center gap-3 w-full pt-1"},xu={key:1,class:"py-6 text-center text-sm text-gray-500"},ku={key:2,class:"logistics-content bg-gray-50/50 p-4 rounded-md"},hu={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},wu={class:"text-gray-800"},Su={key:1,class:"text-xs text-gray-400 ml-1"},Vu={key:2,class:"text-xs text-gray-400"},Nu={class:"flex items-center gap-2 mb-1"},Cu={class:"font-medium text-[13px]"},Pu={class:"text-sm text-gray-700 font-medium"},Tu={class:"create-order-dialog__inner"},Au={key:0,class:"create-order-rx-card"},Ou={class:"create-order-rx-card__head"},Ru={class:"create-order-rx-card__meta"},Eu={class:"create-order-rx-card__id"},Du={key:0,class:"create-order-rx-card__sn"},$u={class:"create-order-rx-card__patient"},zu={class:"create-order-rx-card__herbs"},Uu={class:"create-order-step-lead"},Fu={class:"create-order-step-panel"},ju={class:"create-order-step-panel"},Iu={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},Lu={class:"text-xs text-gray-400"},qu={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},Mu={key:0,class:"space-y-1.5"},Bu={class:"text-gray-800 break-all"},Hu={key:1,class:"text-gray-400"},Gu={class:"flex items-center gap-1 w-full"},Wu={class:"flex gap-2 w-full"},Ku={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},Yu={class:"flex items-center justify-between"},Qu={class:"font-medium text-[13px] text-gray-800"},Ju={class:"text-orange-500 font-medium ml-4"},Xu={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},Zu={class:"truncate pr-2"},ed={class:"shrink-0"},td={class:"create-order-pay-hint text-gray-500"},ad={class:"text-amber-600 font-medium"},sd={class:"create-order-step-panel"},ld={class:"create-order-deposit-bar__cell"},nd={class:"create-order-deposit-bar__sub"},id={class:"create-order-deposit-bar__cell"},rd={class:"create-order-deposit-bar__sub"},od={class:"create-order-footer"},ud={class:"create-order-footer__hint"},dd={class:"create-order-footer__step"},pd={key:0,class:"create-order-footer__warn"},cd={class:"create-order-footer__actions"},_d={class:"text-sm"},md={class:"text-gray-600"},fd={class:"text-gray-600"},vd={class:"flex items-center justify-between"},gd={class:"text-sm"},yd={class:"text-orange-500 font-medium ml-4"},bd={class:"flex items-center justify-between w-full pr-2 gap-3"},xd={key:0,class:"flex items-center gap-2 shrink-0"},kd={class:"rx-wrap"},hd={key:0,class:"rx-statusbar"},wd={key:1,class:"rx-status rx-status-danger"},Sd={key:2,class:"rx-status rx-status-danger"},Vd={key:0,class:"mt-1"},Nd={key:3,class:"rx-status rx-status-danger"},Cd={key:0,class:"mt-1"},Pd={class:"rx-notice"},Td={class:"rx-notice-meta"},Ad={class:"rx-meta-item"},Od={class:"rx-meta-value"},Rd={class:"rx-meta-item"},Ed={class:"rx-meta-value"},Dd={class:"rx-meta-item"},$d={class:"rx-meta-value"},zd={key:0,class:"rx-meta-item"},Ud={class:"rx-meta-value"},Fd={class:"rx-info"},jd={class:"rx-info-row"},Id={class:"rx-info-cell"},Ld={class:"rx-val"},qd={class:"rx-info-cell"},Md={class:"rx-val"},Bd={class:"rx-info-cell"},Hd={class:"rx-val"},Gd={class:"rx-info-cell"},Wd={class:"rx-val"},Kd={class:"rx-info-row rx-info-row-full"},Yd={class:"rx-info-cell"},Qd={class:"rx-val"},Jd={class:"rx-info-row rx-info-row-full"},Xd={class:"rx-info-cell"},Zd={class:"rx-val"},ep={class:"rx-rp"},tp={class:"rx-herbs"},ap={class:"rx-herb-name"},sp={class:"rx-herb-total"},lp={class:"rx-text"},np={key:0},ip={key:1},rp={key:2,class:"rx-text-warn"},op={key:3,class:"rx-text-warn"},up={class:"rx-bottom"},dp={class:"rx-bot-row rx-bot-row-1"},pp={class:"rx-bot-cell rx-bot-doctor"},cp={class:"rx-bot-doctor-body"},_p=["src"],mp={class:"rx-bot-cell rx-bot-meta"},fp={class:"rx-bot-meta-val"},vp={class:"rx-bot-cell rx-bot-meta"},gp={class:"rx-bot-meta-val"},yp={class:"rx-bot-cell rx-bot-meta"},bp={class:"rx-bot-meta-val"},xp={key:5,class:"rx-audit"},kp={key:0},hp={key:0,class:"ml-2 text-gray-400"},wp={key:1,class:"mt-1"},Sp={key:0,class:"px-4"},Vp={class:"flex items-center justify-between"},Np={class:"text-lg font-semibold text-orange-600"},Cp={class:"text-lg font-semibold text-blue-600"},Pp={class:"text-lg font-semibold text-green-600"},Tp={class:"text-xl font-bold text-red-600"},Ap={class:"text-sm text-gray-500 mt-1.5"},Op={class:"font-medium text-gray-700"},Rp={key:0},Ep={class:"text-sm text-gray-700 leading-relaxed"},Dp={class:"flex items-center justify-between"},$p={class:"text-sm text-gray-500"},zp={class:"font-medium text-orange-600"},Up={class:"text-base font-medium"},Fp={class:"text-base font-medium"},jp=cs({name:"prescriptionOrderListH5"}),Ip=cs({...jp,setup(Lp){const _s=Ai(()=>rn(()=>import("./edit-CsfWrQHN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),Te=hi(),ca=k(null);function ms(){var e,n;const t=Number((e=c.value)==null?void 0:e.diagnosis_id);if(!t){T.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(n=ca.value)==null||n.openViewOnly(t)}const fs=2,vs=[0,3,6],_e=S(()=>{const t=Te.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(n=>Number(n)):[];return e.includes(fs)?e.some(n=>vs.includes(n)):!0}),gs=S(()=>_e.value?"详情/审核":"详情"),ys=[0,3,6],_a=()=>{const t=Te.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(n=>Number(n)):[];return ys.some(n=>e.includes(n))},et=k([]),Ae=k([]),Et=k([]),Oe=k([]),tt=k([]),bs={value:"id",label:"name",children:"children"};function ma(t,e){for(const n of t||[]){if(n==null||typeof n!="object")continue;const u=n;if(Number(u.id)===e)return u;const d=ma(u.children||[],e);if(d)return d}return null}function fa(t){const e=Number(t.id),n=[];Number.isFinite(e)&&e>0&&n.push(e);for(const u of t.children||[])u&&typeof u=="object"&&n.push(...fa(u));return n}function xs(t,e){const n=ma(e,t);return n?fa(n):[t]}async function ks(){try{const[t,e,n]=await Promise.all([si(),li(),Vi()]);Et.value=Array.isArray(t)?t:[],Oe.value=Array.isArray(e)?e:[];const u=Array.isArray(n)?n:[];tt.value=u}catch{Et.value=[],Oe.value=[],tt.value=[]}}const hs=t=>t.map(e=>{var n;return{value:e.province,label:e.province,code:e.code,children:((n=e.citys)==null?void 0:n.map(u=>{var d;return{value:u.city,label:u.city,code:u.code,children:((d=u.areas)==null?void 0:d.map(f=>({value:f.area,label:f.area,code:f.code})))||[]}}))||[]}}),ws=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const n=await e.json();console.log("加载的数据条数:",n==null?void 0:n.length),et.value=hs(n),console.log("regionOptions 已设置,条数:",et.value.length)}catch(t){console.error("加载省市区数据失败:",t),et.value=[]}},Ss=async()=>{try{const t=await wi({type:"server_order"});Ae.value=((t==null?void 0:t.server_order)||[]).filter(e=>e.status!==0),console.log("服务套餐选项已加载:",Ae.value.length)}catch(t){console.error("加载服务套餐选项失败:",t),Ae.value=[]}},Vs=[{label:"全部",value:""},{label:"待双审通过",value:1},{label:"待发货",value:2},{label:"已发货",value:5},{label:"已签收",value:6},{label:"已完成",value:3},{label:"已取消",value:4},{label:"进行中",value:7},{label:"暂不制药",value:8},{label:"拒收",value:9},{label:"退款",value:10},{label:"保留药方",value:11},{label:"制药缓发",value:12}];function Ns(t){ee.value="",b.fulfillment_status=t,G()}const ee=k(""),Cs=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"自营",value:"self"}];function Ps(t){b.supply_mode=t,G()}const Ts=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function As(t){b.express_company=t,G()}const b=be({start_time:"",end_time:"",order_no:"",prescription_id:"",patient_keyword:"",express_keyword:"",express_company:"",doctor_id:"",assistant_id:"",assistant_dept_id:"",fulfillment_status:"",prescription_audit_status:"",payment_slip_audit_status:"",supply_mode:""}),Os=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],Rs=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function Es(t){ee.value="",b.prescription_audit_status=t,G()}function Ds(t){ee.value="",b.payment_slip_audit_status=t,G()}function at(t){if(ee.value===t){ee.value="",b.prescription_audit_status="",b.payment_slip_audit_status="",b.fulfillment_status="",G();return}ee.value=t,b.prescription_audit_status="",b.payment_slip_audit_status="",b.fulfillment_status="",t==="pendingRx"?b.prescription_audit_status=0:t==="pendingPay"?(b.prescription_audit_status=1,b.payment_slip_audit_status=0):t==="pendingShip"?b.fulfillment_status=2:t==="risk"&&(b.payment_slip_audit_status=2),G()}async function $s(t){const e={...t};if(e.prescription_id===""||e.prescription_id===void 0?delete e.prescription_id:e.prescription_id=Number(e.prescription_id),(e.fulfillment_status===""||e.fulfillment_status===void 0)&&delete e.fulfillment_status,(e.prescription_audit_status===""||e.prescription_audit_status===void 0)&&delete e.prescription_audit_status,(e.payment_slip_audit_status===""||e.payment_slip_audit_status===void 0)&&delete e.payment_slip_audit_status,(!e.supply_mode||e.supply_mode==="")&&delete e.supply_mode,e.doctor_id===""||e.doctor_id===void 0||e.doctor_id===null?delete e.doctor_id:e.doctor_id=Number(e.doctor_id),e.assistant_id===""||e.assistant_id===void 0||e.assistant_id===null?delete e.assistant_id:e.assistant_id=Number(e.assistant_id),e.assistant_dept_id===""||e.assistant_dept_id===void 0||e.assistant_dept_id===null?delete e.assistant_dept_id:e.assistant_dept_id=Number(e.assistant_dept_id),e.order_no||delete e.order_no,String(e.patient_keyword||"").trim()||delete e.patient_keyword,String(e.express_keyword||"").trim()||delete e.express_keyword,(!e.express_company||e.express_company==="")&&delete e.express_company,!String(e.start_time||"").trim()||!String(e.end_time||"").trim())delete e.start_time,delete e.end_time;else{const n=String(e.start_time||"").trim(),u=String(e.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(n)&&/^\d{4}-\d{2}-\d{2}$/.test(u)&&(e.start_time=`${n} 00:00:00`,e.end_time=`${u} 23:59:59`)}return ni(e)}const{pager:te,getLists:K,resetPage:G,resetParams:zs}=Ni({fetchFun:$s,params:b}),va=S(()=>{const t=b.assistant_dept_id;if(t===""||t==null)return Oe.value;const e=Number(t);if(!Number.isFinite(e))return Oe.value;const n=new Set(xs(e,tt.value));return Oe.value.filter(u=>{const d=u.dept_ids;return!Array.isArray(d)||d.length===0?!1:d.map(Number).some(f=>n.has(f))})});function Us(){const t=b.assistant_id;if(t!==""&&t!=null){const e=Number(t);va.value.some(u=>Number(u.id)===e)||(b.assistant_id="")}G()}const ne=S(()=>{const t=te.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),n=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),u=E=>{const pe=Number(E);return Number.isFinite(pe)?Math.round(pe*100)/100:0},d=E=>E.toFixed(2),f=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,x=(t==null?void 0:t.stats_linked_pay_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_linked_pay_amount_cancelled)!==void 0,y=u(f?t==null?void 0:t.stats_order_amount_not_cancelled:e),z=f?u(t==null?void 0:t.stats_order_amount_cancelled):0,Q=u(x?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:n),w=x?u(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,F=(t==null?void 0:t.stats_order_amount_performance)!==void 0?u(t==null?void 0:t.stats_order_amount_performance):y,re=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?u(t==null?void 0:t.stats_linked_pay_amount_performance):Q,ve=String((t==null?void 0:t.stats_time_start)??"").trim(),Pt=String((t==null?void 0:t.stats_time_end)??"").trim(),ia=ve&&Pt?`统计时间:${ve} ~ ${Pt}`:"统计时间:—",We=String((t==null?void 0:t.stats_scope)??"restricted");let le="统计口径:与当前列表数据可见范围一致";We==="all"?le="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":We==="assistant"?le="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":We==="own_rx"&&(le="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const Ke=String(b.start_time||"").trim()!==""&&String(b.end_time||"").trim()!==""?"区间":"今日";return{order:u(e),pay:u(n),orderStr:d(u(e)),payStr:d(u(n)),orderNotCancelledStr:d(y),orderCancelledStr:d(z),payNotCancelledStr:d(Q),payCancelledStr:d(w),orderPerformanceStr:d(F),payPerformanceStr:d(re),orderHeading:`${Ke}业绩(业务订单额)`,payHeading:`${Ke}业绩(关联实付)`,periodLine:ia,scopeHint:le,orderSplitHint:"业绩 = 除履约已取消(4)外全部订单金额;下方为合计与已取消明细"}}),st=S(()=>{const t=te.extend,e=x=>{const y=Number(x);return!Number.isFinite(y)||y<0?0:Math.trunc(y)},n=e(t==null?void 0:t.focus_pending_rx_count),u=e(t==null?void 0:t.focus_pending_pay_count),d=e(t==null?void 0:t.focus_pending_ship_count),f=e(t==null?void 0:t.focus_risk_count);return{pendingRx:n,pendingPay:u,pendingShip:d,risk:f}});function Dt(t,e){const n=Number(e==null?void 0:e.prescription_audit_status),u=Number(e==null?void 0:e.payment_slip_audit_status),d=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&n===0||t==="pay"&&n===1&&u===0||t==="fulfillment"&&d===2?"po-status-tag is-focus":t==="rx"&&n===2||t==="pay"&&u===2||t==="fulfillment"&&d===4?"po-status-tag is-risk":"po-status-tag"}function lt({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),n=Number(t==null?void 0:t.payment_slip_audit_status),u=Number(t==null?void 0:t.fulfillment_status),d=pt(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||n===2||d?"po-row-risk":e===0||e===1&&n===0||u===2?"po-row-focus":u===3||u===6?"po-row-done":""}Ci(_e,t=>{t||b.prescription_audit_status===""||b.prescription_audit_status===void 0||(b.prescription_audit_status="",G())},{immediate:!0});function Fs(){ee.value="",b.start_time="",b.end_time="",b.order_no="",b.prescription_id="",b.patient_keyword="",b.express_keyword="",b.express_company="",b.doctor_id="",b.assistant_id="",b.assistant_dept_id="",b.fulfillment_status="",b.prescription_audit_status="",b.payment_slip_audit_status="",b.supply_mode="",zs()}function nt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"}[Number(t)]??"—"}function js(t){if(!t)return"—";let e=[];return Array.isArray(t)?e=t:typeof t=="string"&&(e=t.split(",").filter(u=>u.trim()!=="")),e.length===0?"—":e.map(u=>{const d=Ae.value.find(f=>f.value===u);return d?d.name:u}).join("、")}function ga(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function ya(t){return t===1?"success":t===2?"danger":"info"}function $t(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function Is(t){const e=Number(t);return e===3||e===6?"success":e===5?"primary":e===4?"danger":e===2||e===7?"warning":e===8||e===11||e===12?"info":e===9||e===10?"danger":"info"}function de(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function me(t){if(t==null||t==="")return"—";if(typeof t=="number"&&t>1e9&&t<1e11){const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}return String(t)}const Ls=[0,3];function ba(){const t=Te.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(n=>Number(n)):[]).some(n=>Ls.includes(n)):!1}function xa(t){var n;const e=Number((n=Te.userInfo)==null?void 0:n.id);return e>0&&Number(t.creator_id)===e}function ka(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function ha(t){const e=Number(t.fulfillment_status);if(e===3||e===4||xa(t)&&ka(t)&&!ba())return!1;const n=String(t.gancao_reciperl_order_no||"").trim(),u=Number(t.gancao_submit_time||0);return n!==""||u>0?[1,2,5,7].includes(e):e===1||e===2}function qs(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function Ms(t){const e=Number(t.fulfillment_status);return e===3||e===4?!1:Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===0}function Bs(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const n=Number(t.prescription_audit_status),u=Number(t.payment_slip_audit_status);return(n===1||n===2)&&u===0}function Hs(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const n=Number(t.prescription_audit_status),u=Number(t.payment_slip_audit_status);return n===1&&(u===1||u===2)}function wa(t){return Number(t.fulfillment_status)===1}function zt(t){return Number(t.fulfillment_status)===2}function Ut(t){const e=Number(t.fulfillment_status);return e===5||e===6}function Ft(t){const e=Number(t.fulfillment_status);return(e===5||e===6)&&Number(t.payment_slip_audit_status)===1}function Gs(t){return Number(t.fulfillment_status)===5}function Sa(t){const e=Number(t.prescription_audit_status),n=String(t.gancao_reciperl_order_no||"").trim();return e===1&&n===""}function Va(t){return{1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"}[Number(t)]??"—"}const it=k(!0),Na=S(()=>{const t=b,e=["start_time","end_time","order_no","prescription_id","patient_keyword","express_keyword","doctor_id","assistant_dept_id","assistant_id"];let n=0;for(const u of e){const d=t[u];d!=null&&(typeof d=="string"&&d.trim()===""||Array.isArray(d)&&d.length===0||(n+=1))}return n});function Ws(t){return Ut(t)||Ft(t)||Sa(t)||wa(t)}function Ks(t,e){t==="addPayOrder"?Ga(e):t==="complete"?Wa(e):t==="submitGancao"?Al(e):t==="withdraw"&&Vl(e)}function jt(t){if(!(t!=null&&t.id))return!1;const e=Number(t.fulfillment_status);return e!==3&&e!==4}const J=k(!1),It=k(!1),c=k(null),rt=S(()=>{if(!c.value)return 0;const t=Number(c.value.fulfillment_status),e=Number(c.value.prescription_audit_status),n=Number(c.value.payment_slip_audit_status);return t===3||[8,9,10,11,12].includes(t)?5:t===6||t===5||t===7?4:t===4?e===2?1:n===2?2:3:t===2?3:e===0||e===2?1:n===0||n===2?2:3}),ot=S(()=>{var e;const t=Number((e=c.value)==null?void 0:e.prescription_audit_status);return t===1?"success":t===2?"error":rt.value===1?"process":"wait"}),ut=S(()=>{var e;const t=Number((e=c.value)==null?void 0:e.payment_slip_audit_status);return t===1?"success":t===2?"error":rt.value===2?"process":"wait"}),xe=S(()=>{var e;const t=Number((e=c.value)==null?void 0:e.fulfillment_status);return t===3||t===5||t===6||t===8||t===11||t===12?"success":t===4||t===9||t===10?"error":t===7||rt.value===3?"process":"wait"}),Lt=S(()=>{const t=c.value;if(!t)return[];const e=t.linked_pay_orders;return Array.isArray(e)?e:[]}),Ca=S(()=>{const t=c.value;if(!t)return 0;const e=Number(t.amount)||0,n=Number(t.linked_pay_paid_total)||0;return Math.round((e-n)*100)/100}),ke=k([]);async function Ys(t,e,n){var u;if(!t){ke.value=[];return}try{const d=await pa({diagnosis_id:t,prescription_order_id:e}),f=(d==null?void 0:d.lists)??((u=d==null?void 0:d.data)==null?void 0:u.lists)??[],x=Array.isArray(f)?f.filter(y=>!n.includes(y.id)):[];ke.value=x}catch{ke.value=[]}}function Pa(t){return t?Array.isArray(t)?t.map(e=>({name:String((e==null?void 0:e.name)??"").trim(),dosage:Number(e==null?void 0:e.dosage)||0})):[]:[]}const C=S(()=>{var e;const t=(e=c.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null});function dt(t){return t==null?"":String(t).replace(/\s/g,"").trim()}function pt(t,e){const n=dt(t),u=dt(e);return!n||!u?!1:n!==u}const Re=S(()=>{var n,u;const t=(n=C.value)==null?void 0:n.phone,e=(u=c.value)==null?void 0:u.recipient_phone;return pt(e,t)}),Qs=S(()=>{var e;return dt((e=C.value)==null?void 0:e.phone)||"—"}),Js=S(()=>{var e;return dt((e=c.value)==null?void 0:e.recipient_phone)||"—"}),W=S(()=>{var e;const t=(e=c.value)==null?void 0:e.linked_appointment;return t&&typeof t=="object"?t:null}),Ta=S(()=>{var e;const t=String(((e=W.value)==null?void 0:e.resolved_from)||"");return t==="prescription"?"处方绑定挂号":t==="diagnosis"?"诊单关联挂号":""}),Aa=S(()=>{var t;return Pa((t=C.value)==null?void 0:t.herbs)}),Xs=S(()=>{var t;return((t=c.value)==null?void 0:t.prescription_detail_herbs_visible)!==!1}),Zs=S(()=>{const t=c.value;if(!t)return"—";const e=[];return t.shipping_province&&e.push(t.shipping_province),t.shipping_city&&e.push(t.shipping_city),t.shipping_district&&e.push(t.shipping_district),t.shipping_address&&e.push(t.shipping_address),e.length>0?e.join(" "):"—"}),Oa=S(()=>`${_.dose_unit||"剂"}数`);function el(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function tl(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function Ra(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function Ea(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):me(t)}const Ee=k("auto"),ct=k(!1),H=k(null),De=k("");let qt=0;function al(){qt+=1,H.value=null}function Mt(t){var e,n;return t.requestSeq!==qt||Number((e=c.value)==null?void 0:e.id)!==t.orderId?!1:String(((n=c.value)==null?void 0:n.tracking_number)||"").trim()===t.trackingNumber}function sl(t,e,n){const u=(t==null?void 0:t.data)??t;if(!u||typeof u!="object")return null;const d=u,f=String(d.tracking_number||"").trim();if(f&&f!==e)return null;const x=Number(d.order_id);return x>0&&x!==n?null:d}const he=k([]),$e=k(!1),Bt=k(!1),_t=k(),ie=be({id:0,amount:void 0}),ll={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,n)=>{const u=Number(e);if(!Number.isFinite(u)||u<=0){n(new Error("订单金额必须大于0"));return}n()},trigger:"blur"}]};function nl(){const t=Te.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function Ht(t){if(!nl()){he.value=[];return}try{const e=await xi({id:t});he.value=(e==null?void 0:e.data)??e??[]}catch{he.value=[]}}function il(t){return{create:"创建",edit:"编辑",audit_rx_approve:"处方审核",audit_rx_reject:"处方审核",audit_pay_approve:"支付审核",audit_pay_reject:"支付审核",fill_tracking:"填快递单",ship:"确认发货",withdraw:"撤销",link_pay_order:"关联支付单",revoke_rx_audit:"撤回处方审核",revoke_pay_audit:"撤回支付审核",gancao_submit:"甘草下单",patch_rx_patient:"处方患者信息",update_amount:"修改订单金额",complete:"完成订单"}[t]||t}const Gt=S(()=>{var n;const t=String(((n=c.value)==null?void 0:n.tracking_number)||"").trim();if(!t)return{sf:"javascript:void(0)",jd:"javascript:void(0)",jt:"javascript:void(0)"};const e=encodeURIComponent(t);return{sf:`https://www.sf-express.com/cn/sc/dynamic_function/waybill/#search/bill-number/${e}`,jd:`https://www.jdl.com/#/trackQuery?waybillCode=${e}`,jt:`https://www.jtexpress.com.cn/index/query/gzquery.html?bills=${e}`}}),Da=S(()=>{const t=H.value;return!t||!Array.isArray(t.traces)?[]:t.traces});function rl(t){const e=String(t||"").toLowerCase();return e==="sf"?"顺丰速运":e==="jd"?"京东快递":e==="jt"||e==="jtexpress"?"极兔速递":"自动识别"}async function Wt(){var d,f;const t=Number((d=c.value)==null?void 0:d.id),e=String(((f=c.value)==null?void 0:f.tracking_number)||"").trim();if(!t||!e)return;const u={requestSeq:++qt,orderId:t,trackingNumber:e};ct.value=!0;try{const x=String(De.value||"").replace(/\D/g,""),y={id:t,express_company:Ee.value};x.length>=4&&(y.phone_tail=x);const z=await ii(y);if(!Mt(u))return;H.value=sl(z,e,t)}catch{if(!Mt(u))return;H.value=null}finally{Mt(u)&&(ct.value=!1)}}const ze=k(!1),Kt=k(!1),Yt=k(),ae=be({patient_name:"",phone:""}),ol={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function ul(){const t=C.value,e=c.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){T.msgWarning("无处方数据");return}ae.patient_name=String(t.patient_name??"").trim(),ae.phone=String(t.phone??"").trim(),ze.value=!0,Rt(()=>{var n;return(n=Yt.value)==null?void 0:n.clearValidate()})}function dl(){ae.patient_name="",ae.phone=""}function pl(){var t;ie.id=0,ie.amount=void 0,(t=_t.value)==null||t.clearValidate()}function cl(){const t=c.value;if(!jt(t)){T.msgWarning("当前订单状态不允许修改金额");return}ie.id=Number(t==null?void 0:t.id)||0,ie.amount=Number(t==null?void 0:t.amount)||void 0,$e.value=!0,Rt(()=>{var e;return(e=_t.value)==null?void 0:e.clearValidate()})}async function $a(){var e;const t=(e=c.value)==null?void 0:e.id;if(t)try{const n=await Z({id:t}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}async function _l(){var n;const t=Yt.value;if(!t)return;try{await t.validate()}catch{return}const e=(n=c.value)==null?void 0:n.id;if(e){Kt.value=!0;try{await ri({id:e,patient_name:ae.patient_name.trim(),phone:ae.phone.trim()}),ze.value=!1,await $a(),await Ht(e)}catch(u){console.error(u)}finally{Kt.value=!1}}}async function za(){const t=_t.value;if(!t)return;try{await t.validate()}catch{return}if(!jt(c.value)){T.msgWarning("当前订单状态不允许修改金额");return}const e=ie.id;Bt.value=!0;try{await oi({id:e,amount:Number(ie.amount)}),T.msgSuccess("修改成功"),$e.value=!1,await $a(),await Ht(e),K()}catch{}finally{Bt.value=!1}}async function Ua(t){c.value=null,ke.value=[],al(),Ee.value="auto",De.value="",he.value=[],J.value=!0,It.value=!0;try{const e=await Z({id:t}),n=(e==null?void 0:e.data)??e??null;if(c.value=n,n){Ee.value=String(n.express_company||"auto")||"auto";const u=String(n.recipient_phone||"").replace(/\D/g,"");De.value=u.length>=4?u:"",String(n.tracking_number||"").trim()&&Wt(),Ht(t);const d=n.diagnosis_id,f=n.pay_order_ids||[];d&&Ys(d,t,f)}}catch(e){T.msgError((e==null?void 0:e.message)||"加载失败"),J.value=!1}finally{It.value=!1}}const fe=k(!1),Qt=k(!1),Jt=k(!1),L=k(0),se=k(null),ml=S(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][L.value]??""),Fa=S(()=>{const t=se.value,e=Pa(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const n=e.map(u=>`${u.name} ${u.dosage}g`).join("、");return n.length>120?`${n.slice(0,120)}…`:n}),fl=["recipient_name","recipient_phone","region","shipping_address"],we=k(),_=be({id:0,prescription_id:0,diagnosis_id:0,recipient_name:"",recipient_phone:"",region:[],shipping_address:"",is_follow_up:0,medication_days:void 0,dose_count:1,dose_unit:"剂",prev_staff:"",service_channel:"",service_package:[],express_company:"auto",tracking_number:"",fee_type:3,amount:0,remark_extra:"",remark_assistant:"",pay_order_ids:[],internal_cost:void 0,assistant_id:0,diagnosis_creator_id:0,diagnosis_creator_name:"",diagnosis_creator_dept_path:""}),ja=S(()=>{const t=String(_.diagnosis_creator_dept_path||"").trim();return t?t.split(";").map(e=>e.trim()).filter(Boolean).map(e=>e.includes(" / ")?e.split(" / ").map(n=>n.trim()).filter(Boolean):e.split("/").map(n=>n.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Ue=k([]),Xt=k(!1),M=k(0);function Zt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const ea=S(()=>{const t=new Set(_.pay_order_ids.map(n=>Number(n)));let e=0;for(const n of Ue.value)t.has(Number(n.id))&&(e+=Number(n.amount)||0);return Math.round(e*100)/100}),vl=S(()=>{const t=M.value;return t>0?Math.round(t*100)/100:0});async function gl(t,e){var n,u;if(!t){Ue.value=[];return}try{Xt.value=!0;const d=await pa({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),f=(d==null?void 0:d.lists)??((n=d==null?void 0:d.data)==null?void 0:n.lists)??[];Ue.value=Array.isArray(f)?f:[];const x=Number((d==null?void 0:d.deposit_min_amount)??((u=d==null?void 0:d.data)==null?void 0:u.deposit_min_amount));!Number.isNaN(x)&&x>=0&&(M.value=x)}catch{Ue.value=[]}finally{Xt.value=!1}}const yl=S(()=>{const t={recipient_name:[{required:!0,message:"请输入收货人",trigger:"blur"}],recipient_phone:[{required:!0,message:"请输入收货手机",trigger:"blur"}],region:[{required:!0,message:"请选择省/市/区",trigger:"change",type:"array"}],shipping_address:[{required:!0,message:"请输入收货地址",trigger:"blur"}],fee_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(e,n,u)=>{const d=M.value,f=Number(n);if(d>0&&(!Number.isFinite(f)||f0){const e=`已开启关联支付门槛(¥${de(M.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function bl(){var t;L.value=0,se.value=null,(t=we.value)==null||t.clearValidate()}function xl(){L.value>0&&(L.value-=1)}async function kl(){const t=we.value;if(t)try{L.value===0?await t.validateField([...fl]):L.value===1&&M.value>0&&await t.validateField(["pay_order_ids"]),L.value<2&&(L.value+=1)}catch{}}async function hl(t){if(!ha(t)){xa(t)&&ka(t)&&!ba()&&T.msgWarning("处方与支付单均已审核通过,创建人不可再编辑");return}L.value=0,se.value=null,fe.value=!0,Qt.value=!0;try{const e=await Z({id:t.id}),n=(e==null?void 0:e.data)??e;if(!n){T.msgError("加载数据结构异常"),fe.value=!1;return}const u=n.prescription;u&&typeof u=="object"?se.value=u:Number(n.prescription_id)>0?se.value={id:Number(n.prescription_id),sn:"",patient_name:String(n.recipient_name||""),herbs:[]}:se.value=null,_.id=n.id,_.prescription_id=Number(n.prescription_id)||0,_.diagnosis_id=Number(n.diagnosis_id)||0,_.assistant_id=Number(n.assistant_id)||0,_.diagnosis_creator_id=Number(n.diagnosis_creator_id)||0,_.diagnosis_creator_name=n.diagnosis_creator_name!=null&&n.diagnosis_creator_name!==""?String(n.diagnosis_creator_name):"",_.diagnosis_creator_dept_path=n.diagnosis_creator_dept_path!=null&&n.diagnosis_creator_dept_path!==""?String(n.diagnosis_creator_dept_path):"",_.recipient_name=n.recipient_name||"",_.recipient_phone=n.recipient_phone||"";const d=n.shipping_province||"",f=n.shipping_city||"",x=n.shipping_district||"";d||f||x?_.region=[d,f,x].filter(F=>F!==""):_.region=[],_.shipping_address=n.shipping_address||"",_.is_follow_up=n.is_follow_up?1:0,_.medication_days=n.medication_days>0?n.medication_days:void 0,_.dose_count=n.dose_count>0?n.dose_count:1,_.dose_unit=n.dose_unit||"剂",_.prev_staff=n.prev_staff||"",_.service_channel=n.service_channel||"",n.service_package?Array.isArray(n.service_package)?_.service_package=n.service_package:typeof n.service_package=="string"?_.service_package=n.service_package.split(",").filter(F=>F.trim()!==""):_.service_package=[]:_.service_package=[],_.express_company=String(n.express_company||"auto")||"auto",_.tracking_number=n.tracking_number||"",_.fee_type=Number(n.fee_type)||3,M.value=Number(n.deposit_min_amount)||0;let y=Number(n.amount)||0;const z=Math.round((Number(n.linked_pay_paid_total)||0)*100)/100,Q=M.value;if(Q>0){const F=Math.round(Q*100)/100;yNumber(F)).filter(F=>!Number.isNaN(F)):[],_.internal_cost=n.internal_cost!=null&&n.internal_cost!==""?Number(n.internal_cost):void 0,await gl(_.diagnosis_id,_.id),Rt(()=>{var F;(F=we.value)==null||F.clearValidate()})}catch(e){T.msgError((e==null?void 0:e.message)||"加载异常"),fe.value=!1}finally{Qt.value=!1}}async function wl(){if(!(!we.value||L.value!==2)){await we.value.validate(),Jt.value=!0;try{const t={id:_.id,recipient_name:_.recipient_name,recipient_phone:_.recipient_phone,shipping_address:_.shipping_address,is_follow_up:_.is_follow_up,prev_staff:_.prev_staff||"",service_channel:_.service_channel||"",service_package:Array.isArray(_.service_package)?_.service_package.join(","):"",express_company:_.express_company||"auto",tracking_number:_.tracking_number||"",fee_type:_.fee_type,amount:_.amount,remark_extra:_.remark_extra||"",remark_assistant:_.remark_assistant||"",medication_days:_.medication_days!=null&&String(_.medication_days).trim()!==""?_.medication_days:"",dose_unit:_.dose_unit||"剂",dose_count:_.dose_count||1,internal_cost:_.internal_cost!=null&&String(_.internal_cost).trim()!==""?_.internal_cost:""};_.region&&_.region.length>0?(t.shipping_province=_.region[0]||"",t.shipping_city=_.region[1]||"",t.shipping_district=_.region[2]||""):(t.shipping_province="",t.shipping_city="",t.shipping_district=""),t.pay_order_ids=[..._.pay_order_ids],await ds(t),T.msgSuccess("保存成功"),fe.value=!1,K()}catch{}finally{Jt.value=!1}}}const Fe=k(!1),ta=k("prescription"),mt=k(0),je=k(null),Se=k(""),ft=k(!1),Sl=S(()=>ta.value==="prescription"?"处方业务审核":"关联支付单审核");function Ia(t,e){ta.value=e,mt.value=t.id,je.value=t,Se.value="",Fe.value=!0}async function La(t){if(t==="reject"&&!Se.value.trim()){T.msgError("驳回或阻止时必须填写明确的审核意见");return}ft.value=!0;try{const e={id:mt.value,action:t,remark:Se.value.trim()};if(ta.value==="prescription"?await ui(e):await di(e),T.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),Fe.value=!1,K(),J.value&&mt.value)try{const n=await Z({id:mt.value}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}finally{ft.value=!1}}async function Vl(t){try{await Xe.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await pi({id:t.id}),T.msgSuccess("撤回成功"),K()}catch{}}const qa=k(0),vt=k(!1),Ve=k(!1),U=k(null);function Ma(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,n=Number(t.proces_cost)||0,u=Number(t.lis_cost)||0;return(e+n+u).toFixed(2)}function Nl(t,e){const n=parseFloat(Ma(t))||0,u=Number(e)||0;return u<=0?"—":(n/u*100).toFixed(2)}function Cl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((n,u)=>n+(Number(u.quantity)||0),0).toFixed(0)}async function Pl(){if(!_.id){T.msgError("请先保存订单");return}Ve.value=!0;try{const t=await ps({id:_.id,dose_count:_.dose_count||1,medication_days:_.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(U.value=e,vt.value=!0,T.msgSuccess("预下单测试成功"))}catch{}finally{Ve.value=!1}}async function Tl(){var t;if(!((t=c.value)!=null&&t.id)){T.msgError("订单数据不存在");return}Ve.value=!0;try{const e=await ps({id:c.value.id,dose_count:c.value.dose_count||1,medication_days:c.value.medication_days||void 0}),n=(e==null?void 0:e.data)??e;n&&n.success&&(U.value=n,vt.value=!0)}catch{}finally{Ve.value=!1}}async function Al(t){var e;try{await Xe.confirm("将把本单关联处方提交至甘草药管家开放平台(先 CTM_PREVIEW 预检查再 CTM_SUBMIT_RECIPEL 正式下单;成功后将按甘草侧规则扣费,详见 https://apidoc.igancao.com/service-doc/scm-outer-recipel.html )。确定继续?","上传甘草药方",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),qa.value=t.id;const n=await ci({id:t.id}),u=(n==null?void 0:n.data)??n,d=(u==null?void 0:u.recipel_order_no)!=null?String(u.recipel_order_no):"";if(T.msgSuccess(d?`上传成功,甘草处方单号:${d}`:"上传成功"),K(),J.value&&Number((e=c.value)==null?void 0:e.id)===t.id)try{const f=await Z({id:t.id}),x=(f==null?void 0:f.data)??f??null;x&&(c.value=x)}catch{}}catch{}finally{qa.value=0}}Pi(async()=>{await ws(),await Ss(),await ks(),K()});const Ie=k(!1),gt=k(!1),Le=k(0),X=be({express_company:"auto",tracking_number:""});function Ol(t){Le.value=t.id,X.express_company=String(t.express_company||"auto")||"auto",X.tracking_number=String(t.tracking_number||""),Ie.value=!0}async function Ba(){var t;if(!X.tracking_number.trim()){T.msgError("请填写快递单号");return}gt.value=!0;try{const e=await Z({id:Le.value}),n=(e==null?void 0:e.data)??e;if(!n){T.msgError("加载订单数据失败");return}if(await ds({id:n.id,recipient_name:n.recipient_name||"",recipient_phone:n.recipient_phone||"",shipping_province:n.shipping_province||"",shipping_city:n.shipping_city||"",shipping_district:n.shipping_district||"",shipping_address:n.shipping_address||"",is_follow_up:n.is_follow_up?1:0,medication_days:n.medication_days!=null&&String(n.medication_days).trim()!==""?n.medication_days:"",prev_staff:n.prev_staff||"",service_channel:n.service_channel||"",service_package:n.service_package||"",fee_type:Number(n.fee_type)||3,amount:Number(n.amount)||0,remark_extra:n.remark_extra||"",remark_assistant:n.remark_assistant||"",internal_cost:n.internal_cost!=null&&n.internal_cost!==""?n.internal_cost:"",pay_order_ids:Array.isArray(n.pay_order_ids)?n.pay_order_ids:[],express_company:X.express_company||"auto",tracking_number:X.tracking_number.trim()}),T.msgSuccess("快递单号已保存"),Ie.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===Le.value)try{const u=await Z({id:Le.value}),d=(u==null?void 0:u.data)??u??null;d&&(c.value=d)}catch{}if(zt({fulfillment_status:Number(n.fulfillment_status)}))try{await Xe.confirm(`快递单号「${X.tracking_number}」已保存,是否立即确认发货?`,"确认发货",{type:"success",confirmButtonText:"确认发货",cancelButtonText:"稍后再说"}),aa({id:Le.value,tracking_number:X.tracking_number,express_company:X.express_company})}catch{}}catch{}finally{gt.value=!1}}const qe=k(!1),yt=k(!1),bt=k(0),Y=be({ship_mode:"gancao",express_company:"auto",tracking_number:""});function aa(t){bt.value=t.id,Y.ship_mode=String(t.ship_mode||"gancao")||"gancao",Y.express_company=String(t.express_company||"auto")||"auto",Y.tracking_number=String(t.tracking_number||""),qe.value=!0}async function Ha(){var t;if(!Y.tracking_number.trim()){T.msgError("请先填写快递单号再确认发货");return}yt.value=!0;try{if(await _i({id:bt.value,ship_mode:Y.ship_mode==="direct"?"direct":"gancao",express_company:Y.express_company||"auto",tracking_number:Y.tracking_number.trim()}),T.msgSuccess("确认发货成功,订单已进入「已发货」状态"),qe.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===bt.value)try{const e=await Z({id:bt.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{yt.value=!1}}const Rl=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],Me=k(!1),sa=k(0),xt=k(3),la=k(!1);async function El(){var e;const t=sa.value;if(t){la.value=!0;try{if(await mi({id:t,fulfillment_status:xt.value}),T.msgSuccess("订单状态已更新"),Me.value=!1,K(),J.value&&((e=c.value)==null?void 0:e.id)===t)try{const n=await Z({id:t}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}finally{la.value=!1}}}const Be=k(!1),kt=k(!1),He=k(0),ht=k(),na=k(!1),wt=k([]),O=be({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),Dl={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}],order_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],pay_amount:[{required:!0,message:"请输入支付金额",trigger:"blur"},{validator:(t,e,n)=>{const u=Number(e);!Number.isFinite(u)||u<=0?n(new Error("金额须大于 0")):n()},trigger:"blur"}],link_pay_order_ids:[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(t,e,n)=>{!Array.isArray(e)||e.length===0?n(new Error("请至少选择一个支付单")):n()}}]};async function $l(t,e=[]){var n;if(!t){wt.value=[];return}try{na.value=!0;const u=await pa({diagnosis_id:t}),d=(u==null?void 0:u.lists)??((n=u==null?void 0:u.data)==null?void 0:n.lists)??[],f=Array.isArray(d)?d.filter(x=>!e.includes(x.id)):[];wt.value=f}catch{wt.value=[]}finally{na.value=!1}}function Ga(t){var u,d;He.value=t.id,O.add_mode="create",O.order_type=3,O.pay_amount=void 0,O.pay_remark="",O.link_pay_order_ids=[],O.completion_request=0,Be.value=!0;const e=t.diagnosis_id||((u=c.value)==null?void 0:u.diagnosis_id),n=t.pay_order_ids||((d=c.value)==null?void 0:d.pay_order_ids)||[];e&&$l(e,n)}async function zl(){var t;if(ht.value){await ht.value.validate(),kt.value=!0;try{if(O.add_mode==="create")await fi({id:He.value,order_type:O.order_type,pay_amount:O.pay_amount,pay_remark:O.pay_remark||"",completion_request:O.completion_request}),T.msgSuccess("支付单已新增,请等待审核");else{const e=O.link_pay_order_ids;if(e.length===0){T.msgError("请至少选择一个支付单");return}await vi({id:He.value,pay_order_ids:e,completion_request:O.completion_request}),T.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}if(Be.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===He.value)try{const e=await Z({id:He.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{kt.value=!1}}}function Wa(t){sa.value=t.id,xt.value=3,Me.value=!0}async function Ul(t){var e;try{if(await Xe.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await gi({id:t.id}),T.msgSuccess("处方审核已撤回"),K(),J.value&&((e=c.value)==null?void 0:e.id)===t.id)try{const n=await Z({id:t.id}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}}async function Fl(t){var e;try{if(await Xe.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await yi({id:t.id}),T.msgSuccess("支付单审核已撤回"),K(),J.value&&((e=c.value)==null?void 0:e.id)===t.id)try{const n=await Z({id:t.id}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}}const St=k(!1),Vt=k(!1),h=k(null),Ka=k(null),Ne=k(!1),Nt=S(()=>{var e;const t=(e=h.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),jl=S(()=>{const t=h.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸")return null;const e=Number(t.medication_days??t.usage_days??t.dose_count),n=Number(t.times_per_day),u=Number(t.dosage_amount),d=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;return!Number.isFinite(e)||!Number.isFinite(n)||!Number.isFinite(u)||e<=0||n<=0||u<=0?null:e*n*u*d}),Ct=t=>String(t).padStart(2,"0"),Il=S(()=>{const t=h.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const n=String(e).length===10?Number(e)*1e3:Number(e),u=new Date(n);if(!isNaN(u.getTime()))return`${u.getFullYear()}-${Ct(u.getMonth()+1)}-${Ct(u.getDate())} ${Ct(u.getHours())}:${Ct(u.getMinutes())}`}return t.prescription_date||"—"}),Ll=S(()=>{const t=h.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const n=String(t.visit_no??"").trim();return n||"—"}),ql=S(()=>{const t=h.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),Ya=S(()=>{const t=h.value;return t?String(t.order_no??"").trim():""}),Ml=S(()=>{const t=h.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let n=t.region;return Array.isArray(n)&&(n=n.filter(Boolean).join("")),n&&e.push(String(n)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),Qa=S(()=>{var e;const t=Number((e=h.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Bl=S(()=>{const e=Nt.value.reduce((n,u)=>n+(Number(u==null?void 0:u.dosage)||0),0);return Ge(e)}),Hl=t=>{const e=Number(t)||0;return Ge(e*Qa.value)},Gl=S(()=>{const t=h.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),Wl=S(()=>{const t=h.value;if(!t)return"—";if(t.usage_text)return t.usage_text;const e=Number(t.times_per_day)>0?Number(t.times_per_day):3,n=t.dosage_amount!=null?Number(t.dosage_amount):10,u=t.dosage_unit||"g",d=t.usage_way||"温水送服",f=t.usage_time||"",x=[];if(x.push(`每天${e}次`),(t.prescription_type||"浓缩水丸")==="浓缩水丸"){const y=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;x.push(`一次${y}袋`),x.push(`每袋${n}${u}`)}else x.push(`一次${n}${u}`);return x.push(d),f&&x.push(f),x.join(", ")}),Kl=S(()=>{const t=jl.value;if(typeof t=="number"&&isFinite(t)&&t>0)return Ge(t);const e=h.value;if(!e)return"";const n=e.out_pellet||e.total_weight;if(n&&Number(n)>0)return Ge(Number(n));const u=Nt.value;if(!u.length)return"";const d=u.reduce((f,x)=>f+(Number(x==null?void 0:x.dosage)||0),0);return Ge(d*Qa.value)}),Ja=S(()=>{const t=h.value;return t&&t.medical_advice||""}),Xa=S(()=>{const t=h.value;if(!t)return"";const e=[];return e.push(`共${Nt.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Za=S(()=>{const t=h.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),es=S(()=>{const t=Kl.value;return t?`${t}克`:""});function Ge(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function ts(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Yl(t){return t?ts(t):"—"}function Ql(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function Jl(t){return t==null||t===""?"—":`${t}岁`}function Xl(){as(_)}async function as(t){if(!t.prescription_id){T.msgWarning("该订单未关联处方");return}St.value=!0,Vt.value=!0,h.value=null;try{const e=await bi({id:t.prescription_id}),n=(e==null?void 0:e.data)??e??null;if(n){const u=t.medication_days,d={...n};u!=null&&String(u).trim()!==""&&(d.medication_days=u),t.order_no&&!d.order_no&&(d.order_no=t.order_no),t.recipient_name&&!d.recipient_name&&(d.recipient_name=t.recipient_name),t.recipient_phone&&!d.recipient_phone&&(d.recipient_phone=t.recipient_phone),t.shipping_address&&!d.shipping_address&&(d.shipping_address=t.shipping_address),t.amount!=null&&d.order_amount==null&&(d.order_amount=t.amount),t.dose_count!=null&&String(t.dose_count).trim()!==""&&Number(t.dose_count)>0&&(d.dose_count=Number(t.dose_count)),t.dose_unit!=null&&String(t.dose_unit).trim()!==""&&(d.dose_unit=String(t.dose_unit));const f=t.linked_appointment;(!d.appointment_id||Number(d.appointment_id)<=0)&&f&&typeof f=="object"&&Number(f.id)>0&&(d.appointment_id=Number(f.id)),h.value=d}else h.value=null}catch(e){T.msgError((e==null?void 0:e.message)||"加载处方详情失败"),St.value=!1}finally{Vt.value=!1}}async function Zl(t){const e=t.querySelectorAll('img[src^="http"]'),n=Array.from(e).map(async u=>{try{const d=await fetch(u.src,{mode:"cors"});if(!d.ok)return;const f=await d.blob(),x=await new Promise((y,z)=>{const Q=new FileReader;Q.onload=()=>y(Q.result),Q.onerror=z,Q.readAsDataURL(f)});u.src=x}catch{}});await Promise.allSettled(n)}async function ss(){await Rt();const t=Ka.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Zl(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),ki(t,{scale:2,useCORS:!0,allowTaint:!1,logging:!1,backgroundColor:"#ffffff",windowWidth:t.scrollWidth,windowHeight:t.scrollHeight,width:t.scrollWidth,height:t.scrollHeight,ignoreElements:e=>e instanceof HTMLElement&&e.classList.contains("cf-slip-no-export")})}function ls(){var n;const t=(n=h.value)==null?void 0:n.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function en(){if(h.value){Ne.value=!0;try{const t=await ss(),e=document.createElement("a");e.download=`${ls()}.png`,e.href=t.toDataURL("image/png"),e.click(),T.msgSuccess("图片已下载")}catch{T.msgError("下载图片失败")}finally{Ne.value=!1}}}async function tn(){if(h.value){Ne.value=!0;try{const t=await ss(),e=t.toDataURL("image/jpeg",.95),n=new on({orientation:"portrait",unit:"mm",format:"a4"}),u=210,d=297,f=u,x=t.height*f/t.width;if(x<=d)n.addImage(e,"JPEG",0,0,f,x);else{let y=x,z=0;for(;y>0;)n.addImage(e,"JPEG",0,z,f,x),y-=d,z-=d,y>0&&n.addPage()}n.save(`${ls()}.pdf`),T.msgSuccess("PDF已下载")}catch{T.msgError("下载PDF失败")}finally{Ne.value=!1}}}return(t,e)=>{const n=un,u=dn,d=cn,f=mn,x=fn,y=gn,z=vn,Q=yn,w=bn,F=_n,re=xn,ve=wn,Pt=hn,ns=kn,ia=Wn,We=Sn,le=Vn,oe=Cn,Ke=Nn,E=Tn,pe=Pn,V=On,Ye=An,$=En,Tt=Rn,ra=Dn,is=zn,rs=$n,oa=Un,Ce=Fn,ce=jn,os=In,an=Ln,sn=Mn,ln=qn,nn=Bn,Pe=Gn,ua=Hn,ge=pn,q=Ti("perms");return o(),m("div",Ri,[e[249]||(e[249]=a("header",{class:"po-h5-hero","aria-label":"页面概览"},[a("div",{class:"po-h5-hero__text"},[a("h1",{class:"po-h5-hero__title"},"业务订单"),a("p",{class:"po-h5-hero__sub"},"履约、双审与收款一览;点卡片进入详情")])],-1)),s(n,{class:"po-h5-surface po-h5-surface--chips !mb-3 !border-none shadow-none",shadow:"never"},{default:l(()=>[a("div",Ei,[_e.value?(o(),m("div",Di,[e[85]||(e[85]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),m(D,null,B(Os,i=>a("div",{key:i.value,class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.prescription_audit_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Es(i.value)},[a("span",zi,r(i.label),1)],10,$i)),64))])):v("",!0),a("div",Ui,[e[86]||(e[86]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),m(D,null,B(Rs,i=>a("div",{key:i.value,class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.payment_slip_audit_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ds(i.value)},[a("span",ji,r(i.label),1)],10,Fi)),64))]),a("div",Ii,[e[87]||(e[87]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),m(D,null,B(Vs,i=>a("div",{key:"fs-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.fulfillment_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ns(i.value)},[a("span",qi,r(i.label),1)],10,Li)),64))]),a("div",Mi,[e[88]||(e[88]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),m(D,null,B(Cs,i=>a("div",{key:"sm-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.supply_mode===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ps(i.value)},[a("span",Hi,r(i.label),1)],10,Bi)),64))]),a("div",Gi,[e[89]||(e[89]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),m(D,null,B(Ts,i=>a("div",{key:"ec-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.express_company===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>As(i.value)},[a("span",Ki,r(i.label),1)],10,Wi)),64))])])]),_:1}),s(n,{class:"po-h5-surface po-filter-card !mb-3 !border-none shadow-none",shadow:"never"},{default:l(()=>[A((o(),m("div",Yi,[a("div",Qi,[e[90]||(e[90]=a("div",{class:"po-stat-deco po-stat-deco--o pointer-events-none absolute -right-6 -top-8 h-28 w-28 rounded-full opacity-40"},null,-1)),a("div",Ji,[a("div",null,[a("div",Xi,[s(u,{size:16,class:"text-sky-500"},{default:l(()=>[s(R(Kn))]),_:1}),p(" "+r(ne.value.orderHeading),1)]),a("div",Zi,[a("div",er," ¥"+r(ne.value.orderPerformanceStr),1),a("div",tr,[a("span",null,"合计 ¥"+r(ne.value.orderStr),1),a("span",ar,"已取消 ¥"+r(ne.value.orderCancelledStr),1)])])]),a("div",sr,[s(u,{size:20},{default:l(()=>[s(R(Yn))]),_:1})])]),a("p",lr,r(ne.value.periodLine),1)]),a("div",nr,[e[91]||(e[91]=a("div",{class:"po-stat-deco po-stat-deco--p pointer-events-none absolute -right-6 -top-8 h-28 w-28 rounded-full opacity-40"},null,-1)),a("div",ir,[a("div",null,[a("div",rr,[s(u,{size:16,class:"text-emerald-500"},{default:l(()=>[s(R(Qn))]),_:1}),p(" "+r(ne.value.payHeading),1)]),a("div",or,[a("div",ur," ¥"+r(ne.value.payPerformanceStr),1),a("div",dr,[a("span",null,"合计 ¥"+r(ne.value.payStr),1),a("span",pr,"已取消 ¥"+r(ne.value.payCancelledStr),1)])])]),a("div",cr,[s(u,{size:20},{default:l(()=>[s(R(Jn))]),_:1})])]),a("p",_r,r(ne.value.periodLine),1)])])),[[ge,R(te).loading]]),e[95]||(e[95]=a("p",{class:"po-h5-stats-hint text-center text-[12px] leading-snug text-slate-500 px-1 -mt-2 mb-3"},[p(" 上方为接口返回的"),a("strong",{class:"text-slate-600 font-medium"},"业绩汇总"),p("(未选创建日期时为今日;选了则为该区间);下方列表是当前筛选条件下的订单,"),a("strong",{class:"text-slate-600 font-medium"},"条数与金额和上面不必相等"),p("。 ")],-1)),a("div",{class:"po-filter-toggle",onClick:e[0]||(e[0]=i=>it.value=!it.value)},[a("div",mr,[s(u,null,{default:l(()=>[s(R(da))]),_:1}),e[92]||(e[92]=a("span",null,"筛选条件",-1)),Na.value>0?(o(),g(d,{key:0,size:"small",type:"primary",effect:"dark",round:""},{default:l(()=>[p(r(Na.value),1)]),_:1})):v("",!0)]),s(u,{class:I(["po-filter-toggle__arrow",{"is-open":!it.value}])},{default:l(()=>[s(R(us))]),_:1},8,["class"])]),A(s(F,{class:"ls-form",model:b,inline:""},{default:l(()=>[s(f,{class:"w-[360px] min-w-[240px] max-w-full",label:"创建时间"},{default:l(()=>[s(ai,{startTime:b.start_time,"onUpdate:startTime":e[1]||(e[1]=i=>b.start_time=i),endTime:b.end_time,"onUpdate:endTime":e[2]||(e[2]=i=>b.end_time=i),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始日期","end-placeholder":"结束日期",class:"!w-full"},null,8,["startTime","endTime"])]),_:1}),s(f,{class:"w-[260px]",label:"订单号"},{default:l(()=>[s(x,{modelValue:b.order_no,"onUpdate:modelValue":e[3]||(e[3]=i=>b.order_no=i),placeholder:"业务订单号",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[140px]",label:"处方ID"},{default:l(()=>[s(x,{modelValue:b.prescription_id,"onUpdate:modelValue":e[4]||(e[4]=i=>b.prescription_id=i),placeholder:"处方ID",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"患者"},{default:l(()=>[s(x,{modelValue:b.patient_keyword,"onUpdate:modelValue":e[5]||(e[5]=i=>b.patient_keyword=i),placeholder:"姓名 / 手机号",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"快递"},{default:l(()=>[s(x,{modelValue:b.express_keyword,"onUpdate:modelValue":e[6]||(e[6]=i=>b.express_keyword=i),placeholder:"快递单号 / 公司",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[200px]",label:"医生"},{default:l(()=>[s(z,{modelValue:b.doctor_id,"onUpdate:modelValue":e[7]||(e[7]=i=>b.doctor_id=i),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:l(()=>[(o(!0),m(D,null,B(Et.value,i=>(o(),g(y,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),s(f,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:l(()=>[s(Q,{modelValue:b.assistant_dept_id,"onUpdate:modelValue":e[8]||(e[8]=i=>b.assistant_dept_id=i),data:tt.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:bs,placeholder:"医助部门(选父级含子级)",onChange:Us},null,8,["modelValue","data"])]),_:1}),s(f,{class:"w-[200px]",label:"医助"},{default:l(()=>[s(z,{modelValue:b.assistant_id,"onUpdate:modelValue":e[9]||(e[9]=i=>b.assistant_id=i),clearable:"",filterable:"",placeholder:"诊单医助",class:"!w-full"},{default:l(()=>[(o(!0),m(D,null,B(va.value,i=>(o(),g(y,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),s(f,null,{default:l(()=>[s(w,{type:"primary",onClick:R(G)},{default:l(()=>[...e[93]||(e[93]=[p("查询",-1)])]),_:1},8,["onClick"]),s(w,{onClick:Fs},{default:l(()=>[...e[94]||(e[94]=[p("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),[[At,!it.value]])]),_:1}),A((o(),g(n,{class:"po-h5-surface po-table-card !mt-0 !border-none shadow-none",shadow:"never"},{default:l(()=>[a("div",fr,[a("div",vr,[a("div",gr,[e[96]||(e[96]=a("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),a("span",yr,"共 "+r(R(te).count)+" 条",1)]),a("div",br,[a("div",{class:I(["po-focus-board__item is-pending-rx",{"is-active":ee.value==="pendingRx"}]),onClick:e[10]||(e[10]=i=>at("pendingRx"))},[e[97]||(e[97]=a("span",{class:"po-focus-board__label"},"待处方审核",-1)),a("strong",xr,r(st.value.pendingRx),1)],2),a("div",{class:I(["po-focus-board__item is-pending-pay",{"is-active":ee.value==="pendingPay"}]),onClick:e[11]||(e[11]=i=>at("pendingPay"))},[e[98]||(e[98]=a("span",{class:"po-focus-board__label"},"待支付审核",-1)),a("strong",kr,r(st.value.pendingPay),1)],2),a("div",{class:I(["po-focus-board__item is-pending-ship",{"is-active":ee.value==="pendingShip"}]),onClick:e[12]||(e[12]=i=>at("pendingShip"))},[e[99]||(e[99]=a("span",{class:"po-focus-board__label"},"待发货",-1)),a("strong",hr,r(st.value.pendingShip),1)],2),a("div",{class:I(["po-focus-board__item is-risk",{"is-active":ee.value==="risk"}]),onClick:e[13]||(e[13]=i=>at("risk"))},[e[100]||(e[100]=a("span",{class:"po-focus-board__label"},"重点异常",-1)),a("strong",wr,r(st.value.risk),1)],2)])])]),a("div",Sr,[!R(te).lists.length&&!R(te).loading?(o(),g(re,{key:0,description:"暂无订单","image-size":88})):v("",!0),(o(!0),m(D,null,B(R(te).lists,i=>(o(),m("div",{key:i.id,class:I(["po-card",{"po-card--focus":lt&<({row:i})==="po-row-focus","po-card--risk":lt&<({row:i})==="po-row-risk"}]),onClick:P=>Ua(i.id)},[a("div",Nr,[a("div",Cr,[a("span",Pr,r(i.order_no||"—"),1)]),a("div",Tr,[s(d,{size:"small",effect:"plain",type:String(i.gancao_reciperl_order_no||"").trim()?"success":"info"},{default:l(()=>[p(r(String(i.gancao_reciperl_order_no||"").trim()?"甘草":"自营"),1)]),_:2},1032,["type"]),a("span",Ar,"#"+r(i.id),1)])]),pt(i.recipient_phone,i.prescription_phone)?(o(),m("div",Or,[s(u,null,{default:l(()=>[s(R(Xn))]),_:1}),e[101]||(e[101]=a("span",null,"收货手机与处方手机不一致",-1))])):v("",!0),a("div",Rr,[a("div",Er,[e[102]||(e[102]=a("span",{class:"po-card__label"},"收货人",-1)),a("span",Dr,r(i.recipient_name||"—"),1)]),a("div",$r,[e[103]||(e[103]=a("span",{class:"po-card__label"},"金额",-1)),a("span",zr,"¥"+r(i.amount),1)])]),a("div",Ur,[a("div",Fr,[e[104]||(e[104]=a("span",{class:"po-card__label"},"手机",-1)),a("span",{class:I(["po-card__value",pt(i.recipient_phone,i.prescription_phone)?"text-red-600 font-semibold":""])},r(i.recipient_phone||"—"),3)]),a("div",jr,[e[105]||(e[105]=a("span",{class:"po-card__label"},"费用类别",-1)),a("span",Ir,r(nt(i.fee_type)),1)])]),a("div",Lr,[a("div",qr,[e[106]||(e[106]=a("span",{class:"po-card__label"},"处方ID",-1)),a("span",Mr,r(i.prescription_id||"—"),1)]),a("div",Br,[e[107]||(e[107]=a("span",{class:"po-card__label"},"诊单ID",-1)),a("span",Hr,r(i.diagnosis_id||"—"),1)])]),_a()&&i.internal_cost!=null&&i.internal_cost!==""?(o(),m("div",Gr,[a("div",Wr,[e[108]||(e[108]=a("span",{class:"po-card__label"},"内部成本",-1)),a("span",Kr,"¥"+r(i.internal_cost),1)]),a("div",Yr,[e[109]||(e[109]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",Qr,[Number(i.linked_pay_order_count)>0?(o(),m("span",Jr,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",Xr,"—"))])])])):(o(),m("div",Zr,[a("div",eo,[e[110]||(e[110]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",to,[Number(i.linked_pay_order_count)>0?(o(),m("span",ao,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",so,"—"))])]),a("div",lo,[e[111]||(e[111]=a("span",{class:"po-card__label"},"创建时间",-1)),a("span",no,r(me(i.create_time)),1)])])),a("div",io,[s(d,{type:ya(i.prescription_audit_status),size:"small",class:I(Dt("rx",i))},{default:l(()=>[p(" 处方审: "+r(ga(i.prescription_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:ya(i.payment_slip_audit_status),size:"small",class:I(Dt("pay",i))},{default:l(()=>[p(" 支付审: "+r(ga(i.payment_slip_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:Is(i.fulfillment_status),size:"small",class:I(Dt("fulfillment",i))},{default:l(()=>[p(r($t(i.fulfillment_status)),1)]),_:2},1032,["type","class"])]),a("div",ro,[i.doctor_name?(o(),m("span",oo,"医:"+r(i.doctor_name),1)):v("",!0),i.creator_name?(o(),m("span",uo,"建:"+r(i.creator_name),1)):v("",!0),_a()&&i.internal_cost!=null&&i.internal_cost!==""?v("",!0):(o(),m("span",po,r(me(i.create_time)),1))]),a("div",{class:"po-card__actions",onClick:e[14]||(e[14]=Ot(()=>{},["stop"]))},[A((o(),g(w,{type:"primary",size:"small",onClick:P=>Ua(i.id)},{default:l(()=>[p(r(gs.value),1)]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/detail"]]]),ha(i)?A((o(),g(w,{key:0,size:"small",onClick:P=>hl(i)},{default:l(()=>[...e[112]||(e[112]=[p("编辑",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/edit"]]]):v("",!0),Gs(i)?A((o(),g(w,{key:1,type:"success",size:"small",onClick:P=>Ol(i)},{default:l(()=>[...e[113]||(e[113]=[p("改单号",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),zt(i)?A((o(),g(w,{key:2,type:"primary",size:"small",onClick:P=>aa(i)},{default:l(()=>[...e[114]||(e[114]=[p("发货",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ws(i)?(o(),g(ns,{key:3,trigger:"click",onCommand:P=>Ks(P,i)},{dropdown:l(()=>[s(Pt,null,{default:l(()=>[Ut(i)?(o(),g(ve,{key:0,command:"addPayOrder"},{default:l(()=>[...e[116]||(e[116]=[p("补齐支付单",-1)])]),_:1})):v("",!0),Ft(i)?(o(),g(ve,{key:1,command:"complete"},{default:l(()=>[...e[117]||(e[117]=[p("完成订单",-1)])]),_:1})):v("",!0),Sa(i)?(o(),g(ve,{key:2,command:"submitGancao"},{default:l(()=>[...e[118]||(e[118]=[p("上传药方",-1)])]),_:1})):v("",!0),wa(i)?(o(),g(ve,{key:3,command:"withdraw",divided:""},{default:l(()=>[...e[119]||(e[119]=[a("span",{class:"text-red-500"},"撤回订单",-1)])]),_:1})):v("",!0)]),_:2},1024)]),default:l(()=>[s(w,{size:"small"},{default:l(()=>[e[115]||(e[115]=p(" 更多",-1)),s(u,{class:"el-icon--right"},{default:l(()=>[s(R(us))]),_:1})]),_:1})]),_:2},1032,["onCommand"])):v("",!0)])],10,Vr))),128))]),a("div",co,[s(ia,{modelValue:R(te),"onUpdate:modelValue":e[15]||(e[15]=i=>Oi(te)?te.value=i:null),onChange:R(K)},null,8,["modelValue","onChange"])])]),_:1})),[[ge,R(te).loading]]),s(oa,{modelValue:J.value,"onUpdate:modelValue":e[26]||(e[26]=i=>J.value=i),class:"po-detail-drawer po-detail-drawer--h5",size:"100%",direction:"btt","destroy-on-close":"","close-on-click-modal":!1},{header:l(()=>{var i,P;return[a("div",_o,[a("div",mo,[e[120]||(e[120]=a("span",{class:"po-detail-drawer-title shrink-0 text-gray-800 font-semibold text-lg"},"业务订单详情",-1)),(i=c.value)!=null&&i.order_no?(o(),g(d,{key:0,type:"primary",effect:"plain",round:"",class:"max-w-full !whitespace-normal break-all text-left leading-snug"},{default:l(()=>[p(r(c.value.order_no),1)]),_:1})):v("",!0),(P=c.value)!=null&&P.gancao_reciperl_order_no?(o(),g(d,{key:1,type:"success",effect:"plain",round:"",class:"max-w-full !whitespace-normal break-all text-left leading-snug"},{default:l(()=>[p("甘草 "+r(c.value.gancao_reciperl_order_no),1)]),_:1})):v("",!0)]),c.value?(o(),m("div",fo,[qs(c.value)?A((o(),g(w,{key:0,type:"warning",size:"small",plain:"",onClick:e[16]||(e[16]=N=>Ia(c.value,"prescription"))},{default:l(()=>[...e[121]||(e[121]=[p(" 处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Bs(c.value)?A((o(),g(w,{key:1,type:"info",size:"small",plain:"",onClick:e[17]||(e[17]=N=>Ul(c.value))},{default:l(()=>[...e[122]||(e[122]=[p(" 撤回处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Ms(c.value)?A((o(),g(w,{key:2,type:"warning",size:"small",plain:"",onClick:e[18]||(e[18]=N=>Ia(c.value,"payment"))},{default:l(()=>[...e[123]||(e[123]=[p(" 支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Hs(c.value)?A((o(),g(w,{key:3,type:"info",size:"small",plain:"",onClick:e[19]||(e[19]=N=>Fl(c.value))},{default:l(()=>[...e[124]||(e[124]=[p(" 撤回支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),zt(c.value)?A((o(),g(w,{key:4,type:"primary",size:"small",plain:"",onClick:e[20]||(e[20]=N=>aa(c.value))},{default:l(()=>[...e[125]||(e[125]=[p(" 确认发货 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ut(c.value)?A((o(),g(w,{key:5,type:"success",size:"small",plain:"",onClick:e[21]||(e[21]=N=>Ga(c.value))},{default:l(()=>[...e[126]||(e[126]=[p(" 关联支付单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Ft(c.value)?A((o(),g(w,{key:6,type:"primary",size:"small",plain:"",onClick:e[22]||(e[22]=N=>Wa(c.value))},{default:l(()=>[...e[127]||(e[127]=[p(" 完成订单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/complete"]]]):v("",!0)])):v("",!0)])]}),default:l(()=>[It.value?(o(),g(We,{key:0,rows:12,animated:"",class:"px-6 py-4"})):c.value?(o(),m("div",vo,[Re.value?(o(),g(le,{key:0,type:"error",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:"业务订单收货手机与处方登记手机不一致"},{default:l(()=>[a("div",go,[a("div",null,[e[128]||(e[128]=p(" 处方手机: ",-1)),a("span",yo,r(Qs.value),1)]),a("div",null,[e[129]||(e[129]=p(" 订单收货手机: ",-1)),a("span",bo,r(Js.value),1)]),e[130]||(e[130]=a("div",{class:"text-gray-600 mt-1"},"请核对是否代收货或录入错误,避免物流与回访联系错人。",-1))])]),_:1})):v("",!0),a("div",xo,[s(Ke,{class:"po-workflow-steps",direction:"vertical",active:rt.value,"finish-status":"success"},{default:l(()=>[s(oe,{title:"业务订单创建",description:me(c.value.create_time)},null,8,["description"]),s(oe,{title:"处方单双审",status:ot.value},{description:l(()=>[ot.value==="error"?(o(),m("span",ko,"处方被驳回")):ot.value==="wait"?(o(),m("span",ho,"等待审核")):ot.value==="success"?(o(),m("span",wo,"双审通过")):(o(),m("span",So,"进行中"))]),_:1},8,["status"]),s(oe,{title:"支付单审核",status:ut.value},{description:l(()=>[ut.value==="error"?(o(),m("span",Vo,"支付审核驳回")):ut.value==="wait"?(o(),m("span",No,"等待审核")):ut.value==="success"?(o(),m("span",Co,"审核通过")):(o(),m("span",Po,"进行中"))]),_:1},8,["status"]),s(oe,{title:"发货与履约",status:xe.value},{description:l(()=>{var i,P,N;return[xe.value==="process"&&Number((i=c.value)==null?void 0:i.fulfillment_status)===7?(o(),m("span",To,"进行中")):xe.value==="process"?(o(),m("span",Ao,"等待发货/补充单号")):xe.value==="wait"?(o(),m("span",Oo,"待转入履约")):xe.value==="success"?(o(),m("span",Ro,r($t((P=c.value)==null?void 0:P.fulfillment_status)),1)):xe.value==="error"?(o(),m("span",Eo,r($t((N=c.value)==null?void 0:N.fulfillment_status)),1)):v("",!0)]}),_:1},8,["status"]),s(oe,{title:"订单完成"})]),_:1},8,["active"])]),s(pe,{gutter:16,class:"mb-5"},{default:l(()=>[s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[a("div",Do,[e[132]||(e[132]=a("div",{class:"stat-title text-gray-500 text-xs"},"总金额",-1)),jt(c.value)?A((o(),g(w,{key:0,type:"primary",size:"small",link:"",onClick:cl},{default:l(()=>[...e[131]||(e[131]=[p(" 修改 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/updateAmount"]]]):v("",!0)]),a("div",$o,"¥"+r(c.value.amount),1)]),_:1})]),_:1}),s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[133]||(e[133]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付总额",-1)),a("div",zo,"¥"+r(c.value.linked_pay_paid_total||0),1)]),_:1})]),_:1}),s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[134]||(e[134]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"需代收",-1)),a("div",{class:I(["stat-value font-bold text-xl",Ca.value>0?"text-amber-600":"text-gray-500"])}," ¥"+r(de(Ca.value)),3)]),_:1})]),_:1}),s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[135]||(e[135]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付笔数",-1)),a("div",Uo,r(Lt.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),a("div",Fo,[s(n,{shadow:"never",class:"po-panel po-panel-rx border-gray-100 h-full relative overflow-hidden"},{header:l(()=>[a("div",Lo,[a("div",qo,[e[138]||(e[138]=a("span",{class:"po-panel-rx-header__title font-medium text-[15px] leading-snug"},"处方详情",-1)),a("span",Mo," ID: "+r(c.value.prescription_id||"—"),1)]),c.value.doctor_name?(o(),m("div",Bo,[e[139]||(e[139]=p(" 开方人:",-1)),a("span",Ho,r(c.value.doctor_name),1)])):v("",!0),a("div",Go,[c.value.prescription_id&&C.value&&!String(c.value.prescription_detail_error||"").trim()?A((o(),g(w,{key:0,type:"default",size:"small",link:"",onClick:ul},{default:l(()=>[...e[140]||(e[140]=[p(" 改患者信息 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/patchPrescriptionPatient"]]]):v("",!0),c.value.prescription_id&&_e.value?(o(),g(w,{key:1,type:"primary",size:"small",link:"",onClick:e[23]||(e[23]=i=>as(c.value))},{default:l(()=>[...e[141]||(e[141]=[p(" 详细 ",-1)])]),_:1})):v("",!0),c.value.id&&_e.value?(o(),g(w,{key:2,type:"warning",size:"small",link:"",loading:Ve.value,icon:R(da),onClick:Tl},{default:l(()=>[...e[142]||(e[142]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0)])])]),default:l(()=>[c.value.prescription_audit_status===1?(o(),m("div",jo,[...e[136]||(e[136]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.prescription_audit_status===2?(o(),m("div",Io,[...e[137]||(e[137]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),String(c.value.prescription_detail_error||"").trim()?(o(),g(le,{key:2,title:c.value.prescription_detail_error,type:"warning",closable:!1,"show-icon":"",class:"mb-3"},null,8,["title"])):C.value?(o(),m(D,{key:3},[s(Ye,{column:1,border:"",size:"small",class:"po-desc bg-white"},{default:l(()=>[s(V,{label:"处方编号",span:2},{default:l(()=>[p(r(C.value.sn||"—"),1)]),_:1}),s(V,{label:"患者"},{default:l(()=>[p(r(C.value.patient_name||"—"),1)]),_:1}),s(V,{label:"性别 / 年龄"},{default:l(()=>[p(r(C.value.gender_desc||"—")+" · "+r(C.value.age??"—")+"岁 ",1)]),_:1}),s(V,{label:"手机"},{default:l(()=>[a("span",{class:I(Re.value?"rx-phone-mismatch text-red-600 font-bold":"")},r(C.value.phone||"—"),3),Re.value?(o(),g(d,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:l(()=>[...e[143]||(e[143]=[p(" 与订单手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),s(V,{label:"处方日期"},{default:l(()=>[p(r(C.value.prescription_date||"—"),1)]),_:1}),s(V,{label:"医师"},{default:l(()=>[p(r(C.value.doctor_name||"—"),1)]),_:1}),s(V,{label:"类型"},{default:l(()=>[p(r(C.value.prescription_type||"—"),1)]),_:1}),s(V,{label:"临床诊断",span:2},{default:l(()=>[p(r(C.value.clinical_diagnosis||"—"),1)]),_:1}),_e.value?(o(),g(V,{key:0,label:"剂数 / 用法",span:2},{default:l(()=>[p(r(c.value.dose_count??C.value.dose_count??"—")+" "+r(c.value.dose_unit||"剂")+" · "+r(C.value.usage_instruction||C.value.usage_method||"—"),1)]),_:1})):v("",!0),s(V,{label:"处方金额"},{default:l(()=>[a("span",Wo,"¥"+r(C.value.amount??"—"),1)]),_:1}),s(V,{label:"消费者审核"},{default:l(()=>[s(d,{type:tl(C.value.audit_status),size:"small"},{default:l(()=>[p(r(el(C.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),s(V,{label:"用量"},{default:l(()=>[C.value.dosage_amount?(o(),m(D,{key:0},[p(r(C.value.dosage_amount)+r(C.value.dosage_unit||"g")+" ",1),C.value.prescription_type==="浓缩水丸"?(o(),m(D,{key:0},[p(" · "+r(Number(C.value.dosage_bag_count)>0?Number(C.value.dosage_bag_count):1)+"袋 ",1)],64)):v("",!0),C.value.prescription_type==="饮片"&&C.value.need_decoction!==null?(o(),m("span",Ko," ("+r(C.value.need_decoction?"代煎":"不代煎")+") ",1)):v("",!0)],64)):(o(),m(D,{key:1},[p("—")],64))]),_:1}),s(V,{label:"服用方式"},{default:l(()=>[a("div",Yo,[a("div",null,[e[144]||(e[144]=a("span",{class:"text-gray-500"},"每天次数:",-1)),p(" "+r(C.value.times_per_day?C.value.times_per_day+" 次":"—"),1)]),a("div",null,[e[145]||(e[145]=a("span",{class:"text-gray-500"},"处方开立:",-1)),p(" "+r(C.value.usage_days!=null&&C.value.usage_days!==""?C.value.usage_days+" 天":"—"),1)]),a("div",null,[e[146]||(e[146]=a("span",{class:"text-gray-500"},"订单设置:",-1)),p(" "+r(c.value.medication_days!=null&&String(c.value.medication_days).trim()!==""?c.value.medication_days+" 天":"—"),1)])])]),_:1}),s(V,{label:"状态",span:2},{default:l(()=>[s(d,{type:Number(C.value.void_status)===1?"danger":"success",size:"small"},{default:l(()=>[p(r(Number(C.value.void_status)===1?"已作废":"正常"),1)]),_:1},8,["type"])]),_:1})]),_:1}),Xs.value?(o(),m("div",Qo,[e[147]||(e[147]=a("div",{class:"text-xs font-medium text-gray-500 mb-2 px-1"},"药材明细",-1)),Aa.value.length?(o(),g(Tt,{key:0,data:Aa.value,size:"small",border:"",stripe:"","max-height":"260"},{default:l(()=>[s($,{type:"index",label:"#",width:"48",align:"center"}),s($,{prop:"name",label:"药名","min-width":"120","show-overflow-tooltip":""}),s($,{prop:"dosage",label:"用量(g)",width:"96",align:"right"})]),_:1},8,["data"])):(o(),g(re,{key:1,description:"无处方药材明细","image-size":64}))])):v("",!0)],64)):(o(),g(re,{key:4,description:"无处方数据","image-size":72}))]),_:1}),a("div",Jo,[s(n,{shadow:"never",class:"po-panel border-gray-100"},{header:l(()=>[...e[148]||(e[148]=[a("div",{class:"flex items-center justify-between"},[a("span",{class:"font-medium text-[15px]"},"未关联的收款记录"),a("span",{class:"text-xs text-gray-400"},"本诊单下未被占用的支付单")],-1)])]),default:l(()=>[ke.value.length?(o(),g(Tt,{key:0,data:ke.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s($,{prop:"id",label:"ID",width:"70"}),s($,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s($,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||nt(i.order_type)),1)]),_:1}),s($,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",Xo,"¥"+r(i.amount),1)]),_:1}),s($,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Ra(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||Va(i.status)),1)]),_:2},1032,["type"]),i.is_exempt===1?(o(),g(d,{key:0,type:"warning",size:"small",class:"ml-1"},{default:l(()=>[...e[149]||(e[149]=[p("豁免",-1)])]),_:1})):v("",!0)]),_:1}),s($,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s($,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ea(i.create_time)),1)]),_:1})]),_:1},8,["data"])):(o(),g(re,{key:1,description:"无未关联的收款单","image-size":60}))]),_:1}),s(n,{shadow:"never",class:"po-panel po-panel-pay border-gray-100 relative overflow-hidden"},{header:l(()=>[a("div",tu,[a("div",au,[e[153]||(e[153]=a("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),c.value.creator_name?(o(),m("span",su,[e[152]||(e[152]=p(" 创建人:",-1)),a("span",lu,r(c.value.creator_name),1)])):v("",!0)])])]),default:l(()=>[c.value.payment_slip_audit_status===1?(o(),m("div",Zo,[...e[150]||(e[150]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.payment_slip_audit_status===2?(o(),m("div",eu,[...e[151]||(e[151]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),Lt.value.length?(o(),g(Tt,{key:2,data:Lt.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s($,{prop:"id",label:"ID",width:"70"}),s($,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s($,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||nt(i.order_type)),1)]),_:1}),s($,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",nu,"¥"+r(i.amount),1)]),_:1}),s($,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Ra(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||Va(i.status)),1)]),_:2},1032,["type"]),i.is_exempt===1?(o(),g(d,{key:0,type:"warning",size:"small",class:"ml-1"},{default:l(()=>[...e[154]||(e[154]=[p("豁免",-1)])]),_:1})):v("",!0)]),_:1}),s($,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s($,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ea(i.create_time)),1)]),_:1})]),_:1},8,["data"])):(o(),g(re,{key:3,description:"未关联收款单","image-size":60}))]),_:1})])]),s(n,{shadow:"never",class:"po-panel po-panel-biz border-gray-100 mb-4"},{header:l(()=>[...e[155]||(e[155]=[a("span",{class:"font-medium text-[15px]"},"履约与收货信息",-1)])]),default:l(()=>[s(Ye,{column:1,border:"",size:"small",class:"po-desc"},{default:l(()=>[s(V,{label:"诊单ID"},{default:l(()=>[a("div",iu,[a("div",ru,[e[156]||(e[156]=a("span",{class:"text-[11px] font-semibold uppercase tracking-[0.06em] text-slate-500"},"关联诊单",-1)),a("span",ou,r(c.value.diagnosis_id||"—"),1),e[157]||(e[157]=a("span",{class:"text-[12px] leading-snug text-slate-500"},"病历与体征以诊单为准,可全屏查看",-1))]),Number(c.value.diagnosis_id)>0?(o(),g(w,{key:0,type:"primary",plain:"",round:"",size:"default",class:"po-biz-diagnosis-id__btn w-full shrink-0 touch-manipulation sm:w-auto !m-0",icon:R(Zn),"aria-label":"打开关联诊单详情(患者与病历)",onClick:ms},{default:l(()=>[...e[158]||(e[158]=[p(" 查看诊单详情 ",-1)])]),_:1},8,["icon"])):v("",!0)])]),_:1}),s(V,{label:"创建时间"},{default:l(()=>[p(r(me(c.value.create_time)),1)]),_:1}),s(V,{label:"收货人"},{default:l(()=>[p(r(c.value.recipient_name),1)]),_:1}),s(V,{label:"挂号关联",span:3},{default:l(()=>[W.value?(o(),m(D,{key:0},[a("div",uu,[a("span",null,[e[159]||(e[159]=p("预约 ",-1)),a("span",du,"#"+r(W.value.id),1)]),a("span",pu,"时间:"+r(W.value.appointment_date)+" "+r(W.value.period)+" "+r(W.value.appointment_time),1),s(d,{size:"small",type:"info"},{default:l(()=>[p(r(W.value.appointment_type_desc),1)]),_:1}),s(d,{size:"small"},{default:l(()=>[p(r(W.value.status_desc),1)]),_:1}),W.value.doctor_name?(o(),m("span",cu,"接诊:"+r(W.value.doctor_name),1)):v("",!0),W.value.channel_source?(o(),m("span",_u,"渠道:"+r(W.value.channel_source),1)):v("",!0),Ta.value?(o(),g(d,{key:2,size:"small",effect:"plain"},{default:l(()=>[p(r(Ta.value),1)]),_:1})):v("",!0)]),String(W.value.remark||"").trim()?(o(),m("p",mu," 备注:"+r(W.value.remark),1)):v("",!0)],64)):(o(),m("span",fu,"暂无挂号预约记录(未绑定或诊单下无预约)"))]),_:1}),s(V,{label:"收货手机"},{default:l(()=>[a("span",{class:I(Re.value?"text-red-600 font-bold font-mono":"font-mono")},r(c.value.recipient_phone||"—"),3),Re.value?(o(),g(d,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:l(()=>[...e[160]||(e[160]=[p(" 与处方手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),s(V,{label:"收货地址",span:2},{default:l(()=>[p(r(Zs.value),1)]),_:1}),s(V,{label:"复诊"},{default:l(()=>[p(r(c.value.is_follow_up?"是":"否"),1)]),_:1}),s(V,{label:"用药疗程"},{default:l(()=>[p(r(c.value.medication_days?c.value.medication_days+" 天":"—"),1)]),_:1}),s(V,{label:"上次医护"},{default:l(()=>[p(r(c.value.prev_staff||"—"),1)]),_:1}),s(V,{label:"服务渠道"},{default:l(()=>[p(r(c.value.service_channel||"—"),1)]),_:1}),s(V,{label:"服务套餐"},{default:l(()=>[p(r(js(c.value.service_package)),1)]),_:1}),s(V,{label:"费用类别"},{default:l(()=>[p(r(nt(c.value.fee_type)),1)]),_:1}),c.value.internal_cost!=null&&c.value.internal_cost!==""?(o(),g(V,{key:0,label:"内部成本"},{default:l(()=>[p(" ¥"+r(c.value.internal_cost),1)]),_:1})):v("",!0),s(V,{label:"快递单号",span:c.value.internal_cost!=null&&c.value.internal_cost!==""?1:2},{default:l(()=>[p(r(c.value.tracking_number||"—"),1)]),_:1},8,["span"]),s(V,{label:"快递公司"},{default:l(()=>[p(r(rl(c.value.express_company)),1)]),_:1}),A((o(),g(V,{label:"备注",span:3},{default:l(()=>[p(r(c.value.remark_extra||"—"),1)]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(V,{label:"医助备注",span:3},{default:l(()=>[p(r(c.value.remark_assistant||"—"),1)]),_:1}),s(V,{label:"处方审核意见",span:3},{default:l(()=>[a("span",vu,r(c.value.prescription_audit_remark||"—"),1)]),_:1}),s(V,{label:"支付审核意见",span:3},{default:l(()=>[a("span",gu,r(c.value.payment_slip_audit_remark||"—"),1)]),_:1})]),_:1})]),_:1}),String(c.value.tracking_number||"").trim()?(o(),g(n,{key:1,shadow:"never",class:"po-panel po-panel-logistics border-gray-100"},{header:l(()=>[...e[161]||(e[161]=[a("span",{class:"font-medium text-[15px]"},"物流轨迹",-1)])]),default:l(()=>{var i,P,N,j,Qe,Je;return[e[167]||(e[167]=a("p",{class:"po-logistics-tip text-gray-400 text-xs mb-3 font-normal"}," 优先读库,无记录时走快递100。顺丰会校验单号+电话(快递100要求完整手机号更易通过);默认预填订单收货手机,若仍提示验证码错误请改成与顺丰面单一致的号码。 ",-1)),a("div",yu,[s(x,{modelValue:De.value,"onUpdate:modelValue":e[24]||(e[24]=ue=>De.value=ue),clearable:"",maxlength:"20",placeholder:"收件手机(建议11位,与面单一致)",class:"po-logistics-toolbar__phone",onKeyup:Ze(Wt,["enter"])},null,8,["modelValue"]),s(z,{modelValue:Ee.value,"onUpdate:modelValue":e[25]||(e[25]=ue=>Ee.value=ue),placeholder:"承运商",class:"po-logistics-toolbar__carrier"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),A((o(),g(w,{type:"primary",plain:"",size:"default",loading:ct.value,class:"po-logistics-toolbar__btn",onClick:Wt},{icon:l(()=>[s(u,null,{default:l(()=>[s(R(ei))]),_:1})]),default:l(()=>[e[162]||(e[162]=p(" 刷新轨迹 ",-1))]),_:1},8,["loading"])),[[q,["tcm.prescriptionOrder/logisticsTrace"]]]),a("div",bu,[s(ra,{href:Gt.value.sf,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[163]||(e[163]=[p("顺丰官网",-1)])]),_:1},8,["href"]),s(ra,{href:Gt.value.jd,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[164]||(e[164]=[p("京东物流",-1)])]),_:1},8,["href"]),s(ra,{href:Gt.value.jt,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[165]||(e[165]=[p("极兔",-1)])]),_:1},8,["href"])])]),String(((i=H.value)==null?void 0:i.hint)||"").trim()?(o(),g(le,{key:0,title:String(((P=H.value)==null?void 0:P.hint)||""),type:"info",closable:!1,class:"mb-4","show-icon":""},null,8,["title"])):v("",!0),ct.value&&!H.value?(o(),m("div",xu,[s(u,{class:"is-loading mr-1"},{default:l(()=>[s(R(ti))]),_:1}),e[166]||(e[166]=p("正在加载物流轨迹... ",-1))])):H.value?(o(),m("div",ku,[(N=H.value)!=null&&N.state_text?(o(),m("div",hu,[a("span",wu,"状态:"+r(H.value.state_text),1),(j=H.value)!=null&&j.carrier_label?(o(),g(d,{key:0,size:"small",type:"info"},{default:l(()=>[p(r(H.value.carrier_label),1)]),_:1})):v("",!0),(Qe=H.value)!=null&&Qe.source?(o(),m("span",Su," ["+r(H.value.source==="database"?"数据库缓存":"API拉取")+"] ",1)):v("",!0),(Je=H.value)!=null&&Je.last_query_time?(o(),m("span",Vu," 更新时间:"+r(H.value.last_query_time),1)):v("",!0)])):v("",!0),Da.value.length?(o(),g(rs,{key:1,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m(D,null,B(Da.value,(ue,ye)=>(o(),g(is,{key:ye,type:ye===0?"primary":"info",hollow:ye!==0,timestamp:ue.time,placement:"top"},{default:l(()=>[a("span",{class:I(ye===0?"text-gray-800 font-medium":"text-gray-500")},r(ue.context),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(o(),g(re,{key:2,description:"暂无轨迹节点记录","image-size":64}))])):v("",!0)]}),_:1})):v("",!0),A((o(),g(n,{shadow:"never",class:"po-panel border-gray-100 mt-4"},{header:l(()=>[...e[168]||(e[168]=[a("span",{class:"font-medium text-[15px]"},"操作日志",-1)])]),default:l(()=>[he.value.length?(o(),g(rs,{key:0,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m(D,null,B(he.value,(i,P)=>(o(),g(is,{key:i.id,type:P===0?"primary":"info",hollow:P!==0,timestamp:me(i.create_time),placement:"top"},{default:l(()=>[a("div",Nu,[a("span",Cu,r(i.admin_name),1),s(d,{size:"small",type:"info"},{default:l(()=>[p(r(il(i.action)),1)]),_:2},1024)]),a("span",{class:I(P===0?"text-gray-800 font-medium":"text-gray-500")},r(i.summary),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(o(),g(re,{key:1,description:"暂无操作日志","image-size":64}))]),_:1})),[[q,["tcm.prescriptionOrder/logs"]]])])):v("",!0)]),_:1},8,["modelValue"]),s(ce,{modelValue:$e.value,"onUpdate:modelValue":e[29]||(e[29]=i=>$e.value=i),title:"修改订单金额",width:"92%","destroy-on-close":"","close-on-click-modal":!1,onClosed:pl},{footer:l(()=>[s(w,{onClick:e[28]||(e[28]=i=>$e.value=!1)},{default:l(()=>[...e[170]||(e[170]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:Bt.value,onClick:za},{default:l(()=>[...e[171]||(e[171]=[p(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(F,{ref_key:"updateAmountFormRef",ref:_t,model:ie,rules:ll,"label-width":"84px",onSubmit:Ot(za,["prevent"])},{default:l(()=>[s(f,{label:"当前金额"},{default:l(()=>{var i;return[a("div",Pu,"¥"+r(de((i=c.value)==null?void 0:i.amount)),1)]}),_:1}),s(f,{label:"新金额",prop:"amount"},{default:l(()=>[s(Ce,{modelValue:ie.amount,"onUpdate:modelValue":e[27]||(e[27]=i=>ie.amount=i),min:.01,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[169]||(e[169]=a("div",{class:"text-xs text-gray-400 pl-[84px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(ce,{modelValue:fe.value,"onUpdate:modelValue":e[50]||(e[50]=i=>fe.value=i),title:"编辑业务订单",width:"96%",top:"2vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog create-order-dialog--h5",onClosed:bl},{footer:l(()=>[a("div",od,[a("div",ud,[a("span",dd,"第 "+r(L.value+1)+" / 3 步",1),L.value===2&&M.value>0?(o(),m("span",pd," 订单金额与关联支付单合计须 ≥ ¥"+r(de(M.value)),1)):v("",!0)]),a("div",cd,[s(w,{size:"large",onClick:e[49]||(e[49]=i=>fe.value=!1)},{default:l(()=>[...e[184]||(e[184]=[p("取消",-1)])]),_:1}),L.value>0?(o(),g(w,{key:0,size:"large",onClick:xl},{default:l(()=>[...e[185]||(e[185]=[p("上一步",-1)])]),_:1})):v("",!0),L.value<2?(o(),g(w,{key:1,type:"primary",size:"large",onClick:kl},{default:l(()=>[...e[186]||(e[186]=[p(" 下一步 ",-1)])]),_:1})):v("",!0),L.value===2?(o(),g(w,{key:2,type:"primary",size:"large",loading:Jt.value,onClick:wl},{default:l(()=>[...e[187]||(e[187]=[p(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:l(()=>[A((o(),m("div",Tu,[se.value?(o(),m("div",Au,[a("div",Ou,[e[172]||(e[172]=a("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),a("div",Ru,[a("span",Eu,"#"+r(se.value.id),1),se.value.sn?(o(),m("span",Du,r(se.value.sn),1)):v("",!0),a("span",$u,r(se.value.patient_name||"—"),1)])]),s(os,{content:Fa.value,placement:"bottom","show-after":300},{default:l(()=>[a("div",zu,r(Fa.value),1)]),_:1},8,["content"])])):v("",!0),s(Ke,{active:L.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:l(()=>[s(oe,{title:"患者与收货",description:"诊单与物流地址"}),s(oe,{title:"服务与支付单",description:"套餐与关联收款"}),s(oe,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),a("p",Uu,r(ml.value),1),s(F,{ref_key:"editFormRef",ref:we,model:_,rules:yl.value,"label-width":"108px",class:"create-order-form"},{default:l(()=>[A(a("div",Fu,[s(pe,{gutter:20},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"收货人",prop:"recipient_name"},{default:l(()=>[s(x,{modelValue:_.recipient_name,"onUpdate:modelValue":e[30]||(e[30]=i=>_.recipient_name=i),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"收货手机",prop:"recipient_phone"},{default:l(()=>[s(x,{modelValue:_.recipient_phone,"onUpdate:modelValue":e[31]||(e[31]=i=>_.recipient_phone=i),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"省市区",prop:"region"},{default:l(()=>[s(an,{modelValue:_.region,"onUpdate:modelValue":e[32]||(e[32]=i=>_.region=i),options:et.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"详细地址",prop:"shipping_address"},{default:l(()=>[s(x,{modelValue:_.shipping_address,"onUpdate:modelValue":e[33]||(e[33]=i=>_.shipping_address=i),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[At,L.value===0]]),A(a("div",ju,[_e.value?(o(),g(pe,{key:0,gutter:20,class:"mb-1"},{default:l(()=>[s(E,{span:24},{default:l(()=>[a("div",Iu,[e[175]||(e[175]=a("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),_.prescription_id?(o(),g(w,{key:0,type:"primary",size:"small",link:"",onClick:Xl},{default:l(()=>[...e[173]||(e[173]=[p(" 详细 ",-1)])]),_:1})):v("",!0),_.id?(o(),g(w,{key:1,type:"warning",size:"small",link:"",loading:Ve.value,icon:R(da),onClick:Pl},{default:l(()=>[...e[174]||(e[174]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),a("span",Lu,"ID: "+r(_.prescription_id||"—"),1)]),a("div",qu,[ja.value.length?(o(),m("div",Mu,[e[176]||(e[176]=a("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),m(D,null,B(ja.value,(i,P)=>(o(),m("div",{key:P,class:"pl-0 min-w-0"},[i.length?(o(),g(ln,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:l(()=>[(o(!0),m(D,null,B(i,(N,j)=>(o(),g(sn,{key:j},{default:l(()=>[a("span",Bu,r(N),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),m("div",Hu,"创建人所属部门:—"))])]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"复诊"},{default:l(()=>[s(nn,{modelValue:_.is_follow_up,"onUpdate:modelValue":e[34]||(e[34]=i=>_.is_follow_up=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:l(()=>[a("div",Gu,[s(Ce,{modelValue:_.medication_days,"onUpdate:modelValue":e[35]||(e[35]=i=>_.medication_days=i),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[177]||(e[177]=a("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"上次医生"},{default:l(()=>[s(x,{modelValue:_.prev_staff,"onUpdate:modelValue":e[36]||(e[36]=i=>_.prev_staff=i),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:Oa.value,prop:"dose_count"},{default:l(()=>[s(Ce,{modelValue:_.dose_count,"onUpdate:modelValue":e[37]||(e[37]=i=>_.dose_count=i),min:1,placeholder:Oa.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"剂量单位",prop:"dose_unit"},{default:l(()=>[s(z,{modelValue:_.dose_unit,"onUpdate:modelValue":e[38]||(e[38]=i=>_.dose_unit=i),placeholder:"请选择",class:"w-full"},{default:l(()=>[s(y,{label:"剂",value:"剂"}),s(y,{label:"丸",value:"丸"}),s(y,{label:"袋",value:"袋"}),s(y,{label:"盒",value:"盒"}),s(y,{label:"瓶",value:"瓶"}),s(y,{label:"膏",value:"膏"}),s(y,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),s(pe,{gutter:20},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"服务渠道"},{default:l(()=>[s(x,{modelValue:_.service_channel,"onUpdate:modelValue":e[39]||(e[39]=i=>_.service_channel=i),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"服务套餐"},{default:l(()=>[s(z,{modelValue:_.service_package,"onUpdate:modelValue":e[40]||(e[40]=i=>_.service_package=i),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:l(()=>[(o(!0),m(D,null,B(Ae.value,i=>(o(),g(y,{key:i.value,label:i.name,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"物流设置"},{default:l(()=>[a("div",Wu,[s(z,{modelValue:_.express_company,"onUpdate:modelValue":e[41]||(e[41]=i=>_.express_company=i),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),s(x,{modelValue:_.tracking_number,"onUpdate:modelValue":e[42]||(e[42]=i=>_.tracking_number=i),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"关联支付单",prop:"pay_order_ids",required:M.value>0},{default:l(()=>[s(z,{modelValue:_.pay_order_ids,"onUpdate:modelValue":e[43]||(e[43]=i=>_.pay_order_ids=i),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:M.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Xt.value},{default:l(()=>[(o(!0),m(D,null,B(Ue.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Zt(i.order_type)}`,value:i.id,class:"!h-auto py-1.5"},{default:l(()=>[a("div",Ku,[a("div",Yu,[a("span",Qu,r(i.order_no),1),a("span",Ju,"¥"+r(i.amount),1)]),a("div",Xu,[a("span",Zu,[p(r(Zt(i.order_type)),1),i.remark?(o(),m(D,{key:0},[p(" · "+r(i.remark),1)],64)):v("",!0)]),a("span",ed,r(String(i.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),a("div",td,[M.value>0?(o(),m(D,{key:0},[a("span",ad,"当前已开启关联支付门槛(¥"+r(de(M.value))+"),须至少选择一笔支付单。",1),e[178]||(e[178]=a("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[180]||(e[180]=p(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),s(os,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:l(()=>[...e[179]||(e[179]=[a("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[At,L.value===1]]),A(a("div",sd,[a("div",{class:I(["create-order-deposit-bar",ea.value>=M.value?"is-ok":"is-warn"])},[a("div",ld,[e[181]||(e[181]=a("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),a("strong",null,"¥"+r(de(M.value)),1),a("span",nd,r(M.value>0?"须 ≥ 此值":"未设置"),1)]),e[183]||(e[183]=a("div",{class:"create-order-deposit-bar__sep"},null,-1)),a("div",id,[e[182]||(e[182]=a("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),a("strong",null,"¥"+r(de(ea.value)),1),a("span",rd,r(ea.value>=M.value?"已达标":"未达标"),1)])],2),s(pe,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"费用类别",prop:"fee_type"},{default:l(()=>[s(z,{modelValue:_.fee_type,"onUpdate:modelValue":e[44]||(e[44]=i=>_.fee_type=i),placeholder:"请选择",class:"w-full"},{default:l(()=>[s(y,{label:"挂号费",value:1}),s(y,{label:"问诊费",value:2}),s(y,{label:"药品费用",value:3}),s(y,{label:"首付费用",value:4}),s(y,{label:"尾款费用",value:5}),s(y,{label:"其他费用",value:6}),s(y,{label:"全部费用",value:7}),s(y,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"总金额",prop:"amount"},{default:l(()=>[s(Ce,{modelValue:_.amount,"onUpdate:modelValue":e[45]||(e[45]=i=>_.amount=i),min:vl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),A((o(),g(E,{span:12},{default:l(()=>[s(f,{label:"内部成本"},{default:l(()=>[s(Ce,{modelValue:_.internal_cost,"onUpdate:modelValue":e[46]||(e[46]=i=>_.internal_cost=i),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[q,["finance.account_log/lists"]]]),s(E,{span:24},{default:l(()=>[A((o(),g(f,{label:"药房备注"},{default:l(()=>[s(x,{modelValue:_.remark_extra,"onUpdate:modelValue":e[47]||(e[47]=i=>_.remark_extra=i),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(f,{label:"医助备注"},{default:l(()=>[s(x,{modelValue:_.remark_assistant,"onUpdate:modelValue":e[48]||(e[48]=i=>_.remark_assistant=i),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[At,L.value===2]])]),_:1},8,["model","rules"])])),[[ge,Qt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Fe.value,"onUpdate:modelValue":e[55]||(e[55]=i=>Fe.value=i),title:Sl.value,width:"92%","destroy-on-close":"",class:"po-h5-dialog",onClosed:e[56]||(e[56]=i=>Se.value="")},{footer:l(()=>[s(w,{onClick:e[52]||(e[52]=i=>Fe.value=!1)},{default:l(()=>[...e[189]||(e[189]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:ft.value,onClick:e[53]||(e[53]=i=>La("approve"))},{default:l(()=>[...e[190]||(e[190]=[p("同意通过",-1)])]),_:1},8,["loading"]),s(w,{type:"danger",loading:ft.value,onClick:e[54]||(e[54]=i=>La("reject"))},{default:l(()=>[...e[191]||(e[191]=[p("驳回阻止",-1)])]),_:1},8,["loading"])]),default:l(()=>[je.value&&je.value.completion_request===1?(o(),g(le,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:l(()=>[a("div",_d,[e[188]||(e[188]=a("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),a("div",md," 申请人:"+r(je.value.completion_request_by_name||"—"),1),a("div",fd," 申请时间:"+r(me(je.value.completion_request_time)),1)])]),_:1})):v("",!0),e[192]||(e[192]=a("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),s(x,{modelValue:Se.value,"onUpdate:modelValue":e[51]||(e[51]=i=>Se.value=i),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),s(ce,{modelValue:Ie.value,"onUpdate:modelValue":e[60]||(e[60]=i=>Ie.value=i),title:"修改快递单号",width:"92%","destroy-on-close":"",class:"po-h5-dialog","close-on-click-modal":!1},{footer:l(()=>[s(w,{onClick:e[59]||(e[59]=i=>Ie.value=!1)},{default:l(()=>[...e[194]||(e[194]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:gt.value,onClick:Ba},{default:l(()=>[...e[195]||(e[195]=[p("保存单号",-1)])]),_:1},8,["loading"])]),default:l(()=>[A((o(),g(F,{"label-width":"90px",class:"pr-2",onSubmit:Ot(Ba,["prevent"])},{default:l(()=>[s(f,{label:"承运商"},{default:l(()=>[s(z,{modelValue:X.express_company,"onUpdate:modelValue":e[57]||(e[57]=i=>X.express_company=i),class:"w-full",placeholder:"选择承运商"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"快递单号"},{default:l(()=>[s(x,{modelValue:X.tracking_number,"onUpdate:modelValue":e[58]||(e[58]=i=>X.tracking_number=i),maxlength:"80",placeholder:"请输入快递单号",clearable:"",autofocus:""},null,8,["modelValue"])]),_:1}),e[193]||(e[193]=a("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[ge,gt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:qe.value,"onUpdate:modelValue":e[65]||(e[65]=i=>qe.value=i),title:"确认发货",width:"92%","destroy-on-close":"",class:"po-h5-dialog","close-on-click-modal":!1},{footer:l(()=>[s(w,{onClick:e[64]||(e[64]=i=>qe.value=!1)},{default:l(()=>[...e[198]||(e[198]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:yt.value,onClick:Ha},{default:l(()=>[...e[199]||(e[199]=[p(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(le,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),g(F,{"label-width":"90px",class:"pr-2",onSubmit:Ot(Ha,["prevent"])},{default:l(()=>[s(f,{label:"发货方式"},{default:l(()=>[s(ua,{modelValue:Y.ship_mode,"onUpdate:modelValue":e[61]||(e[61]=i=>Y.ship_mode=i)},{default:l(()=>[s(Pe,{label:"gancao"},{default:l(()=>[...e[196]||(e[196]=[p("甘草药方发",-1)])]),_:1}),s(Pe,{label:"direct"},{default:l(()=>[...e[197]||(e[197]=[p("药房直发",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"承运商"},{default:l(()=>[s(z,{modelValue:Y.express_company,"onUpdate:modelValue":e[62]||(e[62]=i=>Y.express_company=i),class:"w-full"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"快递单号"},{default:l(()=>[s(x,{modelValue:Y.tracking_number,"onUpdate:modelValue":e[63]||(e[63]=i=>Y.tracking_number=i),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[ge,yt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Me.value,"onUpdate:modelValue":e[68]||(e[68]=i=>Me.value=i),title:"完成订单",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[69]||(e[69]=i=>sa.value=0)},{footer:l(()=>[s(w,{onClick:e[67]||(e[67]=i=>Me.value=!1)},{default:l(()=>[...e[200]||(e[200]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:la.value,onClick:El},{default:l(()=>[...e[201]||(e[201]=[p(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[e[202]||(e[202]=a("p",{class:"text-sm text-gray-600 mb-3"},"请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总。",-1)),s(z,{modelValue:xt.value,"onUpdate:modelValue":e[66]||(e[66]=i=>xt.value=i),class:"w-full",placeholder:"请选择"},{default:l(()=>[(o(),m(D,null,B(Rl,i=>s(y,{key:i.value,label:i.label,value:i.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),s(ce,{modelValue:Be.value,"onUpdate:modelValue":e[77]||(e[77]=i=>Be.value=i),title:"补齐支付单",width:"94%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[78]||(e[78]=i=>{var P;return(P=ht.value)==null?void 0:P.clearValidate()})},{footer:l(()=>[s(w,{onClick:e[76]||(e[76]=i=>Be.value=!1)},{default:l(()=>[...e[209]||(e[209]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:kt.value,onClick:zl},{default:l(()=>[...e[210]||(e[210]=[p("确认新增",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(le,{title:"可以手动创建新支付单,或关联已存在但未绑定的支付单。",type:"info",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),g(F,{ref_key:"addPayOrderFormRef",ref:ht,model:O,rules:Dl,"label-width":"90px",class:"pr-2"},{default:l(()=>[s(f,{label:"添加方式",prop:"add_mode"},{default:l(()=>[s(ua,{modelValue:O.add_mode,"onUpdate:modelValue":e[70]||(e[70]=i=>O.add_mode=i)},{default:l(()=>[s(Pe,{value:"create"},{default:l(()=>[...e[203]||(e[203]=[p("手动创建",-1)])]),_:1}),s(Pe,{value:"link"},{default:l(()=>[...e[204]||(e[204]=[p("关联已有",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),O.add_mode==="create"?(o(),m(D,{key:0},[s(f,{label:"费用类别",prop:"order_type"},{default:l(()=>[s(z,{modelValue:O.order_type,"onUpdate:modelValue":e[71]||(e[71]=i=>O.order_type=i),class:"w-full"},{default:l(()=>[s(y,{label:"挂号费",value:1}),s(y,{label:"问诊费",value:2}),s(y,{label:"药品费用",value:3}),s(y,{label:"首付费用",value:4}),s(y,{label:"尾款费用",value:5}),s(y,{label:"其他费用",value:6}),s(y,{label:"全部费用",value:7}),s(y,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"支付金额",prop:"pay_amount"},{default:l(()=>[s(Ce,{modelValue:O.pay_amount,"onUpdate:modelValue":e[72]||(e[72]=i=>O.pay_amount=i),min:.01,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元)"},null,8,["modelValue"])]),_:1}),s(f,{label:"备注",prop:"pay_remark"},{default:l(()=>[s(x,{modelValue:O.pay_remark,"onUpdate:modelValue":e[73]||(e[73]=i=>O.pay_remark=i),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):(o(),g(f,{key:1,label:"选择支付单",prop:"link_pay_order_id"},{default:l(()=>[s(z,{modelValue:O.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=i=>O.link_pay_order_ids=i),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:na.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:l(()=>[(o(!0),m(D,null,B(wt.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Zt(i.order_type)}`,value:i.id},{default:l(()=>[a("div",vd,[a("span",gd,r(i.order_no),1),a("span",yd,"¥"+r(i.amount),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[205]||(e[205]=a("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),s(f,{label:"完单申请"},{default:l(()=>[s(ua,{modelValue:O.completion_request,"onUpdate:modelValue":e[75]||(e[75]=i=>O.completion_request=i)},{default:l(()=>[s(Pe,{value:0},{default:l(()=>[...e[206]||(e[206]=[p("不申请",-1)])]),_:1}),s(Pe,{value:1},{default:l(()=>[...e[207]||(e[207]=[p("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[208]||(e[208]=a("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})]),_:1},8,["model"])),[[ge,kt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:ze.value,"onUpdate:modelValue":e[82]||(e[82]=i=>ze.value=i),title:"修改处方患者信息",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:dl},{footer:l(()=>[s(w,{onClick:e[81]||(e[81]=i=>ze.value=!1)},{default:l(()=>[...e[211]||(e[211]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:Kt.value,onClick:_l},{default:l(()=>[...e[212]||(e[212]=[p(" 保存 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(F,{ref_key:"patchRxPatientFormRef",ref:Yt,model:ae,rules:ol,"label-width":"96px"},{default:l(()=>[s(f,{label:"患者姓名",prop:"patient_name"},{default:l(()=>[s(x,{modelValue:ae.patient_name,"onUpdate:modelValue":e[79]||(e[79]=i=>ae.patient_name=i),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),s(f,{label:"手机",prop:"phone"},{default:l(()=>[s(x,{modelValue:ae.phone,"onUpdate:modelValue":e[80]||(e[80]=i=>ae.phone=i),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(oa,{modelValue:St.value,"onUpdate:modelValue":e[83]||(e[83]=i=>St.value=i),size:"100%",direction:"btt",class:"po-h5-drawer","close-on-click-modal":!1},{header:l(()=>[a("div",bd,[e[215]||(e[215]=a("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),h.value&&!Vt.value?(o(),m("div",xd,[s(w,{size:"small",loading:Ne.value,onClick:en},{default:l(()=>[...e[213]||(e[213]=[p(" 下载图片 ",-1)])]),_:1},8,["loading"]),s(w,{size:"small",loading:Ne.value,onClick:tn},{default:l(()=>[...e[214]||(e[214]=[p(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:l(()=>[A((o(),m("div",kd,[h.value?(o(),m("div",hd,[Number(h.value.void_status)===1?(o(),g(d,{key:0,type:"danger",size:"small"},{default:l(()=>[...e[216]||(e[216]=[p("已作废",-1)])]),_:1})):Number(h.value.business_prescription_audit_rejected)===1?(o(),g(d,{key:1,type:"danger",size:"small"},{default:l(()=>[...e[217]||(e[217]=[p("业务订单已驳回",-1)])]),_:1})):Number(h.value.audit_status)===1?(o(),g(d,{key:2,type:"success",size:"small"},{default:l(()=>[...e[218]||(e[218]=[p("已通过",-1)])]),_:1})):Number(h.value.audit_status)===0?(o(),g(d,{key:3,type:"warning",size:"small"},{default:l(()=>[...e[219]||(e[219]=[p("待审核",-1)])]),_:1})):(o(),g(d,{key:4,type:"danger",size:"small"},{default:l(()=>[...e[220]||(e[220]=[p("已驳回",-1)])]),_:1}))])):v("",!0),h.value&&Number(h.value.void_status)===1?(o(),m("div",wd," 作废人:"+r(h.value.void_by_name||"—")+",作废时间:"+r(Yl(h.value.void_time)),1)):h.value&&Number(h.value.business_prescription_audit_rejected)===1?(o(),m("div",Sd,[e[221]||(e[221]=a("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),h.value.business_prescription_audit_remark?(o(),m("div",Vd," 驳回意见:"+r(h.value.business_prescription_audit_remark),1)):v("",!0)])):h.value&&Number(h.value.audit_status)===2?(o(),m("div",Nd,[e[222]||(e[222]=a("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),h.value.audit_remark?(o(),m("div",Cd,"驳回意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0),h.value?(o(),m("div",{key:4,ref_key:"prescriptionSlipPrintRef",ref:Ka,class:"rx-paper"},[e[240]||(e[240]=a("div",{class:"rx-title"},"处方单",-1)),a("div",Pd,[e[227]||(e[227]=a("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),a("div",Td,[a("div",Ad,[e[223]||(e[223]=a("span",{class:"rx-meta-label"},"日期",-1)),a("span",Od,r(Il.value),1)]),a("div",Rd,[e[224]||(e[224]=a("span",{class:"rx-meta-label"},"处方编号",-1)),a("span",Ed,r(Ll.value),1)]),a("div",Dd,[e[225]||(e[225]=a("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),a("span",$d,r(ql.value),1)]),Ya.value?(o(),m("div",zd,[e[226]||(e[226]=a("span",{class:"rx-meta-label"},"业务单号",-1)),a("span",Ud,r(Ya.value),1)])):v("",!0)])]),a("div",Fd,[a("div",jd,[a("div",Id,[e[228]||(e[228]=a("span",{class:"rx-key"},"姓名",-1)),a("span",Ld,r(h.value.patient_name||"—"),1)]),a("div",qd,[e[229]||(e[229]=a("span",{class:"rx-key"},"性别",-1)),a("span",Md,r(Ql(h.value.gender)),1)]),a("div",Bd,[e[230]||(e[230]=a("span",{class:"rx-key"},"年龄",-1)),a("span",Hd,r(Jl(h.value.age)),1)]),a("div",Gd,[e[231]||(e[231]=a("span",{class:"rx-key"},"电话",-1)),a("span",Wd,r(h.value.phone||h.value.recipient_phone||"—"),1)])]),a("div",Kd,[a("div",Yd,[e[232]||(e[232]=a("span",{class:"rx-key"},"收件信息",-1)),a("span",Qd,r(Ml.value),1)])]),a("div",Jd,[a("div",Xd,[e[233]||(e[233]=a("span",{class:"rx-key"},"临床诊断",-1)),a("span",Zd,r(h.value.clinical_diagnosis||"—"),1)])])]),a("div",ep,[e[234]||(e[234]=a("div",{class:"rx-watermark"},"药房联",-1)),e[235]||(e[235]=a("div",{class:"rx-rp-head"},[a("div",{class:"rx-rp-label"},"Rp."),a("div",{class:"rx-rp-cols-head"},[a("div",{class:"rx-rp-col-head"},[a("span",null,"用药 (单剂)"),a("span",null,"总量")]),a("div",{class:"rx-rp-col-head"},[a("span",null,"用药 (单剂)"),a("span",null,"总量")])])],-1)),a("div",tp,[(o(!0),m(D,null,B(Nt.value,(i,P)=>(o(),m("div",{key:P,class:"rx-herb-cell"},[a("span",ap,r(i.name)+" ("+r(i.dosage)+"克)",1),a("span",sp,r(Hl(i.dosage))+"克",1)]))),128))])]),a("div",lp,[a("p",null,"服法:"+r(Wl.value),1),Ja.value?(o(),m("p",np,"医嘱:"+r(Ja.value),1)):v("",!0),Xa.value?(o(),m("p",ip,"备注:"+r(Xa.value),1)):v("",!0),Za.value?(o(),m("p",rp," 药房备注:"+r(Za.value),1)):v("",!0),es.value?(o(),m("p",op," 出丸:"+r(es.value),1)):v("",!0)]),a("div",up,[a("div",dp,[a("div",pp,[e[236]||(e[236]=a("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),a("div",cp,[h.value.doctor_signature?(o(),m("img",{key:0,src:h.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,_p)):v("",!0)])]),a("div",mp,[e[237]||(e[237]=a("span",{class:"rx-bot-meta-key"},"类型:",-1)),a("span",fp,r(Gl.value),1)]),a("div",vp,[e[238]||(e[238]=a("span",{class:"rx-bot-meta-key"},"天数:",-1)),a("span",gp,r(c.value.medication_days!=null&&String(c.value.medication_days).trim()!==""?c.value.medication_days+" 天":"—"),1)]),a("div",yp,[e[239]||(e[239]=a("span",{class:"rx-bot-meta-key"},"剂量:",-1)),a("span",bp,r(Bl.value)+"克",1)])])]),e[241]||(e[241]=a("div",{class:"rx-bot-row rx-hospital-row"},[a("div",{class:"rx-hospital-line"},"成都双流甄养堂互联网医院有限公司 联系方式:4001667339"),a("div",{class:"rx-hospital-line"},"地址:四川省成都市双流区黄甲街道黄龙大道二段280号")],-1))],512)):v("",!0),h.value&&(h.value.audit_by_name||h.value.audit_remark)?(o(),m("div",xp,[h.value.audit_by_name?(o(),m("div",kp,[p(" 审核人:"+r(h.value.audit_by_name)+" ",1),h.value.audit_time?(o(),m("span",hp,r(ts(h.value.audit_time)),1)):v("",!0)])):v("",!0),h.value.audit_remark?(o(),m("div",wp,"审核意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[ge,Vt.value]])]),_:1},8,["modelValue"]),s(oa,{modelValue:vt.value,"onUpdate:modelValue":e[84]||(e[84]=i=>vt.value=i),title:"甘草预下单测试结果",size:"100%",direction:"btt",class:"po-h5-drawer","destroy-on-close":""},{default:l(()=>{var i,P;return[U.value?(o(),m("div",Sp,[s(n,{shadow:"never",class:"mb-4"},{header:l(()=>[a("div",Vp,[e[243]||(e[243]=a("span",{class:"font-semibold"},"价格信息",-1)),s(d,{type:"success"},{default:l(()=>[...e[242]||(e[242]=[p("预下单成功",-1)])]),_:1})])]),default:l(()=>[s(Ye,{column:2,border:""},{default:l(()=>[s(V,{label:"药材成本"},{default:l(()=>{var N;return[a("span",Np,"¥"+r(((N=U.value.fee)==null?void 0:N.m_cost)||"0.00"),1)]}),_:1}),s(V,{label:"制作费"},{default:l(()=>{var N;return[a("span",Cp,"¥"+r((((N=U.value.fee)==null?void 0:N.proces_cost)||0).toFixed(2)),1)]}),_:1}),s(V,{label:"物流费"},{default:l(()=>{var N;return[a("span",Pp,"¥"+r((((N=U.value.fee)==null?void 0:N.lis_cost)||0).toFixed(2)),1)]}),_:1}),s(V,{label:"总计"},{default:l(()=>[a("div",null,[a("span",Tp," ¥"+r(Ma(U.value.fee)),1),A((o(),m("div",Ap,[e[244]||(e[244]=p(" 占订单总金额: ",-1)),a("span",Op,r(Nl(U.value.fee,U.value.amount)),1),U.value.amount>0?(o(),m("span",Rp,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[q,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),s(n,{shadow:"never",class:"mb-4"},{header:l(()=>[...e[245]||(e[245]=[a("span",{class:"font-semibold"},"配送信息",-1)])]),default:l(()=>[s(Ye,{column:2,border:""},{default:l(()=>[s(V,{label:"调配中心"},{default:l(()=>{var N;return[p(r(((N=U.value.result)==null?void 0:N.ds_name)||"—"),1)]}),_:1}),s(V,{label:"调配中心ID"},{default:l(()=>{var N;return[p(r(((N=U.value.result)==null?void 0:N.ds_id)||"—"),1)]}),_:1}),s(V,{label:"服用天数范围",span:2},{default:l(()=>{var N,j,Qe,Je,ue,ye;return[p(r(((j=(N=U.value.result)==null?void 0:N.take_days)==null?void 0:j.min)||"—")+" - "+r(((Je=(Qe=U.value.result)==null?void 0:Qe.take_days)==null?void 0:Je.max)||"—")+" 天 (默认: "+r(((ye=(ue=U.value.result)==null?void 0:ue.take_days)==null?void 0:ye.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(i=U.value.result)==null?void 0:i.rule_check)!=null&&P.length?(o(),g(n,{key:0,shadow:"never",class:"mb-4"},{header:l(()=>[...e[246]||(e[246]=[a("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:l(()=>[a("div",Ep,r(U.value.result.rule_check.map(N=>N.msg).join(" ")),1)]),_:1})):v("",!0),s(n,{shadow:"never"},{header:l(()=>{var N,j;return[a("div",Dp,[e[247]||(e[247]=a("span",{class:"font-semibold"},"药材明细",-1)),a("span",$p,"共 "+r(((j=(N=U.value.result)==null?void 0:N.m_list)==null?void 0:j.length)||0)+" 味药",1)])]}),default:l(()=>{var N;return[s(Tt,{data:((N=U.value.result)==null?void 0:N.m_list)||[],border:"",stripe:"","max-height":"400"},{default:l(()=>[s($,{type:"index",label:"#",width:"50",align:"center"}),s($,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),s($,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:l(({row:j})=>[p(r(j.quantity)+r(j.unit),1)]),_:1}),s($,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:l(({row:j})=>[p(" ¥"+r(Number(j.price).toFixed(4)),1)]),_:1}),s($,{label:"小计",width:"100",align:"right"},{default:l(({row:j})=>[a("span",zp," ¥"+r((Number(j.price)*Number(j.quantity)).toFixed(2)),1)]),_:1}),s($,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:l(({row:j})=>[s(d,{type:j.is_available===1?"success":"danger",size:"small"},{default:l(()=>[p(r(j.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),s($,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),s(n,{shadow:"never",class:"mt-4"},{header:l(()=>[...e[248]||(e[248]=[a("span",{class:"font-semibold"},"订单信息",-1)])]),default:l(()=>[s(Ye,{column:2,border:""},{default:l(()=>[s(V,{label:"订单号",span:2},{default:l(()=>[p(r(U.value.order_no||"—"),1)]),_:1}),s(V,{label:"剂数"},{default:l(()=>[a("span",Up,r(U.value.dose_count||"—")+"剂",1)]),_:1}),s(V,{label:"单剂量"},{default:l(()=>{var N;return[a("span",Fp,r(Cl((N=U.value.result)==null?void 0:N.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),s(R(_s),{ref_key:"diagnosisViewRef",ref:ca},null,512)])}}}),Oc=Si(Ip,[["__scopeId","data-v-f5f53a70"]]);export{Oc as default}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DiacXhqZ.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DzAQc_oE.js","assets/index--WnM67ZH.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-CLhA0PJe.js","assets/DailyMatrix-DyqovtVx.js","assets/picker-DzCeqD7m.js","assets/index-SocYjCJ1.js","assets/index-B3imPWFk.css","assets/index-CH2au-Zf.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-BtiRSS_3.js","assets/index-D0f1Mn00.css","assets/index-C6BRrxYh.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-B0kKUfF_.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Be3uAeoQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Dl_AaWiA.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-BQekhSi-.js","assets/RecordingPlaybackBlock-BHZL3zDJ.js","assets/RecordingVideoPlayer-LJMNYP-k.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-yVs1ANxt.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-nLggvTO6.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-CNtykthG.js","assets/doctor-BlvK2TEo.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-Vt4S5dzs.js","assets/patient-BNjmKCvA.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-_Y1o6_3U.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-C5tKSXIA.js","assets/index-DgkrquIz.js","assets/medicine-KRcHi5G1.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-06pe1I9S.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]); +import{_ as rn,E as on}from"./jspdf-BsthCvR5.js";import{J as un,d as dn,L as pn,T as cn,D as _n,B as mn,C as fn,P as vn,Q as gn,W as yn,i as bn,R as xn,p as kn,n as hn,o as wn,a9 as Sn,K as Vn,a6 as Nn,a7 as Cn,a4 as Pn,a5 as Tn,aa as An,ab as On,M as Rn,N as En,_ as Dn,ac as $n,ad as zn,e as Un,h as Fn,V as jn,r as In,a8 as Ln,k as qn,j as Mn,g as Bn,G as Hn,I as Gn,a as Xe}from"./element-plus-DFTWCWyi.js";import{_ as Wn}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as Ze,q as At,s as Ot}from"./@vue/runtime-dom-DDAG46FW.js";import{k as Kn,G as Yn,R as Qn,V as Jn,N as da,e as us,i as Xn,X as Zn,L as ei,l as ti}from"./@element-plus/icons-vue-HOEUG8sr.js";import{_ as ai}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{g as si,a as li,l as ni,t as ii,v as ri,w as oi,u as Z,x as ds,y as ui,z as di,A as pi,B as ps,C as ci,D as _i,E as mi,G as fi,H as vi,I as gi,J as yi,c as bi,b as pa,s as xi}from"./tcm-DzAQc_oE.js";import ki from"./html2canvas-QH1iLAAe.js";import{u as hi,i as T,m as wi,_ as Si}from"./index--WnM67ZH.js";import{d as Vi}from"./department-D5OVad_r.js";import{u as Ni}from"./usePaging-VsbTxSU0.js";import{f as cs,w as Ci,b as Pi,as as Ti,ak as o,I as m,J as a,a as s,aN as l,F as D,ap as B,H as v,aP as A,O as p,G as g,P as Ai,A as S,n as Rt}from"./@vue/runtime-core-C6bnekPw.js";import{o as I,Q as r}from"./@vue/shared-mAAVTE9n.js";import{y as R,a as Oi,n as k,r as be}from"./@vue/reactivity-DiY1c2vO.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ri={class:"prescription-order-page prescription-order-list prescription-order-h5 po-h5-app"},Ei={class:"flex flex-col gap-3"},Di={key:0,class:"flex items-center gap-2 flex-wrap"},$i=["onClick"],zi={class:"font-medium"},Ui={class:"flex items-center gap-2 flex-wrap"},Fi=["onClick"],ji={class:"font-medium"},Ii={class:"flex items-center gap-2 flex-wrap"},Li=["onClick"],qi={class:"font-medium"},Mi={class:"flex items-center gap-2 flex-wrap"},Bi=["onClick"],Hi={class:"font-medium"},Gi={class:"flex items-center gap-2 flex-wrap"},Wi=["onClick"],Ki={class:"font-medium"},Yi={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},Qi={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Ji={class:"relative flex items-start justify-between gap-3"},Xi={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},Zi={class:"mt-2 space-y-1.5 min-w-0"},er={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},tr={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},ar={class:"text-slate-400"},sr={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},lr={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},nr={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},ir={class:"relative flex items-start justify-between gap-3"},rr={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},or={class:"mt-2 space-y-1.5 min-w-0"},ur={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},dr={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},pr={class:"text-slate-400"},cr={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},_r={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},mr={class:"po-filter-toggle__label"},fr={class:"po-h5-list-head"},vr={class:"po-table-toolbar"},gr={class:"po-table-toolbar__title-wrap"},yr={class:"po-table-hint text-gray-400"},br={class:"po-focus-board"},xr={class:"po-focus-board__value"},kr={class:"po-focus-board__value"},hr={class:"po-focus-board__value"},wr={class:"po-focus-board__value"},Sr={class:"po-card-list"},Vr=["onClick"],Nr={class:"po-card__head"},Cr={class:"po-card__order-no"},Pr={class:"po-card__order-no-main"},Tr={class:"po-card__tags"},Ar={class:"po-card__id"},Or={key:0,class:"po-card__alert"},Rr={class:"po-card__row"},Er={class:"po-card__field"},Dr={class:"po-card__value"},$r={class:"po-card__field po-card__field--right"},zr={class:"po-card__value po-card__amount"},Ur={class:"po-card__row"},Fr={class:"po-card__field"},jr={class:"po-card__field po-card__field--right"},Ir={class:"po-card__value"},Lr={class:"po-card__row"},qr={class:"po-card__field"},Mr={class:"po-card__value"},Br={class:"po-card__field po-card__field--right"},Hr={class:"po-card__value"},Gr={key:1,class:"po-card__row"},Wr={class:"po-card__field"},Kr={class:"po-card__value text-orange-600 font-semibold"},Yr={class:"po-card__field po-card__field--right"},Qr={class:"po-card__value"},Jr={key:0,class:"text-primary"},Xr={key:1},Zr={key:2,class:"po-card__row"},eo={class:"po-card__field"},to={class:"po-card__value"},ao={key:0,class:"text-primary"},so={key:1},lo={class:"po-card__field po-card__field--right"},no={class:"po-card__value po-card__time"},io={class:"po-card__tags-row"},ro={class:"po-card__meta"},oo={key:0},uo={key:1},po={key:2,class:"po-card__meta-time"},co={class:"flex justify-end mt-4"},_o={class:"po-detail-drawer-head flex w-full min-w-0 flex-col gap-2"},mo={class:"po-detail-drawer-head-main flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1"},fo={key:0,class:"po-detail-drawer-actions flex flex-wrap items-center gap-2"},vo={key:1,class:"po-detail-body px-6 pb-6 h-full overflow-y-auto"},go={class:"min-w-0 break-words text-sm leading-relaxed"},yo={class:"font-mono font-semibold text-red-700"},bo={class:"font-mono font-semibold text-red-700"},xo={class:"po-workflow-steps-wrap bg-gray-50/80 border border-gray-100 rounded-lg p-5 mb-5 shadow-sm"},ko={key:0,class:"text-red-500 font-medium"},ho={key:1},wo={key:2,class:"text-green-600"},So={key:3,class:"text-gray-400"},Vo={key:0,class:"text-red-500 font-medium"},No={key:1},Co={key:2,class:"text-green-600"},Po={key:3,class:"text-gray-400"},To={key:0,class:"text-amber-600 font-medium"},Ao={key:1,class:"text-primary font-medium"},Oo={key:2},Ro={key:3,class:"text-green-600"},Eo={key:4,class:"text-red-500 font-medium"},Do={class:"flex items-center justify-between mb-1"},$o={class:"stat-value text-red-500 font-bold text-xl"},zo={class:"stat-value text-green-600 font-bold text-xl"},Uo={class:"stat-value text-primary font-bold text-xl"},Fo={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},jo={key:0,class:"audit-stamp stamp-pass"},Io={key:1,class:"audit-stamp stamp-reject"},Lo={class:"po-panel-rx-header flex w-full min-w-0 flex-col gap-2"},qo={class:"flex w-full min-w-0 flex-wrap items-center justify-between gap-x-2 gap-y-1"},Mo={class:"shrink-0 text-xs text-gray-400 tabular-nums"},Bo={key:0,class:"min-w-0 text-xs leading-snug text-gray-500"},Ho={class:"text-primary font-medium"},Go={class:"flex w-full min-w-0 flex-wrap items-center gap-x-3 gap-y-1"},Wo={class:"text-red-500 font-medium"},Ko={key:1,class:"ml-2 text-gray-500"},Yo={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},Qo={key:0,class:"mt-4"},Jo={class:"flex flex-col gap-4 h-full"},Xo={class:"text-red-500"},Zo={key:0,class:"audit-stamp stamp-pass"},eu={key:1,class:"audit-stamp stamp-reject"},tu={class:"flex items-center justify-between"},au={class:"flex items-center gap-3"},su={key:0,class:"text-xs text-gray-500"},lu={class:"text-primary font-medium"},nu={class:"text-red-500"},iu={class:"po-biz-diagnosis-id flex min-w-0 flex-col gap-3 rounded-2xl border border-slate-200/90 bg-gradient-to-br from-slate-50 to-white px-4 py-3.5 shadow-sm sm:flex-row sm:items-center sm:justify-between"},ru={class:"flex min-w-0 flex-col gap-1"},ou={class:"font-mono text-[1.125rem] font-semibold leading-tight tracking-tight text-slate-900 tabular-nums"},uu={class:"flex flex-wrap items-center gap-x-4 gap-y-1 text-[13px]"},du={class:"font-mono text-primary"},pu={class:"text-gray-500"},cu={key:0},_u={key:1,class:"text-gray-500"},mu={key:0,class:"text-xs text-gray-500 mt-1"},fu={key:1,class:"text-gray-400"},vu={class:"po-audit-remark"},gu={class:"po-audit-remark"},yu={class:"po-logistics-toolbar flex flex-wrap items-center gap-2 mb-4"},bu={class:"po-logistics-toolbar__links flex items-center gap-3 w-full pt-1"},xu={key:1,class:"py-6 text-center text-sm text-gray-500"},ku={key:2,class:"logistics-content bg-gray-50/50 p-4 rounded-md"},hu={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},wu={class:"text-gray-800"},Su={key:1,class:"text-xs text-gray-400 ml-1"},Vu={key:2,class:"text-xs text-gray-400"},Nu={class:"flex items-center gap-2 mb-1"},Cu={class:"font-medium text-[13px]"},Pu={class:"text-sm text-gray-700 font-medium"},Tu={class:"create-order-dialog__inner"},Au={key:0,class:"create-order-rx-card"},Ou={class:"create-order-rx-card__head"},Ru={class:"create-order-rx-card__meta"},Eu={class:"create-order-rx-card__id"},Du={key:0,class:"create-order-rx-card__sn"},$u={class:"create-order-rx-card__patient"},zu={class:"create-order-rx-card__herbs"},Uu={class:"create-order-step-lead"},Fu={class:"create-order-step-panel"},ju={class:"create-order-step-panel"},Iu={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},Lu={class:"text-xs text-gray-400"},qu={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},Mu={key:0,class:"space-y-1.5"},Bu={class:"text-gray-800 break-all"},Hu={key:1,class:"text-gray-400"},Gu={class:"flex items-center gap-1 w-full"},Wu={class:"flex gap-2 w-full"},Ku={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},Yu={class:"flex items-center justify-between"},Qu={class:"font-medium text-[13px] text-gray-800"},Ju={class:"text-orange-500 font-medium ml-4"},Xu={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},Zu={class:"truncate pr-2"},ed={class:"shrink-0"},td={class:"create-order-pay-hint text-gray-500"},ad={class:"text-amber-600 font-medium"},sd={class:"create-order-step-panel"},ld={class:"create-order-deposit-bar__cell"},nd={class:"create-order-deposit-bar__sub"},id={class:"create-order-deposit-bar__cell"},rd={class:"create-order-deposit-bar__sub"},od={class:"create-order-footer"},ud={class:"create-order-footer__hint"},dd={class:"create-order-footer__step"},pd={key:0,class:"create-order-footer__warn"},cd={class:"create-order-footer__actions"},_d={class:"text-sm"},md={class:"text-gray-600"},fd={class:"text-gray-600"},vd={class:"flex items-center justify-between"},gd={class:"text-sm"},yd={class:"text-orange-500 font-medium ml-4"},bd={class:"flex items-center justify-between w-full pr-2 gap-3"},xd={key:0,class:"flex items-center gap-2 shrink-0"},kd={class:"rx-wrap"},hd={key:0,class:"rx-statusbar"},wd={key:1,class:"rx-status rx-status-danger"},Sd={key:2,class:"rx-status rx-status-danger"},Vd={key:0,class:"mt-1"},Nd={key:3,class:"rx-status rx-status-danger"},Cd={key:0,class:"mt-1"},Pd={class:"rx-notice"},Td={class:"rx-notice-meta"},Ad={class:"rx-meta-item"},Od={class:"rx-meta-value"},Rd={class:"rx-meta-item"},Ed={class:"rx-meta-value"},Dd={class:"rx-meta-item"},$d={class:"rx-meta-value"},zd={key:0,class:"rx-meta-item"},Ud={class:"rx-meta-value"},Fd={class:"rx-info"},jd={class:"rx-info-row"},Id={class:"rx-info-cell"},Ld={class:"rx-val"},qd={class:"rx-info-cell"},Md={class:"rx-val"},Bd={class:"rx-info-cell"},Hd={class:"rx-val"},Gd={class:"rx-info-cell"},Wd={class:"rx-val"},Kd={class:"rx-info-row rx-info-row-full"},Yd={class:"rx-info-cell"},Qd={class:"rx-val"},Jd={class:"rx-info-row rx-info-row-full"},Xd={class:"rx-info-cell"},Zd={class:"rx-val"},ep={class:"rx-rp"},tp={class:"rx-herbs"},ap={class:"rx-herb-name"},sp={class:"rx-herb-total"},lp={class:"rx-text"},np={key:0},ip={key:1},rp={key:2,class:"rx-text-warn"},op={key:3,class:"rx-text-warn"},up={class:"rx-bottom"},dp={class:"rx-bot-row rx-bot-row-1"},pp={class:"rx-bot-cell rx-bot-doctor"},cp={class:"rx-bot-doctor-body"},_p=["src"],mp={class:"rx-bot-cell rx-bot-meta"},fp={class:"rx-bot-meta-val"},vp={class:"rx-bot-cell rx-bot-meta"},gp={class:"rx-bot-meta-val"},yp={class:"rx-bot-cell rx-bot-meta"},bp={class:"rx-bot-meta-val"},xp={key:5,class:"rx-audit"},kp={key:0},hp={key:0,class:"ml-2 text-gray-400"},wp={key:1,class:"mt-1"},Sp={key:0,class:"px-4"},Vp={class:"flex items-center justify-between"},Np={class:"text-lg font-semibold text-orange-600"},Cp={class:"text-lg font-semibold text-blue-600"},Pp={class:"text-lg font-semibold text-green-600"},Tp={class:"text-xl font-bold text-red-600"},Ap={class:"text-sm text-gray-500 mt-1.5"},Op={class:"font-medium text-gray-700"},Rp={key:0},Ep={class:"text-sm text-gray-700 leading-relaxed"},Dp={class:"flex items-center justify-between"},$p={class:"text-sm text-gray-500"},zp={class:"font-medium text-orange-600"},Up={class:"text-base font-medium"},Fp={class:"text-base font-medium"},jp=cs({name:"prescriptionOrderListH5"}),Ip=cs({...jp,setup(Lp){const _s=Ai(()=>rn(()=>import("./edit-DiacXhqZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]))),Te=hi(),ca=k(null);function ms(){var e,n;const t=Number((e=c.value)==null?void 0:e.diagnosis_id);if(!t){T.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(n=ca.value)==null||n.openViewOnly(t)}const fs=2,vs=[0,3,6],_e=S(()=>{const t=Te.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(n=>Number(n)):[];return e.includes(fs)?e.some(n=>vs.includes(n)):!0}),gs=S(()=>_e.value?"详情/审核":"详情"),ys=[0,3,6],_a=()=>{const t=Te.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(n=>Number(n)):[];return ys.some(n=>e.includes(n))},et=k([]),Ae=k([]),Et=k([]),Oe=k([]),tt=k([]),bs={value:"id",label:"name",children:"children"};function ma(t,e){for(const n of t||[]){if(n==null||typeof n!="object")continue;const u=n;if(Number(u.id)===e)return u;const d=ma(u.children||[],e);if(d)return d}return null}function fa(t){const e=Number(t.id),n=[];Number.isFinite(e)&&e>0&&n.push(e);for(const u of t.children||[])u&&typeof u=="object"&&n.push(...fa(u));return n}function xs(t,e){const n=ma(e,t);return n?fa(n):[t]}async function ks(){try{const[t,e,n]=await Promise.all([si(),li(),Vi()]);Et.value=Array.isArray(t)?t:[],Oe.value=Array.isArray(e)?e:[];const u=Array.isArray(n)?n:[];tt.value=u}catch{Et.value=[],Oe.value=[],tt.value=[]}}const hs=t=>t.map(e=>{var n;return{value:e.province,label:e.province,code:e.code,children:((n=e.citys)==null?void 0:n.map(u=>{var d;return{value:u.city,label:u.city,code:u.code,children:((d=u.areas)==null?void 0:d.map(f=>({value:f.area,label:f.area,code:f.code})))||[]}}))||[]}}),ws=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const n=await e.json();console.log("加载的数据条数:",n==null?void 0:n.length),et.value=hs(n),console.log("regionOptions 已设置,条数:",et.value.length)}catch(t){console.error("加载省市区数据失败:",t),et.value=[]}},Ss=async()=>{try{const t=await wi({type:"server_order"});Ae.value=((t==null?void 0:t.server_order)||[]).filter(e=>e.status!==0),console.log("服务套餐选项已加载:",Ae.value.length)}catch(t){console.error("加载服务套餐选项失败:",t),Ae.value=[]}},Vs=[{label:"全部",value:""},{label:"待双审通过",value:1},{label:"待发货",value:2},{label:"已发货",value:5},{label:"已签收",value:6},{label:"已完成",value:3},{label:"已取消",value:4},{label:"进行中",value:7},{label:"暂不制药",value:8},{label:"拒收",value:9},{label:"退款",value:10},{label:"保留药方",value:11},{label:"制药缓发",value:12}];function Ns(t){ee.value="",b.fulfillment_status=t,G()}const ee=k(""),Cs=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"自营",value:"self"}];function Ps(t){b.supply_mode=t,G()}const Ts=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function As(t){b.express_company=t,G()}const b=be({start_time:"",end_time:"",order_no:"",prescription_id:"",patient_keyword:"",express_keyword:"",express_company:"",doctor_id:"",assistant_id:"",assistant_dept_id:"",fulfillment_status:"",prescription_audit_status:"",payment_slip_audit_status:"",supply_mode:""}),Os=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],Rs=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function Es(t){ee.value="",b.prescription_audit_status=t,G()}function Ds(t){ee.value="",b.payment_slip_audit_status=t,G()}function at(t){if(ee.value===t){ee.value="",b.prescription_audit_status="",b.payment_slip_audit_status="",b.fulfillment_status="",G();return}ee.value=t,b.prescription_audit_status="",b.payment_slip_audit_status="",b.fulfillment_status="",t==="pendingRx"?b.prescription_audit_status=0:t==="pendingPay"?(b.prescription_audit_status=1,b.payment_slip_audit_status=0):t==="pendingShip"?b.fulfillment_status=2:t==="risk"&&(b.payment_slip_audit_status=2),G()}async function $s(t){const e={...t};if(e.prescription_id===""||e.prescription_id===void 0?delete e.prescription_id:e.prescription_id=Number(e.prescription_id),(e.fulfillment_status===""||e.fulfillment_status===void 0)&&delete e.fulfillment_status,(e.prescription_audit_status===""||e.prescription_audit_status===void 0)&&delete e.prescription_audit_status,(e.payment_slip_audit_status===""||e.payment_slip_audit_status===void 0)&&delete e.payment_slip_audit_status,(!e.supply_mode||e.supply_mode==="")&&delete e.supply_mode,e.doctor_id===""||e.doctor_id===void 0||e.doctor_id===null?delete e.doctor_id:e.doctor_id=Number(e.doctor_id),e.assistant_id===""||e.assistant_id===void 0||e.assistant_id===null?delete e.assistant_id:e.assistant_id=Number(e.assistant_id),e.assistant_dept_id===""||e.assistant_dept_id===void 0||e.assistant_dept_id===null?delete e.assistant_dept_id:e.assistant_dept_id=Number(e.assistant_dept_id),e.order_no||delete e.order_no,String(e.patient_keyword||"").trim()||delete e.patient_keyword,String(e.express_keyword||"").trim()||delete e.express_keyword,(!e.express_company||e.express_company==="")&&delete e.express_company,!String(e.start_time||"").trim()||!String(e.end_time||"").trim())delete e.start_time,delete e.end_time;else{const n=String(e.start_time||"").trim(),u=String(e.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(n)&&/^\d{4}-\d{2}-\d{2}$/.test(u)&&(e.start_time=`${n} 00:00:00`,e.end_time=`${u} 23:59:59`)}return ni(e)}const{pager:te,getLists:K,resetPage:G,resetParams:zs}=Ni({fetchFun:$s,params:b}),va=S(()=>{const t=b.assistant_dept_id;if(t===""||t==null)return Oe.value;const e=Number(t);if(!Number.isFinite(e))return Oe.value;const n=new Set(xs(e,tt.value));return Oe.value.filter(u=>{const d=u.dept_ids;return!Array.isArray(d)||d.length===0?!1:d.map(Number).some(f=>n.has(f))})});function Us(){const t=b.assistant_id;if(t!==""&&t!=null){const e=Number(t);va.value.some(u=>Number(u.id)===e)||(b.assistant_id="")}G()}const ne=S(()=>{const t=te.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),n=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),u=E=>{const pe=Number(E);return Number.isFinite(pe)?Math.round(pe*100)/100:0},d=E=>E.toFixed(2),f=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,x=(t==null?void 0:t.stats_linked_pay_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_linked_pay_amount_cancelled)!==void 0,y=u(f?t==null?void 0:t.stats_order_amount_not_cancelled:e),z=f?u(t==null?void 0:t.stats_order_amount_cancelled):0,Q=u(x?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:n),w=x?u(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,F=(t==null?void 0:t.stats_order_amount_performance)!==void 0?u(t==null?void 0:t.stats_order_amount_performance):y,re=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?u(t==null?void 0:t.stats_linked_pay_amount_performance):Q,ve=String((t==null?void 0:t.stats_time_start)??"").trim(),Pt=String((t==null?void 0:t.stats_time_end)??"").trim(),ia=ve&&Pt?`统计时间:${ve} ~ ${Pt}`:"统计时间:—",We=String((t==null?void 0:t.stats_scope)??"restricted");let le="统计口径:与当前列表数据可见范围一致";We==="all"?le="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":We==="assistant"?le="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":We==="own_rx"&&(le="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const Ke=String(b.start_time||"").trim()!==""&&String(b.end_time||"").trim()!==""?"区间":"今日";return{order:u(e),pay:u(n),orderStr:d(u(e)),payStr:d(u(n)),orderNotCancelledStr:d(y),orderCancelledStr:d(z),payNotCancelledStr:d(Q),payCancelledStr:d(w),orderPerformanceStr:d(F),payPerformanceStr:d(re),orderHeading:`${Ke}业绩(业务订单额)`,payHeading:`${Ke}业绩(关联实付)`,periodLine:ia,scopeHint:le,orderSplitHint:"业绩 = 除履约已取消(4)外全部订单金额;下方为合计与已取消明细"}}),st=S(()=>{const t=te.extend,e=x=>{const y=Number(x);return!Number.isFinite(y)||y<0?0:Math.trunc(y)},n=e(t==null?void 0:t.focus_pending_rx_count),u=e(t==null?void 0:t.focus_pending_pay_count),d=e(t==null?void 0:t.focus_pending_ship_count),f=e(t==null?void 0:t.focus_risk_count);return{pendingRx:n,pendingPay:u,pendingShip:d,risk:f}});function Dt(t,e){const n=Number(e==null?void 0:e.prescription_audit_status),u=Number(e==null?void 0:e.payment_slip_audit_status),d=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&n===0||t==="pay"&&n===1&&u===0||t==="fulfillment"&&d===2?"po-status-tag is-focus":t==="rx"&&n===2||t==="pay"&&u===2||t==="fulfillment"&&d===4?"po-status-tag is-risk":"po-status-tag"}function lt({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),n=Number(t==null?void 0:t.payment_slip_audit_status),u=Number(t==null?void 0:t.fulfillment_status),d=pt(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||n===2||d?"po-row-risk":e===0||e===1&&n===0||u===2?"po-row-focus":u===3||u===6?"po-row-done":""}Ci(_e,t=>{t||b.prescription_audit_status===""||b.prescription_audit_status===void 0||(b.prescription_audit_status="",G())},{immediate:!0});function Fs(){ee.value="",b.start_time="",b.end_time="",b.order_no="",b.prescription_id="",b.patient_keyword="",b.express_keyword="",b.express_company="",b.doctor_id="",b.assistant_id="",b.assistant_dept_id="",b.fulfillment_status="",b.prescription_audit_status="",b.payment_slip_audit_status="",b.supply_mode="",zs()}function nt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"}[Number(t)]??"—"}function js(t){if(!t)return"—";let e=[];return Array.isArray(t)?e=t:typeof t=="string"&&(e=t.split(",").filter(u=>u.trim()!=="")),e.length===0?"—":e.map(u=>{const d=Ae.value.find(f=>f.value===u);return d?d.name:u}).join("、")}function ga(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function ya(t){return t===1?"success":t===2?"danger":"info"}function $t(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function Is(t){const e=Number(t);return e===3||e===6?"success":e===5?"primary":e===4?"danger":e===2||e===7?"warning":e===8||e===11||e===12?"info":e===9||e===10?"danger":"info"}function de(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function me(t){if(t==null||t==="")return"—";if(typeof t=="number"&&t>1e9&&t<1e11){const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}return String(t)}const Ls=[0,3];function ba(){const t=Te.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(n=>Number(n)):[]).some(n=>Ls.includes(n)):!1}function xa(t){var n;const e=Number((n=Te.userInfo)==null?void 0:n.id);return e>0&&Number(t.creator_id)===e}function ka(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function ha(t){const e=Number(t.fulfillment_status);if(e===3||e===4||xa(t)&&ka(t)&&!ba())return!1;const n=String(t.gancao_reciperl_order_no||"").trim(),u=Number(t.gancao_submit_time||0);return n!==""||u>0?[1,2,5,7].includes(e):e===1||e===2}function qs(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function Ms(t){const e=Number(t.fulfillment_status);return e===3||e===4?!1:Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===0}function Bs(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const n=Number(t.prescription_audit_status),u=Number(t.payment_slip_audit_status);return(n===1||n===2)&&u===0}function Hs(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const n=Number(t.prescription_audit_status),u=Number(t.payment_slip_audit_status);return n===1&&(u===1||u===2)}function wa(t){return Number(t.fulfillment_status)===1}function zt(t){return Number(t.fulfillment_status)===2}function Ut(t){const e=Number(t.fulfillment_status);return e===5||e===6}function Ft(t){const e=Number(t.fulfillment_status);return(e===5||e===6)&&Number(t.payment_slip_audit_status)===1}function Gs(t){return Number(t.fulfillment_status)===5}function Sa(t){const e=Number(t.prescription_audit_status),n=String(t.gancao_reciperl_order_no||"").trim();return e===1&&n===""}function Va(t){return{1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"}[Number(t)]??"—"}const it=k(!0),Na=S(()=>{const t=b,e=["start_time","end_time","order_no","prescription_id","patient_keyword","express_keyword","doctor_id","assistant_dept_id","assistant_id"];let n=0;for(const u of e){const d=t[u];d!=null&&(typeof d=="string"&&d.trim()===""||Array.isArray(d)&&d.length===0||(n+=1))}return n});function Ws(t){return Ut(t)||Ft(t)||Sa(t)||wa(t)}function Ks(t,e){t==="addPayOrder"?Ga(e):t==="complete"?Wa(e):t==="submitGancao"?Al(e):t==="withdraw"&&Vl(e)}function jt(t){if(!(t!=null&&t.id))return!1;const e=Number(t.fulfillment_status);return e!==3&&e!==4}const J=k(!1),It=k(!1),c=k(null),rt=S(()=>{if(!c.value)return 0;const t=Number(c.value.fulfillment_status),e=Number(c.value.prescription_audit_status),n=Number(c.value.payment_slip_audit_status);return t===3||[8,9,10,11,12].includes(t)?5:t===6||t===5||t===7?4:t===4?e===2?1:n===2?2:3:t===2?3:e===0||e===2?1:n===0||n===2?2:3}),ot=S(()=>{var e;const t=Number((e=c.value)==null?void 0:e.prescription_audit_status);return t===1?"success":t===2?"error":rt.value===1?"process":"wait"}),ut=S(()=>{var e;const t=Number((e=c.value)==null?void 0:e.payment_slip_audit_status);return t===1?"success":t===2?"error":rt.value===2?"process":"wait"}),xe=S(()=>{var e;const t=Number((e=c.value)==null?void 0:e.fulfillment_status);return t===3||t===5||t===6||t===8||t===11||t===12?"success":t===4||t===9||t===10?"error":t===7||rt.value===3?"process":"wait"}),Lt=S(()=>{const t=c.value;if(!t)return[];const e=t.linked_pay_orders;return Array.isArray(e)?e:[]}),Ca=S(()=>{const t=c.value;if(!t)return 0;const e=Number(t.amount)||0,n=Number(t.linked_pay_paid_total)||0;return Math.round((e-n)*100)/100}),ke=k([]);async function Ys(t,e,n){var u;if(!t){ke.value=[];return}try{const d=await pa({diagnosis_id:t,prescription_order_id:e}),f=(d==null?void 0:d.lists)??((u=d==null?void 0:d.data)==null?void 0:u.lists)??[],x=Array.isArray(f)?f.filter(y=>!n.includes(y.id)):[];ke.value=x}catch{ke.value=[]}}function Pa(t){return t?Array.isArray(t)?t.map(e=>({name:String((e==null?void 0:e.name)??"").trim(),dosage:Number(e==null?void 0:e.dosage)||0})):[]:[]}const C=S(()=>{var e;const t=(e=c.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null});function dt(t){return t==null?"":String(t).replace(/\s/g,"").trim()}function pt(t,e){const n=dt(t),u=dt(e);return!n||!u?!1:n!==u}const Re=S(()=>{var n,u;const t=(n=C.value)==null?void 0:n.phone,e=(u=c.value)==null?void 0:u.recipient_phone;return pt(e,t)}),Qs=S(()=>{var e;return dt((e=C.value)==null?void 0:e.phone)||"—"}),Js=S(()=>{var e;return dt((e=c.value)==null?void 0:e.recipient_phone)||"—"}),W=S(()=>{var e;const t=(e=c.value)==null?void 0:e.linked_appointment;return t&&typeof t=="object"?t:null}),Ta=S(()=>{var e;const t=String(((e=W.value)==null?void 0:e.resolved_from)||"");return t==="prescription"?"处方绑定挂号":t==="diagnosis"?"诊单关联挂号":""}),Aa=S(()=>{var t;return Pa((t=C.value)==null?void 0:t.herbs)}),Xs=S(()=>{var t;return((t=c.value)==null?void 0:t.prescription_detail_herbs_visible)!==!1}),Zs=S(()=>{const t=c.value;if(!t)return"—";const e=[];return t.shipping_province&&e.push(t.shipping_province),t.shipping_city&&e.push(t.shipping_city),t.shipping_district&&e.push(t.shipping_district),t.shipping_address&&e.push(t.shipping_address),e.length>0?e.join(" "):"—"}),Oa=S(()=>`${_.dose_unit||"剂"}数`);function el(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function tl(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function Ra(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function Ea(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):me(t)}const Ee=k("auto"),ct=k(!1),H=k(null),De=k("");let qt=0;function al(){qt+=1,H.value=null}function Mt(t){var e,n;return t.requestSeq!==qt||Number((e=c.value)==null?void 0:e.id)!==t.orderId?!1:String(((n=c.value)==null?void 0:n.tracking_number)||"").trim()===t.trackingNumber}function sl(t,e,n){const u=(t==null?void 0:t.data)??t;if(!u||typeof u!="object")return null;const d=u,f=String(d.tracking_number||"").trim();if(f&&f!==e)return null;const x=Number(d.order_id);return x>0&&x!==n?null:d}const he=k([]),$e=k(!1),Bt=k(!1),_t=k(),ie=be({id:0,amount:void 0}),ll={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,n)=>{const u=Number(e);if(!Number.isFinite(u)||u<=0){n(new Error("订单金额必须大于0"));return}n()},trigger:"blur"}]};function nl(){const t=Te.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function Ht(t){if(!nl()){he.value=[];return}try{const e=await xi({id:t});he.value=(e==null?void 0:e.data)??e??[]}catch{he.value=[]}}function il(t){return{create:"创建",edit:"编辑",audit_rx_approve:"处方审核",audit_rx_reject:"处方审核",audit_pay_approve:"支付审核",audit_pay_reject:"支付审核",fill_tracking:"填快递单",ship:"确认发货",withdraw:"撤销",link_pay_order:"关联支付单",revoke_rx_audit:"撤回处方审核",revoke_pay_audit:"撤回支付审核",gancao_submit:"甘草下单",patch_rx_patient:"处方患者信息",update_amount:"修改订单金额",complete:"完成订单"}[t]||t}const Gt=S(()=>{var n;const t=String(((n=c.value)==null?void 0:n.tracking_number)||"").trim();if(!t)return{sf:"javascript:void(0)",jd:"javascript:void(0)",jt:"javascript:void(0)"};const e=encodeURIComponent(t);return{sf:`https://www.sf-express.com/cn/sc/dynamic_function/waybill/#search/bill-number/${e}`,jd:`https://www.jdl.com/#/trackQuery?waybillCode=${e}`,jt:`https://www.jtexpress.com.cn/index/query/gzquery.html?bills=${e}`}}),Da=S(()=>{const t=H.value;return!t||!Array.isArray(t.traces)?[]:t.traces});function rl(t){const e=String(t||"").toLowerCase();return e==="sf"?"顺丰速运":e==="jd"?"京东快递":e==="jt"||e==="jtexpress"?"极兔速递":"自动识别"}async function Wt(){var d,f;const t=Number((d=c.value)==null?void 0:d.id),e=String(((f=c.value)==null?void 0:f.tracking_number)||"").trim();if(!t||!e)return;const u={requestSeq:++qt,orderId:t,trackingNumber:e};ct.value=!0;try{const x=String(De.value||"").replace(/\D/g,""),y={id:t,express_company:Ee.value};x.length>=4&&(y.phone_tail=x);const z=await ii(y);if(!Mt(u))return;H.value=sl(z,e,t)}catch{if(!Mt(u))return;H.value=null}finally{Mt(u)&&(ct.value=!1)}}const ze=k(!1),Kt=k(!1),Yt=k(),ae=be({patient_name:"",phone:""}),ol={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function ul(){const t=C.value,e=c.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){T.msgWarning("无处方数据");return}ae.patient_name=String(t.patient_name??"").trim(),ae.phone=String(t.phone??"").trim(),ze.value=!0,Rt(()=>{var n;return(n=Yt.value)==null?void 0:n.clearValidate()})}function dl(){ae.patient_name="",ae.phone=""}function pl(){var t;ie.id=0,ie.amount=void 0,(t=_t.value)==null||t.clearValidate()}function cl(){const t=c.value;if(!jt(t)){T.msgWarning("当前订单状态不允许修改金额");return}ie.id=Number(t==null?void 0:t.id)||0,ie.amount=Number(t==null?void 0:t.amount)||void 0,$e.value=!0,Rt(()=>{var e;return(e=_t.value)==null?void 0:e.clearValidate()})}async function $a(){var e;const t=(e=c.value)==null?void 0:e.id;if(t)try{const n=await Z({id:t}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}async function _l(){var n;const t=Yt.value;if(!t)return;try{await t.validate()}catch{return}const e=(n=c.value)==null?void 0:n.id;if(e){Kt.value=!0;try{await ri({id:e,patient_name:ae.patient_name.trim(),phone:ae.phone.trim()}),ze.value=!1,await $a(),await Ht(e)}catch(u){console.error(u)}finally{Kt.value=!1}}}async function za(){const t=_t.value;if(!t)return;try{await t.validate()}catch{return}if(!jt(c.value)){T.msgWarning("当前订单状态不允许修改金额");return}const e=ie.id;Bt.value=!0;try{await oi({id:e,amount:Number(ie.amount)}),T.msgSuccess("修改成功"),$e.value=!1,await $a(),await Ht(e),K()}catch{}finally{Bt.value=!1}}async function Ua(t){c.value=null,ke.value=[],al(),Ee.value="auto",De.value="",he.value=[],J.value=!0,It.value=!0;try{const e=await Z({id:t}),n=(e==null?void 0:e.data)??e??null;if(c.value=n,n){Ee.value=String(n.express_company||"auto")||"auto";const u=String(n.recipient_phone||"").replace(/\D/g,"");De.value=u.length>=4?u:"",String(n.tracking_number||"").trim()&&Wt(),Ht(t);const d=n.diagnosis_id,f=n.pay_order_ids||[];d&&Ys(d,t,f)}}catch(e){T.msgError((e==null?void 0:e.message)||"加载失败"),J.value=!1}finally{It.value=!1}}const fe=k(!1),Qt=k(!1),Jt=k(!1),L=k(0),se=k(null),ml=S(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][L.value]??""),Fa=S(()=>{const t=se.value,e=Pa(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const n=e.map(u=>`${u.name} ${u.dosage}g`).join("、");return n.length>120?`${n.slice(0,120)}…`:n}),fl=["recipient_name","recipient_phone","region","shipping_address"],we=k(),_=be({id:0,prescription_id:0,diagnosis_id:0,recipient_name:"",recipient_phone:"",region:[],shipping_address:"",is_follow_up:0,medication_days:void 0,dose_count:1,dose_unit:"剂",prev_staff:"",service_channel:"",service_package:[],express_company:"auto",tracking_number:"",fee_type:3,amount:0,remark_extra:"",remark_assistant:"",pay_order_ids:[],internal_cost:void 0,assistant_id:0,diagnosis_creator_id:0,diagnosis_creator_name:"",diagnosis_creator_dept_path:""}),ja=S(()=>{const t=String(_.diagnosis_creator_dept_path||"").trim();return t?t.split(";").map(e=>e.trim()).filter(Boolean).map(e=>e.includes(" / ")?e.split(" / ").map(n=>n.trim()).filter(Boolean):e.split("/").map(n=>n.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Ue=k([]),Xt=k(!1),M=k(0);function Zt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const ea=S(()=>{const t=new Set(_.pay_order_ids.map(n=>Number(n)));let e=0;for(const n of Ue.value)t.has(Number(n.id))&&(e+=Number(n.amount)||0);return Math.round(e*100)/100}),vl=S(()=>{const t=M.value;return t>0?Math.round(t*100)/100:0});async function gl(t,e){var n,u;if(!t){Ue.value=[];return}try{Xt.value=!0;const d=await pa({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),f=(d==null?void 0:d.lists)??((n=d==null?void 0:d.data)==null?void 0:n.lists)??[];Ue.value=Array.isArray(f)?f:[];const x=Number((d==null?void 0:d.deposit_min_amount)??((u=d==null?void 0:d.data)==null?void 0:u.deposit_min_amount));!Number.isNaN(x)&&x>=0&&(M.value=x)}catch{Ue.value=[]}finally{Xt.value=!1}}const yl=S(()=>{const t={recipient_name:[{required:!0,message:"请输入收货人",trigger:"blur"}],recipient_phone:[{required:!0,message:"请输入收货手机",trigger:"blur"}],region:[{required:!0,message:"请选择省/市/区",trigger:"change",type:"array"}],shipping_address:[{required:!0,message:"请输入收货地址",trigger:"blur"}],fee_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(e,n,u)=>{const d=M.value,f=Number(n);if(d>0&&(!Number.isFinite(f)||f0){const e=`已开启关联支付门槛(¥${de(M.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function bl(){var t;L.value=0,se.value=null,(t=we.value)==null||t.clearValidate()}function xl(){L.value>0&&(L.value-=1)}async function kl(){const t=we.value;if(t)try{L.value===0?await t.validateField([...fl]):L.value===1&&M.value>0&&await t.validateField(["pay_order_ids"]),L.value<2&&(L.value+=1)}catch{}}async function hl(t){if(!ha(t)){xa(t)&&ka(t)&&!ba()&&T.msgWarning("处方与支付单均已审核通过,创建人不可再编辑");return}L.value=0,se.value=null,fe.value=!0,Qt.value=!0;try{const e=await Z({id:t.id}),n=(e==null?void 0:e.data)??e;if(!n){T.msgError("加载数据结构异常"),fe.value=!1;return}const u=n.prescription;u&&typeof u=="object"?se.value=u:Number(n.prescription_id)>0?se.value={id:Number(n.prescription_id),sn:"",patient_name:String(n.recipient_name||""),herbs:[]}:se.value=null,_.id=n.id,_.prescription_id=Number(n.prescription_id)||0,_.diagnosis_id=Number(n.diagnosis_id)||0,_.assistant_id=Number(n.assistant_id)||0,_.diagnosis_creator_id=Number(n.diagnosis_creator_id)||0,_.diagnosis_creator_name=n.diagnosis_creator_name!=null&&n.diagnosis_creator_name!==""?String(n.diagnosis_creator_name):"",_.diagnosis_creator_dept_path=n.diagnosis_creator_dept_path!=null&&n.diagnosis_creator_dept_path!==""?String(n.diagnosis_creator_dept_path):"",_.recipient_name=n.recipient_name||"",_.recipient_phone=n.recipient_phone||"";const d=n.shipping_province||"",f=n.shipping_city||"",x=n.shipping_district||"";d||f||x?_.region=[d,f,x].filter(F=>F!==""):_.region=[],_.shipping_address=n.shipping_address||"",_.is_follow_up=n.is_follow_up?1:0,_.medication_days=n.medication_days>0?n.medication_days:void 0,_.dose_count=n.dose_count>0?n.dose_count:1,_.dose_unit=n.dose_unit||"剂",_.prev_staff=n.prev_staff||"",_.service_channel=n.service_channel||"",n.service_package?Array.isArray(n.service_package)?_.service_package=n.service_package:typeof n.service_package=="string"?_.service_package=n.service_package.split(",").filter(F=>F.trim()!==""):_.service_package=[]:_.service_package=[],_.express_company=String(n.express_company||"auto")||"auto",_.tracking_number=n.tracking_number||"",_.fee_type=Number(n.fee_type)||3,M.value=Number(n.deposit_min_amount)||0;let y=Number(n.amount)||0;const z=Math.round((Number(n.linked_pay_paid_total)||0)*100)/100,Q=M.value;if(Q>0){const F=Math.round(Q*100)/100;yNumber(F)).filter(F=>!Number.isNaN(F)):[],_.internal_cost=n.internal_cost!=null&&n.internal_cost!==""?Number(n.internal_cost):void 0,await gl(_.diagnosis_id,_.id),Rt(()=>{var F;(F=we.value)==null||F.clearValidate()})}catch(e){T.msgError((e==null?void 0:e.message)||"加载异常"),fe.value=!1}finally{Qt.value=!1}}async function wl(){if(!(!we.value||L.value!==2)){await we.value.validate(),Jt.value=!0;try{const t={id:_.id,recipient_name:_.recipient_name,recipient_phone:_.recipient_phone,shipping_address:_.shipping_address,is_follow_up:_.is_follow_up,prev_staff:_.prev_staff||"",service_channel:_.service_channel||"",service_package:Array.isArray(_.service_package)?_.service_package.join(","):"",express_company:_.express_company||"auto",tracking_number:_.tracking_number||"",fee_type:_.fee_type,amount:_.amount,remark_extra:_.remark_extra||"",remark_assistant:_.remark_assistant||"",medication_days:_.medication_days!=null&&String(_.medication_days).trim()!==""?_.medication_days:"",dose_unit:_.dose_unit||"剂",dose_count:_.dose_count||1,internal_cost:_.internal_cost!=null&&String(_.internal_cost).trim()!==""?_.internal_cost:""};_.region&&_.region.length>0?(t.shipping_province=_.region[0]||"",t.shipping_city=_.region[1]||"",t.shipping_district=_.region[2]||""):(t.shipping_province="",t.shipping_city="",t.shipping_district=""),t.pay_order_ids=[..._.pay_order_ids],await ds(t),T.msgSuccess("保存成功"),fe.value=!1,K()}catch{}finally{Jt.value=!1}}}const Fe=k(!1),ta=k("prescription"),mt=k(0),je=k(null),Se=k(""),ft=k(!1),Sl=S(()=>ta.value==="prescription"?"处方业务审核":"关联支付单审核");function Ia(t,e){ta.value=e,mt.value=t.id,je.value=t,Se.value="",Fe.value=!0}async function La(t){if(t==="reject"&&!Se.value.trim()){T.msgError("驳回或阻止时必须填写明确的审核意见");return}ft.value=!0;try{const e={id:mt.value,action:t,remark:Se.value.trim()};if(ta.value==="prescription"?await ui(e):await di(e),T.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),Fe.value=!1,K(),J.value&&mt.value)try{const n=await Z({id:mt.value}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}finally{ft.value=!1}}async function Vl(t){try{await Xe.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await pi({id:t.id}),T.msgSuccess("撤回成功"),K()}catch{}}const qa=k(0),vt=k(!1),Ve=k(!1),U=k(null);function Ma(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,n=Number(t.proces_cost)||0,u=Number(t.lis_cost)||0;return(e+n+u).toFixed(2)}function Nl(t,e){const n=parseFloat(Ma(t))||0,u=Number(e)||0;return u<=0?"—":(n/u*100).toFixed(2)}function Cl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((n,u)=>n+(Number(u.quantity)||0),0).toFixed(0)}async function Pl(){if(!_.id){T.msgError("请先保存订单");return}Ve.value=!0;try{const t=await ps({id:_.id,dose_count:_.dose_count||1,medication_days:_.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(U.value=e,vt.value=!0,T.msgSuccess("预下单测试成功"))}catch{}finally{Ve.value=!1}}async function Tl(){var t;if(!((t=c.value)!=null&&t.id)){T.msgError("订单数据不存在");return}Ve.value=!0;try{const e=await ps({id:c.value.id,dose_count:c.value.dose_count||1,medication_days:c.value.medication_days||void 0}),n=(e==null?void 0:e.data)??e;n&&n.success&&(U.value=n,vt.value=!0)}catch{}finally{Ve.value=!1}}async function Al(t){var e;try{await Xe.confirm("将把本单关联处方提交至甘草药管家开放平台(先 CTM_PREVIEW 预检查再 CTM_SUBMIT_RECIPEL 正式下单;成功后将按甘草侧规则扣费,详见 https://apidoc.igancao.com/service-doc/scm-outer-recipel.html )。确定继续?","上传甘草药方",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),qa.value=t.id;const n=await ci({id:t.id}),u=(n==null?void 0:n.data)??n,d=(u==null?void 0:u.recipel_order_no)!=null?String(u.recipel_order_no):"";if(T.msgSuccess(d?`上传成功,甘草处方单号:${d}`:"上传成功"),K(),J.value&&Number((e=c.value)==null?void 0:e.id)===t.id)try{const f=await Z({id:t.id}),x=(f==null?void 0:f.data)??f??null;x&&(c.value=x)}catch{}}catch{}finally{qa.value=0}}Pi(async()=>{await ws(),await Ss(),await ks(),K()});const Ie=k(!1),gt=k(!1),Le=k(0),X=be({express_company:"auto",tracking_number:""});function Ol(t){Le.value=t.id,X.express_company=String(t.express_company||"auto")||"auto",X.tracking_number=String(t.tracking_number||""),Ie.value=!0}async function Ba(){var t;if(!X.tracking_number.trim()){T.msgError("请填写快递单号");return}gt.value=!0;try{const e=await Z({id:Le.value}),n=(e==null?void 0:e.data)??e;if(!n){T.msgError("加载订单数据失败");return}if(await ds({id:n.id,recipient_name:n.recipient_name||"",recipient_phone:n.recipient_phone||"",shipping_province:n.shipping_province||"",shipping_city:n.shipping_city||"",shipping_district:n.shipping_district||"",shipping_address:n.shipping_address||"",is_follow_up:n.is_follow_up?1:0,medication_days:n.medication_days!=null&&String(n.medication_days).trim()!==""?n.medication_days:"",prev_staff:n.prev_staff||"",service_channel:n.service_channel||"",service_package:n.service_package||"",fee_type:Number(n.fee_type)||3,amount:Number(n.amount)||0,remark_extra:n.remark_extra||"",remark_assistant:n.remark_assistant||"",internal_cost:n.internal_cost!=null&&n.internal_cost!==""?n.internal_cost:"",pay_order_ids:Array.isArray(n.pay_order_ids)?n.pay_order_ids:[],express_company:X.express_company||"auto",tracking_number:X.tracking_number.trim()}),T.msgSuccess("快递单号已保存"),Ie.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===Le.value)try{const u=await Z({id:Le.value}),d=(u==null?void 0:u.data)??u??null;d&&(c.value=d)}catch{}if(zt({fulfillment_status:Number(n.fulfillment_status)}))try{await Xe.confirm(`快递单号「${X.tracking_number}」已保存,是否立即确认发货?`,"确认发货",{type:"success",confirmButtonText:"确认发货",cancelButtonText:"稍后再说"}),aa({id:Le.value,tracking_number:X.tracking_number,express_company:X.express_company})}catch{}}catch{}finally{gt.value=!1}}const qe=k(!1),yt=k(!1),bt=k(0),Y=be({ship_mode:"gancao",express_company:"auto",tracking_number:""});function aa(t){bt.value=t.id,Y.ship_mode=String(t.ship_mode||"gancao")||"gancao",Y.express_company=String(t.express_company||"auto")||"auto",Y.tracking_number=String(t.tracking_number||""),qe.value=!0}async function Ha(){var t;if(!Y.tracking_number.trim()){T.msgError("请先填写快递单号再确认发货");return}yt.value=!0;try{if(await _i({id:bt.value,ship_mode:Y.ship_mode==="direct"?"direct":"gancao",express_company:Y.express_company||"auto",tracking_number:Y.tracking_number.trim()}),T.msgSuccess("确认发货成功,订单已进入「已发货」状态"),qe.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===bt.value)try{const e=await Z({id:bt.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{yt.value=!1}}const Rl=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],Me=k(!1),sa=k(0),xt=k(3),la=k(!1);async function El(){var e;const t=sa.value;if(t){la.value=!0;try{if(await mi({id:t,fulfillment_status:xt.value}),T.msgSuccess("订单状态已更新"),Me.value=!1,K(),J.value&&((e=c.value)==null?void 0:e.id)===t)try{const n=await Z({id:t}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}finally{la.value=!1}}}const Be=k(!1),kt=k(!1),He=k(0),ht=k(),na=k(!1),wt=k([]),O=be({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),Dl={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}],order_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],pay_amount:[{required:!0,message:"请输入支付金额",trigger:"blur"},{validator:(t,e,n)=>{const u=Number(e);!Number.isFinite(u)||u<=0?n(new Error("金额须大于 0")):n()},trigger:"blur"}],link_pay_order_ids:[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(t,e,n)=>{!Array.isArray(e)||e.length===0?n(new Error("请至少选择一个支付单")):n()}}]};async function $l(t,e=[]){var n;if(!t){wt.value=[];return}try{na.value=!0;const u=await pa({diagnosis_id:t}),d=(u==null?void 0:u.lists)??((n=u==null?void 0:u.data)==null?void 0:n.lists)??[],f=Array.isArray(d)?d.filter(x=>!e.includes(x.id)):[];wt.value=f}catch{wt.value=[]}finally{na.value=!1}}function Ga(t){var u,d;He.value=t.id,O.add_mode="create",O.order_type=3,O.pay_amount=void 0,O.pay_remark="",O.link_pay_order_ids=[],O.completion_request=0,Be.value=!0;const e=t.diagnosis_id||((u=c.value)==null?void 0:u.diagnosis_id),n=t.pay_order_ids||((d=c.value)==null?void 0:d.pay_order_ids)||[];e&&$l(e,n)}async function zl(){var t;if(ht.value){await ht.value.validate(),kt.value=!0;try{if(O.add_mode==="create")await fi({id:He.value,order_type:O.order_type,pay_amount:O.pay_amount,pay_remark:O.pay_remark||"",completion_request:O.completion_request}),T.msgSuccess("支付单已新增,请等待审核");else{const e=O.link_pay_order_ids;if(e.length===0){T.msgError("请至少选择一个支付单");return}await vi({id:He.value,pay_order_ids:e,completion_request:O.completion_request}),T.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}if(Be.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===He.value)try{const e=await Z({id:He.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{kt.value=!1}}}function Wa(t){sa.value=t.id,xt.value=3,Me.value=!0}async function Ul(t){var e;try{if(await Xe.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await gi({id:t.id}),T.msgSuccess("处方审核已撤回"),K(),J.value&&((e=c.value)==null?void 0:e.id)===t.id)try{const n=await Z({id:t.id}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}}async function Fl(t){var e;try{if(await Xe.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await yi({id:t.id}),T.msgSuccess("支付单审核已撤回"),K(),J.value&&((e=c.value)==null?void 0:e.id)===t.id)try{const n=await Z({id:t.id}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}}const St=k(!1),Vt=k(!1),h=k(null),Ka=k(null),Ne=k(!1),Nt=S(()=>{var e;const t=(e=h.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),jl=S(()=>{const t=h.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸")return null;const e=Number(t.medication_days??t.usage_days??t.dose_count),n=Number(t.times_per_day),u=Number(t.dosage_amount),d=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;return!Number.isFinite(e)||!Number.isFinite(n)||!Number.isFinite(u)||e<=0||n<=0||u<=0?null:e*n*u*d}),Ct=t=>String(t).padStart(2,"0"),Il=S(()=>{const t=h.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const n=String(e).length===10?Number(e)*1e3:Number(e),u=new Date(n);if(!isNaN(u.getTime()))return`${u.getFullYear()}-${Ct(u.getMonth()+1)}-${Ct(u.getDate())} ${Ct(u.getHours())}:${Ct(u.getMinutes())}`}return t.prescription_date||"—"}),Ll=S(()=>{const t=h.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const n=String(t.visit_no??"").trim();return n||"—"}),ql=S(()=>{const t=h.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),Ya=S(()=>{const t=h.value;return t?String(t.order_no??"").trim():""}),Ml=S(()=>{const t=h.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let n=t.region;return Array.isArray(n)&&(n=n.filter(Boolean).join("")),n&&e.push(String(n)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),Qa=S(()=>{var e;const t=Number((e=h.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Bl=S(()=>{const e=Nt.value.reduce((n,u)=>n+(Number(u==null?void 0:u.dosage)||0),0);return Ge(e)}),Hl=t=>{const e=Number(t)||0;return Ge(e*Qa.value)},Gl=S(()=>{const t=h.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),Wl=S(()=>{const t=h.value;if(!t)return"—";if(t.usage_text)return t.usage_text;const e=Number(t.times_per_day)>0?Number(t.times_per_day):3,n=t.dosage_amount!=null?Number(t.dosage_amount):10,u=t.dosage_unit||"g",d=t.usage_way||"温水送服",f=t.usage_time||"",x=[];if(x.push(`每天${e}次`),(t.prescription_type||"浓缩水丸")==="浓缩水丸"){const y=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;x.push(`一次${y}袋`),x.push(`每袋${n}${u}`)}else x.push(`一次${n}${u}`);return x.push(d),f&&x.push(f),x.join(", ")}),Kl=S(()=>{const t=jl.value;if(typeof t=="number"&&isFinite(t)&&t>0)return Ge(t);const e=h.value;if(!e)return"";const n=e.out_pellet||e.total_weight;if(n&&Number(n)>0)return Ge(Number(n));const u=Nt.value;if(!u.length)return"";const d=u.reduce((f,x)=>f+(Number(x==null?void 0:x.dosage)||0),0);return Ge(d*Qa.value)}),Ja=S(()=>{const t=h.value;return t&&t.medical_advice||""}),Xa=S(()=>{const t=h.value;if(!t)return"";const e=[];return e.push(`共${Nt.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Za=S(()=>{const t=h.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),es=S(()=>{const t=Kl.value;return t?`${t}克`:""});function Ge(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function ts(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Yl(t){return t?ts(t):"—"}function Ql(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function Jl(t){return t==null||t===""?"—":`${t}岁`}function Xl(){as(_)}async function as(t){if(!t.prescription_id){T.msgWarning("该订单未关联处方");return}St.value=!0,Vt.value=!0,h.value=null;try{const e=await bi({id:t.prescription_id}),n=(e==null?void 0:e.data)??e??null;if(n){const u=t.medication_days,d={...n};u!=null&&String(u).trim()!==""&&(d.medication_days=u),t.order_no&&!d.order_no&&(d.order_no=t.order_no),t.recipient_name&&!d.recipient_name&&(d.recipient_name=t.recipient_name),t.recipient_phone&&!d.recipient_phone&&(d.recipient_phone=t.recipient_phone),t.shipping_address&&!d.shipping_address&&(d.shipping_address=t.shipping_address),t.amount!=null&&d.order_amount==null&&(d.order_amount=t.amount),t.dose_count!=null&&String(t.dose_count).trim()!==""&&Number(t.dose_count)>0&&(d.dose_count=Number(t.dose_count)),t.dose_unit!=null&&String(t.dose_unit).trim()!==""&&(d.dose_unit=String(t.dose_unit));const f=t.linked_appointment;(!d.appointment_id||Number(d.appointment_id)<=0)&&f&&typeof f=="object"&&Number(f.id)>0&&(d.appointment_id=Number(f.id)),h.value=d}else h.value=null}catch(e){T.msgError((e==null?void 0:e.message)||"加载处方详情失败"),St.value=!1}finally{Vt.value=!1}}async function Zl(t){const e=t.querySelectorAll('img[src^="http"]'),n=Array.from(e).map(async u=>{try{const d=await fetch(u.src,{mode:"cors"});if(!d.ok)return;const f=await d.blob(),x=await new Promise((y,z)=>{const Q=new FileReader;Q.onload=()=>y(Q.result),Q.onerror=z,Q.readAsDataURL(f)});u.src=x}catch{}});await Promise.allSettled(n)}async function ss(){await Rt();const t=Ka.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Zl(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),ki(t,{scale:2,useCORS:!0,allowTaint:!1,logging:!1,backgroundColor:"#ffffff",windowWidth:t.scrollWidth,windowHeight:t.scrollHeight,width:t.scrollWidth,height:t.scrollHeight,ignoreElements:e=>e instanceof HTMLElement&&e.classList.contains("cf-slip-no-export")})}function ls(){var n;const t=(n=h.value)==null?void 0:n.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function en(){if(h.value){Ne.value=!0;try{const t=await ss(),e=document.createElement("a");e.download=`${ls()}.png`,e.href=t.toDataURL("image/png"),e.click(),T.msgSuccess("图片已下载")}catch{T.msgError("下载图片失败")}finally{Ne.value=!1}}}async function tn(){if(h.value){Ne.value=!0;try{const t=await ss(),e=t.toDataURL("image/jpeg",.95),n=new on({orientation:"portrait",unit:"mm",format:"a4"}),u=210,d=297,f=u,x=t.height*f/t.width;if(x<=d)n.addImage(e,"JPEG",0,0,f,x);else{let y=x,z=0;for(;y>0;)n.addImage(e,"JPEG",0,z,f,x),y-=d,z-=d,y>0&&n.addPage()}n.save(`${ls()}.pdf`),T.msgSuccess("PDF已下载")}catch{T.msgError("下载PDF失败")}finally{Ne.value=!1}}}return(t,e)=>{const n=un,u=dn,d=cn,f=mn,x=fn,y=gn,z=vn,Q=yn,w=bn,F=_n,re=xn,ve=wn,Pt=hn,ns=kn,ia=Wn,We=Sn,le=Vn,oe=Cn,Ke=Nn,E=Tn,pe=Pn,V=On,Ye=An,$=En,Tt=Rn,ra=Dn,is=zn,rs=$n,oa=Un,Ce=Fn,ce=jn,os=In,an=Ln,sn=Mn,ln=qn,nn=Bn,Pe=Gn,ua=Hn,ge=pn,q=Ti("perms");return o(),m("div",Ri,[e[249]||(e[249]=a("header",{class:"po-h5-hero","aria-label":"页面概览"},[a("div",{class:"po-h5-hero__text"},[a("h1",{class:"po-h5-hero__title"},"业务订单"),a("p",{class:"po-h5-hero__sub"},"履约、双审与收款一览;点卡片进入详情")])],-1)),s(n,{class:"po-h5-surface po-h5-surface--chips !mb-3 !border-none shadow-none",shadow:"never"},{default:l(()=>[a("div",Ei,[_e.value?(o(),m("div",Di,[e[85]||(e[85]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),m(D,null,B(Os,i=>a("div",{key:i.value,class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.prescription_audit_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Es(i.value)},[a("span",zi,r(i.label),1)],10,$i)),64))])):v("",!0),a("div",Ui,[e[86]||(e[86]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),m(D,null,B(Rs,i=>a("div",{key:i.value,class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.payment_slip_audit_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ds(i.value)},[a("span",ji,r(i.label),1)],10,Fi)),64))]),a("div",Ii,[e[87]||(e[87]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),m(D,null,B(Vs,i=>a("div",{key:"fs-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.fulfillment_status===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ns(i.value)},[a("span",qi,r(i.label),1)],10,Li)),64))]),a("div",Mi,[e[88]||(e[88]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),m(D,null,B(Cs,i=>a("div",{key:"sm-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.supply_mode===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ps(i.value)},[a("span",Hi,r(i.label),1)],10,Bi)),64))]),a("div",Gi,[e[89]||(e[89]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),m(D,null,B(Ts,i=>a("div",{key:"ec-"+String(i.value),class:I(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",b.express_company===i.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>As(i.value)},[a("span",Ki,r(i.label),1)],10,Wi)),64))])])]),_:1}),s(n,{class:"po-h5-surface po-filter-card !mb-3 !border-none shadow-none",shadow:"never"},{default:l(()=>[A((o(),m("div",Yi,[a("div",Qi,[e[90]||(e[90]=a("div",{class:"po-stat-deco po-stat-deco--o pointer-events-none absolute -right-6 -top-8 h-28 w-28 rounded-full opacity-40"},null,-1)),a("div",Ji,[a("div",null,[a("div",Xi,[s(u,{size:16,class:"text-sky-500"},{default:l(()=>[s(R(Kn))]),_:1}),p(" "+r(ne.value.orderHeading),1)]),a("div",Zi,[a("div",er," ¥"+r(ne.value.orderPerformanceStr),1),a("div",tr,[a("span",null,"合计 ¥"+r(ne.value.orderStr),1),a("span",ar,"已取消 ¥"+r(ne.value.orderCancelledStr),1)])])]),a("div",sr,[s(u,{size:20},{default:l(()=>[s(R(Yn))]),_:1})])]),a("p",lr,r(ne.value.periodLine),1)]),a("div",nr,[e[91]||(e[91]=a("div",{class:"po-stat-deco po-stat-deco--p pointer-events-none absolute -right-6 -top-8 h-28 w-28 rounded-full opacity-40"},null,-1)),a("div",ir,[a("div",null,[a("div",rr,[s(u,{size:16,class:"text-emerald-500"},{default:l(()=>[s(R(Qn))]),_:1}),p(" "+r(ne.value.payHeading),1)]),a("div",or,[a("div",ur," ¥"+r(ne.value.payPerformanceStr),1),a("div",dr,[a("span",null,"合计 ¥"+r(ne.value.payStr),1),a("span",pr,"已取消 ¥"+r(ne.value.payCancelledStr),1)])])]),a("div",cr,[s(u,{size:20},{default:l(()=>[s(R(Jn))]),_:1})])]),a("p",_r,r(ne.value.periodLine),1)])])),[[ge,R(te).loading]]),e[95]||(e[95]=a("p",{class:"po-h5-stats-hint text-center text-[12px] leading-snug text-slate-500 px-1 -mt-2 mb-3"},[p(" 上方为接口返回的"),a("strong",{class:"text-slate-600 font-medium"},"业绩汇总"),p("(未选创建日期时为今日;选了则为该区间);下方列表是当前筛选条件下的订单,"),a("strong",{class:"text-slate-600 font-medium"},"条数与金额和上面不必相等"),p("。 ")],-1)),a("div",{class:"po-filter-toggle",onClick:e[0]||(e[0]=i=>it.value=!it.value)},[a("div",mr,[s(u,null,{default:l(()=>[s(R(da))]),_:1}),e[92]||(e[92]=a("span",null,"筛选条件",-1)),Na.value>0?(o(),g(d,{key:0,size:"small",type:"primary",effect:"dark",round:""},{default:l(()=>[p(r(Na.value),1)]),_:1})):v("",!0)]),s(u,{class:I(["po-filter-toggle__arrow",{"is-open":!it.value}])},{default:l(()=>[s(R(us))]),_:1},8,["class"])]),A(s(F,{class:"ls-form",model:b,inline:""},{default:l(()=>[s(f,{class:"w-[360px] min-w-[240px] max-w-full",label:"创建时间"},{default:l(()=>[s(ai,{startTime:b.start_time,"onUpdate:startTime":e[1]||(e[1]=i=>b.start_time=i),endTime:b.end_time,"onUpdate:endTime":e[2]||(e[2]=i=>b.end_time=i),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始日期","end-placeholder":"结束日期",class:"!w-full"},null,8,["startTime","endTime"])]),_:1}),s(f,{class:"w-[260px]",label:"订单号"},{default:l(()=>[s(x,{modelValue:b.order_no,"onUpdate:modelValue":e[3]||(e[3]=i=>b.order_no=i),placeholder:"业务订单号",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[140px]",label:"处方ID"},{default:l(()=>[s(x,{modelValue:b.prescription_id,"onUpdate:modelValue":e[4]||(e[4]=i=>b.prescription_id=i),placeholder:"处方ID",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"患者"},{default:l(()=>[s(x,{modelValue:b.patient_keyword,"onUpdate:modelValue":e[5]||(e[5]=i=>b.patient_keyword=i),placeholder:"姓名 / 手机号",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"快递"},{default:l(()=>[s(x,{modelValue:b.express_keyword,"onUpdate:modelValue":e[6]||(e[6]=i=>b.express_keyword=i),placeholder:"快递单号 / 公司",clearable:"",onKeyup:Ze(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[200px]",label:"医生"},{default:l(()=>[s(z,{modelValue:b.doctor_id,"onUpdate:modelValue":e[7]||(e[7]=i=>b.doctor_id=i),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:l(()=>[(o(!0),m(D,null,B(Et.value,i=>(o(),g(y,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),s(f,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:l(()=>[s(Q,{modelValue:b.assistant_dept_id,"onUpdate:modelValue":e[8]||(e[8]=i=>b.assistant_dept_id=i),data:tt.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:bs,placeholder:"医助部门(选父级含子级)",onChange:Us},null,8,["modelValue","data"])]),_:1}),s(f,{class:"w-[200px]",label:"医助"},{default:l(()=>[s(z,{modelValue:b.assistant_id,"onUpdate:modelValue":e[9]||(e[9]=i=>b.assistant_id=i),clearable:"",filterable:"",placeholder:"诊单医助",class:"!w-full"},{default:l(()=>[(o(!0),m(D,null,B(va.value,i=>(o(),g(y,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),s(f,null,{default:l(()=>[s(w,{type:"primary",onClick:R(G)},{default:l(()=>[...e[93]||(e[93]=[p("查询",-1)])]),_:1},8,["onClick"]),s(w,{onClick:Fs},{default:l(()=>[...e[94]||(e[94]=[p("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),[[At,!it.value]])]),_:1}),A((o(),g(n,{class:"po-h5-surface po-table-card !mt-0 !border-none shadow-none",shadow:"never"},{default:l(()=>[a("div",fr,[a("div",vr,[a("div",gr,[e[96]||(e[96]=a("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),a("span",yr,"共 "+r(R(te).count)+" 条",1)]),a("div",br,[a("div",{class:I(["po-focus-board__item is-pending-rx",{"is-active":ee.value==="pendingRx"}]),onClick:e[10]||(e[10]=i=>at("pendingRx"))},[e[97]||(e[97]=a("span",{class:"po-focus-board__label"},"待处方审核",-1)),a("strong",xr,r(st.value.pendingRx),1)],2),a("div",{class:I(["po-focus-board__item is-pending-pay",{"is-active":ee.value==="pendingPay"}]),onClick:e[11]||(e[11]=i=>at("pendingPay"))},[e[98]||(e[98]=a("span",{class:"po-focus-board__label"},"待支付审核",-1)),a("strong",kr,r(st.value.pendingPay),1)],2),a("div",{class:I(["po-focus-board__item is-pending-ship",{"is-active":ee.value==="pendingShip"}]),onClick:e[12]||(e[12]=i=>at("pendingShip"))},[e[99]||(e[99]=a("span",{class:"po-focus-board__label"},"待发货",-1)),a("strong",hr,r(st.value.pendingShip),1)],2),a("div",{class:I(["po-focus-board__item is-risk",{"is-active":ee.value==="risk"}]),onClick:e[13]||(e[13]=i=>at("risk"))},[e[100]||(e[100]=a("span",{class:"po-focus-board__label"},"重点异常",-1)),a("strong",wr,r(st.value.risk),1)],2)])])]),a("div",Sr,[!R(te).lists.length&&!R(te).loading?(o(),g(re,{key:0,description:"暂无订单","image-size":88})):v("",!0),(o(!0),m(D,null,B(R(te).lists,i=>(o(),m("div",{key:i.id,class:I(["po-card",{"po-card--focus":lt&<({row:i})==="po-row-focus","po-card--risk":lt&<({row:i})==="po-row-risk"}]),onClick:P=>Ua(i.id)},[a("div",Nr,[a("div",Cr,[a("span",Pr,r(i.order_no||"—"),1)]),a("div",Tr,[s(d,{size:"small",effect:"plain",type:String(i.gancao_reciperl_order_no||"").trim()?"success":"info"},{default:l(()=>[p(r(String(i.gancao_reciperl_order_no||"").trim()?"甘草":"自营"),1)]),_:2},1032,["type"]),a("span",Ar,"#"+r(i.id),1)])]),pt(i.recipient_phone,i.prescription_phone)?(o(),m("div",Or,[s(u,null,{default:l(()=>[s(R(Xn))]),_:1}),e[101]||(e[101]=a("span",null,"收货手机与处方手机不一致",-1))])):v("",!0),a("div",Rr,[a("div",Er,[e[102]||(e[102]=a("span",{class:"po-card__label"},"收货人",-1)),a("span",Dr,r(i.recipient_name||"—"),1)]),a("div",$r,[e[103]||(e[103]=a("span",{class:"po-card__label"},"金额",-1)),a("span",zr,"¥"+r(i.amount),1)])]),a("div",Ur,[a("div",Fr,[e[104]||(e[104]=a("span",{class:"po-card__label"},"手机",-1)),a("span",{class:I(["po-card__value",pt(i.recipient_phone,i.prescription_phone)?"text-red-600 font-semibold":""])},r(i.recipient_phone||"—"),3)]),a("div",jr,[e[105]||(e[105]=a("span",{class:"po-card__label"},"费用类别",-1)),a("span",Ir,r(nt(i.fee_type)),1)])]),a("div",Lr,[a("div",qr,[e[106]||(e[106]=a("span",{class:"po-card__label"},"处方ID",-1)),a("span",Mr,r(i.prescription_id||"—"),1)]),a("div",Br,[e[107]||(e[107]=a("span",{class:"po-card__label"},"诊单ID",-1)),a("span",Hr,r(i.diagnosis_id||"—"),1)])]),_a()&&i.internal_cost!=null&&i.internal_cost!==""?(o(),m("div",Gr,[a("div",Wr,[e[108]||(e[108]=a("span",{class:"po-card__label"},"内部成本",-1)),a("span",Kr,"¥"+r(i.internal_cost),1)]),a("div",Yr,[e[109]||(e[109]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",Qr,[Number(i.linked_pay_order_count)>0?(o(),m("span",Jr,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",Xr,"—"))])])])):(o(),m("div",Zr,[a("div",eo,[e[110]||(e[110]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",to,[Number(i.linked_pay_order_count)>0?(o(),m("span",ao,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",so,"—"))])]),a("div",lo,[e[111]||(e[111]=a("span",{class:"po-card__label"},"创建时间",-1)),a("span",no,r(me(i.create_time)),1)])])),a("div",io,[s(d,{type:ya(i.prescription_audit_status),size:"small",class:I(Dt("rx",i))},{default:l(()=>[p(" 处方审: "+r(ga(i.prescription_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:ya(i.payment_slip_audit_status),size:"small",class:I(Dt("pay",i))},{default:l(()=>[p(" 支付审: "+r(ga(i.payment_slip_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:Is(i.fulfillment_status),size:"small",class:I(Dt("fulfillment",i))},{default:l(()=>[p(r($t(i.fulfillment_status)),1)]),_:2},1032,["type","class"])]),a("div",ro,[i.doctor_name?(o(),m("span",oo,"医:"+r(i.doctor_name),1)):v("",!0),i.creator_name?(o(),m("span",uo,"建:"+r(i.creator_name),1)):v("",!0),_a()&&i.internal_cost!=null&&i.internal_cost!==""?v("",!0):(o(),m("span",po,r(me(i.create_time)),1))]),a("div",{class:"po-card__actions",onClick:e[14]||(e[14]=Ot(()=>{},["stop"]))},[A((o(),g(w,{type:"primary",size:"small",onClick:P=>Ua(i.id)},{default:l(()=>[p(r(gs.value),1)]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/detail"]]]),ha(i)?A((o(),g(w,{key:0,size:"small",onClick:P=>hl(i)},{default:l(()=>[...e[112]||(e[112]=[p("编辑",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/edit"]]]):v("",!0),Gs(i)?A((o(),g(w,{key:1,type:"success",size:"small",onClick:P=>Ol(i)},{default:l(()=>[...e[113]||(e[113]=[p("改单号",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),zt(i)?A((o(),g(w,{key:2,type:"primary",size:"small",onClick:P=>aa(i)},{default:l(()=>[...e[114]||(e[114]=[p("发货",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ws(i)?(o(),g(ns,{key:3,trigger:"click",onCommand:P=>Ks(P,i)},{dropdown:l(()=>[s(Pt,null,{default:l(()=>[Ut(i)?(o(),g(ve,{key:0,command:"addPayOrder"},{default:l(()=>[...e[116]||(e[116]=[p("补齐支付单",-1)])]),_:1})):v("",!0),Ft(i)?(o(),g(ve,{key:1,command:"complete"},{default:l(()=>[...e[117]||(e[117]=[p("完成订单",-1)])]),_:1})):v("",!0),Sa(i)?(o(),g(ve,{key:2,command:"submitGancao"},{default:l(()=>[...e[118]||(e[118]=[p("上传药方",-1)])]),_:1})):v("",!0),wa(i)?(o(),g(ve,{key:3,command:"withdraw",divided:""},{default:l(()=>[...e[119]||(e[119]=[a("span",{class:"text-red-500"},"撤回订单",-1)])]),_:1})):v("",!0)]),_:2},1024)]),default:l(()=>[s(w,{size:"small"},{default:l(()=>[e[115]||(e[115]=p(" 更多",-1)),s(u,{class:"el-icon--right"},{default:l(()=>[s(R(us))]),_:1})]),_:1})]),_:2},1032,["onCommand"])):v("",!0)])],10,Vr))),128))]),a("div",co,[s(ia,{modelValue:R(te),"onUpdate:modelValue":e[15]||(e[15]=i=>Oi(te)?te.value=i:null),onChange:R(K)},null,8,["modelValue","onChange"])])]),_:1})),[[ge,R(te).loading]]),s(oa,{modelValue:J.value,"onUpdate:modelValue":e[26]||(e[26]=i=>J.value=i),class:"po-detail-drawer po-detail-drawer--h5",size:"100%",direction:"btt","destroy-on-close":"","close-on-click-modal":!1},{header:l(()=>{var i,P;return[a("div",_o,[a("div",mo,[e[120]||(e[120]=a("span",{class:"po-detail-drawer-title shrink-0 text-gray-800 font-semibold text-lg"},"业务订单详情",-1)),(i=c.value)!=null&&i.order_no?(o(),g(d,{key:0,type:"primary",effect:"plain",round:"",class:"max-w-full !whitespace-normal break-all text-left leading-snug"},{default:l(()=>[p(r(c.value.order_no),1)]),_:1})):v("",!0),(P=c.value)!=null&&P.gancao_reciperl_order_no?(o(),g(d,{key:1,type:"success",effect:"plain",round:"",class:"max-w-full !whitespace-normal break-all text-left leading-snug"},{default:l(()=>[p("甘草 "+r(c.value.gancao_reciperl_order_no),1)]),_:1})):v("",!0)]),c.value?(o(),m("div",fo,[qs(c.value)?A((o(),g(w,{key:0,type:"warning",size:"small",plain:"",onClick:e[16]||(e[16]=N=>Ia(c.value,"prescription"))},{default:l(()=>[...e[121]||(e[121]=[p(" 处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Bs(c.value)?A((o(),g(w,{key:1,type:"info",size:"small",plain:"",onClick:e[17]||(e[17]=N=>Ul(c.value))},{default:l(()=>[...e[122]||(e[122]=[p(" 撤回处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Ms(c.value)?A((o(),g(w,{key:2,type:"warning",size:"small",plain:"",onClick:e[18]||(e[18]=N=>Ia(c.value,"payment"))},{default:l(()=>[...e[123]||(e[123]=[p(" 支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Hs(c.value)?A((o(),g(w,{key:3,type:"info",size:"small",plain:"",onClick:e[19]||(e[19]=N=>Fl(c.value))},{default:l(()=>[...e[124]||(e[124]=[p(" 撤回支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),zt(c.value)?A((o(),g(w,{key:4,type:"primary",size:"small",plain:"",onClick:e[20]||(e[20]=N=>aa(c.value))},{default:l(()=>[...e[125]||(e[125]=[p(" 确认发货 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ut(c.value)?A((o(),g(w,{key:5,type:"success",size:"small",plain:"",onClick:e[21]||(e[21]=N=>Ga(c.value))},{default:l(()=>[...e[126]||(e[126]=[p(" 关联支付单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Ft(c.value)?A((o(),g(w,{key:6,type:"primary",size:"small",plain:"",onClick:e[22]||(e[22]=N=>Wa(c.value))},{default:l(()=>[...e[127]||(e[127]=[p(" 完成订单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/complete"]]]):v("",!0)])):v("",!0)])]}),default:l(()=>[It.value?(o(),g(We,{key:0,rows:12,animated:"",class:"px-6 py-4"})):c.value?(o(),m("div",vo,[Re.value?(o(),g(le,{key:0,type:"error",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:"业务订单收货手机与处方登记手机不一致"},{default:l(()=>[a("div",go,[a("div",null,[e[128]||(e[128]=p(" 处方手机: ",-1)),a("span",yo,r(Qs.value),1)]),a("div",null,[e[129]||(e[129]=p(" 订单收货手机: ",-1)),a("span",bo,r(Js.value),1)]),e[130]||(e[130]=a("div",{class:"text-gray-600 mt-1"},"请核对是否代收货或录入错误,避免物流与回访联系错人。",-1))])]),_:1})):v("",!0),a("div",xo,[s(Ke,{class:"po-workflow-steps",direction:"vertical",active:rt.value,"finish-status":"success"},{default:l(()=>[s(oe,{title:"业务订单创建",description:me(c.value.create_time)},null,8,["description"]),s(oe,{title:"处方单双审",status:ot.value},{description:l(()=>[ot.value==="error"?(o(),m("span",ko,"处方被驳回")):ot.value==="wait"?(o(),m("span",ho,"等待审核")):ot.value==="success"?(o(),m("span",wo,"双审通过")):(o(),m("span",So,"进行中"))]),_:1},8,["status"]),s(oe,{title:"支付单审核",status:ut.value},{description:l(()=>[ut.value==="error"?(o(),m("span",Vo,"支付审核驳回")):ut.value==="wait"?(o(),m("span",No,"等待审核")):ut.value==="success"?(o(),m("span",Co,"审核通过")):(o(),m("span",Po,"进行中"))]),_:1},8,["status"]),s(oe,{title:"发货与履约",status:xe.value},{description:l(()=>{var i,P,N;return[xe.value==="process"&&Number((i=c.value)==null?void 0:i.fulfillment_status)===7?(o(),m("span",To,"进行中")):xe.value==="process"?(o(),m("span",Ao,"等待发货/补充单号")):xe.value==="wait"?(o(),m("span",Oo,"待转入履约")):xe.value==="success"?(o(),m("span",Ro,r($t((P=c.value)==null?void 0:P.fulfillment_status)),1)):xe.value==="error"?(o(),m("span",Eo,r($t((N=c.value)==null?void 0:N.fulfillment_status)),1)):v("",!0)]}),_:1},8,["status"]),s(oe,{title:"订单完成"})]),_:1},8,["active"])]),s(pe,{gutter:16,class:"mb-5"},{default:l(()=>[s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[a("div",Do,[e[132]||(e[132]=a("div",{class:"stat-title text-gray-500 text-xs"},"总金额",-1)),jt(c.value)?A((o(),g(w,{key:0,type:"primary",size:"small",link:"",onClick:cl},{default:l(()=>[...e[131]||(e[131]=[p(" 修改 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/updateAmount"]]]):v("",!0)]),a("div",$o,"¥"+r(c.value.amount),1)]),_:1})]),_:1}),s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[133]||(e[133]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付总额",-1)),a("div",zo,"¥"+r(c.value.linked_pay_paid_total||0),1)]),_:1})]),_:1}),s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[134]||(e[134]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"需代收",-1)),a("div",{class:I(["stat-value font-bold text-xl",Ca.value>0?"text-amber-600":"text-gray-500"])}," ¥"+r(de(Ca.value)),3)]),_:1})]),_:1}),s(E,{xs:12,sm:6},{default:l(()=>[s(n,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:l(()=>[e[135]||(e[135]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付笔数",-1)),a("div",Uo,r(Lt.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),a("div",Fo,[s(n,{shadow:"never",class:"po-panel po-panel-rx border-gray-100 h-full relative overflow-hidden"},{header:l(()=>[a("div",Lo,[a("div",qo,[e[138]||(e[138]=a("span",{class:"po-panel-rx-header__title font-medium text-[15px] leading-snug"},"处方详情",-1)),a("span",Mo," ID: "+r(c.value.prescription_id||"—"),1)]),c.value.doctor_name?(o(),m("div",Bo,[e[139]||(e[139]=p(" 开方人:",-1)),a("span",Ho,r(c.value.doctor_name),1)])):v("",!0),a("div",Go,[c.value.prescription_id&&C.value&&!String(c.value.prescription_detail_error||"").trim()?A((o(),g(w,{key:0,type:"default",size:"small",link:"",onClick:ul},{default:l(()=>[...e[140]||(e[140]=[p(" 改患者信息 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/patchPrescriptionPatient"]]]):v("",!0),c.value.prescription_id&&_e.value?(o(),g(w,{key:1,type:"primary",size:"small",link:"",onClick:e[23]||(e[23]=i=>as(c.value))},{default:l(()=>[...e[141]||(e[141]=[p(" 详细 ",-1)])]),_:1})):v("",!0),c.value.id&&_e.value?(o(),g(w,{key:2,type:"warning",size:"small",link:"",loading:Ve.value,icon:R(da),onClick:Tl},{default:l(()=>[...e[142]||(e[142]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0)])])]),default:l(()=>[c.value.prescription_audit_status===1?(o(),m("div",jo,[...e[136]||(e[136]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.prescription_audit_status===2?(o(),m("div",Io,[...e[137]||(e[137]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),String(c.value.prescription_detail_error||"").trim()?(o(),g(le,{key:2,title:c.value.prescription_detail_error,type:"warning",closable:!1,"show-icon":"",class:"mb-3"},null,8,["title"])):C.value?(o(),m(D,{key:3},[s(Ye,{column:1,border:"",size:"small",class:"po-desc bg-white"},{default:l(()=>[s(V,{label:"处方编号",span:2},{default:l(()=>[p(r(C.value.sn||"—"),1)]),_:1}),s(V,{label:"患者"},{default:l(()=>[p(r(C.value.patient_name||"—"),1)]),_:1}),s(V,{label:"性别 / 年龄"},{default:l(()=>[p(r(C.value.gender_desc||"—")+" · "+r(C.value.age??"—")+"岁 ",1)]),_:1}),s(V,{label:"手机"},{default:l(()=>[a("span",{class:I(Re.value?"rx-phone-mismatch text-red-600 font-bold":"")},r(C.value.phone||"—"),3),Re.value?(o(),g(d,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:l(()=>[...e[143]||(e[143]=[p(" 与订单手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),s(V,{label:"处方日期"},{default:l(()=>[p(r(C.value.prescription_date||"—"),1)]),_:1}),s(V,{label:"医师"},{default:l(()=>[p(r(C.value.doctor_name||"—"),1)]),_:1}),s(V,{label:"类型"},{default:l(()=>[p(r(C.value.prescription_type||"—"),1)]),_:1}),s(V,{label:"临床诊断",span:2},{default:l(()=>[p(r(C.value.clinical_diagnosis||"—"),1)]),_:1}),_e.value?(o(),g(V,{key:0,label:"剂数 / 用法",span:2},{default:l(()=>[p(r(c.value.dose_count??C.value.dose_count??"—")+" "+r(c.value.dose_unit||"剂")+" · "+r(C.value.usage_instruction||C.value.usage_method||"—"),1)]),_:1})):v("",!0),s(V,{label:"处方金额"},{default:l(()=>[a("span",Wo,"¥"+r(C.value.amount??"—"),1)]),_:1}),s(V,{label:"消费者审核"},{default:l(()=>[s(d,{type:tl(C.value.audit_status),size:"small"},{default:l(()=>[p(r(el(C.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),s(V,{label:"用量"},{default:l(()=>[C.value.dosage_amount?(o(),m(D,{key:0},[p(r(C.value.dosage_amount)+r(C.value.dosage_unit||"g")+" ",1),C.value.prescription_type==="浓缩水丸"?(o(),m(D,{key:0},[p(" · "+r(Number(C.value.dosage_bag_count)>0?Number(C.value.dosage_bag_count):1)+"袋 ",1)],64)):v("",!0),C.value.prescription_type==="饮片"&&C.value.need_decoction!==null?(o(),m("span",Ko," ("+r(C.value.need_decoction?"代煎":"不代煎")+") ",1)):v("",!0)],64)):(o(),m(D,{key:1},[p("—")],64))]),_:1}),s(V,{label:"服用方式"},{default:l(()=>[a("div",Yo,[a("div",null,[e[144]||(e[144]=a("span",{class:"text-gray-500"},"每天次数:",-1)),p(" "+r(C.value.times_per_day?C.value.times_per_day+" 次":"—"),1)]),a("div",null,[e[145]||(e[145]=a("span",{class:"text-gray-500"},"处方开立:",-1)),p(" "+r(C.value.usage_days!=null&&C.value.usage_days!==""?C.value.usage_days+" 天":"—"),1)]),a("div",null,[e[146]||(e[146]=a("span",{class:"text-gray-500"},"订单设置:",-1)),p(" "+r(c.value.medication_days!=null&&String(c.value.medication_days).trim()!==""?c.value.medication_days+" 天":"—"),1)])])]),_:1}),s(V,{label:"状态",span:2},{default:l(()=>[s(d,{type:Number(C.value.void_status)===1?"danger":"success",size:"small"},{default:l(()=>[p(r(Number(C.value.void_status)===1?"已作废":"正常"),1)]),_:1},8,["type"])]),_:1})]),_:1}),Xs.value?(o(),m("div",Qo,[e[147]||(e[147]=a("div",{class:"text-xs font-medium text-gray-500 mb-2 px-1"},"药材明细",-1)),Aa.value.length?(o(),g(Tt,{key:0,data:Aa.value,size:"small",border:"",stripe:"","max-height":"260"},{default:l(()=>[s($,{type:"index",label:"#",width:"48",align:"center"}),s($,{prop:"name",label:"药名","min-width":"120","show-overflow-tooltip":""}),s($,{prop:"dosage",label:"用量(g)",width:"96",align:"right"})]),_:1},8,["data"])):(o(),g(re,{key:1,description:"无处方药材明细","image-size":64}))])):v("",!0)],64)):(o(),g(re,{key:4,description:"无处方数据","image-size":72}))]),_:1}),a("div",Jo,[s(n,{shadow:"never",class:"po-panel border-gray-100"},{header:l(()=>[...e[148]||(e[148]=[a("div",{class:"flex items-center justify-between"},[a("span",{class:"font-medium text-[15px]"},"未关联的收款记录"),a("span",{class:"text-xs text-gray-400"},"本诊单下未被占用的支付单")],-1)])]),default:l(()=>[ke.value.length?(o(),g(Tt,{key:0,data:ke.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s($,{prop:"id",label:"ID",width:"70"}),s($,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s($,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||nt(i.order_type)),1)]),_:1}),s($,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",Xo,"¥"+r(i.amount),1)]),_:1}),s($,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Ra(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||Va(i.status)),1)]),_:2},1032,["type"]),i.is_exempt===1?(o(),g(d,{key:0,type:"warning",size:"small",class:"ml-1"},{default:l(()=>[...e[149]||(e[149]=[p("豁免",-1)])]),_:1})):v("",!0)]),_:1}),s($,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s($,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ea(i.create_time)),1)]),_:1})]),_:1},8,["data"])):(o(),g(re,{key:1,description:"无未关联的收款单","image-size":60}))]),_:1}),s(n,{shadow:"never",class:"po-panel po-panel-pay border-gray-100 relative overflow-hidden"},{header:l(()=>[a("div",tu,[a("div",au,[e[153]||(e[153]=a("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),c.value.creator_name?(o(),m("span",su,[e[152]||(e[152]=p(" 创建人:",-1)),a("span",lu,r(c.value.creator_name),1)])):v("",!0)])])]),default:l(()=>[c.value.payment_slip_audit_status===1?(o(),m("div",Zo,[...e[150]||(e[150]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.payment_slip_audit_status===2?(o(),m("div",eu,[...e[151]||(e[151]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),Lt.value.length?(o(),g(Tt,{key:2,data:Lt.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s($,{prop:"id",label:"ID",width:"70"}),s($,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s($,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||nt(i.order_type)),1)]),_:1}),s($,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",nu,"¥"+r(i.amount),1)]),_:1}),s($,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Ra(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||Va(i.status)),1)]),_:2},1032,["type"]),i.is_exempt===1?(o(),g(d,{key:0,type:"warning",size:"small",class:"ml-1"},{default:l(()=>[...e[154]||(e[154]=[p("豁免",-1)])]),_:1})):v("",!0)]),_:1}),s($,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s($,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ea(i.create_time)),1)]),_:1})]),_:1},8,["data"])):(o(),g(re,{key:3,description:"未关联收款单","image-size":60}))]),_:1})])]),s(n,{shadow:"never",class:"po-panel po-panel-biz border-gray-100 mb-4"},{header:l(()=>[...e[155]||(e[155]=[a("span",{class:"font-medium text-[15px]"},"履约与收货信息",-1)])]),default:l(()=>[s(Ye,{column:1,border:"",size:"small",class:"po-desc"},{default:l(()=>[s(V,{label:"诊单ID"},{default:l(()=>[a("div",iu,[a("div",ru,[e[156]||(e[156]=a("span",{class:"text-[11px] font-semibold uppercase tracking-[0.06em] text-slate-500"},"关联诊单",-1)),a("span",ou,r(c.value.diagnosis_id||"—"),1),e[157]||(e[157]=a("span",{class:"text-[12px] leading-snug text-slate-500"},"病历与体征以诊单为准,可全屏查看",-1))]),Number(c.value.diagnosis_id)>0?(o(),g(w,{key:0,type:"primary",plain:"",round:"",size:"default",class:"po-biz-diagnosis-id__btn w-full shrink-0 touch-manipulation sm:w-auto !m-0",icon:R(Zn),"aria-label":"打开关联诊单详情(患者与病历)",onClick:ms},{default:l(()=>[...e[158]||(e[158]=[p(" 查看诊单详情 ",-1)])]),_:1},8,["icon"])):v("",!0)])]),_:1}),s(V,{label:"创建时间"},{default:l(()=>[p(r(me(c.value.create_time)),1)]),_:1}),s(V,{label:"收货人"},{default:l(()=>[p(r(c.value.recipient_name),1)]),_:1}),s(V,{label:"挂号关联",span:3},{default:l(()=>[W.value?(o(),m(D,{key:0},[a("div",uu,[a("span",null,[e[159]||(e[159]=p("预约 ",-1)),a("span",du,"#"+r(W.value.id),1)]),a("span",pu,"时间:"+r(W.value.appointment_date)+" "+r(W.value.period)+" "+r(W.value.appointment_time),1),s(d,{size:"small",type:"info"},{default:l(()=>[p(r(W.value.appointment_type_desc),1)]),_:1}),s(d,{size:"small"},{default:l(()=>[p(r(W.value.status_desc),1)]),_:1}),W.value.doctor_name?(o(),m("span",cu,"接诊:"+r(W.value.doctor_name),1)):v("",!0),W.value.channel_source?(o(),m("span",_u,"渠道:"+r(W.value.channel_source),1)):v("",!0),Ta.value?(o(),g(d,{key:2,size:"small",effect:"plain"},{default:l(()=>[p(r(Ta.value),1)]),_:1})):v("",!0)]),String(W.value.remark||"").trim()?(o(),m("p",mu," 备注:"+r(W.value.remark),1)):v("",!0)],64)):(o(),m("span",fu,"暂无挂号预约记录(未绑定或诊单下无预约)"))]),_:1}),s(V,{label:"收货手机"},{default:l(()=>[a("span",{class:I(Re.value?"text-red-600 font-bold font-mono":"font-mono")},r(c.value.recipient_phone||"—"),3),Re.value?(o(),g(d,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:l(()=>[...e[160]||(e[160]=[p(" 与处方手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),s(V,{label:"收货地址",span:2},{default:l(()=>[p(r(Zs.value),1)]),_:1}),s(V,{label:"复诊"},{default:l(()=>[p(r(c.value.is_follow_up?"是":"否"),1)]),_:1}),s(V,{label:"用药疗程"},{default:l(()=>[p(r(c.value.medication_days?c.value.medication_days+" 天":"—"),1)]),_:1}),s(V,{label:"上次医护"},{default:l(()=>[p(r(c.value.prev_staff||"—"),1)]),_:1}),s(V,{label:"服务渠道"},{default:l(()=>[p(r(c.value.service_channel||"—"),1)]),_:1}),s(V,{label:"服务套餐"},{default:l(()=>[p(r(js(c.value.service_package)),1)]),_:1}),s(V,{label:"费用类别"},{default:l(()=>[p(r(nt(c.value.fee_type)),1)]),_:1}),c.value.internal_cost!=null&&c.value.internal_cost!==""?(o(),g(V,{key:0,label:"内部成本"},{default:l(()=>[p(" ¥"+r(c.value.internal_cost),1)]),_:1})):v("",!0),s(V,{label:"快递单号",span:c.value.internal_cost!=null&&c.value.internal_cost!==""?1:2},{default:l(()=>[p(r(c.value.tracking_number||"—"),1)]),_:1},8,["span"]),s(V,{label:"快递公司"},{default:l(()=>[p(r(rl(c.value.express_company)),1)]),_:1}),A((o(),g(V,{label:"备注",span:3},{default:l(()=>[p(r(c.value.remark_extra||"—"),1)]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(V,{label:"医助备注",span:3},{default:l(()=>[p(r(c.value.remark_assistant||"—"),1)]),_:1}),s(V,{label:"处方审核意见",span:3},{default:l(()=>[a("span",vu,r(c.value.prescription_audit_remark||"—"),1)]),_:1}),s(V,{label:"支付审核意见",span:3},{default:l(()=>[a("span",gu,r(c.value.payment_slip_audit_remark||"—"),1)]),_:1})]),_:1})]),_:1}),String(c.value.tracking_number||"").trim()?(o(),g(n,{key:1,shadow:"never",class:"po-panel po-panel-logistics border-gray-100"},{header:l(()=>[...e[161]||(e[161]=[a("span",{class:"font-medium text-[15px]"},"物流轨迹",-1)])]),default:l(()=>{var i,P,N,j,Qe,Je;return[e[167]||(e[167]=a("p",{class:"po-logistics-tip text-gray-400 text-xs mb-3 font-normal"}," 优先读库,无记录时走快递100。顺丰会校验单号+电话(快递100要求完整手机号更易通过);默认预填订单收货手机,若仍提示验证码错误请改成与顺丰面单一致的号码。 ",-1)),a("div",yu,[s(x,{modelValue:De.value,"onUpdate:modelValue":e[24]||(e[24]=ue=>De.value=ue),clearable:"",maxlength:"20",placeholder:"收件手机(建议11位,与面单一致)",class:"po-logistics-toolbar__phone",onKeyup:Ze(Wt,["enter"])},null,8,["modelValue"]),s(z,{modelValue:Ee.value,"onUpdate:modelValue":e[25]||(e[25]=ue=>Ee.value=ue),placeholder:"承运商",class:"po-logistics-toolbar__carrier"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),A((o(),g(w,{type:"primary",plain:"",size:"default",loading:ct.value,class:"po-logistics-toolbar__btn",onClick:Wt},{icon:l(()=>[s(u,null,{default:l(()=>[s(R(ei))]),_:1})]),default:l(()=>[e[162]||(e[162]=p(" 刷新轨迹 ",-1))]),_:1},8,["loading"])),[[q,["tcm.prescriptionOrder/logisticsTrace"]]]),a("div",bu,[s(ra,{href:Gt.value.sf,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[163]||(e[163]=[p("顺丰官网",-1)])]),_:1},8,["href"]),s(ra,{href:Gt.value.jd,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[164]||(e[164]=[p("京东物流",-1)])]),_:1},8,["href"]),s(ra,{href:Gt.value.jt,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[165]||(e[165]=[p("极兔",-1)])]),_:1},8,["href"])])]),String(((i=H.value)==null?void 0:i.hint)||"").trim()?(o(),g(le,{key:0,title:String(((P=H.value)==null?void 0:P.hint)||""),type:"info",closable:!1,class:"mb-4","show-icon":""},null,8,["title"])):v("",!0),ct.value&&!H.value?(o(),m("div",xu,[s(u,{class:"is-loading mr-1"},{default:l(()=>[s(R(ti))]),_:1}),e[166]||(e[166]=p("正在加载物流轨迹... ",-1))])):H.value?(o(),m("div",ku,[(N=H.value)!=null&&N.state_text?(o(),m("div",hu,[a("span",wu,"状态:"+r(H.value.state_text),1),(j=H.value)!=null&&j.carrier_label?(o(),g(d,{key:0,size:"small",type:"info"},{default:l(()=>[p(r(H.value.carrier_label),1)]),_:1})):v("",!0),(Qe=H.value)!=null&&Qe.source?(o(),m("span",Su," ["+r(H.value.source==="database"?"数据库缓存":"API拉取")+"] ",1)):v("",!0),(Je=H.value)!=null&&Je.last_query_time?(o(),m("span",Vu," 更新时间:"+r(H.value.last_query_time),1)):v("",!0)])):v("",!0),Da.value.length?(o(),g(rs,{key:1,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m(D,null,B(Da.value,(ue,ye)=>(o(),g(is,{key:ye,type:ye===0?"primary":"info",hollow:ye!==0,timestamp:ue.time,placement:"top"},{default:l(()=>[a("span",{class:I(ye===0?"text-gray-800 font-medium":"text-gray-500")},r(ue.context),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(o(),g(re,{key:2,description:"暂无轨迹节点记录","image-size":64}))])):v("",!0)]}),_:1})):v("",!0),A((o(),g(n,{shadow:"never",class:"po-panel border-gray-100 mt-4"},{header:l(()=>[...e[168]||(e[168]=[a("span",{class:"font-medium text-[15px]"},"操作日志",-1)])]),default:l(()=>[he.value.length?(o(),g(rs,{key:0,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m(D,null,B(he.value,(i,P)=>(o(),g(is,{key:i.id,type:P===0?"primary":"info",hollow:P!==0,timestamp:me(i.create_time),placement:"top"},{default:l(()=>[a("div",Nu,[a("span",Cu,r(i.admin_name),1),s(d,{size:"small",type:"info"},{default:l(()=>[p(r(il(i.action)),1)]),_:2},1024)]),a("span",{class:I(P===0?"text-gray-800 font-medium":"text-gray-500")},r(i.summary),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(o(),g(re,{key:1,description:"暂无操作日志","image-size":64}))]),_:1})),[[q,["tcm.prescriptionOrder/logs"]]])])):v("",!0)]),_:1},8,["modelValue"]),s(ce,{modelValue:$e.value,"onUpdate:modelValue":e[29]||(e[29]=i=>$e.value=i),title:"修改订单金额",width:"92%","destroy-on-close":"","close-on-click-modal":!1,onClosed:pl},{footer:l(()=>[s(w,{onClick:e[28]||(e[28]=i=>$e.value=!1)},{default:l(()=>[...e[170]||(e[170]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:Bt.value,onClick:za},{default:l(()=>[...e[171]||(e[171]=[p(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(F,{ref_key:"updateAmountFormRef",ref:_t,model:ie,rules:ll,"label-width":"84px",onSubmit:Ot(za,["prevent"])},{default:l(()=>[s(f,{label:"当前金额"},{default:l(()=>{var i;return[a("div",Pu,"¥"+r(de((i=c.value)==null?void 0:i.amount)),1)]}),_:1}),s(f,{label:"新金额",prop:"amount"},{default:l(()=>[s(Ce,{modelValue:ie.amount,"onUpdate:modelValue":e[27]||(e[27]=i=>ie.amount=i),min:.01,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[169]||(e[169]=a("div",{class:"text-xs text-gray-400 pl-[84px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(ce,{modelValue:fe.value,"onUpdate:modelValue":e[50]||(e[50]=i=>fe.value=i),title:"编辑业务订单",width:"96%",top:"2vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog create-order-dialog--h5",onClosed:bl},{footer:l(()=>[a("div",od,[a("div",ud,[a("span",dd,"第 "+r(L.value+1)+" / 3 步",1),L.value===2&&M.value>0?(o(),m("span",pd," 订单金额与关联支付单合计须 ≥ ¥"+r(de(M.value)),1)):v("",!0)]),a("div",cd,[s(w,{size:"large",onClick:e[49]||(e[49]=i=>fe.value=!1)},{default:l(()=>[...e[184]||(e[184]=[p("取消",-1)])]),_:1}),L.value>0?(o(),g(w,{key:0,size:"large",onClick:xl},{default:l(()=>[...e[185]||(e[185]=[p("上一步",-1)])]),_:1})):v("",!0),L.value<2?(o(),g(w,{key:1,type:"primary",size:"large",onClick:kl},{default:l(()=>[...e[186]||(e[186]=[p(" 下一步 ",-1)])]),_:1})):v("",!0),L.value===2?(o(),g(w,{key:2,type:"primary",size:"large",loading:Jt.value,onClick:wl},{default:l(()=>[...e[187]||(e[187]=[p(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:l(()=>[A((o(),m("div",Tu,[se.value?(o(),m("div",Au,[a("div",Ou,[e[172]||(e[172]=a("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),a("div",Ru,[a("span",Eu,"#"+r(se.value.id),1),se.value.sn?(o(),m("span",Du,r(se.value.sn),1)):v("",!0),a("span",$u,r(se.value.patient_name||"—"),1)])]),s(os,{content:Fa.value,placement:"bottom","show-after":300},{default:l(()=>[a("div",zu,r(Fa.value),1)]),_:1},8,["content"])])):v("",!0),s(Ke,{active:L.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:l(()=>[s(oe,{title:"患者与收货",description:"诊单与物流地址"}),s(oe,{title:"服务与支付单",description:"套餐与关联收款"}),s(oe,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),a("p",Uu,r(ml.value),1),s(F,{ref_key:"editFormRef",ref:we,model:_,rules:yl.value,"label-width":"108px",class:"create-order-form"},{default:l(()=>[A(a("div",Fu,[s(pe,{gutter:20},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"收货人",prop:"recipient_name"},{default:l(()=>[s(x,{modelValue:_.recipient_name,"onUpdate:modelValue":e[30]||(e[30]=i=>_.recipient_name=i),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"收货手机",prop:"recipient_phone"},{default:l(()=>[s(x,{modelValue:_.recipient_phone,"onUpdate:modelValue":e[31]||(e[31]=i=>_.recipient_phone=i),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"省市区",prop:"region"},{default:l(()=>[s(an,{modelValue:_.region,"onUpdate:modelValue":e[32]||(e[32]=i=>_.region=i),options:et.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"详细地址",prop:"shipping_address"},{default:l(()=>[s(x,{modelValue:_.shipping_address,"onUpdate:modelValue":e[33]||(e[33]=i=>_.shipping_address=i),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[At,L.value===0]]),A(a("div",ju,[_e.value?(o(),g(pe,{key:0,gutter:20,class:"mb-1"},{default:l(()=>[s(E,{span:24},{default:l(()=>[a("div",Iu,[e[175]||(e[175]=a("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),_.prescription_id?(o(),g(w,{key:0,type:"primary",size:"small",link:"",onClick:Xl},{default:l(()=>[...e[173]||(e[173]=[p(" 详细 ",-1)])]),_:1})):v("",!0),_.id?(o(),g(w,{key:1,type:"warning",size:"small",link:"",loading:Ve.value,icon:R(da),onClick:Pl},{default:l(()=>[...e[174]||(e[174]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),a("span",Lu,"ID: "+r(_.prescription_id||"—"),1)]),a("div",qu,[ja.value.length?(o(),m("div",Mu,[e[176]||(e[176]=a("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),m(D,null,B(ja.value,(i,P)=>(o(),m("div",{key:P,class:"pl-0 min-w-0"},[i.length?(o(),g(ln,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:l(()=>[(o(!0),m(D,null,B(i,(N,j)=>(o(),g(sn,{key:j},{default:l(()=>[a("span",Bu,r(N),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),m("div",Hu,"创建人所属部门:—"))])]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"复诊"},{default:l(()=>[s(nn,{modelValue:_.is_follow_up,"onUpdate:modelValue":e[34]||(e[34]=i=>_.is_follow_up=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:l(()=>[a("div",Gu,[s(Ce,{modelValue:_.medication_days,"onUpdate:modelValue":e[35]||(e[35]=i=>_.medication_days=i),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[177]||(e[177]=a("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"上次医生"},{default:l(()=>[s(x,{modelValue:_.prev_staff,"onUpdate:modelValue":e[36]||(e[36]=i=>_.prev_staff=i),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:Oa.value,prop:"dose_count"},{default:l(()=>[s(Ce,{modelValue:_.dose_count,"onUpdate:modelValue":e[37]||(e[37]=i=>_.dose_count=i),min:1,placeholder:Oa.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"剂量单位",prop:"dose_unit"},{default:l(()=>[s(z,{modelValue:_.dose_unit,"onUpdate:modelValue":e[38]||(e[38]=i=>_.dose_unit=i),placeholder:"请选择",class:"w-full"},{default:l(()=>[s(y,{label:"剂",value:"剂"}),s(y,{label:"丸",value:"丸"}),s(y,{label:"袋",value:"袋"}),s(y,{label:"盒",value:"盒"}),s(y,{label:"瓶",value:"瓶"}),s(y,{label:"膏",value:"膏"}),s(y,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),s(pe,{gutter:20},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"服务渠道"},{default:l(()=>[s(x,{modelValue:_.service_channel,"onUpdate:modelValue":e[39]||(e[39]=i=>_.service_channel=i),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"服务套餐"},{default:l(()=>[s(z,{modelValue:_.service_package,"onUpdate:modelValue":e[40]||(e[40]=i=>_.service_package=i),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:l(()=>[(o(!0),m(D,null,B(Ae.value,i=>(o(),g(y,{key:i.value,label:i.name,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"物流设置"},{default:l(()=>[a("div",Wu,[s(z,{modelValue:_.express_company,"onUpdate:modelValue":e[41]||(e[41]=i=>_.express_company=i),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),s(x,{modelValue:_.tracking_number,"onUpdate:modelValue":e[42]||(e[42]=i=>_.tracking_number=i),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),s(E,{span:24},{default:l(()=>[s(f,{label:"关联支付单",prop:"pay_order_ids",required:M.value>0},{default:l(()=>[s(z,{modelValue:_.pay_order_ids,"onUpdate:modelValue":e[43]||(e[43]=i=>_.pay_order_ids=i),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:M.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Xt.value},{default:l(()=>[(o(!0),m(D,null,B(Ue.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Zt(i.order_type)}`,value:i.id,class:"!h-auto py-1.5"},{default:l(()=>[a("div",Ku,[a("div",Yu,[a("span",Qu,r(i.order_no),1),a("span",Ju,"¥"+r(i.amount),1)]),a("div",Xu,[a("span",Zu,[p(r(Zt(i.order_type)),1),i.remark?(o(),m(D,{key:0},[p(" · "+r(i.remark),1)],64)):v("",!0)]),a("span",ed,r(String(i.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),a("div",td,[M.value>0?(o(),m(D,{key:0},[a("span",ad,"当前已开启关联支付门槛(¥"+r(de(M.value))+"),须至少选择一笔支付单。",1),e[178]||(e[178]=a("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[180]||(e[180]=p(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),s(os,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:l(()=>[...e[179]||(e[179]=[a("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[At,L.value===1]]),A(a("div",sd,[a("div",{class:I(["create-order-deposit-bar",ea.value>=M.value?"is-ok":"is-warn"])},[a("div",ld,[e[181]||(e[181]=a("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),a("strong",null,"¥"+r(de(M.value)),1),a("span",nd,r(M.value>0?"须 ≥ 此值":"未设置"),1)]),e[183]||(e[183]=a("div",{class:"create-order-deposit-bar__sep"},null,-1)),a("div",id,[e[182]||(e[182]=a("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),a("strong",null,"¥"+r(de(ea.value)),1),a("span",rd,r(ea.value>=M.value?"已达标":"未达标"),1)])],2),s(pe,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"费用类别",prop:"fee_type"},{default:l(()=>[s(z,{modelValue:_.fee_type,"onUpdate:modelValue":e[44]||(e[44]=i=>_.fee_type=i),placeholder:"请选择",class:"w-full"},{default:l(()=>[s(y,{label:"挂号费",value:1}),s(y,{label:"问诊费",value:2}),s(y,{label:"药品费用",value:3}),s(y,{label:"首付费用",value:4}),s(y,{label:"尾款费用",value:5}),s(y,{label:"其他费用",value:6}),s(y,{label:"全部费用",value:7}),s(y,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),s(E,{span:12},{default:l(()=>[s(f,{label:"总金额",prop:"amount"},{default:l(()=>[s(Ce,{modelValue:_.amount,"onUpdate:modelValue":e[45]||(e[45]=i=>_.amount=i),min:vl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),A((o(),g(E,{span:12},{default:l(()=>[s(f,{label:"内部成本"},{default:l(()=>[s(Ce,{modelValue:_.internal_cost,"onUpdate:modelValue":e[46]||(e[46]=i=>_.internal_cost=i),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[q,["finance.account_log/lists"]]]),s(E,{span:24},{default:l(()=>[A((o(),g(f,{label:"药房备注"},{default:l(()=>[s(x,{modelValue:_.remark_extra,"onUpdate:modelValue":e[47]||(e[47]=i=>_.remark_extra=i),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(f,{label:"医助备注"},{default:l(()=>[s(x,{modelValue:_.remark_assistant,"onUpdate:modelValue":e[48]||(e[48]=i=>_.remark_assistant=i),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[At,L.value===2]])]),_:1},8,["model","rules"])])),[[ge,Qt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Fe.value,"onUpdate:modelValue":e[55]||(e[55]=i=>Fe.value=i),title:Sl.value,width:"92%","destroy-on-close":"",class:"po-h5-dialog",onClosed:e[56]||(e[56]=i=>Se.value="")},{footer:l(()=>[s(w,{onClick:e[52]||(e[52]=i=>Fe.value=!1)},{default:l(()=>[...e[189]||(e[189]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:ft.value,onClick:e[53]||(e[53]=i=>La("approve"))},{default:l(()=>[...e[190]||(e[190]=[p("同意通过",-1)])]),_:1},8,["loading"]),s(w,{type:"danger",loading:ft.value,onClick:e[54]||(e[54]=i=>La("reject"))},{default:l(()=>[...e[191]||(e[191]=[p("驳回阻止",-1)])]),_:1},8,["loading"])]),default:l(()=>[je.value&&je.value.completion_request===1?(o(),g(le,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:l(()=>[a("div",_d,[e[188]||(e[188]=a("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),a("div",md," 申请人:"+r(je.value.completion_request_by_name||"—"),1),a("div",fd," 申请时间:"+r(me(je.value.completion_request_time)),1)])]),_:1})):v("",!0),e[192]||(e[192]=a("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),s(x,{modelValue:Se.value,"onUpdate:modelValue":e[51]||(e[51]=i=>Se.value=i),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),s(ce,{modelValue:Ie.value,"onUpdate:modelValue":e[60]||(e[60]=i=>Ie.value=i),title:"修改快递单号",width:"92%","destroy-on-close":"",class:"po-h5-dialog","close-on-click-modal":!1},{footer:l(()=>[s(w,{onClick:e[59]||(e[59]=i=>Ie.value=!1)},{default:l(()=>[...e[194]||(e[194]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:gt.value,onClick:Ba},{default:l(()=>[...e[195]||(e[195]=[p("保存单号",-1)])]),_:1},8,["loading"])]),default:l(()=>[A((o(),g(F,{"label-width":"90px",class:"pr-2",onSubmit:Ot(Ba,["prevent"])},{default:l(()=>[s(f,{label:"承运商"},{default:l(()=>[s(z,{modelValue:X.express_company,"onUpdate:modelValue":e[57]||(e[57]=i=>X.express_company=i),class:"w-full",placeholder:"选择承运商"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"快递单号"},{default:l(()=>[s(x,{modelValue:X.tracking_number,"onUpdate:modelValue":e[58]||(e[58]=i=>X.tracking_number=i),maxlength:"80",placeholder:"请输入快递单号",clearable:"",autofocus:""},null,8,["modelValue"])]),_:1}),e[193]||(e[193]=a("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[ge,gt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:qe.value,"onUpdate:modelValue":e[65]||(e[65]=i=>qe.value=i),title:"确认发货",width:"92%","destroy-on-close":"",class:"po-h5-dialog","close-on-click-modal":!1},{footer:l(()=>[s(w,{onClick:e[64]||(e[64]=i=>qe.value=!1)},{default:l(()=>[...e[198]||(e[198]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:yt.value,onClick:Ha},{default:l(()=>[...e[199]||(e[199]=[p(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(le,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),g(F,{"label-width":"90px",class:"pr-2",onSubmit:Ot(Ha,["prevent"])},{default:l(()=>[s(f,{label:"发货方式"},{default:l(()=>[s(ua,{modelValue:Y.ship_mode,"onUpdate:modelValue":e[61]||(e[61]=i=>Y.ship_mode=i)},{default:l(()=>[s(Pe,{label:"gancao"},{default:l(()=>[...e[196]||(e[196]=[p("甘草药方发",-1)])]),_:1}),s(Pe,{label:"direct"},{default:l(()=>[...e[197]||(e[197]=[p("药房直发",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"承运商"},{default:l(()=>[s(z,{modelValue:Y.express_company,"onUpdate:modelValue":e[62]||(e[62]=i=>Y.express_company=i),class:"w-full"},{default:l(()=>[s(y,{label:"自动识别",value:"auto"}),s(y,{label:"顺丰速运",value:"sf"}),s(y,{label:"京东快递",value:"jd"}),s(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"快递单号"},{default:l(()=>[s(x,{modelValue:Y.tracking_number,"onUpdate:modelValue":e[63]||(e[63]=i=>Y.tracking_number=i),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[ge,yt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Me.value,"onUpdate:modelValue":e[68]||(e[68]=i=>Me.value=i),title:"完成订单",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[69]||(e[69]=i=>sa.value=0)},{footer:l(()=>[s(w,{onClick:e[67]||(e[67]=i=>Me.value=!1)},{default:l(()=>[...e[200]||(e[200]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:la.value,onClick:El},{default:l(()=>[...e[201]||(e[201]=[p(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[e[202]||(e[202]=a("p",{class:"text-sm text-gray-600 mb-3"},"请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总。",-1)),s(z,{modelValue:xt.value,"onUpdate:modelValue":e[66]||(e[66]=i=>xt.value=i),class:"w-full",placeholder:"请选择"},{default:l(()=>[(o(),m(D,null,B(Rl,i=>s(y,{key:i.value,label:i.label,value:i.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),s(ce,{modelValue:Be.value,"onUpdate:modelValue":e[77]||(e[77]=i=>Be.value=i),title:"补齐支付单",width:"94%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[78]||(e[78]=i=>{var P;return(P=ht.value)==null?void 0:P.clearValidate()})},{footer:l(()=>[s(w,{onClick:e[76]||(e[76]=i=>Be.value=!1)},{default:l(()=>[...e[209]||(e[209]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:kt.value,onClick:zl},{default:l(()=>[...e[210]||(e[210]=[p("确认新增",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(le,{title:"可以手动创建新支付单,或关联已存在但未绑定的支付单。",type:"info",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),g(F,{ref_key:"addPayOrderFormRef",ref:ht,model:O,rules:Dl,"label-width":"90px",class:"pr-2"},{default:l(()=>[s(f,{label:"添加方式",prop:"add_mode"},{default:l(()=>[s(ua,{modelValue:O.add_mode,"onUpdate:modelValue":e[70]||(e[70]=i=>O.add_mode=i)},{default:l(()=>[s(Pe,{value:"create"},{default:l(()=>[...e[203]||(e[203]=[p("手动创建",-1)])]),_:1}),s(Pe,{value:"link"},{default:l(()=>[...e[204]||(e[204]=[p("关联已有",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),O.add_mode==="create"?(o(),m(D,{key:0},[s(f,{label:"费用类别",prop:"order_type"},{default:l(()=>[s(z,{modelValue:O.order_type,"onUpdate:modelValue":e[71]||(e[71]=i=>O.order_type=i),class:"w-full"},{default:l(()=>[s(y,{label:"挂号费",value:1}),s(y,{label:"问诊费",value:2}),s(y,{label:"药品费用",value:3}),s(y,{label:"首付费用",value:4}),s(y,{label:"尾款费用",value:5}),s(y,{label:"其他费用",value:6}),s(y,{label:"全部费用",value:7}),s(y,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),s(f,{label:"支付金额",prop:"pay_amount"},{default:l(()=>[s(Ce,{modelValue:O.pay_amount,"onUpdate:modelValue":e[72]||(e[72]=i=>O.pay_amount=i),min:.01,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元)"},null,8,["modelValue"])]),_:1}),s(f,{label:"备注",prop:"pay_remark"},{default:l(()=>[s(x,{modelValue:O.pay_remark,"onUpdate:modelValue":e[73]||(e[73]=i=>O.pay_remark=i),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):(o(),g(f,{key:1,label:"选择支付单",prop:"link_pay_order_id"},{default:l(()=>[s(z,{modelValue:O.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=i=>O.link_pay_order_ids=i),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:na.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:l(()=>[(o(!0),m(D,null,B(wt.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Zt(i.order_type)}`,value:i.id},{default:l(()=>[a("div",vd,[a("span",gd,r(i.order_no),1),a("span",yd,"¥"+r(i.amount),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[205]||(e[205]=a("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),s(f,{label:"完单申请"},{default:l(()=>[s(ua,{modelValue:O.completion_request,"onUpdate:modelValue":e[75]||(e[75]=i=>O.completion_request=i)},{default:l(()=>[s(Pe,{value:0},{default:l(()=>[...e[206]||(e[206]=[p("不申请",-1)])]),_:1}),s(Pe,{value:1},{default:l(()=>[...e[207]||(e[207]=[p("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[208]||(e[208]=a("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})]),_:1},8,["model"])),[[ge,kt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:ze.value,"onUpdate:modelValue":e[82]||(e[82]=i=>ze.value=i),title:"修改处方患者信息",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:dl},{footer:l(()=>[s(w,{onClick:e[81]||(e[81]=i=>ze.value=!1)},{default:l(()=>[...e[211]||(e[211]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:Kt.value,onClick:_l},{default:l(()=>[...e[212]||(e[212]=[p(" 保存 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(F,{ref_key:"patchRxPatientFormRef",ref:Yt,model:ae,rules:ol,"label-width":"96px"},{default:l(()=>[s(f,{label:"患者姓名",prop:"patient_name"},{default:l(()=>[s(x,{modelValue:ae.patient_name,"onUpdate:modelValue":e[79]||(e[79]=i=>ae.patient_name=i),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),s(f,{label:"手机",prop:"phone"},{default:l(()=>[s(x,{modelValue:ae.phone,"onUpdate:modelValue":e[80]||(e[80]=i=>ae.phone=i),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),s(oa,{modelValue:St.value,"onUpdate:modelValue":e[83]||(e[83]=i=>St.value=i),size:"100%",direction:"btt",class:"po-h5-drawer","close-on-click-modal":!1},{header:l(()=>[a("div",bd,[e[215]||(e[215]=a("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),h.value&&!Vt.value?(o(),m("div",xd,[s(w,{size:"small",loading:Ne.value,onClick:en},{default:l(()=>[...e[213]||(e[213]=[p(" 下载图片 ",-1)])]),_:1},8,["loading"]),s(w,{size:"small",loading:Ne.value,onClick:tn},{default:l(()=>[...e[214]||(e[214]=[p(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:l(()=>[A((o(),m("div",kd,[h.value?(o(),m("div",hd,[Number(h.value.void_status)===1?(o(),g(d,{key:0,type:"danger",size:"small"},{default:l(()=>[...e[216]||(e[216]=[p("已作废",-1)])]),_:1})):Number(h.value.business_prescription_audit_rejected)===1?(o(),g(d,{key:1,type:"danger",size:"small"},{default:l(()=>[...e[217]||(e[217]=[p("业务订单已驳回",-1)])]),_:1})):Number(h.value.audit_status)===1?(o(),g(d,{key:2,type:"success",size:"small"},{default:l(()=>[...e[218]||(e[218]=[p("已通过",-1)])]),_:1})):Number(h.value.audit_status)===0?(o(),g(d,{key:3,type:"warning",size:"small"},{default:l(()=>[...e[219]||(e[219]=[p("待审核",-1)])]),_:1})):(o(),g(d,{key:4,type:"danger",size:"small"},{default:l(()=>[...e[220]||(e[220]=[p("已驳回",-1)])]),_:1}))])):v("",!0),h.value&&Number(h.value.void_status)===1?(o(),m("div",wd," 作废人:"+r(h.value.void_by_name||"—")+",作废时间:"+r(Yl(h.value.void_time)),1)):h.value&&Number(h.value.business_prescription_audit_rejected)===1?(o(),m("div",Sd,[e[221]||(e[221]=a("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),h.value.business_prescription_audit_remark?(o(),m("div",Vd," 驳回意见:"+r(h.value.business_prescription_audit_remark),1)):v("",!0)])):h.value&&Number(h.value.audit_status)===2?(o(),m("div",Nd,[e[222]||(e[222]=a("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),h.value.audit_remark?(o(),m("div",Cd,"驳回意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0),h.value?(o(),m("div",{key:4,ref_key:"prescriptionSlipPrintRef",ref:Ka,class:"rx-paper"},[e[240]||(e[240]=a("div",{class:"rx-title"},"处方单",-1)),a("div",Pd,[e[227]||(e[227]=a("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),a("div",Td,[a("div",Ad,[e[223]||(e[223]=a("span",{class:"rx-meta-label"},"日期",-1)),a("span",Od,r(Il.value),1)]),a("div",Rd,[e[224]||(e[224]=a("span",{class:"rx-meta-label"},"处方编号",-1)),a("span",Ed,r(Ll.value),1)]),a("div",Dd,[e[225]||(e[225]=a("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),a("span",$d,r(ql.value),1)]),Ya.value?(o(),m("div",zd,[e[226]||(e[226]=a("span",{class:"rx-meta-label"},"业务单号",-1)),a("span",Ud,r(Ya.value),1)])):v("",!0)])]),a("div",Fd,[a("div",jd,[a("div",Id,[e[228]||(e[228]=a("span",{class:"rx-key"},"姓名",-1)),a("span",Ld,r(h.value.patient_name||"—"),1)]),a("div",qd,[e[229]||(e[229]=a("span",{class:"rx-key"},"性别",-1)),a("span",Md,r(Ql(h.value.gender)),1)]),a("div",Bd,[e[230]||(e[230]=a("span",{class:"rx-key"},"年龄",-1)),a("span",Hd,r(Jl(h.value.age)),1)]),a("div",Gd,[e[231]||(e[231]=a("span",{class:"rx-key"},"电话",-1)),a("span",Wd,r(h.value.phone||h.value.recipient_phone||"—"),1)])]),a("div",Kd,[a("div",Yd,[e[232]||(e[232]=a("span",{class:"rx-key"},"收件信息",-1)),a("span",Qd,r(Ml.value),1)])]),a("div",Jd,[a("div",Xd,[e[233]||(e[233]=a("span",{class:"rx-key"},"临床诊断",-1)),a("span",Zd,r(h.value.clinical_diagnosis||"—"),1)])])]),a("div",ep,[e[234]||(e[234]=a("div",{class:"rx-watermark"},"药房联",-1)),e[235]||(e[235]=a("div",{class:"rx-rp-head"},[a("div",{class:"rx-rp-label"},"Rp."),a("div",{class:"rx-rp-cols-head"},[a("div",{class:"rx-rp-col-head"},[a("span",null,"用药 (单剂)"),a("span",null,"总量")]),a("div",{class:"rx-rp-col-head"},[a("span",null,"用药 (单剂)"),a("span",null,"总量")])])],-1)),a("div",tp,[(o(!0),m(D,null,B(Nt.value,(i,P)=>(o(),m("div",{key:P,class:"rx-herb-cell"},[a("span",ap,r(i.name)+" ("+r(i.dosage)+"克)",1),a("span",sp,r(Hl(i.dosage))+"克",1)]))),128))])]),a("div",lp,[a("p",null,"服法:"+r(Wl.value),1),Ja.value?(o(),m("p",np,"医嘱:"+r(Ja.value),1)):v("",!0),Xa.value?(o(),m("p",ip,"备注:"+r(Xa.value),1)):v("",!0),Za.value?(o(),m("p",rp," 药房备注:"+r(Za.value),1)):v("",!0),es.value?(o(),m("p",op," 出丸:"+r(es.value),1)):v("",!0)]),a("div",up,[a("div",dp,[a("div",pp,[e[236]||(e[236]=a("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),a("div",cp,[h.value.doctor_signature?(o(),m("img",{key:0,src:h.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,_p)):v("",!0)])]),a("div",mp,[e[237]||(e[237]=a("span",{class:"rx-bot-meta-key"},"类型:",-1)),a("span",fp,r(Gl.value),1)]),a("div",vp,[e[238]||(e[238]=a("span",{class:"rx-bot-meta-key"},"天数:",-1)),a("span",gp,r(c.value.medication_days!=null&&String(c.value.medication_days).trim()!==""?c.value.medication_days+" 天":"—"),1)]),a("div",yp,[e[239]||(e[239]=a("span",{class:"rx-bot-meta-key"},"剂量:",-1)),a("span",bp,r(Bl.value)+"克",1)])])]),e[241]||(e[241]=a("div",{class:"rx-bot-row rx-hospital-row"},[a("div",{class:"rx-hospital-line"},"成都双流甄养堂互联网医院有限公司 联系方式:4001667339"),a("div",{class:"rx-hospital-line"},"地址:四川省成都市双流区黄甲街道黄龙大道二段280号")],-1))],512)):v("",!0),h.value&&(h.value.audit_by_name||h.value.audit_remark)?(o(),m("div",xp,[h.value.audit_by_name?(o(),m("div",kp,[p(" 审核人:"+r(h.value.audit_by_name)+" ",1),h.value.audit_time?(o(),m("span",hp,r(ts(h.value.audit_time)),1)):v("",!0)])):v("",!0),h.value.audit_remark?(o(),m("div",wp,"审核意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[ge,Vt.value]])]),_:1},8,["modelValue"]),s(oa,{modelValue:vt.value,"onUpdate:modelValue":e[84]||(e[84]=i=>vt.value=i),title:"甘草预下单测试结果",size:"100%",direction:"btt",class:"po-h5-drawer","destroy-on-close":""},{default:l(()=>{var i,P;return[U.value?(o(),m("div",Sp,[s(n,{shadow:"never",class:"mb-4"},{header:l(()=>[a("div",Vp,[e[243]||(e[243]=a("span",{class:"font-semibold"},"价格信息",-1)),s(d,{type:"success"},{default:l(()=>[...e[242]||(e[242]=[p("预下单成功",-1)])]),_:1})])]),default:l(()=>[s(Ye,{column:2,border:""},{default:l(()=>[s(V,{label:"药材成本"},{default:l(()=>{var N;return[a("span",Np,"¥"+r(((N=U.value.fee)==null?void 0:N.m_cost)||"0.00"),1)]}),_:1}),s(V,{label:"制作费"},{default:l(()=>{var N;return[a("span",Cp,"¥"+r((((N=U.value.fee)==null?void 0:N.proces_cost)||0).toFixed(2)),1)]}),_:1}),s(V,{label:"物流费"},{default:l(()=>{var N;return[a("span",Pp,"¥"+r((((N=U.value.fee)==null?void 0:N.lis_cost)||0).toFixed(2)),1)]}),_:1}),s(V,{label:"总计"},{default:l(()=>[a("div",null,[a("span",Tp," ¥"+r(Ma(U.value.fee)),1),A((o(),m("div",Ap,[e[244]||(e[244]=p(" 占订单总金额: ",-1)),a("span",Op,r(Nl(U.value.fee,U.value.amount)),1),U.value.amount>0?(o(),m("span",Rp,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[q,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),s(n,{shadow:"never",class:"mb-4"},{header:l(()=>[...e[245]||(e[245]=[a("span",{class:"font-semibold"},"配送信息",-1)])]),default:l(()=>[s(Ye,{column:2,border:""},{default:l(()=>[s(V,{label:"调配中心"},{default:l(()=>{var N;return[p(r(((N=U.value.result)==null?void 0:N.ds_name)||"—"),1)]}),_:1}),s(V,{label:"调配中心ID"},{default:l(()=>{var N;return[p(r(((N=U.value.result)==null?void 0:N.ds_id)||"—"),1)]}),_:1}),s(V,{label:"服用天数范围",span:2},{default:l(()=>{var N,j,Qe,Je,ue,ye;return[p(r(((j=(N=U.value.result)==null?void 0:N.take_days)==null?void 0:j.min)||"—")+" - "+r(((Je=(Qe=U.value.result)==null?void 0:Qe.take_days)==null?void 0:Je.max)||"—")+" 天 (默认: "+r(((ye=(ue=U.value.result)==null?void 0:ue.take_days)==null?void 0:ye.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(i=U.value.result)==null?void 0:i.rule_check)!=null&&P.length?(o(),g(n,{key:0,shadow:"never",class:"mb-4"},{header:l(()=>[...e[246]||(e[246]=[a("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:l(()=>[a("div",Ep,r(U.value.result.rule_check.map(N=>N.msg).join(" ")),1)]),_:1})):v("",!0),s(n,{shadow:"never"},{header:l(()=>{var N,j;return[a("div",Dp,[e[247]||(e[247]=a("span",{class:"font-semibold"},"药材明细",-1)),a("span",$p,"共 "+r(((j=(N=U.value.result)==null?void 0:N.m_list)==null?void 0:j.length)||0)+" 味药",1)])]}),default:l(()=>{var N;return[s(Tt,{data:((N=U.value.result)==null?void 0:N.m_list)||[],border:"",stripe:"","max-height":"400"},{default:l(()=>[s($,{type:"index",label:"#",width:"50",align:"center"}),s($,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),s($,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:l(({row:j})=>[p(r(j.quantity)+r(j.unit),1)]),_:1}),s($,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:l(({row:j})=>[p(" ¥"+r(Number(j.price).toFixed(4)),1)]),_:1}),s($,{label:"小计",width:"100",align:"right"},{default:l(({row:j})=>[a("span",zp," ¥"+r((Number(j.price)*Number(j.quantity)).toFixed(2)),1)]),_:1}),s($,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:l(({row:j})=>[s(d,{type:j.is_available===1?"success":"danger",size:"small"},{default:l(()=>[p(r(j.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),s($,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),s(n,{shadow:"never",class:"mt-4"},{header:l(()=>[...e[248]||(e[248]=[a("span",{class:"font-semibold"},"订单信息",-1)])]),default:l(()=>[s(Ye,{column:2,border:""},{default:l(()=>[s(V,{label:"订单号",span:2},{default:l(()=>[p(r(U.value.order_no||"—"),1)]),_:1}),s(V,{label:"剂数"},{default:l(()=>[a("span",Up,r(U.value.dose_count||"—")+"剂",1)]),_:1}),s(V,{label:"单剂量"},{default:l(()=>{var N;return[a("span",Fp,r(Cl((N=U.value.result)==null?void 0:N.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),s(R(_s),{ref_key:"diagnosisViewRef",ref:ca},null,512)])}}}),Oc=Si(Ip,[["__scopeId","data-v-f5f53a70"]]);export{Oc as default}; diff --git a/server/public/admin/assets/overflow-Cd0bVY6j.js b/server/public/admin/assets/overflow-Do8O2bq9.js similarity index 96% rename from server/public/admin/assets/overflow-Cd0bVY6j.js rename to server/public/admin/assets/overflow-Do8O2bq9.js index 8534dc5e..3561e4c3 100644 --- a/server/public/admin/assets/overflow-Cd0bVY6j.js +++ b/server/public/admin/assets/overflow-Do8O2bq9.js @@ -1 +1 @@ -import{J as m}from"./element-plus-DFTWCWyi.js";import{_ as p,p as i}from"./index-Nt5zMHcc.js";import{ak as e,I as a,a as o,aN as n}from"./@vue/runtime-core-C6bnekPw.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const c={};function s(_,l){const t=i,r=m;return e(),a("div",null,[o(r,{header:"基础使用",shadow:"never",class:"!border-none"},{default:n(()=>[o(t,{class:"w-20 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"}),o(t,{class:"w-60 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"})]),_:1})])}const W=p(c,[["render",s]]);export{W as default}; +import{J as m}from"./element-plus-DFTWCWyi.js";import{_ as p,p as i}from"./index--WnM67ZH.js";import{ak as e,I as a,a as o,aN as n}from"./@vue/runtime-core-C6bnekPw.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const c={};function s(_,l){const t=i,r=m;return e(),a("div",null,[o(r,{header:"基础使用",shadow:"never",class:"!border-none"},{default:n(()=>[o(t,{class:"w-20 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"}),o(t,{class:"w-60 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"})]),_:1})])}const W=p(c,[["render",s]]);export{W as default}; diff --git a/server/public/admin/assets/paiban-Bg121yd-.js b/server/public/admin/assets/paiban-BEVhjp7u.js similarity index 96% rename from server/public/admin/assets/paiban-Bg121yd-.js rename to server/public/admin/assets/paiban-BEVhjp7u.js index c7cdb2e8..41d887df 100644 --- a/server/public/admin/assets/paiban-Bg121yd-.js +++ b/server/public/admin/assets/paiban-BEVhjp7u.js @@ -1 +1 @@ -import{D as J,B as P,G as U,I as q,R as H,i as O,J as Q}from"./element-plus-DFTWCWyi.js";import{d,g as K}from"./dayjs-DG77mNTn.js";import{g as X}from"./tcm-DCW3HTOw.js";import{r as Z,g as ee}from"./doctor-B7qEhSpt.js";import{i as y,_ as te}from"./index-Nt5zMHcc.js";import{f as ae,b as oe,d as se,ak as c,I as u,a as g,aN as m,J as p,F as T,ap as E,G as k,O as B,H as le,A as R,n as re}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Y,o as I}from"./@vue/shared-mAAVTE9n.js";import{n as b,r as ie}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"paiban-container"},ce={class:"doctor-list"},de={key:2,class:"paiban-time-container"},me={class:"date-selector"},ue={key:0,class:"time-slots-container"},pe={class:"time-slots-grid"},ve=["onClick"],fe={class:"slot-time"},_e=ae({__name:"paiban",setup(ye){d.extend(K);const v=b(!1),h=b([]),f=b([]),l=b(0),i=b([]);let D=null,w=!1;const o=ie({date:"",selectedTime:""}),V=R(()=>{if(!l.value||i.value.length===0)return[];const e=[],s=["日","一","二","三","四","五","六"],a=d().startOf("day");for(const r of i.value){const n=d(r);if(n.isBefore(a))continue;const _=`${n.format("MM月DD日")} (${s[n.day()]})`;e.push({date:r,label:_})}return e}),$=R(()=>{if(!o.date||f.value.length===0)return[];const e=d().format("YYYY-MM-DD");if(!(o.date===e))return f.value;const a=d();return f.value.map(r=>{const n=d(`${o.date} ${r.time}`);return n.isBefore(a)||n.isSame(a,"minute")?{...r,available:!1}:r})}),N=async()=>{try{v.value=!0;const e=await X();h.value=e||[],h.value.length>0&&!l.value&&(l.value=h.value[0].id,await C())}catch(e){console.error("加载医生列表失败:",e),y.msgError("加载医生列表失败")}finally{v.value=!1}},C=async()=>{o.selectedTime="",o.date="",f.value=[],i.value=[],l.value&&await A()},A=async()=>{if(l.value)try{v.value=!0;const e=d().format("YYYY-MM-DD"),s=d().add(6,"day").format("YYYY-MM-DD"),a=await Z({doctor_id:l.value,start_date:e,end_date:s,status:1});if(a!=null&&a.lists&&a.lists.length>0){if(i.value=[...new Set(a.lists.map(r=>r.date))],i.value.sort(),await re(),i.value.length>0){const r=d().format("YYYY-MM-DD"),n=i.value.includes(r)?r:i.value[0];M(n)}}else i.value=[],y.msgWarning("该医生暂无排班")}catch(e){console.error("加载医生排班失败:",e),y.msgError("加载医生排班失败"),i.value=[]}finally{v.value=!1}},M=e=>{o.date=e,o.selectedTime="",l.value&&S()},S=async(e=!1)=>{if(!(!l.value||!o.date)){if(w){console.log("正在加载中,跳过本次请求");return}try{w=!0,e||(v.value=!0);const s=await ee({doctor_id:l.value,appointment_date:o.date,period:"all"});f.value=((s==null?void 0:s.slots)||[]).map(a=>({time:a.time,available:a.available,quota:a.available?1:0}))}catch(s){console.error("加载时间段失败:",s),e||y.msgError("加载时间段失败"),f.value=[]}finally{w=!1,e||(v.value=!1)}}},F=e=>{if(!e.available){y.msgWarning("该时间段不可预约");return}o.selectedTime=e.time},L=()=>{x(),D=window.setInterval(()=>{l.value&&o.date&&S(!0)},5e3)},x=()=>{D&&(clearInterval(D),D=null)};return oe(()=>{N(),L()}),se(()=>{x()}),(e,s)=>{const a=q,r=U,n=P,_=H,z=O,G=J,W=Q;return c(),u("div",ne,[g(W,{shadow:"never"},{header:m(()=>[...s[1]||(s[1]=[p("div",{class:"card-header"},[p("span",null,"医生排班管理")],-1)])]),default:m(()=>[g(G,{model:o,"label-width":"100px",class:"paiban-form"},{default:m(()=>[g(n,{label:"选择医生:"},{default:m(()=>[p("div",ce,[g(r,{modelValue:l.value,"onUpdate:modelValue":s[0]||(s[0]=t=>l.value=t),onChange:C},{default:m(()=>[(c(!0),u(T,null,E(h.value,t=>(c(),k(a,{key:t.id,value:t.id,class:"doctor-radio"},{default:m(()=>[B(Y(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])]),_:1}),g(n,{label:"排班时间:"},{default:m(()=>[l.value?l.value&&i.value.length===0?(c(),k(_,{key:1,description:"该医生暂无排班","image-size":80})):(c(),u("div",de,[p("div",me,[(c(!0),u(T,null,E(V.value,t=>(c(),k(z,{key:t.date,type:o.date===t.date?"primary":"",onClick:j=>M(t.date),class:"date-button"},{default:m(()=>[B(Y(t.label),1)]),_:2},1032,["type","onClick"]))),128))]),o.date?(c(),u("div",ue,[p("div",pe,[(c(!0),u(T,null,E($.value,t=>(c(),u("div",{key:t.time,class:I(["time-slot-item",{available:t.available,unavailable:!t.available,selected:o.selectedTime===t.time}]),onClick:j=>F(t)},[p("div",fe,Y(t.time),1),p("div",{class:I(["slot-status",{"status-available":t.available}])},Y(t.available?"可约":"已约"),3)],10,ve))),128))])])):le("",!0)])):(c(),k(_,{key:0,description:"请先选择医生","image-size":80}))]),_:1})]),_:1},8,["model"])]),_:1})])}}}),ot=te(_e,[["__scopeId","data-v-79f98e7f"]]);export{ot as default}; +import{D as J,B as P,G as U,I as q,R as H,i as O,J as Q}from"./element-plus-DFTWCWyi.js";import{d,g as K}from"./dayjs-DG77mNTn.js";import{g as X}from"./tcm-DzAQc_oE.js";import{r as Z,g as ee}from"./doctor-BlvK2TEo.js";import{i as y,_ as te}from"./index--WnM67ZH.js";import{f as ae,b as oe,d as se,ak as c,I as u,a as g,aN as m,J as p,F as T,ap as E,G as k,O as B,H as le,A as R,n as re}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Y,o as I}from"./@vue/shared-mAAVTE9n.js";import{n as b,r as ie}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"paiban-container"},ce={class:"doctor-list"},de={key:2,class:"paiban-time-container"},me={class:"date-selector"},ue={key:0,class:"time-slots-container"},pe={class:"time-slots-grid"},ve=["onClick"],fe={class:"slot-time"},_e=ae({__name:"paiban",setup(ye){d.extend(K);const v=b(!1),h=b([]),f=b([]),l=b(0),i=b([]);let D=null,w=!1;const o=ie({date:"",selectedTime:""}),V=R(()=>{if(!l.value||i.value.length===0)return[];const e=[],s=["日","一","二","三","四","五","六"],a=d().startOf("day");for(const r of i.value){const n=d(r);if(n.isBefore(a))continue;const _=`${n.format("MM月DD日")} (${s[n.day()]})`;e.push({date:r,label:_})}return e}),$=R(()=>{if(!o.date||f.value.length===0)return[];const e=d().format("YYYY-MM-DD");if(!(o.date===e))return f.value;const a=d();return f.value.map(r=>{const n=d(`${o.date} ${r.time}`);return n.isBefore(a)||n.isSame(a,"minute")?{...r,available:!1}:r})}),N=async()=>{try{v.value=!0;const e=await X();h.value=e||[],h.value.length>0&&!l.value&&(l.value=h.value[0].id,await C())}catch(e){console.error("加载医生列表失败:",e),y.msgError("加载医生列表失败")}finally{v.value=!1}},C=async()=>{o.selectedTime="",o.date="",f.value=[],i.value=[],l.value&&await A()},A=async()=>{if(l.value)try{v.value=!0;const e=d().format("YYYY-MM-DD"),s=d().add(6,"day").format("YYYY-MM-DD"),a=await Z({doctor_id:l.value,start_date:e,end_date:s,status:1});if(a!=null&&a.lists&&a.lists.length>0){if(i.value=[...new Set(a.lists.map(r=>r.date))],i.value.sort(),await re(),i.value.length>0){const r=d().format("YYYY-MM-DD"),n=i.value.includes(r)?r:i.value[0];M(n)}}else i.value=[],y.msgWarning("该医生暂无排班")}catch(e){console.error("加载医生排班失败:",e),y.msgError("加载医生排班失败"),i.value=[]}finally{v.value=!1}},M=e=>{o.date=e,o.selectedTime="",l.value&&S()},S=async(e=!1)=>{if(!(!l.value||!o.date)){if(w){console.log("正在加载中,跳过本次请求");return}try{w=!0,e||(v.value=!0);const s=await ee({doctor_id:l.value,appointment_date:o.date,period:"all"});f.value=((s==null?void 0:s.slots)||[]).map(a=>({time:a.time,available:a.available,quota:a.available?1:0}))}catch(s){console.error("加载时间段失败:",s),e||y.msgError("加载时间段失败"),f.value=[]}finally{w=!1,e||(v.value=!1)}}},F=e=>{if(!e.available){y.msgWarning("该时间段不可预约");return}o.selectedTime=e.time},L=()=>{x(),D=window.setInterval(()=>{l.value&&o.date&&S(!0)},5e3)},x=()=>{D&&(clearInterval(D),D=null)};return oe(()=>{N(),L()}),se(()=>{x()}),(e,s)=>{const a=q,r=U,n=P,_=H,z=O,G=J,W=Q;return c(),u("div",ne,[g(W,{shadow:"never"},{header:m(()=>[...s[1]||(s[1]=[p("div",{class:"card-header"},[p("span",null,"医生排班管理")],-1)])]),default:m(()=>[g(G,{model:o,"label-width":"100px",class:"paiban-form"},{default:m(()=>[g(n,{label:"选择医生:"},{default:m(()=>[p("div",ce,[g(r,{modelValue:l.value,"onUpdate:modelValue":s[0]||(s[0]=t=>l.value=t),onChange:C},{default:m(()=>[(c(!0),u(T,null,E(h.value,t=>(c(),k(a,{key:t.id,value:t.id,class:"doctor-radio"},{default:m(()=>[B(Y(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])]),_:1}),g(n,{label:"排班时间:"},{default:m(()=>[l.value?l.value&&i.value.length===0?(c(),k(_,{key:1,description:"该医生暂无排班","image-size":80})):(c(),u("div",de,[p("div",me,[(c(!0),u(T,null,E(V.value,t=>(c(),k(z,{key:t.date,type:o.date===t.date?"primary":"",onClick:j=>M(t.date),class:"date-button"},{default:m(()=>[B(Y(t.label),1)]),_:2},1032,["type","onClick"]))),128))]),o.date?(c(),u("div",ue,[p("div",pe,[(c(!0),u(T,null,E($.value,t=>(c(),u("div",{key:t.time,class:I(["time-slot-item",{available:t.available,unavailable:!t.available,selected:o.selectedTime===t.time}]),onClick:j=>F(t)},[p("div",fe,Y(t.time),1),p("div",{class:I(["slot-status",{"status-available":t.available}])},Y(t.available?"可约":"已约"),3)],10,ve))),128))])])):le("",!0)])):(c(),k(_,{key:0,description:"请先选择医生","image-size":80}))]),_:1})]),_:1},8,["model"])]),_:1})])}}}),ot=te(_e,[["__scopeId","data-v-79f98e7f"]]);export{ot as default}; diff --git a/server/public/admin/assets/patient-BKtZKzsB.js b/server/public/admin/assets/patient-BNjmKCvA.js similarity index 88% rename from server/public/admin/assets/patient-BKtZKzsB.js rename to server/public/admin/assets/patient-BNjmKCvA.js index e04c7caf..7ce45e26 100644 --- a/server/public/admin/assets/patient-BKtZKzsB.js +++ b/server/public/admin/assets/patient-BNjmKCvA.js @@ -1 +1 @@ -import{r as o}from"./index-Nt5zMHcc.js";function r(t){return o.get({url:"/doctor.appointment/lists",params:t})}function n(t){return o.get({url:"/doctor.appointment/reception",params:t})}function i(t){return o.post({url:"/doctor.appointment/notifyAssistant",params:t})}function a(t){return o.post({url:"/doctor.appointment/addDoctorNote",params:t})}function c(t){return o.get({url:"/doctor.appointment/doctorNotes",params:t})}function s(t){return o.post({url:"/doctor.appointment/deleteDoctorNoteImage",params:t})}export{a,r as b,s as d,c as g,i as n,n as r}; +import{r as o}from"./index--WnM67ZH.js";function r(t){return o.get({url:"/doctor.appointment/lists",params:t})}function n(t){return o.get({url:"/doctor.appointment/reception",params:t})}function i(t){return o.post({url:"/doctor.appointment/notifyAssistant",params:t})}function a(t){return o.post({url:"/doctor.appointment/addDoctorNote",params:t})}function c(t){return o.get({url:"/doctor.appointment/doctorNotes",params:t})}function s(t){return o.post({url:"/doctor.appointment/deleteDoctorNoteImage",params:t})}export{a,r as b,s as d,c as g,i as n,n as r}; diff --git a/server/public/admin/assets/patient-call-DK0sKUyA.js b/server/public/admin/assets/patient-call-B5zRPl8O.js similarity index 99% rename from server/public/admin/assets/patient-call-DK0sKUyA.js rename to server/public/admin/assets/patient-call-B5zRPl8O.js index 2b0ab038..777a78cd 100644 --- a/server/public/admin/assets/patient-call-DK0sKUyA.js +++ b/server/public/admin/assets/patient-call-B5zRPl8O.js @@ -1 +1 @@ -import{E as a,K as Q,i as W,d as $,R as X,J as Y,b as M}from"./element-plus-DFTWCWyi.js";import{a6 as K}from"./@element-plus/icons-vue-HOEUG8sr.js";import{F as C,u as O,g as k,a as L,l as E,r as Z,y as T}from"./@tencentcloud/call-uikit-vue-DB7vt9Ht.js";import{u as ee,r as te,_ as oe}from"./index-Nt5zMHcc.js";import{f as le,b as ae,n as V,d as ne,ak as m,I as d,a as r,aN as c,J as n,O as f,G as z,H as h,A as se}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w,o as ie}from"./@vue/shared-mAAVTE9n.js";import{y as A,n as y}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@tencentcloud/call-engine-js-BX2W9Lhf.js";import"./@tencentcloud/chat-AC2Y2r2A.js";import"./rtc-detect-Chu-fZvE.js";import"./@tencentcloud/tui-core-8M7p1XHw.js";import"./tim-upload-plugin-HO4N4AW9.js";import"./tim-profanity-filter-plugin-Dn_Cf-mP.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"patient-test"},ce={key:0,class:"init-section"},ue={key:1,class:"status"},pe={class:"flex items-center"},me={class:"mt-2"},fe={key:0},ve={key:0,class:"call-actions mt-4"},de={key:2,id:"call-container",class:"call-container phone-call-shell"},ge={key:3,class:"waiting-container"},Ie={key:4,class:"phone-call-kit-host phone-call-kit-host--offscreen","aria-hidden":"true"},_e=le({__name:"patient-call",setup(Ce){const B=ee(),S=se(()=>B.userInfo),U=y(!1),g=y(!1),D=y(""),o=y(!1),s=y(!1),p=y(null),v=y(null);let I=null;ae(()=>{G()});function b(t){try{const e=k.getData(L.CALL,E.CALL_STATUS),u=k.getData(L.CALL,E.CALL_ROLE),i=!!k.getData(L.CALL,E.IS_GROUP),_=o.value;if(e==="calling"&&u===Z.CALLEE){o.value=!0,p.value={isGroup:i,from:t},_||(a.info("检测到待接听的来电,请点击接听"),M({title:"来电提醒",message:"有待接听的视频通话",type:"warning",duration:0,position:"top-right"})),s.value=!1;return}if(e==="connected"){o.value=!1,p.value=null,s.value=!0;return}e==="idle"&&(o.value||s.value)&&(o.value=!1,s.value=!1,p.value=null)}catch(e){console.warn("syncIncomingFromTUIStore:",t,e)}}function x(){b("watch")}function P(){I&&(I(),I=null);const t={[E.CALL_STATUS]:x,[E.CALL_ROLE]:x};try{k.watch(L.CALL,t),I=()=>{try{k.unwatch(L.CALL,t)}catch{}}}catch(e){console.warn("TUIStore.watch 失败:",e)}}const R=()=>{v.value&&clearInterval(v.value);let t=0;const e=90;v.value=setInterval(()=>{t+=1,b("poll"),t>=e&&v.value&&(clearInterval(v.value),v.value=null)},500)},F=({oldStatus:t,newStatus:e})=>{console.log("========================================"),console.log("=== 通话状态变化回调触发 ==="),console.log("oldStatus:",t),console.log("newStatus:",e),console.log("STATUS 常量:",T),console.log("========================================"),e===T.BE_INVITED&&(console.log(">>> 收到来电邀请"),o.value=!0,p.value={oldStatus:t,newStatus:e},M({title:"来电提醒",message:"收到视频通话请求",type:"info",duration:0,position:"top-right"}),a.success("收到来电,请点击接听按钮")),(e===T.CALLING_C2C_VIDEO||e===T.CALLING_GROUP_VIDEO)&&(console.log(">>> 通话已接通"),a.success("通话已接通"),o.value=!1,s.value=!0),e===T.IDLE&&(o.value||s.value)&&(console.log(">>> 通话已结束"),o.value=!1,s.value=!1,p.value=null,a.info("通话已结束"))},G=async()=>{try{U.value=!0;const t=S.value.id;if(!t)throw new Error("未获取到当前用户ID,请重新登录");console.log("=== 开始初始化医疗助理端 ==="),console.log("当前用户ID:",t),a.info("正在获取签名...");const e=await te.get({url:"/tcm.diagnosis/getDoctorSignature",params:{patient_id:t}});if(!e)throw new Error("获取签名失败");const{sdkAppId:u,userId:i,userSig:_}=e;if(D.value=i,console.log("医疗助理签名获取成功:",{userId:i,sdkAppId:u,userSigLength:_.length}),console.log("完整签名信息:",e),a.info("正在初始化通话组件..."),console.log("=== 开始调用 TUICallKitServer.init ==="),!C||typeof C.init!="function")throw new Error("TUICallKitServer 未正确加载,请刷新页面重试");try{await C.init({userID:i,userSig:_,SDKAppID:Number(u)})}catch(l){console.warn("TUICallKitServer.init 出现错误,但继续执行:",l)}console.log("=== TUICallKitServer.init 完成 ===");const N={statusChanged:F,onError:l=>{console.error("=== TUICallKit 错误回调 ===",l),a.error(`通话错误: ${(l==null?void 0:l.message)||"未知错误"}`)},onInvited:l=>{console.log("=== 收到邀请回调 (onInvited) ===",l),a.info("收到通话邀请 (onInvited)")},afterCalling:()=>{console.log("=== afterCalling 回调 ===")}};try{C.setCallback(N)}catch(l){console.warn("设置回调时出现错误,但继续执行:",l)}console.log("回调设置完成"),a.info("等待初始化完成..."),await new Promise(l=>setTimeout(l,2e3)),g.value=!0,await V(),await new Promise(l=>setTimeout(l,300)),P(),b("post-init"),R(),a.success("医疗助理端初始化成功,等待来电..."),console.log("=== 医疗助理端初始化完成 ==="),console.log("userId:",i),console.log("等待来电中..."),console.log("请在医生端发起群组通话,目标用户ID应该是:",i)}catch(t){console.error("=== 初始化失败 ===",t),a.error(t.message||"初始化失败")}finally{U.value=!1}};async function j(){var t;await V(),await new Promise(e=>setTimeout(e,400));try{const e=C;if(typeof e.closeMicrophone=="function")return await e.closeMicrophone(),!0;const u=(t=e.getTUICallEngineInstance)==null?void 0:t.call(e);if(u&&typeof u.closeMicrophone=="function")return await u.closeMicrophone(),!0}catch(e){console.warn("接听后关闭麦克风失败(可在通话条手动关麦):",e)}return!1}const J=async()=>{try{console.log("接听来电"),await C.accept(),a.success("已接听通话"),o.value=!1,s.value=!0,await j()&&a.info("已关闭本地麦克风")}catch(t){console.error("接听失败:",t),a.error(t.message||"接听失败")}},q=async()=>{try{console.log("拒绝来电"),await C.reject(),a.info("已拒绝通话"),o.value=!1,p.value=null}catch(t){console.error("拒绝失败:",t),a.error(t.message||"拒绝失败")}},H=()=>{g.value=!1,D.value="",o.value=!1,s.value=!1,p.value=null};return ne(()=>{v.value&&(clearInterval(v.value),v.value=null),I&&(I(),I=null),g.value&&(o.value=!1,s.value=!1,p.value=null)}),(t,e)=>{const u=Q,i=W,_=$,N=X,l=Y;return m(),d("div",re,[r(l,null,{header:c(()=>[...e[0]||(e[0]=[n("div",{class:"card-header"},[n("span",null,"医疗助理端 - 接听来电")],-1)])]),default:c(()=>[g.value?h("",!0):(m(),d("div",ce,[r(u,{type:"info",closable:!1,class:"mb-4"},{default:c(()=>[n("p",null,[e[1]||(e[1]=n("strong",null,"当前登录用户:",-1)),f(" "+w(S.value.nickname||S.value.name||"未知"),1)]),n("p",null,[e[2]||(e[2]=n("strong",null,"用户ID:",-1)),f(" "+w(S.value.id||"未获取"),1)]),e[3]||(e[3]=n("p",null,[n("strong",null,"状态:"),f(" 正在初始化...")],-1))]),_:1}),U.value?h("",!0):(m(),z(i,{key:0,type:"primary",onClick:G,loading:U.value,size:"large"},{default:c(()=>[...e[4]||(e[4]=[f(" 重新初始化 ",-1)])]),_:1},8,["loading"]))])),g.value?(m(),d("div",ue,[r(u,{type:o.value?"warning":"success",closable:!1},{title:c(()=>[n("div",pe,[r(_,{class:ie(["mr-2",{"animate-pulse":o.value}])},{default:c(()=>[r(A(K))]),_:1},8,["class"]),n("span",null,w(o.value?"收到来电!":"医疗助理端已初始化,等待来电..."),1)])]),default:c(()=>[n("div",me,[n("p",null,[e[5]||(e[5]=n("strong",null,"医疗助理ID:",-1)),f(" "+w(D.value),1)]),n("p",null,[e[6]||(e[6]=n("strong",null,"状态:",-1)),f(" "+w(o.value?"来电中":"在线"),1)]),o.value&&p.value?(m(),d("p",fe,[e[7]||(e[7]=n("strong",null,"通话类型:",-1)),f(" "+w(p.value.isGroup?"群组视频通话":"视频通话"),1)])):h("",!0)])]),_:1},8,["type"]),o.value?(m(),d("div",ve,[r(i,{type:"success",size:"large",onClick:J,icon:A(K)},{default:c(()=>[...e[8]||(e[8]=[f(" 接听 ",-1)])]),_:1},8,["icon"]),r(i,{type:"danger",size:"large",onClick:q},{default:c(()=>[...e[9]||(e[9]=[f(" 拒绝 ",-1)])]),_:1})])):(m(),z(i,{key:1,type:"danger",onClick:H,class:"mt-4"},{default:c(()=>[...e[10]||(e[10]=[f(" 重置 ",-1)])]),_:1}))])):h("",!0),o.value||s.value?(m(),d("div",de,[r(A(O),{class:"TUICallKit-mobile"})])):g.value?(m(),d("div",ge,[r(N,{description:"等待来电中..."},{image:c(()=>[r(_,{size:80,color:"#909399"},{default:c(()=>[r(A(K))]),_:1})]),_:1})])):h("",!0),g.value&&!o.value&&!s.value?(m(),d("div",Ie,[r(A(O),{class:"TUICallKit-mobile"})])):h("",!0)]),_:1})])}}}),ut=oe(_e,[["__scopeId","data-v-56c22385"]]);export{ut as default}; +import{E as a,K as Q,i as W,d as $,R as X,J as Y,b as M}from"./element-plus-DFTWCWyi.js";import{a6 as K}from"./@element-plus/icons-vue-HOEUG8sr.js";import{F as C,u as O,g as k,a as L,l as E,r as Z,y as T}from"./@tencentcloud/call-uikit-vue-DB7vt9Ht.js";import{u as ee,r as te,_ as oe}from"./index--WnM67ZH.js";import{f as le,b as ae,n as V,d as ne,ak as m,I as d,a as r,aN as c,J as n,O as f,G as z,H as h,A as se}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w,o as ie}from"./@vue/shared-mAAVTE9n.js";import{y as A,n as y}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@tencentcloud/call-engine-js-BX2W9Lhf.js";import"./@tencentcloud/chat-AC2Y2r2A.js";import"./rtc-detect-Chu-fZvE.js";import"./@tencentcloud/tui-core-8M7p1XHw.js";import"./tim-upload-plugin-HO4N4AW9.js";import"./tim-profanity-filter-plugin-Dn_Cf-mP.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"patient-test"},ce={key:0,class:"init-section"},ue={key:1,class:"status"},pe={class:"flex items-center"},me={class:"mt-2"},fe={key:0},ve={key:0,class:"call-actions mt-4"},de={key:2,id:"call-container",class:"call-container phone-call-shell"},ge={key:3,class:"waiting-container"},Ie={key:4,class:"phone-call-kit-host phone-call-kit-host--offscreen","aria-hidden":"true"},_e=le({__name:"patient-call",setup(Ce){const B=ee(),S=se(()=>B.userInfo),U=y(!1),g=y(!1),D=y(""),o=y(!1),s=y(!1),p=y(null),v=y(null);let I=null;ae(()=>{G()});function b(t){try{const e=k.getData(L.CALL,E.CALL_STATUS),u=k.getData(L.CALL,E.CALL_ROLE),i=!!k.getData(L.CALL,E.IS_GROUP),_=o.value;if(e==="calling"&&u===Z.CALLEE){o.value=!0,p.value={isGroup:i,from:t},_||(a.info("检测到待接听的来电,请点击接听"),M({title:"来电提醒",message:"有待接听的视频通话",type:"warning",duration:0,position:"top-right"})),s.value=!1;return}if(e==="connected"){o.value=!1,p.value=null,s.value=!0;return}e==="idle"&&(o.value||s.value)&&(o.value=!1,s.value=!1,p.value=null)}catch(e){console.warn("syncIncomingFromTUIStore:",t,e)}}function x(){b("watch")}function P(){I&&(I(),I=null);const t={[E.CALL_STATUS]:x,[E.CALL_ROLE]:x};try{k.watch(L.CALL,t),I=()=>{try{k.unwatch(L.CALL,t)}catch{}}}catch(e){console.warn("TUIStore.watch 失败:",e)}}const R=()=>{v.value&&clearInterval(v.value);let t=0;const e=90;v.value=setInterval(()=>{t+=1,b("poll"),t>=e&&v.value&&(clearInterval(v.value),v.value=null)},500)},F=({oldStatus:t,newStatus:e})=>{console.log("========================================"),console.log("=== 通话状态变化回调触发 ==="),console.log("oldStatus:",t),console.log("newStatus:",e),console.log("STATUS 常量:",T),console.log("========================================"),e===T.BE_INVITED&&(console.log(">>> 收到来电邀请"),o.value=!0,p.value={oldStatus:t,newStatus:e},M({title:"来电提醒",message:"收到视频通话请求",type:"info",duration:0,position:"top-right"}),a.success("收到来电,请点击接听按钮")),(e===T.CALLING_C2C_VIDEO||e===T.CALLING_GROUP_VIDEO)&&(console.log(">>> 通话已接通"),a.success("通话已接通"),o.value=!1,s.value=!0),e===T.IDLE&&(o.value||s.value)&&(console.log(">>> 通话已结束"),o.value=!1,s.value=!1,p.value=null,a.info("通话已结束"))},G=async()=>{try{U.value=!0;const t=S.value.id;if(!t)throw new Error("未获取到当前用户ID,请重新登录");console.log("=== 开始初始化医疗助理端 ==="),console.log("当前用户ID:",t),a.info("正在获取签名...");const e=await te.get({url:"/tcm.diagnosis/getDoctorSignature",params:{patient_id:t}});if(!e)throw new Error("获取签名失败");const{sdkAppId:u,userId:i,userSig:_}=e;if(D.value=i,console.log("医疗助理签名获取成功:",{userId:i,sdkAppId:u,userSigLength:_.length}),console.log("完整签名信息:",e),a.info("正在初始化通话组件..."),console.log("=== 开始调用 TUICallKitServer.init ==="),!C||typeof C.init!="function")throw new Error("TUICallKitServer 未正确加载,请刷新页面重试");try{await C.init({userID:i,userSig:_,SDKAppID:Number(u)})}catch(l){console.warn("TUICallKitServer.init 出现错误,但继续执行:",l)}console.log("=== TUICallKitServer.init 完成 ===");const N={statusChanged:F,onError:l=>{console.error("=== TUICallKit 错误回调 ===",l),a.error(`通话错误: ${(l==null?void 0:l.message)||"未知错误"}`)},onInvited:l=>{console.log("=== 收到邀请回调 (onInvited) ===",l),a.info("收到通话邀请 (onInvited)")},afterCalling:()=>{console.log("=== afterCalling 回调 ===")}};try{C.setCallback(N)}catch(l){console.warn("设置回调时出现错误,但继续执行:",l)}console.log("回调设置完成"),a.info("等待初始化完成..."),await new Promise(l=>setTimeout(l,2e3)),g.value=!0,await V(),await new Promise(l=>setTimeout(l,300)),P(),b("post-init"),R(),a.success("医疗助理端初始化成功,等待来电..."),console.log("=== 医疗助理端初始化完成 ==="),console.log("userId:",i),console.log("等待来电中..."),console.log("请在医生端发起群组通话,目标用户ID应该是:",i)}catch(t){console.error("=== 初始化失败 ===",t),a.error(t.message||"初始化失败")}finally{U.value=!1}};async function j(){var t;await V(),await new Promise(e=>setTimeout(e,400));try{const e=C;if(typeof e.closeMicrophone=="function")return await e.closeMicrophone(),!0;const u=(t=e.getTUICallEngineInstance)==null?void 0:t.call(e);if(u&&typeof u.closeMicrophone=="function")return await u.closeMicrophone(),!0}catch(e){console.warn("接听后关闭麦克风失败(可在通话条手动关麦):",e)}return!1}const J=async()=>{try{console.log("接听来电"),await C.accept(),a.success("已接听通话"),o.value=!1,s.value=!0,await j()&&a.info("已关闭本地麦克风")}catch(t){console.error("接听失败:",t),a.error(t.message||"接听失败")}},q=async()=>{try{console.log("拒绝来电"),await C.reject(),a.info("已拒绝通话"),o.value=!1,p.value=null}catch(t){console.error("拒绝失败:",t),a.error(t.message||"拒绝失败")}},H=()=>{g.value=!1,D.value="",o.value=!1,s.value=!1,p.value=null};return ne(()=>{v.value&&(clearInterval(v.value),v.value=null),I&&(I(),I=null),g.value&&(o.value=!1,s.value=!1,p.value=null)}),(t,e)=>{const u=Q,i=W,_=$,N=X,l=Y;return m(),d("div",re,[r(l,null,{header:c(()=>[...e[0]||(e[0]=[n("div",{class:"card-header"},[n("span",null,"医疗助理端 - 接听来电")],-1)])]),default:c(()=>[g.value?h("",!0):(m(),d("div",ce,[r(u,{type:"info",closable:!1,class:"mb-4"},{default:c(()=>[n("p",null,[e[1]||(e[1]=n("strong",null,"当前登录用户:",-1)),f(" "+w(S.value.nickname||S.value.name||"未知"),1)]),n("p",null,[e[2]||(e[2]=n("strong",null,"用户ID:",-1)),f(" "+w(S.value.id||"未获取"),1)]),e[3]||(e[3]=n("p",null,[n("strong",null,"状态:"),f(" 正在初始化...")],-1))]),_:1}),U.value?h("",!0):(m(),z(i,{key:0,type:"primary",onClick:G,loading:U.value,size:"large"},{default:c(()=>[...e[4]||(e[4]=[f(" 重新初始化 ",-1)])]),_:1},8,["loading"]))])),g.value?(m(),d("div",ue,[r(u,{type:o.value?"warning":"success",closable:!1},{title:c(()=>[n("div",pe,[r(_,{class:ie(["mr-2",{"animate-pulse":o.value}])},{default:c(()=>[r(A(K))]),_:1},8,["class"]),n("span",null,w(o.value?"收到来电!":"医疗助理端已初始化,等待来电..."),1)])]),default:c(()=>[n("div",me,[n("p",null,[e[5]||(e[5]=n("strong",null,"医疗助理ID:",-1)),f(" "+w(D.value),1)]),n("p",null,[e[6]||(e[6]=n("strong",null,"状态:",-1)),f(" "+w(o.value?"来电中":"在线"),1)]),o.value&&p.value?(m(),d("p",fe,[e[7]||(e[7]=n("strong",null,"通话类型:",-1)),f(" "+w(p.value.isGroup?"群组视频通话":"视频通话"),1)])):h("",!0)])]),_:1},8,["type"]),o.value?(m(),d("div",ve,[r(i,{type:"success",size:"large",onClick:J,icon:A(K)},{default:c(()=>[...e[8]||(e[8]=[f(" 接听 ",-1)])]),_:1},8,["icon"]),r(i,{type:"danger",size:"large",onClick:q},{default:c(()=>[...e[9]||(e[9]=[f(" 拒绝 ",-1)])]),_:1})])):(m(),z(i,{key:1,type:"danger",onClick:H,class:"mt-4"},{default:c(()=>[...e[10]||(e[10]=[f(" 重置 ",-1)])]),_:1}))])):h("",!0),o.value||s.value?(m(),d("div",de,[r(A(O),{class:"TUICallKit-mobile"})])):g.value?(m(),d("div",ge,[r(N,{description:"等待来电中..."},{image:c(()=>[r(_,{size:80,color:"#909399"},{default:c(()=>[r(A(K))]),_:1})]),_:1})])):h("",!0),g.value&&!o.value&&!s.value?(m(),d("div",Ie,[r(A(O),{class:"TUICallKit-mobile"})])):h("",!0)]),_:1})])}}}),ut=oe(_e,[["__scopeId","data-v-56c22385"]]);export{ut as default}; diff --git a/server/public/admin/assets/pay-BdcLIgLH.js b/server/public/admin/assets/pay-hWrQY7o1.js similarity index 85% rename from server/public/admin/assets/pay-BdcLIgLH.js rename to server/public/admin/assets/pay-hWrQY7o1.js index f6d27607..4264e627 100644 --- a/server/public/admin/assets/pay-BdcLIgLH.js +++ b/server/public/admin/assets/pay-hWrQY7o1.js @@ -1 +1 @@ -import{r as a}from"./index-Nt5zMHcc.js";function e(){return a.get({url:"/setting.pay.pay_way/getPayWay"})}function s(t){return a.post({url:"/setting.pay.pay_way/setPayWay",params:t})}function y(){return a.get({url:"/setting.pay.pay_config/lists"})}function g(t){return a.post({url:"/setting.pay.pay_config/setConfig",params:t})}function i(t){return a.get({url:"/setting.pay.pay_config/getConfig",params:t})}export{y as a,e as b,s as c,i as g,g as s}; +import{r as a}from"./index--WnM67ZH.js";function e(){return a.get({url:"/setting.pay.pay_way/getPayWay"})}function s(t){return a.post({url:"/setting.pay.pay_way/setPayWay",params:t})}function y(){return a.get({url:"/setting.pay.pay_config/lists"})}function g(t){return a.post({url:"/setting.pay.pay_config/setConfig",params:t})}function i(t){return a.get({url:"/setting.pay.pay_config/getConfig",params:t})}export{y as a,e as b,s as c,i as g,g as s}; diff --git a/server/public/admin/assets/pc-CWZHJXwU.js b/server/public/admin/assets/pc-DCi3Nq16.js similarity index 94% rename from server/public/admin/assets/pc-CWZHJXwU.js rename to server/public/admin/assets/pc-DCi3Nq16.js index 7d926aff..0f6c2476 100644 --- a/server/public/admin/assets/pc-CWZHJXwU.js +++ b/server/public/admin/assets/pc-DCi3Nq16.js @@ -1 +1 @@ -import{i as x,D as v,B as D,C as b,J as g}from"./element-plus-DFTWCWyi.js";import{b as k}from"./decoration-XX4ow94I.js";import{f as n,ar as w,as as B,ak as s,I as C,a as o,aN as e,J as E,O as p,aP as V,G as N}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,n as P}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const F={class:"decoration-pc min-w-[1100px]"},J=n({name:"decorationPc"}),Dt=n({...J,setup(q){const r=P({update_time:"",pc_url:""});return(async()=>{try{r.value=await k()}catch(i){console.log(i)}})(),(i,t)=>{const m=x,c=w("router-link"),l=D,_=b,d=v,u=g,f=B("copy");return s(),C("div",F,[o(u,{shadow:"never",class:"!border-none flex-1 flex"},{default:e(()=>[t[3]||(t[3]=E("div",{class:"text-xl font-medium"},"首页装修",-1)),o(c,{to:{path:"/decoration/pc_details",query:{url:a(r).pc_url}}},{default:e(()=>[o(m,{class:"m-5",type:"primary",size:"large"},{default:e(()=>[...t[1]||(t[1]=[p("去装修",-1)])]),_:1})]),_:1},8,["to"]),o(d,null,{default:e(()=>[o(l,{label:"最近更新"},{default:e(()=>[p(I(a(r).update_time),1)]),_:1}),o(l,{label:"PC端链接"},{default:e(()=>[o(_,{style:{width:"350px"},modelValue:a(r).pc_url,"onUpdate:modelValue":t[0]||(t[0]=y=>a(r).pc_url=y),disabled:""},null,8,["modelValue"]),V((s(),N(m,{type:"primary"},{default:e(()=>[...t[2]||(t[2]=[p("复制",-1)])]),_:1})),[[f,a(r).pc_url]])]),_:1})]),_:1})]),_:1})])}}});export{Dt as default}; +import{i as x,D as v,B as D,C as b,J as g}from"./element-plus-DFTWCWyi.js";import{b as k}from"./decoration-BA17WVMJ.js";import{f as n,ar as w,as as B,ak as s,I as C,a as o,aN as e,J as E,O as p,aP as V,G as N}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,n as P}from"./@vue/reactivity-DiY1c2vO.js";import{Q as I}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const F={class:"decoration-pc min-w-[1100px]"},J=n({name:"decorationPc"}),Dt=n({...J,setup(q){const r=P({update_time:"",pc_url:""});return(async()=>{try{r.value=await k()}catch(i){console.log(i)}})(),(i,t)=>{const m=x,c=w("router-link"),l=D,_=b,d=v,u=g,f=B("copy");return s(),C("div",F,[o(u,{shadow:"never",class:"!border-none flex-1 flex"},{default:e(()=>[t[3]||(t[3]=E("div",{class:"text-xl font-medium"},"首页装修",-1)),o(c,{to:{path:"/decoration/pc_details",query:{url:a(r).pc_url}}},{default:e(()=>[o(m,{class:"m-5",type:"primary",size:"large"},{default:e(()=>[...t[1]||(t[1]=[p("去装修",-1)])]),_:1})]),_:1},8,["to"]),o(d,null,{default:e(()=>[o(l,{label:"最近更新"},{default:e(()=>[p(I(a(r).update_time),1)]),_:1}),o(l,{label:"PC端链接"},{default:e(()=>[o(_,{style:{width:"350px"},modelValue:a(r).pc_url,"onUpdate:modelValue":t[0]||(t[0]=y=>a(r).pc_url=y),disabled:""},null,8,["modelValue"]),V((s(),N(m,{type:"primary"},{default:e(()=>[...t[2]||(t[2]=[p("复制",-1)])]),_:1})),[[f,a(r).pc_url]])]),_:1})]),_:1})]),_:1})])}}});export{Dt as default}; diff --git a/server/public/admin/assets/pc_details-NldMsGZ1.js b/server/public/admin/assets/pc_details-CR93pqsw.js similarity index 65% rename from server/public/admin/assets/pc_details-NldMsGZ1.js rename to server/public/admin/assets/pc_details-CR93pqsw.js index 4a9a14f5..61820311 100644 --- a/server/public/admin/assets/pc_details-NldMsGZ1.js +++ b/server/public/admin/assets/pc_details-CR93pqsw.js @@ -1 +1 @@ -import{i as b,J as P}from"./element-plus-DFTWCWyi.js";import{o as B}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as N,s as V}from"./decoration-XX4ow94I.js";import{i as C,_ as E}from"./index-Nt5zMHcc.js";import I from"./preview-pc-CFpdKBXT.js";import{a as h}from"./vue-router-QlpZ4wdW.js";import{f as v,w as J,as as O,ak as d,I as S,a as p,aN as m,J as u,O as f,aP as M,G as R,A as T}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as j,n as _,r as A}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CHZQEiCU.js";import"./attr-C9CZlLYE.js";import"./index-D18gAY1e.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js";import"./decoration-img-A6h02C6l.js";import"./attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js";import"./content-DSbMIogU.js";import"./attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js";import"./content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js";import"./attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./content-Bq2N97AM.js";import"./attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js";import"./content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-RKc8NsXf.js";import"./attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-BvpTtLa-.js";import"./content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-_IxwYLuN.js";import"./attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js";import"./content.vue_vue_type_script_setup_true_lang-BPonashY.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-DPq40ncB.js";const G={class:"decoration-pages min-w-[1100px]"},H={class:"flex justify-between w-full"},U={class:"flex-1 h-full"},W=v({name:"decorationPc"}),q=v({...W,setup(z){const g=h();let n;(t=>{t.HOME="4"})(n||(n={}));const a=A({4:{id:4,type:4,name:"首页装修",pageData:[]}}),r=_("4"),e=_(0),i=T(()=>{var t;return((t=a[r.value])==null?void 0:t.pageData)??[]}),w=async()=>{await C.confirm("确定离开此页面?系统可能不会保存您所做的更改。"),g.back()},c=async()=>{const t=await N({id:r.value});a[String(t.id)].pageData=JSON.parse(t.data),e.value=i.value.findIndex(o=>!o.disabled)},D=async()=>{await V({...a[r.value],data:JSON.stringify(a[r.value].pageData)}),c()};return J(r,()=>{e.value=i.value.findIndex(t=>!t.disabled),c()},{immediate:!0}),(t,o)=>{const l=b,y=P,x=O("perms");return d(),S("div",G,[p(y,{shadow:"never",class:"!border-none !rounded-none !bg-primary"},{default:m(()=>[u("div",H,[p(l,{link:"",type:"primary",icon:s(B),style:{color:"#fff"},onClick:w},{default:m(()=>[...o[1]||(o[1]=[f(" 返回 ",-1)])]),_:1},8,["icon"]),M((d(),R(l,{onClick:D},{default:m(()=>[...o[2]||(o[2]=[f(" 保存 ",-1)])]),_:1})),[[x,["decorate:pages:save"]]])])]),_:1}),u("div",U,[p(I,{modelValue:s(e),"onUpdate:modelValue":o[0]||(o[0]=k=>j(e)?e.value=k:null),pageData:s(i)},null,8,["modelValue","pageData"])])])}}}),yo=E(q,[["__scopeId","data-v-9bc87a24"]]);export{yo as default}; +import{i as b,J as P}from"./element-plus-DFTWCWyi.js";import{o as B}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as N,s as V}from"./decoration-BA17WVMJ.js";import{i as C,_ as E}from"./index--WnM67ZH.js";import I from"./preview-pc-C8bP-zog.js";import{a as h}from"./vue-router-QlpZ4wdW.js";import{f as v,w as J,as as O,ak as d,I as S,a as p,aN as m,J as u,O as f,aP as M,G as R,A as T}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as j,n as _,r as A}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-2TepIesZ.js";import"./attr-LeDws8D5.js";import"./index-BtiRSS_3.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-D3j4saYE.js";import"./decoration-img-Bn25X5JS.js";import"./attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js";import"./content-DeSOYKs_.js";import"./attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js";import"./content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js";import"./attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./content-BRFykSo7.js";import"./attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js";import"./content.vue_vue_type_script_setup_true_lang-jnpmExki.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-TNbubsqc.js";import"./attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-DDJw1TZH.js";import"./content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-By25GabM.js";import"./attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js";import"./content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-BLxl9Qo-.js";const G={class:"decoration-pages min-w-[1100px]"},H={class:"flex justify-between w-full"},U={class:"flex-1 h-full"},W=v({name:"decorationPc"}),q=v({...W,setup(z){const g=h();let n;(t=>{t.HOME="4"})(n||(n={}));const a=A({4:{id:4,type:4,name:"首页装修",pageData:[]}}),r=_("4"),e=_(0),i=T(()=>{var t;return((t=a[r.value])==null?void 0:t.pageData)??[]}),w=async()=>{await C.confirm("确定离开此页面?系统可能不会保存您所做的更改。"),g.back()},c=async()=>{const t=await N({id:r.value});a[String(t.id)].pageData=JSON.parse(t.data),e.value=i.value.findIndex(o=>!o.disabled)},D=async()=>{await V({...a[r.value],data:JSON.stringify(a[r.value].pageData)}),c()};return J(r,()=>{e.value=i.value.findIndex(t=>!t.disabled),c()},{immediate:!0}),(t,o)=>{const l=b,y=P,x=O("perms");return d(),S("div",G,[p(y,{shadow:"never",class:"!border-none !rounded-none !bg-primary"},{default:m(()=>[u("div",H,[p(l,{link:"",type:"primary",icon:s(B),style:{color:"#fff"},onClick:w},{default:m(()=>[...o[1]||(o[1]=[f(" 返回 ",-1)])]),_:1},8,["icon"]),M((d(),R(l,{onClick:D},{default:m(()=>[...o[2]||(o[2]=[f(" 保存 ",-1)])]),_:1})),[[x,["decorate:pages:save"]]])])]),_:1}),u("div",U,[p(I,{modelValue:s(e),"onUpdate:modelValue":o[0]||(o[0]=k=>j(e)?e.value=k:null),pageData:s(i)},null,8,["modelValue","pageData"])])])}}}),yo=E(q,[["__scopeId","data-v-9bc87a24"]]);export{yo as default}; diff --git a/server/public/admin/assets/perm-DkIPMPyD.js b/server/public/admin/assets/perm-CLhA0PJe.js similarity index 67% rename from server/public/admin/assets/perm-DkIPMPyD.js rename to server/public/admin/assets/perm-CLhA0PJe.js index 33e00744..2c421c6b 100644 --- a/server/public/admin/assets/perm-DkIPMPyD.js +++ b/server/public/admin/assets/perm-CLhA0PJe.js @@ -1 +1 @@ -import{u as i}from"./index-Nt5zMHcc.js";const l=s=>{const e=i().perms,o="*";if(s.length>0){let r=!0;return s.forEach(t=>{!e.includes(t)&&!e.includes(o)&&(r=!1)}),r}else return!0};export{l as h}; +import{u as i}from"./index--WnM67ZH.js";const l=s=>{const e=i().perms,o="*";if(s.length>0){let r=!0;return s.forEach(t=>{!e.includes(t)&&!e.includes(o)&&(r=!1)}),r}else return!0};export{l as h}; diff --git a/server/public/admin/assets/picker-W7EVmvPL.js b/server/public/admin/assets/picker-Btcf59sz.js similarity index 97% rename from server/public/admin/assets/picker-W7EVmvPL.js rename to server/public/admin/assets/picker-Btcf59sz.js index 9c681cc9..ef7035a2 100644 --- a/server/public/admin/assets/picker-W7EVmvPL.js +++ b/server/public/admin/assets/picker-Btcf59sz.js @@ -1 +1 @@ -import{D as F,B as z,C as L,i as J,L as Q,M as W,N as X,H as Y,v as Z,r as ee,G as te,I as le,y as ae,w as ne,x as se}from"./element-plus-DFTWCWyi.js";import{_ as q,c as oe}from"./index-Nt5zMHcc.js";import{w as ie,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as de}from"./index-BQY2-_X1.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{N as pe}from"./@element-plus/icons-vue-HOEUG8sr.js";import{k as re}from"./article-nZc1fauP.js";import{u as ce}from"./usePaging-VsbTxSU0.js";import{f as k,w as O,ak as r,I as V,a as d,aN as x,aP as _e,G as P,J as l,O as R,F as T,ap as $,H as b,A as N}from"./@vue/runtime-core-C6bnekPw.js";import{n as E,y as o,a as I,r as fe,q as xe}from"./@vue/reactivity-DiY1c2vO.js";import{Q as C,o as ve}from"./@vue/shared-mAAVTE9n.js";var w=(n=>(n.SHOP_PAGES="shop",n.APPTOOL="application_tool",n.OTHER_LINK="other_link",n))(w||{}),a=(n=>(n.SHOP_PAGES="shop",n.ARTICLE_LIST="article",n.CUSTOM_LINK="custom",n.MINI_PROGRAM="mini_program",n))(a||{});const ye={class:"article-list"},he={class:"flex row-center"},Se={class:"flex items-center"},ge={class:"ml-4 overflow-hidden"},Ve={class:"text-base line-clamp-2"},Pe={class:"flex justify-end mt-4"},we=k({__name:"article-list",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=E({path:"/pages/news_detail/news_detail",name:"",query:{},type:a.ARTICLE_LIST}),t=fe({name:"",is_show:1}),{pager:e,getLists:_,resetPage:s}=ce({fetchFun:re,params:t}),i=f=>f==Number(m.value.id),p=f=>{m.value={id:f.id,name:f.title,path:"/pages/news_detail/news_detail",query:{id:f.id},type:a.ARTICLE_LIST},y("update:modelValue",m.value)};return O(()=>c.modelValue,f=>{if(f.type!=a.ARTICLE_LIST)return m.value={id:"",name:"",path:"/pages/news_detail/news_detail",type:a.SHOP_PAGES};m.value=f},{immediate:!0}),_(),(f,v)=>{const u=L,S=J,A=z,G=F,M=Y,H=X,U=Z,K=ee,j=W,B=ue,D=Q;return r(),V("div",ye,[d(G,{ref:"formRef",model:o(t),inline:!0},{default:x(()=>[d(A,{class:"w-[280px]",label:"文章名称"},{default:x(()=>[d(u,{modelValue:o(t).name,"onUpdate:modelValue":v[0]||(v[0]=g=>o(t).name=g),placeholder:"请输入",clearable:"",onKeyup:ie(o(s),["enter"])},null,8,["modelValue","onKeyup"]),d(S,{type:"primary",class:"ml-4",icon:o(pe),onClick:o(s)},null,8,["icon","onClick"])]),_:1})]),_:1},8,["model"]),_e((r(),P(j,{size:"large",data:o(e).lists,height:"432px",onRowClick:p},{default:x(()=>[d(H,{label:"选择","min-width":"50"},{default:x(({row:g})=>[l("div",he,[d(M,{"model-value":i(g.id),size:"large",onChange:Qe=>p(g)},null,8,["model-value","onChange"])])]),_:1}),d(H,{label:"文章名称","min-width":"180"},{default:x(({row:g})=>[l("div",Se,[d(U,{fit:"cover",src:g.image,class:"flex-none w-[58px] h-[58px]"},null,8,["src"]),l("div",ge,[d(K,{effect:"dark",content:g.title,placement:"top"},{default:x(()=>[l("div",Ve,C(g.title),1)]),_:2},1032,["content"])])])]),_:1}),d(H,{label:"创建时间",prop:"create_time","min-width":"140"})]),_:1},8,["data"])),[[D,o(e).loading]]),l("div",Pe,[d(B,{modelValue:o(e),"onUpdate:modelValue":v[1]||(v[1]=g=>I(e)?e.value=g:null),onChange:o(_)},null,8,["modelValue","onChange"])])])}}}),Ie=q(we,[["__scopeId","data-v-1686cf19"]]),ke={class:"custom-link h-[530px]"},Oe={class:"flex flex-wrap items-center mt-4"},Ee={class:"ml-4 flex-1 min-w-[100px]"},Ae=k({__name:"custom-link",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=h,y=m=>{c("update:modelValue",{path:"/pages/webview/webview",query:{url:m},type:a.CUSTOM_LINK})};return(m,t)=>{var _;const e=L;return r(),V("div",ke,[t[1]||(t[1]=l("div",{class:"text-xl font-medium"},"自定义链接",-1)),l("div",Oe,[t[0]||(t[0]=l("div",{class:"w-[86px] text-right"},"自定义链接",-1)),l("div",Ee,[d(e,{class:"max-w-[320px]","model-value":(_=n.modelValue.query)==null?void 0:_.url,placeholder:"请输入链接地址",onInput:y},null,8,["model-value"])])]),t[2]||(t[2]=l("div",{class:"form-tips ml-[101px] max-w-[320px]"}," 请填写完整的带有“https://”或“http://”的链接地址,链接的域名必须在微信公众平台设置业务域名 ",-1))])}}}),be={class:"mini-program h-[530px]"},Ce={class:"flex flex-wrap items-center mt-4"},Le={class:"ml-4 flex-1 min-w-[100px]"},Ge={class:"flex flex-wrap items-center mt-4"},He={class:"ml-4 flex-1 min-w-[100px]"},Re={class:"flex flex-wrap items-center mt-4"},Te={class:"ml-4 flex-1 min-w-[100px]"},$e={class:"flex flex-wrap items-center mt-4"},qe={class:"ml-4 flex-1 min-w-[100px]"},Ne=k({__name:"mini-program",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=(t,e)=>{y("update:modelValue",{...c.modelValue,name:"小程序跳转",query:{...c.modelValue.query,[t]:e},type:a.MINI_PROGRAM})};return O(()=>c.modelValue,t=>{var e;(e=t.query)!=null&&e.env_version||m("env_version","release")},{immediate:!0}),(t,e)=>{var p,f,v,u;const _=L,s=le,i=te;return r(),V("div",be,[e[11]||(e[11]=l("div",{class:"text-xl font-medium"},"跳转小程序",-1)),l("div",Ce,[e[4]||(e[4]=l("div",{class:"w-[86px] text-right"},"小程序APPID",-1)),l("div",Le,[d(_,{class:"max-w-[320px]","model-value":(p=n.modelValue.query)==null?void 0:p.appId,placeholder:"请输入小程序appId",onInput:e[0]||(e[0]=S=>m("appId",S))},null,8,["model-value"])])]),l("div",Ge,[e[5]||(e[5]=l("div",{class:"w-[86px] text-right"},"小程序路径",-1)),l("div",He,[d(_,{class:"max-w-[320px]","model-value":(f=n.modelValue.query)==null?void 0:f.path,placeholder:"请输入小程序路径链接地址",onInput:e[1]||(e[1]=S=>m("path",S))},null,8,["model-value"])])]),l("div",Re,[e[6]||(e[6]=l("div",{class:"w-[86px] text-right"},"传递参数",-1)),l("div",Te,[d(_,{class:"max-w-[320px]","model-value":(v=n.modelValue.query)==null?void 0:v.query,placeholder:"请输入小程序跳转参数(选填)",onInput:e[2]||(e[2]=S=>m("query",S))},null,8,["model-value"])])]),e[12]||(e[12]=l("div",{class:"form-tips ml-[100px] max-w-[320px]"},[l("div",null,"示例:id=2&ustm=jiny&name=234"),l("div",{class:"text-error"}," 注意:不允许输入中文、特殊字符等。如果出现对不起,当前页面无法访问,大概率是跳转参数的问题!! ")],-1)),l("div",$e,[e[10]||(e[10]=l("div",{class:"w-[86px] text-right"},"小程序版本",-1)),l("div",qe,[d(i,{"model-value":(u=n.modelValue.query)==null?void 0:u.env_version,onChange:e[3]||(e[3]=S=>m("env_version",S))},{default:x(()=>[d(s,{value:"release"},{default:x(()=>[...e[7]||(e[7]=[R("正式版",-1)])]),_:1}),d(s,{value:"trial"},{default:x(()=>[...e[8]||(e[8]=[R("体验版",-1)])]),_:1}),d(s,{value:"develop"},{default:x(()=>[...e[9]||(e[9]=[R("开发版",-1)])]),_:1})]),_:1},8,["model-value"])])]),e[13]||(e[13]=l("div",null,[l("div",{class:"form-tips ml-[100px] max-w-[320px]"},[l("div",{class:"mt-4"}," 1. 小程序APPID和小程序路径链接地址,小程序路径链接地址请填写小程序的页面路径,如:pages/index/index "),l("div",{class:"mt-2"},[l("span",null,"2. 如果是H5(浏览器)中需要跳转到小程序,则需要以下配置--->"),l("a",{href:"https://mp.weixin.qq.com/",class:"text-primary",target:"_blank",rel:"nofollow"}," 小程序管理后台 -> 设置 -> 隐私与安全 -> 明文 scheme 拉起此小程序 (点击跳转去配置) ")])])],-1))])}}}),Me={class:"shop-pages h-[530px]"},Ue={class:"link-list flex flex-wrap"},Ke=["onClick"],je=k({__name:"shop-pages",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=h,y=E([{path:"/pages/index/index",name:"商城首页",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/news/news",name:"文章资讯",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/user/user",name:"个人中心",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/collection/collection",name:"我的收藏",type:a.SHOP_PAGES},{path:"/pages/customer_service/customer_service",name:"联系客服",type:a.SHOP_PAGES},{path:"/pages/user_set/user_set",name:"个人设置",type:a.SHOP_PAGES},{path:"/pages/as_us/as_us",name:"关于我们",type:a.SHOP_PAGES},{path:"/pages/user_data/user_data",name:"个人资料",type:a.SHOP_PAGES},{path:"/pages/agreement/agreement",name:"隐私政策",query:{type:"privacy"},type:a.SHOP_PAGES},{path:"/pages/agreement/agreement",name:"服务协议",query:{type:"service"},type:a.SHOP_PAGES},{path:"/pages/search/search",name:"搜索",type:a.SHOP_PAGES},{path:"/packages/pages/user_wallet/user_wallet",name:"我的钱包",type:a.SHOP_PAGES}]),m=t=>{c("update:modelValue",t)};return(t,e)=>(r(),V("div",Me,[l("div",Ue,[(r(!0),V(T,null,$(o(y),(_,s)=>(r(),V("div",{class:ve(["link-item border border-br px-5 py-[5px] rounded-[3px] cursor-pointer mr-[10px] mb-[10px]",{"border-primary text-primary":n.modelValue.path==_.path&&n.modelValue.name==_.name}]),key:s,onClick:i=>m(_)},C(_.name),11,Ke))),128))])]))}}),Be={class:"link flex"},De={class:"flex-1 ml-4 link-content"},Fe=k({__name:"index",props:{modelValue:{type:Object,required:!0}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=E([{name:"商城页面",type:w.SHOP_PAGES,children:[{name:"基础页面",type:a.SHOP_PAGES,link:{}}]},{name:"应用工具",type:w.APPTOOL,children:[{name:"文章资讯",type:a.ARTICLE_LIST,link:{}}]},{name:"其他",type:w.OTHER_LINK,children:[{name:"自定义链接",type:a.CUSTOM_LINK,link:{}},{name:"跳转小程序",type:a.MINI_PROGRAM,link:{}}]}]),t=N({get(){let s={};return m.value.forEach(i=>{const p=i.children.find(f=>f.type==e.value);p&&(s=p)}),s.link},set(s){m.value.forEach(i=>{i.children.forEach(p=>{p.type==e.value&&(p.link=s)})})}}),e=E(a.SHOP_PAGES),_=s=>{e.value=s};return O(t,s=>{s.type&&y("update:modelValue",s)},{deep:!0}),O(()=>c.modelValue,s=>{e.value=s.type,t.value=s},{immediate:!0}),(s,i)=>{const p=ne,f=se,v=ae;return r(),V("div",Be,[d(v,{"default-active":o(e),class:"flex-none w-[180px] min-h-[350px] link-menu","default-openeds":[o(w).SHOP_PAGES,o(w).APPTOOL,o(w).OTHER_LINK],onSelect:_},{default:x(()=>[(r(!0),V(T,null,$(o(m),(u,S)=>(r(),P(f,{index:u.type,key:S},{title:x(()=>[l("span",null,C(u.name),1)]),default:x(()=>[(r(!0),V(T,null,$(u.children,(A,G)=>(r(),P(p,{index:A.type,key:G,style:{"min-width":"160px"}},{default:x(()=>[l("span",null,C(A.name),1)]),_:2},1032,["index"]))),128))]),_:2},1032,["index"]))),128))]),_:1},8,["default-active","default-openeds"]),l("div",De,[o(a).SHOP_PAGES==o(e)?(r(),P(je,{key:0,modelValue:o(t),"onUpdate:modelValue":i[0]||(i[0]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).ARTICLE_LIST==o(e)?(r(),P(Ie,{key:1,modelValue:o(t),"onUpdate:modelValue":i[1]||(i[1]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).CUSTOM_LINK==o(e)?(r(),P(Ae,{key:2,modelValue:o(t),"onUpdate:modelValue":i[2]||(i[2]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).MINI_PROGRAM==o(e)?(r(),P(Ne,{key:3,modelValue:o(t),"onUpdate:modelValue":i[3]||(i[3]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0)])])}}}),ze=q(Fe,[["__scopeId","data-v-e991fd93"]]),Je=k({__name:"picker",props:{modelValue:{type:Object},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=xe(),t=E({path:"",type:a.SHOP_PAGES}),e=()=>{y("update:modelValue",t.value)},_=N(()=>{var s,i,p;switch((s=c.modelValue)==null?void 0:s.type){case a.SHOP_PAGES:return c.modelValue.name;case a.ARTICLE_LIST:return c.modelValue.name;case a.CUSTOM_LINK:return(i=c.modelValue.query)==null?void 0:i.url;default:return(p=c.modelValue)==null?void 0:p.name}});return O(()=>c.modelValue,s=>{s!=null&&s.type&&(t.value=s)},{immediate:!0}),(s,i)=>{const p=oe,f=L;return r(),V("div",{class:"link-picker flex-1",onClick:i[2]||(i[2]=v=>{var u;return!n.disabled&&((u=o(m))==null?void 0:u.open())})},[d(f,{"model-value":o(_),placeholder:"请选择链接",readonly:"",disabled:n.disabled},{suffix:x(()=>{var v;return[(v=n.modelValue)!=null&&v.path?(r(),P(p,{key:1,name:"el-icon-Close",onClick:i[0]||(i[0]=me(u=>!n.disabled&&y("update:modelValue",{}),["stop"]))})):(r(),P(p,{key:0,name:"el-icon-ArrowRight"}))]}),_:1},8,["model-value","disabled"]),d(de,{ref_key:"popupRef",ref:m,width:"1050px",title:"链接选择",onConfirm:e},{default:x(()=>[d(ze,{modelValue:o(t),"onUpdate:modelValue":i[1]||(i[1]=v=>I(t)?t.value=v:null)},null,8,["modelValue"])]),_:1},512)])}}}),it=q(Je,[["__scopeId","data-v-84fe1e25"]]);export{it as _}; +import{D as F,B as z,C as L,i as J,L as Q,M as W,N as X,H as Y,v as Z,r as ee,G as te,I as le,y as ae,w as ne,x as se}from"./element-plus-DFTWCWyi.js";import{_ as q,c as oe}from"./index--WnM67ZH.js";import{w as ie,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as de}from"./index-SocYjCJ1.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{N as pe}from"./@element-plus/icons-vue-HOEUG8sr.js";import{k as re}from"./article-CrrySQF9.js";import{u as ce}from"./usePaging-VsbTxSU0.js";import{f as k,w as O,ak as r,I as V,a as d,aN as x,aP as _e,G as P,J as l,O as R,F as T,ap as $,H as b,A as N}from"./@vue/runtime-core-C6bnekPw.js";import{n as E,y as o,a as I,r as fe,q as xe}from"./@vue/reactivity-DiY1c2vO.js";import{Q as C,o as ve}from"./@vue/shared-mAAVTE9n.js";var w=(n=>(n.SHOP_PAGES="shop",n.APPTOOL="application_tool",n.OTHER_LINK="other_link",n))(w||{}),a=(n=>(n.SHOP_PAGES="shop",n.ARTICLE_LIST="article",n.CUSTOM_LINK="custom",n.MINI_PROGRAM="mini_program",n))(a||{});const ye={class:"article-list"},he={class:"flex row-center"},Se={class:"flex items-center"},ge={class:"ml-4 overflow-hidden"},Ve={class:"text-base line-clamp-2"},Pe={class:"flex justify-end mt-4"},we=k({__name:"article-list",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=E({path:"/pages/news_detail/news_detail",name:"",query:{},type:a.ARTICLE_LIST}),t=fe({name:"",is_show:1}),{pager:e,getLists:_,resetPage:s}=ce({fetchFun:re,params:t}),i=f=>f==Number(m.value.id),p=f=>{m.value={id:f.id,name:f.title,path:"/pages/news_detail/news_detail",query:{id:f.id},type:a.ARTICLE_LIST},y("update:modelValue",m.value)};return O(()=>c.modelValue,f=>{if(f.type!=a.ARTICLE_LIST)return m.value={id:"",name:"",path:"/pages/news_detail/news_detail",type:a.SHOP_PAGES};m.value=f},{immediate:!0}),_(),(f,v)=>{const u=L,S=J,A=z,G=F,M=Y,H=X,U=Z,K=ee,j=W,B=ue,D=Q;return r(),V("div",ye,[d(G,{ref:"formRef",model:o(t),inline:!0},{default:x(()=>[d(A,{class:"w-[280px]",label:"文章名称"},{default:x(()=>[d(u,{modelValue:o(t).name,"onUpdate:modelValue":v[0]||(v[0]=g=>o(t).name=g),placeholder:"请输入",clearable:"",onKeyup:ie(o(s),["enter"])},null,8,["modelValue","onKeyup"]),d(S,{type:"primary",class:"ml-4",icon:o(pe),onClick:o(s)},null,8,["icon","onClick"])]),_:1})]),_:1},8,["model"]),_e((r(),P(j,{size:"large",data:o(e).lists,height:"432px",onRowClick:p},{default:x(()=>[d(H,{label:"选择","min-width":"50"},{default:x(({row:g})=>[l("div",he,[d(M,{"model-value":i(g.id),size:"large",onChange:Qe=>p(g)},null,8,["model-value","onChange"])])]),_:1}),d(H,{label:"文章名称","min-width":"180"},{default:x(({row:g})=>[l("div",Se,[d(U,{fit:"cover",src:g.image,class:"flex-none w-[58px] h-[58px]"},null,8,["src"]),l("div",ge,[d(K,{effect:"dark",content:g.title,placement:"top"},{default:x(()=>[l("div",Ve,C(g.title),1)]),_:2},1032,["content"])])])]),_:1}),d(H,{label:"创建时间",prop:"create_time","min-width":"140"})]),_:1},8,["data"])),[[D,o(e).loading]]),l("div",Pe,[d(B,{modelValue:o(e),"onUpdate:modelValue":v[1]||(v[1]=g=>I(e)?e.value=g:null),onChange:o(_)},null,8,["modelValue","onChange"])])])}}}),Ie=q(we,[["__scopeId","data-v-1686cf19"]]),ke={class:"custom-link h-[530px]"},Oe={class:"flex flex-wrap items-center mt-4"},Ee={class:"ml-4 flex-1 min-w-[100px]"},Ae=k({__name:"custom-link",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=h,y=m=>{c("update:modelValue",{path:"/pages/webview/webview",query:{url:m},type:a.CUSTOM_LINK})};return(m,t)=>{var _;const e=L;return r(),V("div",ke,[t[1]||(t[1]=l("div",{class:"text-xl font-medium"},"自定义链接",-1)),l("div",Oe,[t[0]||(t[0]=l("div",{class:"w-[86px] text-right"},"自定义链接",-1)),l("div",Ee,[d(e,{class:"max-w-[320px]","model-value":(_=n.modelValue.query)==null?void 0:_.url,placeholder:"请输入链接地址",onInput:y},null,8,["model-value"])])]),t[2]||(t[2]=l("div",{class:"form-tips ml-[101px] max-w-[320px]"}," 请填写完整的带有“https://”或“http://”的链接地址,链接的域名必须在微信公众平台设置业务域名 ",-1))])}}}),be={class:"mini-program h-[530px]"},Ce={class:"flex flex-wrap items-center mt-4"},Le={class:"ml-4 flex-1 min-w-[100px]"},Ge={class:"flex flex-wrap items-center mt-4"},He={class:"ml-4 flex-1 min-w-[100px]"},Re={class:"flex flex-wrap items-center mt-4"},Te={class:"ml-4 flex-1 min-w-[100px]"},$e={class:"flex flex-wrap items-center mt-4"},qe={class:"ml-4 flex-1 min-w-[100px]"},Ne=k({__name:"mini-program",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=(t,e)=>{y("update:modelValue",{...c.modelValue,name:"小程序跳转",query:{...c.modelValue.query,[t]:e},type:a.MINI_PROGRAM})};return O(()=>c.modelValue,t=>{var e;(e=t.query)!=null&&e.env_version||m("env_version","release")},{immediate:!0}),(t,e)=>{var p,f,v,u;const _=L,s=le,i=te;return r(),V("div",be,[e[11]||(e[11]=l("div",{class:"text-xl font-medium"},"跳转小程序",-1)),l("div",Ce,[e[4]||(e[4]=l("div",{class:"w-[86px] text-right"},"小程序APPID",-1)),l("div",Le,[d(_,{class:"max-w-[320px]","model-value":(p=n.modelValue.query)==null?void 0:p.appId,placeholder:"请输入小程序appId",onInput:e[0]||(e[0]=S=>m("appId",S))},null,8,["model-value"])])]),l("div",Ge,[e[5]||(e[5]=l("div",{class:"w-[86px] text-right"},"小程序路径",-1)),l("div",He,[d(_,{class:"max-w-[320px]","model-value":(f=n.modelValue.query)==null?void 0:f.path,placeholder:"请输入小程序路径链接地址",onInput:e[1]||(e[1]=S=>m("path",S))},null,8,["model-value"])])]),l("div",Re,[e[6]||(e[6]=l("div",{class:"w-[86px] text-right"},"传递参数",-1)),l("div",Te,[d(_,{class:"max-w-[320px]","model-value":(v=n.modelValue.query)==null?void 0:v.query,placeholder:"请输入小程序跳转参数(选填)",onInput:e[2]||(e[2]=S=>m("query",S))},null,8,["model-value"])])]),e[12]||(e[12]=l("div",{class:"form-tips ml-[100px] max-w-[320px]"},[l("div",null,"示例:id=2&ustm=jiny&name=234"),l("div",{class:"text-error"}," 注意:不允许输入中文、特殊字符等。如果出现对不起,当前页面无法访问,大概率是跳转参数的问题!! ")],-1)),l("div",$e,[e[10]||(e[10]=l("div",{class:"w-[86px] text-right"},"小程序版本",-1)),l("div",qe,[d(i,{"model-value":(u=n.modelValue.query)==null?void 0:u.env_version,onChange:e[3]||(e[3]=S=>m("env_version",S))},{default:x(()=>[d(s,{value:"release"},{default:x(()=>[...e[7]||(e[7]=[R("正式版",-1)])]),_:1}),d(s,{value:"trial"},{default:x(()=>[...e[8]||(e[8]=[R("体验版",-1)])]),_:1}),d(s,{value:"develop"},{default:x(()=>[...e[9]||(e[9]=[R("开发版",-1)])]),_:1})]),_:1},8,["model-value"])])]),e[13]||(e[13]=l("div",null,[l("div",{class:"form-tips ml-[100px] max-w-[320px]"},[l("div",{class:"mt-4"}," 1. 小程序APPID和小程序路径链接地址,小程序路径链接地址请填写小程序的页面路径,如:pages/index/index "),l("div",{class:"mt-2"},[l("span",null,"2. 如果是H5(浏览器)中需要跳转到小程序,则需要以下配置--->"),l("a",{href:"https://mp.weixin.qq.com/",class:"text-primary",target:"_blank",rel:"nofollow"}," 小程序管理后台 -> 设置 -> 隐私与安全 -> 明文 scheme 拉起此小程序 (点击跳转去配置) ")])])],-1))])}}}),Me={class:"shop-pages h-[530px]"},Ue={class:"link-list flex flex-wrap"},Ke=["onClick"],je=k({__name:"shop-pages",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=h,y=E([{path:"/pages/index/index",name:"商城首页",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/news/news",name:"文章资讯",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/user/user",name:"个人中心",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/collection/collection",name:"我的收藏",type:a.SHOP_PAGES},{path:"/pages/customer_service/customer_service",name:"联系客服",type:a.SHOP_PAGES},{path:"/pages/user_set/user_set",name:"个人设置",type:a.SHOP_PAGES},{path:"/pages/as_us/as_us",name:"关于我们",type:a.SHOP_PAGES},{path:"/pages/user_data/user_data",name:"个人资料",type:a.SHOP_PAGES},{path:"/pages/agreement/agreement",name:"隐私政策",query:{type:"privacy"},type:a.SHOP_PAGES},{path:"/pages/agreement/agreement",name:"服务协议",query:{type:"service"},type:a.SHOP_PAGES},{path:"/pages/search/search",name:"搜索",type:a.SHOP_PAGES},{path:"/packages/pages/user_wallet/user_wallet",name:"我的钱包",type:a.SHOP_PAGES}]),m=t=>{c("update:modelValue",t)};return(t,e)=>(r(),V("div",Me,[l("div",Ue,[(r(!0),V(T,null,$(o(y),(_,s)=>(r(),V("div",{class:ve(["link-item border border-br px-5 py-[5px] rounded-[3px] cursor-pointer mr-[10px] mb-[10px]",{"border-primary text-primary":n.modelValue.path==_.path&&n.modelValue.name==_.name}]),key:s,onClick:i=>m(_)},C(_.name),11,Ke))),128))])]))}}),Be={class:"link flex"},De={class:"flex-1 ml-4 link-content"},Fe=k({__name:"index",props:{modelValue:{type:Object,required:!0}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=E([{name:"商城页面",type:w.SHOP_PAGES,children:[{name:"基础页面",type:a.SHOP_PAGES,link:{}}]},{name:"应用工具",type:w.APPTOOL,children:[{name:"文章资讯",type:a.ARTICLE_LIST,link:{}}]},{name:"其他",type:w.OTHER_LINK,children:[{name:"自定义链接",type:a.CUSTOM_LINK,link:{}},{name:"跳转小程序",type:a.MINI_PROGRAM,link:{}}]}]),t=N({get(){let s={};return m.value.forEach(i=>{const p=i.children.find(f=>f.type==e.value);p&&(s=p)}),s.link},set(s){m.value.forEach(i=>{i.children.forEach(p=>{p.type==e.value&&(p.link=s)})})}}),e=E(a.SHOP_PAGES),_=s=>{e.value=s};return O(t,s=>{s.type&&y("update:modelValue",s)},{deep:!0}),O(()=>c.modelValue,s=>{e.value=s.type,t.value=s},{immediate:!0}),(s,i)=>{const p=ne,f=se,v=ae;return r(),V("div",Be,[d(v,{"default-active":o(e),class:"flex-none w-[180px] min-h-[350px] link-menu","default-openeds":[o(w).SHOP_PAGES,o(w).APPTOOL,o(w).OTHER_LINK],onSelect:_},{default:x(()=>[(r(!0),V(T,null,$(o(m),(u,S)=>(r(),P(f,{index:u.type,key:S},{title:x(()=>[l("span",null,C(u.name),1)]),default:x(()=>[(r(!0),V(T,null,$(u.children,(A,G)=>(r(),P(p,{index:A.type,key:G,style:{"min-width":"160px"}},{default:x(()=>[l("span",null,C(A.name),1)]),_:2},1032,["index"]))),128))]),_:2},1032,["index"]))),128))]),_:1},8,["default-active","default-openeds"]),l("div",De,[o(a).SHOP_PAGES==o(e)?(r(),P(je,{key:0,modelValue:o(t),"onUpdate:modelValue":i[0]||(i[0]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).ARTICLE_LIST==o(e)?(r(),P(Ie,{key:1,modelValue:o(t),"onUpdate:modelValue":i[1]||(i[1]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).CUSTOM_LINK==o(e)?(r(),P(Ae,{key:2,modelValue:o(t),"onUpdate:modelValue":i[2]||(i[2]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).MINI_PROGRAM==o(e)?(r(),P(Ne,{key:3,modelValue:o(t),"onUpdate:modelValue":i[3]||(i[3]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0)])])}}}),ze=q(Fe,[["__scopeId","data-v-e991fd93"]]),Je=k({__name:"picker",props:{modelValue:{type:Object},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=xe(),t=E({path:"",type:a.SHOP_PAGES}),e=()=>{y("update:modelValue",t.value)},_=N(()=>{var s,i,p;switch((s=c.modelValue)==null?void 0:s.type){case a.SHOP_PAGES:return c.modelValue.name;case a.ARTICLE_LIST:return c.modelValue.name;case a.CUSTOM_LINK:return(i=c.modelValue.query)==null?void 0:i.url;default:return(p=c.modelValue)==null?void 0:p.name}});return O(()=>c.modelValue,s=>{s!=null&&s.type&&(t.value=s)},{immediate:!0}),(s,i)=>{const p=oe,f=L;return r(),V("div",{class:"link-picker flex-1",onClick:i[2]||(i[2]=v=>{var u;return!n.disabled&&((u=o(m))==null?void 0:u.open())})},[d(f,{"model-value":o(_),placeholder:"请选择链接",readonly:"",disabled:n.disabled},{suffix:x(()=>{var v;return[(v=n.modelValue)!=null&&v.path?(r(),P(p,{key:1,name:"el-icon-Close",onClick:i[0]||(i[0]=me(u=>!n.disabled&&y("update:modelValue",{}),["stop"]))})):(r(),P(p,{key:0,name:"el-icon-ArrowRight"}))]}),_:1},8,["model-value","disabled"]),d(de,{ref_key:"popupRef",ref:m,width:"1050px",title:"链接选择",onConfirm:e},{default:x(()=>[d(ze,{modelValue:o(t),"onUpdate:modelValue":i[1]||(i[1]=v=>I(t)?t.value=v:null)},null,8,["modelValue"])]),_:1},512)])}}}),it=q(Je,[["__scopeId","data-v-84fe1e25"]]);export{it as _}; diff --git a/server/public/admin/assets/picker-cSgp8cEl.js b/server/public/admin/assets/picker-DzCeqD7m.js similarity index 96% rename from server/public/admin/assets/picker-cSgp8cEl.js rename to server/public/admin/assets/picker-DzCeqD7m.js index 5cb24855..0224d5ad 100644 --- a/server/public/admin/assets/picker-cSgp8cEl.js +++ b/server/public/admin/assets/picker-DzCeqD7m.js @@ -1 +1 @@ -import{_ as j}from"./index-BQY2-_X1.js";import{s as le}from"./element-plus-DFTWCWyi.js";import{_ as se,a as J,F as ue}from"./index--GZeyamQ.js";import{e as de,i as O,_ as pe,c as me}from"./index-Nt5zMHcc.js";import{_ as fe}from"./index-D18gAY1e.js";import{D as ge}from"./vuedraggable-5bKFmC7X.js";import{a as ve}from"./file-dC1LMm1W.js";import{f as ce,w as he,am as q,A as T,n as ye,ar as F,ak as we,I as De,a as f,M as Ce,aN as S,J as d,O as be,aP as Te,aq as Se}from"./@vue/runtime-core-C6bnekPw.js";import{K as Pe,n as s}from"./@vue/reactivity-DiY1c2vO.js";import{h as ke}from"./@vueuse/shared-Cl3lVqjz.js";import{s as h,q as $e}from"./@vue/runtime-dom-DDAG46FW.js";import{o as E,p as ze}from"./@vue/shared-mAAVTE9n.js";const Ve=ce({components:{Popup:j,Draggable:ge,FileItem:ue,Material:J,Preview:se},props:{modelValue:{type:[String,Array],default:()=>[]},type:{type:String,default:"image"},size:{type:String,default:"100px"},width:{type:String,default:""},height:{type:String,default:""},fileSize:{type:String,default:"100px"},limit:{type:Number,default:1},disabled:{type:Boolean,default:!1},hiddenUpload:{type:Boolean,default:!1},uploadClass:{type:String,default:""},excludeDomain:{type:Boolean,default:!1},uploadCid:{type:[Number,String],default:0}},emits:["change","update:modelValue"],setup(e,{emit:a}){const z=s(),V=s(),A=s(""),I=s(!1),o=s([]),P=s([]),c=s(!0),k=s(-1),g=s(0),y=s(!1),{disabled:v,limit:p,modelValue:i}=Pe(e),w=de(),D=t=>w.getImageUrl(t),C=T(()=>!e.hiddenUpload&&(e.type==="image"||e.type==="video"||e.type==="file")),K=T(()=>g.value>0);function R(t){if(!t)return!1;const n=Array.from(t.types);return n.includes("Files")||n.includes("application/x-moz-file")}function B(t,n){var l;if(n==="file")return!0;const r=t.includes(".")&&((l=t.split(".").pop())==null?void 0:l.toLowerCase())||"";return n==="image"?r?["jpg","jpeg","png","gif","ico"].includes(r):!0:n==="video"&&r?["wmv","avi","mpg","mpeg","3gp","mov","mp4","flv","rmvb","mkv"].includes(r):!0}function _(t){var l;if(!t||!t.startsWith("http"))return t;const n=String(((l=w.config)==null?void 0:l.oss_domain)||"").trim().replace(/\/$/,"");if(n&&t.startsWith(n))return t.slice(n.length).replace(/^\//,"");const r=typeof window<"u"?window.location.origin.replace(/\/$/,""):"";if(r&&t.startsWith(r))return t.slice(r.length).replace(/^\//,"");try{return new URL(t).pathname.replace(/^\//,"")}catch{return t}}function G(t){var b,$;const n=e.type,r=Array.from(((b=t.clipboardData)==null?void 0:b.files)||[]).filter(m=>B(m.name,n));if(r.length)return r;if(n!=="image")return[];const l=($=t.clipboardData)==null?void 0:$.items;if(!l)return[];const u=[];for(let m=0;m{!C.value||v.value||R(t.dataTransfer)&&g.value++},Q=()=>{C.value&&(g.value=Math.max(0,g.value-1))},X=t=>{!C.value||v.value||R(t.dataTransfer)&&t.preventDefault()},Y=async t=>{var r;if(g.value=0,!C.value||v.value)return;const n=Array.from(((r=t.dataTransfer)==null?void 0:r.files)||[]).filter(l=>B(l.name,e.type));n.length&&await M(n)},Z=async t=>{if(!C.value||v.value)return;const n=G(t);n.length&&(t.preventDefault(),await M(n))},x=T(()=>{switch(e.type){case"image":return"图片";case"video":return"视频";default:return""}}),ee=T(()=>e.limit-o.value.length>0),te=T(()=>c.value?p.value==-1?null:p.value-o.value.length:1),ae=ke(()=>{const t=P.value.map(n=>e.excludeDomain?n.uri:n.url);c.value?o.value=[...o.value,...t]:o.value.splice(k.value,1,t.shift()),N()},1e3,!1),ne=t=>{var n;v.value||(t>=0?(c.value=!1,k.value=t):c.value=!0,(n=z.value)==null||n.open())},ie=t=>{P.value=t},N=()=>{const t=p.value!=1?o.value:o.value[0]||"";a("update:modelValue",t),a("change",t),U()},oe=t=>{o.value.splice(t,1),N()},re=t=>{A.value=e.excludeDomain?D(t):t,I.value=!0},U=()=>{ye(()=>{var t;e.hiddenUpload&&(o.value=[]),(t=V.value)==null||t.clearSelect()})};return he(i,t=>{o.value=Array.isArray(t)?t:t==""?[]:[t]},{immediate:!0}),q("limit",e.limit),q("hiddenUpload",e.hiddenUpload),{popupRef:z,materialRef:V,fileList:o,tipsText:x,handleConfirm:ae,meterialLimit:te,showUpload:ee,showPopup:ne,selectChange:ie,deleteImg:oe,previewUrl:A,showPreview:I,handlePreview:re,handleClose:U,getImageUrl:D,dropActive:K,onTriggerDragEnter:H,onTriggerDragLeave:Q,onTriggerDragOver:X,onTriggerDrop:Y,onTriggerPaste:Z}}}),Ae={class:"material-select"},Ie=["onClick"],Ue={class:"operation-btns text-xs text-center"},Le=["onClick"],Fe={class:"material-wrap"};function Ee(e,a,z,V,A,I){const o=F("file-item"),P=fe,c=F("draggable"),k=me,g=J,y=le,v=j,p=F("preview");return we(),De("div",Ae,[f(v,{ref:"popupRef",width:"1050px","custom-class":"body-padding",title:`选择${e.tipsText}`,onConfirm:e.handleConfirm,onClose:e.handleClose},Ce({default:S(()=>[f(y,null,{default:S(()=>[d("div",Fe,[f(g,{ref:"materialRef",type:e.type,"file-size":e.fileSize,limit:e.meterialLimit,onChange:e.selectChange},null,8,["type","file-size","limit","onChange"])])]),_:1})]),_:2},[e.hiddenUpload?void 0:{name:"trigger",fn:S(()=>[d("div",{class:E(["material-select__trigger clearfix",{"is-drop-hover":e.dropActive}]),tabindex:"0",onClick:a[2]||(a[2]=h(()=>{},["stop"])),onDragenter:a[3]||(a[3]=h((...i)=>e.onTriggerDragEnter&&e.onTriggerDragEnter(...i),["prevent","stop"])),onDragleave:a[4]||(a[4]=h((...i)=>e.onTriggerDragLeave&&e.onTriggerDragLeave(...i),["prevent","stop"])),onDragover:a[5]||(a[5]=h((...i)=>e.onTriggerDragOver&&e.onTriggerDragOver(...i),["prevent","stop"])),onDrop:a[6]||(a[6]=h((...i)=>e.onTriggerDrop&&e.onTriggerDrop(...i),["prevent","stop"])),onPaste:a[7]||(a[7]=(...i)=>e.onTriggerPaste&&e.onTriggerPaste(...i))},[f(c,{class:"draggable",modelValue:e.fileList,"onUpdate:modelValue":a[0]||(a[0]=i=>e.fileList=i),animation:"300","item-key":"id"},{item:S(({element:i,index:w})=>[d("div",{class:E(["material-preview",{"is-disabled":e.disabled,"is-one":e.limit==1}]),onClick:D=>e.showPopup(w)},[f(P,{onClose:D=>e.deleteImg(w)},{default:S(()=>[f(o,{uri:e.excludeDomain?e.getImageUrl(i):i,"file-size":e.size,width:e.width,height:e.height,type:e.type},null,8,["uri","file-size","width","height","type"])]),_:2},1032,["onClose"]),d("div",Ue,[a[9]||(a[9]=d("span",null,"修改",-1)),a[10]||(a[10]=be(" | ",-1)),d("span",{onClick:h(D=>e.handlePreview(i),["stop"])},"查看",8,Le)])],10,Ie)]),_:1},8,["modelValue"]),Te(d("div",{class:E(["material-upload",{"is-disabled":e.disabled,"is-one":e.limit==1,[e.uploadClass]:!0}]),onClick:a[1]||(a[1]=i=>e.showPopup(-1))},[Se(e.$slots,"upload",{},()=>[d("div",{class:"upload-btn",style:ze({width:e.width||e.size,height:e.height||e.size})},[f(k,{size:25,name:"el-icon-Plus"}),a[11]||(a[11]=d("span",null,"添加",-1))],4)],!0)],2),[[$e,e.showUpload]])],34)]),key:"0"}]),1032,["title","onConfirm","onClose"]),f(p,{modelValue:e.showPreview,"onUpdate:modelValue":a[8]||(a[8]=i=>e.showPreview=i),url:e.previewUrl,type:e.type},null,8,["modelValue","url","type"])])}const He=pe(Ve,[["render",Ee],["__scopeId","data-v-27e7e4cc"]]);export{He as _}; +import{_ as j}from"./index-SocYjCJ1.js";import{s as le}from"./element-plus-DFTWCWyi.js";import{_ as se,a as J,F as ue}from"./index-CH2au-Zf.js";import{e as de,i as O,_ as pe,c as me}from"./index--WnM67ZH.js";import{_ as fe}from"./index-BtiRSS_3.js";import{D as ge}from"./vuedraggable-5bKFmC7X.js";import{a as ve}from"./file-B0kKUfF_.js";import{f as ce,w as he,am as q,A as T,n as ye,ar as F,ak as we,I as De,a as f,M as Ce,aN as S,J as d,O as be,aP as Te,aq as Se}from"./@vue/runtime-core-C6bnekPw.js";import{K as Pe,n as s}from"./@vue/reactivity-DiY1c2vO.js";import{h as ke}from"./@vueuse/shared-Cl3lVqjz.js";import{s as h,q as $e}from"./@vue/runtime-dom-DDAG46FW.js";import{o as E,p as ze}from"./@vue/shared-mAAVTE9n.js";const Ve=ce({components:{Popup:j,Draggable:ge,FileItem:ue,Material:J,Preview:se},props:{modelValue:{type:[String,Array],default:()=>[]},type:{type:String,default:"image"},size:{type:String,default:"100px"},width:{type:String,default:""},height:{type:String,default:""},fileSize:{type:String,default:"100px"},limit:{type:Number,default:1},disabled:{type:Boolean,default:!1},hiddenUpload:{type:Boolean,default:!1},uploadClass:{type:String,default:""},excludeDomain:{type:Boolean,default:!1},uploadCid:{type:[Number,String],default:0}},emits:["change","update:modelValue"],setup(e,{emit:a}){const z=s(),V=s(),A=s(""),I=s(!1),o=s([]),P=s([]),c=s(!0),k=s(-1),g=s(0),y=s(!1),{disabled:v,limit:p,modelValue:i}=Pe(e),w=de(),D=t=>w.getImageUrl(t),C=T(()=>!e.hiddenUpload&&(e.type==="image"||e.type==="video"||e.type==="file")),K=T(()=>g.value>0);function R(t){if(!t)return!1;const n=Array.from(t.types);return n.includes("Files")||n.includes("application/x-moz-file")}function B(t,n){var l;if(n==="file")return!0;const r=t.includes(".")&&((l=t.split(".").pop())==null?void 0:l.toLowerCase())||"";return n==="image"?r?["jpg","jpeg","png","gif","ico"].includes(r):!0:n==="video"&&r?["wmv","avi","mpg","mpeg","3gp","mov","mp4","flv","rmvb","mkv"].includes(r):!0}function _(t){var l;if(!t||!t.startsWith("http"))return t;const n=String(((l=w.config)==null?void 0:l.oss_domain)||"").trim().replace(/\/$/,"");if(n&&t.startsWith(n))return t.slice(n.length).replace(/^\//,"");const r=typeof window<"u"?window.location.origin.replace(/\/$/,""):"";if(r&&t.startsWith(r))return t.slice(r.length).replace(/^\//,"");try{return new URL(t).pathname.replace(/^\//,"")}catch{return t}}function G(t){var b,$;const n=e.type,r=Array.from(((b=t.clipboardData)==null?void 0:b.files)||[]).filter(m=>B(m.name,n));if(r.length)return r;if(n!=="image")return[];const l=($=t.clipboardData)==null?void 0:$.items;if(!l)return[];const u=[];for(let m=0;m{!C.value||v.value||R(t.dataTransfer)&&g.value++},Q=()=>{C.value&&(g.value=Math.max(0,g.value-1))},X=t=>{!C.value||v.value||R(t.dataTransfer)&&t.preventDefault()},Y=async t=>{var r;if(g.value=0,!C.value||v.value)return;const n=Array.from(((r=t.dataTransfer)==null?void 0:r.files)||[]).filter(l=>B(l.name,e.type));n.length&&await M(n)},Z=async t=>{if(!C.value||v.value)return;const n=G(t);n.length&&(t.preventDefault(),await M(n))},x=T(()=>{switch(e.type){case"image":return"图片";case"video":return"视频";default:return""}}),ee=T(()=>e.limit-o.value.length>0),te=T(()=>c.value?p.value==-1?null:p.value-o.value.length:1),ae=ke(()=>{const t=P.value.map(n=>e.excludeDomain?n.uri:n.url);c.value?o.value=[...o.value,...t]:o.value.splice(k.value,1,t.shift()),N()},1e3,!1),ne=t=>{var n;v.value||(t>=0?(c.value=!1,k.value=t):c.value=!0,(n=z.value)==null||n.open())},ie=t=>{P.value=t},N=()=>{const t=p.value!=1?o.value:o.value[0]||"";a("update:modelValue",t),a("change",t),U()},oe=t=>{o.value.splice(t,1),N()},re=t=>{A.value=e.excludeDomain?D(t):t,I.value=!0},U=()=>{ye(()=>{var t;e.hiddenUpload&&(o.value=[]),(t=V.value)==null||t.clearSelect()})};return he(i,t=>{o.value=Array.isArray(t)?t:t==""?[]:[t]},{immediate:!0}),q("limit",e.limit),q("hiddenUpload",e.hiddenUpload),{popupRef:z,materialRef:V,fileList:o,tipsText:x,handleConfirm:ae,meterialLimit:te,showUpload:ee,showPopup:ne,selectChange:ie,deleteImg:oe,previewUrl:A,showPreview:I,handlePreview:re,handleClose:U,getImageUrl:D,dropActive:K,onTriggerDragEnter:H,onTriggerDragLeave:Q,onTriggerDragOver:X,onTriggerDrop:Y,onTriggerPaste:Z}}}),Ae={class:"material-select"},Ie=["onClick"],Ue={class:"operation-btns text-xs text-center"},Le=["onClick"],Fe={class:"material-wrap"};function Ee(e,a,z,V,A,I){const o=F("file-item"),P=fe,c=F("draggable"),k=me,g=J,y=le,v=j,p=F("preview");return we(),De("div",Ae,[f(v,{ref:"popupRef",width:"1050px","custom-class":"body-padding",title:`选择${e.tipsText}`,onConfirm:e.handleConfirm,onClose:e.handleClose},Ce({default:S(()=>[f(y,null,{default:S(()=>[d("div",Fe,[f(g,{ref:"materialRef",type:e.type,"file-size":e.fileSize,limit:e.meterialLimit,onChange:e.selectChange},null,8,["type","file-size","limit","onChange"])])]),_:1})]),_:2},[e.hiddenUpload?void 0:{name:"trigger",fn:S(()=>[d("div",{class:E(["material-select__trigger clearfix",{"is-drop-hover":e.dropActive}]),tabindex:"0",onClick:a[2]||(a[2]=h(()=>{},["stop"])),onDragenter:a[3]||(a[3]=h((...i)=>e.onTriggerDragEnter&&e.onTriggerDragEnter(...i),["prevent","stop"])),onDragleave:a[4]||(a[4]=h((...i)=>e.onTriggerDragLeave&&e.onTriggerDragLeave(...i),["prevent","stop"])),onDragover:a[5]||(a[5]=h((...i)=>e.onTriggerDragOver&&e.onTriggerDragOver(...i),["prevent","stop"])),onDrop:a[6]||(a[6]=h((...i)=>e.onTriggerDrop&&e.onTriggerDrop(...i),["prevent","stop"])),onPaste:a[7]||(a[7]=(...i)=>e.onTriggerPaste&&e.onTriggerPaste(...i))},[f(c,{class:"draggable",modelValue:e.fileList,"onUpdate:modelValue":a[0]||(a[0]=i=>e.fileList=i),animation:"300","item-key":"id"},{item:S(({element:i,index:w})=>[d("div",{class:E(["material-preview",{"is-disabled":e.disabled,"is-one":e.limit==1}]),onClick:D=>e.showPopup(w)},[f(P,{onClose:D=>e.deleteImg(w)},{default:S(()=>[f(o,{uri:e.excludeDomain?e.getImageUrl(i):i,"file-size":e.size,width:e.width,height:e.height,type:e.type},null,8,["uri","file-size","width","height","type"])]),_:2},1032,["onClose"]),d("div",Ue,[a[9]||(a[9]=d("span",null,"修改",-1)),a[10]||(a[10]=be(" | ",-1)),d("span",{onClick:h(D=>e.handlePreview(i),["stop"])},"查看",8,Le)])],10,Ie)]),_:1},8,["modelValue"]),Te(d("div",{class:E(["material-upload",{"is-disabled":e.disabled,"is-one":e.limit==1,[e.uploadClass]:!0}]),onClick:a[1]||(a[1]=i=>e.showPopup(-1))},[Se(e.$slots,"upload",{},()=>[d("div",{class:"upload-btn",style:ze({width:e.width||e.size,height:e.height||e.size})},[f(k,{size:25,name:"el-icon-Plus"}),a[11]||(a[11]=d("span",null,"添加",-1))],4)],!0)],2),[[$e,e.showUpload]])],34)]),key:"0"}]),1032,["title","onConfirm","onClose"]),f(p,{modelValue:e.showPreview,"onUpdate:modelValue":a[8]||(a[8]=i=>e.showPreview=i),url:e.previewUrl,type:e.type},null,8,["modelValue","url","type"])])}const He=pe(Ve,[["render",Ee],["__scopeId","data-v-27e7e4cc"]]);export{He as _}; diff --git a/server/public/admin/assets/picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js b/server/public/admin/assets/picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js similarity index 98% rename from server/public/admin/assets/picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js rename to server/public/admin/assets/picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js index aeac1e0d..7944a5d1 100644 --- a/server/public/admin/assets/picker.vue_vue_type_script_setup_true_lang-DVXBAvpM.js +++ b/server/public/admin/assets/picker.vue_vue_type_script_setup_true_lang-DBdijrJh.js @@ -1 +1 @@ -import{a1 as M,s as W,i as $,C as z,r as L}from"./element-plus-DFTWCWyi.js";import{c as T,y as R,z as O}from"./index-Nt5zMHcc.js";import{s as _}from"./@vue/runtime-dom-DDAG46FW.js";import{b as P}from"./@vueuse/core-1S4fJlii.js";import{f as U,w as j,n as h,b as q,ak as u,I as r,a as n,aN as a,J as i,F as V,ap as k,G as A,O as D,A as G}from"./@vue/runtime-core-C6bnekPw.js";import{o as J,Q}from"./@vue/shared-mAAVTE9n.js";import{y as x,n as H,q as K,r as X}from"./@vue/reactivity-DiY1c2vO.js";const Y={class:"icon-select"},Z={class:"flex justify-between"},ee=["onClick"],oe={class:"h-[280px]"},te={class:"flex flex-wrap"},se={key:0,class:"flex items-center"},de=U({__name:"picker",props:{modelValue:{default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(c,{emit:y}){const d=y,v=H(0),b=[{name:"element图标",icons:R()},{name:"本地图标",icons:O()}],m=K(),e=X({inputValue:"",popoverVisible:!1,popoverWidth:0,mouseoverSelect:!1,inputFocus:!1}),w=()=>{e.inputFocus=e.popoverVisible=!0},C=()=>{e.inputFocus=!1,e.popoverVisible=e.mouseoverSelect},g=t=>{e.mouseoverSelect=e.popoverVisible=!1,d("update:modelValue",t),d("change",t)},F=()=>{d("update:modelValue",""),d("change","")},S=G(()=>{var l;const t=((l=b[v.value])==null?void 0:l.icons)??[];if(!e.inputValue)return t;const o=e.inputValue.toLowerCase();return t.filter(p=>{if(p.toLowerCase().indexOf(o)!==-1)return p})}),B=()=>{h(()=>{var o;const t=(o=m.value)==null?void 0:o.$el.offsetWidth;e.popoverWidth=t<300?300:t})};return P(document.body,"click",()=>{e.popoverVisible=!!(e.inputFocus||e.mouseoverSelect)}),j(()=>e.popoverVisible,async t=>{var o,l;await h(),t?(o=m.value)==null||o.focus():(l=m.value)==null||l.blur()}),q(()=>{B()}),(t,o)=>{const l=T,p=$,E=W,N=L,I=M;return u(),r("div",Y,[n(I,{trigger:"contextmenu",visible:e.popoverVisible,"onUpdate:visible":o[3]||(o[3]=s=>e.popoverVisible=s),width:e.popoverWidth},{reference:a(()=>[n(x(z),{ref_key:"inputRef",ref:m,modelValue:e.inputValue,"onUpdate:modelValue":o[2]||(o[2]=s=>e.inputValue=s),modelModifiers:{trim:!0},placeholder:"搜索图标",autofocus:!1,disabled:c.disabled,onFocus:w,onBlur:C,clearable:""},{prepend:a(()=>[c.modelValue?(u(),r("div",se,[n(N,{class:"flex-1 w-20",content:c.modelValue,placement:"top"},{default:a(()=>[(u(),A(l,{class:"mr-1",key:c.modelValue,name:c.modelValue,size:16},null,8,["name"]))]),_:1},8,["content"])])):(u(),r(V,{key:1},[D("无")],64))]),append:a(()=>[n(p,null,{default:a(()=>[n(l,{name:"el-icon-Close",size:18,onClick:F})]),_:1})]),_:1},8,["modelValue","disabled"])]),default:a(()=>[i("div",{onMouseover:o[0]||(o[0]=_(s=>e.mouseoverSelect=!0,["stop"])),onMouseout:o[1]||(o[1]=_(s=>e.mouseoverSelect=!1,["stop"]))},[i("div",null,[i("div",Z,[o[4]||(o[4]=i("div",{class:"mb-3"},"请选择图标",-1)),i("div",null,[(u(),r(V,null,k(b,(s,f)=>i("span",{key:f,class:J(["cursor-pointer text-sm ml-2",{"text-primary":f==x(v)}]),onClick:le=>v.value=f},Q(s.name),11,ee)),64))])]),i("div",oe,[n(E,null,{default:a(()=>[i("div",te,[(u(!0),r(V,null,k(S.value,s=>(u(),r("div",{key:s,class:"m-1"},[n(p,{onClick:f=>g(s)},{default:a(()=>[n(l,{name:s,size:18},null,8,["name"])]),_:2},1032,["onClick"])]))),128))])]),_:1})])])],32)]),_:1},8,["visible","width"])])}}});export{de as _}; +import{a1 as M,s as W,i as $,C as z,r as L}from"./element-plus-DFTWCWyi.js";import{c as T,y as R,z as O}from"./index--WnM67ZH.js";import{s as _}from"./@vue/runtime-dom-DDAG46FW.js";import{b as P}from"./@vueuse/core-1S4fJlii.js";import{f as U,w as j,n as h,b as q,ak as u,I as r,a as n,aN as a,J as i,F as V,ap as k,G as A,O as D,A as G}from"./@vue/runtime-core-C6bnekPw.js";import{o as J,Q}from"./@vue/shared-mAAVTE9n.js";import{y as x,n as H,q as K,r as X}from"./@vue/reactivity-DiY1c2vO.js";const Y={class:"icon-select"},Z={class:"flex justify-between"},ee=["onClick"],oe={class:"h-[280px]"},te={class:"flex flex-wrap"},se={key:0,class:"flex items-center"},de=U({__name:"picker",props:{modelValue:{default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(c,{emit:y}){const d=y,v=H(0),b=[{name:"element图标",icons:R()},{name:"本地图标",icons:O()}],m=K(),e=X({inputValue:"",popoverVisible:!1,popoverWidth:0,mouseoverSelect:!1,inputFocus:!1}),w=()=>{e.inputFocus=e.popoverVisible=!0},C=()=>{e.inputFocus=!1,e.popoverVisible=e.mouseoverSelect},g=t=>{e.mouseoverSelect=e.popoverVisible=!1,d("update:modelValue",t),d("change",t)},F=()=>{d("update:modelValue",""),d("change","")},S=G(()=>{var l;const t=((l=b[v.value])==null?void 0:l.icons)??[];if(!e.inputValue)return t;const o=e.inputValue.toLowerCase();return t.filter(p=>{if(p.toLowerCase().indexOf(o)!==-1)return p})}),B=()=>{h(()=>{var o;const t=(o=m.value)==null?void 0:o.$el.offsetWidth;e.popoverWidth=t<300?300:t})};return P(document.body,"click",()=>{e.popoverVisible=!!(e.inputFocus||e.mouseoverSelect)}),j(()=>e.popoverVisible,async t=>{var o,l;await h(),t?(o=m.value)==null||o.focus():(l=m.value)==null||l.blur()}),q(()=>{B()}),(t,o)=>{const l=T,p=$,E=W,N=L,I=M;return u(),r("div",Y,[n(I,{trigger:"contextmenu",visible:e.popoverVisible,"onUpdate:visible":o[3]||(o[3]=s=>e.popoverVisible=s),width:e.popoverWidth},{reference:a(()=>[n(x(z),{ref_key:"inputRef",ref:m,modelValue:e.inputValue,"onUpdate:modelValue":o[2]||(o[2]=s=>e.inputValue=s),modelModifiers:{trim:!0},placeholder:"搜索图标",autofocus:!1,disabled:c.disabled,onFocus:w,onBlur:C,clearable:""},{prepend:a(()=>[c.modelValue?(u(),r("div",se,[n(N,{class:"flex-1 w-20",content:c.modelValue,placement:"top"},{default:a(()=>[(u(),A(l,{class:"mr-1",key:c.modelValue,name:c.modelValue,size:16},null,8,["name"]))]),_:1},8,["content"])])):(u(),r(V,{key:1},[D("无")],64))]),append:a(()=>[n(p,null,{default:a(()=>[n(l,{name:"el-icon-Close",size:18,onClick:F})]),_:1})]),_:1},8,["modelValue","disabled"])]),default:a(()=>[i("div",{onMouseover:o[0]||(o[0]=_(s=>e.mouseoverSelect=!0,["stop"])),onMouseout:o[1]||(o[1]=_(s=>e.mouseoverSelect=!1,["stop"]))},[i("div",null,[i("div",Z,[o[4]||(o[4]=i("div",{class:"mb-3"},"请选择图标",-1)),i("div",null,[(u(),r(V,null,k(b,(s,f)=>i("span",{key:f,class:J(["cursor-pointer text-sm ml-2",{"text-primary":f==x(v)}]),onClick:le=>v.value=f},Q(s.name),11,ee)),64))])]),i("div",oe,[n(E,null,{default:a(()=>[i("div",te,[(u(!0),r(V,null,k(S.value,s=>(u(),r("div",{key:s,class:"m-1"},[n(p,{onClick:f=>g(s)},{default:a(()=>[n(l,{name:s,size:18},null,8,["name"])]),_:2},1032,["onClick"])]))),128))])]),_:1})])])],32)]),_:1},8,["visible","width"])])}}});export{de as _}; diff --git a/server/public/admin/assets/post-CjhbCF7F.js b/server/public/admin/assets/post-D694zeqo.js similarity index 86% rename from server/public/admin/assets/post-CjhbCF7F.js rename to server/public/admin/assets/post-D694zeqo.js index 88cd4f8c..77f6dfa7 100644 --- a/server/public/admin/assets/post-CjhbCF7F.js +++ b/server/public/admin/assets/post-D694zeqo.js @@ -1 +1 @@ -import{r as e}from"./index-Nt5zMHcc.js";function o(t){return e.get({url:"/dept.jobs/lists",params:t},{ignoreCancelToken:!0})}function r(t){return e.get({url:"/dept.jobs/all",params:t})}function n(t){return e.post({url:"/dept.jobs/add",params:t})}function u(t){return e.post({url:"/dept.jobs/edit",params:t})}function l(t){return e.post({url:"/dept.jobs/delete",params:t})}function d(t){return e.get({url:"/dept.jobs/detail",params:t})}export{u as a,n as b,d as c,o as d,l as e,r as j}; +import{r as e}from"./index--WnM67ZH.js";function o(t){return e.get({url:"/dept.jobs/lists",params:t},{ignoreCancelToken:!0})}function r(t){return e.get({url:"/dept.jobs/all",params:t})}function n(t){return e.post({url:"/dept.jobs/add",params:t})}function u(t){return e.post({url:"/dept.jobs/edit",params:t})}function l(t){return e.post({url:"/dept.jobs/delete",params:t})}function d(t){return e.get({url:"/dept.jobs/detail",params:t})}export{u as a,n as b,d as c,o as d,l as e,r as j}; diff --git a/server/public/admin/assets/prescription-drawer-BfdBV89J.js b/server/public/admin/assets/prescription-drawer-CemRD-dp.js similarity index 98% rename from server/public/admin/assets/prescription-drawer-BfdBV89J.js rename to server/public/admin/assets/prescription-drawer-CemRD-dp.js index 07bd58b0..b0a16a41 100644 --- a/server/public/admin/assets/prescription-drawer-BfdBV89J.js +++ b/server/public/admin/assets/prescription-drawer-CemRD-dp.js @@ -1 +1 @@ -import{D as $,B as z,C as H,P,Q as A,a4 as J,a5 as L,G as Q,I as j,h as K,a2 as W,i as X,M as Z,N as ee,g as le,e as ae}from"./element-plus-DFTWCWyi.js";import{i as oe}from"./tcm-DCW3HTOw.js";import{i as w,_ as te}from"./index-Nt5zMHcc.js";import{M as ue}from"./index-afeGV-gc.js";import{f as ne,ak as re,G as de,aN as o,a as e,O as m,J as k}from"./@vue/runtime-core-C6bnekPw.js";import{y as u,a as se,n as x,r as ie}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./medicine-D4btWglq.js";const pe={class:"w-full"},me=ne({__name:"prescription-drawer",emits:["success"],setup(_e,{expose:C,emit:D}){const S=D,_=x(!1),f=x(),y=x(!1),l=ie({appointment_id:0,diagnosis_id:0,prescription_name:"",prescription_type:"浓缩水丸",patient_name:"",gender:1,age:0,visit_no:"",prescription_date:"",tongue:"",tongue_image:"",pulse:"",pulse_condition:"",clinical_diagnosis:"",herbs:[],dose_count:7,dose_unit:"剂",usage_days:7,usage_instruction:"水煎服,一日二次",usage_time:"饭前",usage_way:"温水送服",dietary_taboo:[],usage_notes:"",doctor_name:"",is_shared:0,audit_status:1}),q={prescription_name:[{required:!0,message:"请输入处方名称",trigger:"blur"}],patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],prescription_date:[{required:!0,message:"请选择处方日期",trigger:"change"}],clinical_diagnosis:[{required:!0,message:"请输入临床诊断",trigger:"blur"}],dose_count:[{required:!0,message:"请输入剂数",trigger:"blur"}],doctor_name:[{required:!0,message:"请输入医师姓名",trigger:"blur"}]},I=()=>{l.herbs.push({name:"",dosage:0})},Y=d=>{l.herbs.splice(d,1)},M=()=>{l.appointment_id=0,l.diagnosis_id=0,l.prescription_name="",l.prescription_type="浓缩水丸",l.patient_name="",l.gender=1,l.age=0,l.visit_no="",l.prescription_date=new Date().toISOString().split("T")[0],l.tongue="",l.tongue_image="",l.pulse="",l.pulse_condition="",l.clinical_diagnosis="",l.herbs=[],l.dose_count=7,l.dose_unit="剂",l.usage_days=7,l.usage_instruction="水煎服,一日二次",l.usage_time="饭前",l.usage_way="温水送服",l.dietary_taboo=[],l.usage_notes="",l.doctor_name="",l.is_shared=0,l.audit_status=0},N=d=>{var a;M(),l.appointment_id=d.id||0,l.diagnosis_id=d.diagnosis_id||0,l.patient_name=d.patient_name||"",l.gender=d.patient_gender==="男"?1:0,l.age=parseInt(d.patient_age)||0,l.visit_no=((a=d.id)==null?void 0:a.toString())||"",l.prescription_date=d.appointment_date||new Date().toISOString().split("T")[0],l.doctor_name=d.doctor_name||"",_.value=!0},U=()=>{var d;_.value=!1,(d=f.value)==null||d.resetFields()},R=async()=>{if(f.value){if(await f.value.validate(),!l.herbs||l.herbs.length===0){w.msgError("请至少添加一味药材");return}for(let d=0;d{const i=H,r=z,n=A,g=P,s=L,p=J,E=j,B=Q,b=K,T=W,V=X,c=ee,h=Z,F=le,O=$,G=ae;return re(),de(G,{modelValue:u(_),"onUpdate:modelValue":a[22]||(a[22]=t=>se(_)?_.value=t:null),title:"创建处方单",size:"90%","close-on-click-modal":!1,onClose:U},{footer:o(()=>[e(V,{onClick:U},{default:o(()=>[...a[28]||(a[28]=[m("取消",-1)])]),_:1}),e(V,{type:"primary",onClick:R,loading:u(y)},{default:o(()=>[...a[29]||(a[29]=[m("保存",-1)])]),_:1},8,["loading"])]),default:o(()=>[e(O,{ref_key:"formRef",ref:f,model:u(l),rules:q,"label-width":"120px",class:"prescription-form"},{default:o(()=>[e(r,{label:"处方名称",prop:"prescription_name"},{default:o(()=>[e(i,{modelValue:u(l).prescription_name,"onUpdate:modelValue":a[0]||(a[0]=t=>u(l).prescription_name=t),placeholder:"请输入处方名称",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(r,{label:"处方类型",prop:"prescription_type"},{default:o(()=>[e(g,{modelValue:u(l).prescription_type,"onUpdate:modelValue":a[1]||(a[1]=t=>u(l).prescription_type=t),placeholder:"请选择处方类型",class:"w-full"},{default:o(()=>[e(n,{label:"浓缩水丸",value:"浓缩水丸"}),e(n,{label:"饮片",value:"饮片"}),e(n,{label:"颗粒",value:"颗粒"}),e(n,{label:"丸剂",value:"丸剂"}),e(n,{label:"散剂",value:"散剂"}),e(n,{label:"膏方",value:"膏方"}),e(n,{label:"汤剂",value:"汤剂"})]),_:1},8,["modelValue"])]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"患者姓名",prop:"patient_name"},{default:o(()=>[e(i,{modelValue:u(l).patient_name,"onUpdate:modelValue":a[2]||(a[2]=t=>u(l).patient_name=t),placeholder:"请输入患者姓名"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"门诊号",prop:"visit_no"},{default:o(()=>[e(i,{modelValue:u(l).visit_no,"onUpdate:modelValue":a[3]||(a[3]=t=>u(l).visit_no=t),placeholder:"自动生成或手动输入"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:8},{default:o(()=>[e(r,{label:"性别",prop:"gender"},{default:o(()=>[e(B,{modelValue:u(l).gender,"onUpdate:modelValue":a[4]||(a[4]=t=>u(l).gender=t)},{default:o(()=>[e(E,{label:1},{default:o(()=>[...a[23]||(a[23]=[m("男",-1)])]),_:1}),e(E,{label:0},{default:o(()=>[...a[24]||(a[24]=[m("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"年龄",prop:"age"},{default:o(()=>[e(b,{modelValue:u(l).age,"onUpdate:modelValue":a[5]||(a[5]=t=>u(l).age=t),min:0,max:150,placeholder:"请输入年龄",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"处方日期",prop:"prescription_date"},{default:o(()=>[e(T,{modelValue:u(l).prescription_date,"onUpdate:modelValue":a[6]||(a[6]=t=>u(l).prescription_date=t),type:"date",placeholder:"选择日期",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"面象",prop:"tongue"},{default:o(()=>[e(i,{modelValue:u(l).tongue,"onUpdate:modelValue":a[7]||(a[7]=t=>u(l).tongue=t),placeholder:"请输入面象"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"舌象",prop:"tongue_image"},{default:o(()=>[e(i,{modelValue:u(l).tongue_image,"onUpdate:modelValue":a[8]||(a[8]=t=>u(l).tongue_image=t),placeholder:"请输入舌象"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"脉象",prop:"pulse"},{default:o(()=>[e(i,{modelValue:u(l).pulse,"onUpdate:modelValue":a[9]||(a[9]=t=>u(l).pulse=t),placeholder:"请输入脉象"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"脉象详情",prop:"pulse_condition"},{default:o(()=>[e(i,{modelValue:u(l).pulse_condition,"onUpdate:modelValue":a[10]||(a[10]=t=>u(l).pulse_condition=t),placeholder:"请输入脉象详情"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(r,{label:"临床诊断",prop:"clinical_diagnosis"},{default:o(()=>[e(i,{modelValue:u(l).clinical_diagnosis,"onUpdate:modelValue":a[11]||(a[11]=t=>u(l).clinical_diagnosis=t),type:"textarea",rows:3,placeholder:"请输入临床诊断",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(r,{label:"药材配方",prop:"herbs",required:""},{default:o(()=>[k("div",pe,[e(V,{type:"primary",size:"small",onClick:I},{default:o(()=>[...a[25]||(a[25]=[m(" 添加药材 ",-1)])]),_:1}),e(h,{data:u(l).herbs,class:"mt-2",border:""},{default:o(()=>[e(c,{label:"序号",type:"index",width:"60"}),e(c,{label:"药材名称","min-width":"220"},{default:o(({row:t})=>[e(ue,{modelValue:t.name,"onUpdate:modelValue":v=>t.name=v},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"剂量(克)","min-width":"120"},{default:o(({row:t})=>[e(b,{modelValue:t.dosage,"onUpdate:modelValue":v=>t.dosage=v,min:0,precision:1,step:.5,placeholder:"剂量",class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"操作",width:"80"},{default:o(({$index:t})=>[e(V,{type:"danger",link:"",onClick:v=>Y(t)},{default:o(()=>[...a[26]||(a[26]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])])]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:8},{default:o(()=>[e(r,{label:"剂数",prop:"dose_count"},{default:o(()=>[e(b,{modelValue:u(l).dose_count,"onUpdate:modelValue":a[12]||(a[12]=t=>u(l).dose_count=t),min:1,placeholder:"剂数",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"剂量单位",prop:"dose_unit"},{default:o(()=>[e(g,{modelValue:u(l).dose_unit,"onUpdate:modelValue":a[13]||(a[13]=t=>u(l).dose_unit=t),placeholder:"请选择",class:"w-full"},{default:o(()=>[e(n,{label:"剂",value:"剂"}),e(n,{label:"丸",value:"丸"}),e(n,{label:"袋",value:"袋"}),e(n,{label:"盒",value:"盒"}),e(n,{label:"瓶",value:"瓶"}),e(n,{label:"膏",value:"膏"}),e(n,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"服用天数",prop:"usage_days"},{default:o(()=>[e(b,{modelValue:u(l).usage_days,"onUpdate:modelValue":a[14]||(a[14]=t=>u(l).usage_days=t),min:1,max:365,placeholder:"服用天数",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(r,{label:"用法",prop:"usage_instruction"},{default:o(()=>[e(i,{modelValue:u(l).usage_instruction,"onUpdate:modelValue":a[15]||(a[15]=t=>u(l).usage_instruction=t),placeholder:"例如:水煎服,一日二次",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"服用时间",prop:"usage_time"},{default:o(()=>[e(g,{modelValue:u(l).usage_time,"onUpdate:modelValue":a[16]||(a[16]=t=>u(l).usage_time=t),placeholder:"请选择服用时间",class:"w-full"},{default:o(()=>[e(n,{label:"饭前",value:"饭前"}),e(n,{label:"饭后",value:"饭后"}),e(n,{label:"饭中",value:"饭中"}),e(n,{label:"空腹",value:"空腹"}),e(n,{label:"睡前",value:"睡前"}),e(n,{label:"晨起",value:"晨起"}),e(n,{label:"随时",value:"随时"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"服用方式",prop:"usage_way"},{default:o(()=>[e(g,{modelValue:u(l).usage_way,"onUpdate:modelValue":a[17]||(a[17]=t=>u(l).usage_way=t),placeholder:"请选择服用方式",class:"w-full"},{default:o(()=>[e(n,{label:"温水送服",value:"温水送服"}),e(n,{label:"开水冲服",value:"开水冲服"}),e(n,{label:"黄酒送服",value:"黄酒送服"}),e(n,{label:"淡盐水送服",value:"淡盐水送服"}),e(n,{label:"米汤送服",value:"米汤送服"}),e(n,{label:"嚼服",value:"嚼服"}),e(n,{label:"含化",value:"含化"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(r,{label:"忌口",prop:"dietary_taboo"},{default:o(()=>[e(g,{modelValue:u(l).dietary_taboo,"onUpdate:modelValue":a[18]||(a[18]=t=>u(l).dietary_taboo=t),multiple:"",placeholder:"请选择忌口内容(可多选)",class:"w-full"},{default:o(()=>[e(n,{label:"辛辣食物",value:"辛辣食物"}),e(n,{label:"生冷食物",value:"生冷食物"}),e(n,{label:"油腻食物",value:"油腻食物"}),e(n,{label:"海鲜",value:"海鲜"}),e(n,{label:"牛羊肉",value:"牛羊肉"}),e(n,{label:"鸡蛋",value:"鸡蛋"}),e(n,{label:"豆制品",value:"豆制品"}),e(n,{label:"酒类",value:"酒类"}),e(n,{label:"浓茶",value:"浓茶"}),e(n,{label:"咖啡",value:"咖啡"}),e(n,{label:"烟草",value:"烟草"}),e(n,{label:"萝卜",value:"萝卜"})]),_:1},8,["modelValue"])]),_:1}),e(r,{label:"其他说明",prop:"usage_notes"},{default:o(()=>[e(i,{modelValue:u(l).usage_notes,"onUpdate:modelValue":a[19]||(a[19]=t=>u(l).usage_notes=t),type:"textarea",rows:2,placeholder:"其他服用注意事项",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(r,{label:"医师姓名",prop:"doctor_name"},{default:o(()=>[e(i,{modelValue:u(l).doctor_name,"onUpdate:modelValue":a[20]||(a[20]=t=>u(l).doctor_name=t),placeholder:"请输入医师姓名"},null,8,["modelValue"])]),_:1}),e(r,{label:"是否共享",prop:"is_shared"},{default:o(()=>[e(F,{modelValue:u(l).is_shared,"onUpdate:modelValue":a[21]||(a[21]=t=>u(l).is_shared=t),"active-value":1,"inactive-value":0,"active-text":"所有人可见","inactive-text":"仅自己可见"},null,8,["modelValue"]),a[27]||(a[27]=k("div",{class:"text-xs text-gray-400 mt-1"}," 勾选后,所有医生都可以查看和使用此处方模板 ",-1))]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])}}}),el=te(me,[["__scopeId","data-v-da2c137f"]]);export{el as default}; +import{D as $,B as z,C as H,P,Q as A,a4 as J,a5 as L,G as Q,I as j,h as K,a2 as W,i as X,M as Z,N as ee,g as le,e as ae}from"./element-plus-DFTWCWyi.js";import{i as oe}from"./tcm-DzAQc_oE.js";import{i as w,_ as te}from"./index--WnM67ZH.js";import{M as ue}from"./index-DgkrquIz.js";import{f as ne,ak as re,G as de,aN as o,a as e,O as m,J as k}from"./@vue/runtime-core-C6bnekPw.js";import{y as u,a as se,n as x,r as ie}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./medicine-KRcHi5G1.js";const pe={class:"w-full"},me=ne({__name:"prescription-drawer",emits:["success"],setup(_e,{expose:C,emit:D}){const S=D,_=x(!1),f=x(),y=x(!1),l=ie({appointment_id:0,diagnosis_id:0,prescription_name:"",prescription_type:"浓缩水丸",patient_name:"",gender:1,age:0,visit_no:"",prescription_date:"",tongue:"",tongue_image:"",pulse:"",pulse_condition:"",clinical_diagnosis:"",herbs:[],dose_count:7,dose_unit:"剂",usage_days:7,usage_instruction:"水煎服,一日二次",usage_time:"饭前",usage_way:"温水送服",dietary_taboo:[],usage_notes:"",doctor_name:"",is_shared:0,audit_status:1}),q={prescription_name:[{required:!0,message:"请输入处方名称",trigger:"blur"}],patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],prescription_date:[{required:!0,message:"请选择处方日期",trigger:"change"}],clinical_diagnosis:[{required:!0,message:"请输入临床诊断",trigger:"blur"}],dose_count:[{required:!0,message:"请输入剂数",trigger:"blur"}],doctor_name:[{required:!0,message:"请输入医师姓名",trigger:"blur"}]},I=()=>{l.herbs.push({name:"",dosage:0})},Y=d=>{l.herbs.splice(d,1)},M=()=>{l.appointment_id=0,l.diagnosis_id=0,l.prescription_name="",l.prescription_type="浓缩水丸",l.patient_name="",l.gender=1,l.age=0,l.visit_no="",l.prescription_date=new Date().toISOString().split("T")[0],l.tongue="",l.tongue_image="",l.pulse="",l.pulse_condition="",l.clinical_diagnosis="",l.herbs=[],l.dose_count=7,l.dose_unit="剂",l.usage_days=7,l.usage_instruction="水煎服,一日二次",l.usage_time="饭前",l.usage_way="温水送服",l.dietary_taboo=[],l.usage_notes="",l.doctor_name="",l.is_shared=0,l.audit_status=0},N=d=>{var a;M(),l.appointment_id=d.id||0,l.diagnosis_id=d.diagnosis_id||0,l.patient_name=d.patient_name||"",l.gender=d.patient_gender==="男"?1:0,l.age=parseInt(d.patient_age)||0,l.visit_no=((a=d.id)==null?void 0:a.toString())||"",l.prescription_date=d.appointment_date||new Date().toISOString().split("T")[0],l.doctor_name=d.doctor_name||"",_.value=!0},U=()=>{var d;_.value=!1,(d=f.value)==null||d.resetFields()},R=async()=>{if(f.value){if(await f.value.validate(),!l.herbs||l.herbs.length===0){w.msgError("请至少添加一味药材");return}for(let d=0;d{const i=H,r=z,n=A,g=P,s=L,p=J,E=j,B=Q,b=K,T=W,V=X,c=ee,h=Z,F=le,O=$,G=ae;return re(),de(G,{modelValue:u(_),"onUpdate:modelValue":a[22]||(a[22]=t=>se(_)?_.value=t:null),title:"创建处方单",size:"90%","close-on-click-modal":!1,onClose:U},{footer:o(()=>[e(V,{onClick:U},{default:o(()=>[...a[28]||(a[28]=[m("取消",-1)])]),_:1}),e(V,{type:"primary",onClick:R,loading:u(y)},{default:o(()=>[...a[29]||(a[29]=[m("保存",-1)])]),_:1},8,["loading"])]),default:o(()=>[e(O,{ref_key:"formRef",ref:f,model:u(l),rules:q,"label-width":"120px",class:"prescription-form"},{default:o(()=>[e(r,{label:"处方名称",prop:"prescription_name"},{default:o(()=>[e(i,{modelValue:u(l).prescription_name,"onUpdate:modelValue":a[0]||(a[0]=t=>u(l).prescription_name=t),placeholder:"请输入处方名称",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(r,{label:"处方类型",prop:"prescription_type"},{default:o(()=>[e(g,{modelValue:u(l).prescription_type,"onUpdate:modelValue":a[1]||(a[1]=t=>u(l).prescription_type=t),placeholder:"请选择处方类型",class:"w-full"},{default:o(()=>[e(n,{label:"浓缩水丸",value:"浓缩水丸"}),e(n,{label:"饮片",value:"饮片"}),e(n,{label:"颗粒",value:"颗粒"}),e(n,{label:"丸剂",value:"丸剂"}),e(n,{label:"散剂",value:"散剂"}),e(n,{label:"膏方",value:"膏方"}),e(n,{label:"汤剂",value:"汤剂"})]),_:1},8,["modelValue"])]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"患者姓名",prop:"patient_name"},{default:o(()=>[e(i,{modelValue:u(l).patient_name,"onUpdate:modelValue":a[2]||(a[2]=t=>u(l).patient_name=t),placeholder:"请输入患者姓名"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"门诊号",prop:"visit_no"},{default:o(()=>[e(i,{modelValue:u(l).visit_no,"onUpdate:modelValue":a[3]||(a[3]=t=>u(l).visit_no=t),placeholder:"自动生成或手动输入"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:8},{default:o(()=>[e(r,{label:"性别",prop:"gender"},{default:o(()=>[e(B,{modelValue:u(l).gender,"onUpdate:modelValue":a[4]||(a[4]=t=>u(l).gender=t)},{default:o(()=>[e(E,{label:1},{default:o(()=>[...a[23]||(a[23]=[m("男",-1)])]),_:1}),e(E,{label:0},{default:o(()=>[...a[24]||(a[24]=[m("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"年龄",prop:"age"},{default:o(()=>[e(b,{modelValue:u(l).age,"onUpdate:modelValue":a[5]||(a[5]=t=>u(l).age=t),min:0,max:150,placeholder:"请输入年龄",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"处方日期",prop:"prescription_date"},{default:o(()=>[e(T,{modelValue:u(l).prescription_date,"onUpdate:modelValue":a[6]||(a[6]=t=>u(l).prescription_date=t),type:"date",placeholder:"选择日期",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"面象",prop:"tongue"},{default:o(()=>[e(i,{modelValue:u(l).tongue,"onUpdate:modelValue":a[7]||(a[7]=t=>u(l).tongue=t),placeholder:"请输入面象"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"舌象",prop:"tongue_image"},{default:o(()=>[e(i,{modelValue:u(l).tongue_image,"onUpdate:modelValue":a[8]||(a[8]=t=>u(l).tongue_image=t),placeholder:"请输入舌象"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"脉象",prop:"pulse"},{default:o(()=>[e(i,{modelValue:u(l).pulse,"onUpdate:modelValue":a[9]||(a[9]=t=>u(l).pulse=t),placeholder:"请输入脉象"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"脉象详情",prop:"pulse_condition"},{default:o(()=>[e(i,{modelValue:u(l).pulse_condition,"onUpdate:modelValue":a[10]||(a[10]=t=>u(l).pulse_condition=t),placeholder:"请输入脉象详情"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(r,{label:"临床诊断",prop:"clinical_diagnosis"},{default:o(()=>[e(i,{modelValue:u(l).clinical_diagnosis,"onUpdate:modelValue":a[11]||(a[11]=t=>u(l).clinical_diagnosis=t),type:"textarea",rows:3,placeholder:"请输入临床诊断",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(r,{label:"药材配方",prop:"herbs",required:""},{default:o(()=>[k("div",pe,[e(V,{type:"primary",size:"small",onClick:I},{default:o(()=>[...a[25]||(a[25]=[m(" 添加药材 ",-1)])]),_:1}),e(h,{data:u(l).herbs,class:"mt-2",border:""},{default:o(()=>[e(c,{label:"序号",type:"index",width:"60"}),e(c,{label:"药材名称","min-width":"220"},{default:o(({row:t})=>[e(ue,{modelValue:t.name,"onUpdate:modelValue":v=>t.name=v},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"剂量(克)","min-width":"120"},{default:o(({row:t})=>[e(b,{modelValue:t.dosage,"onUpdate:modelValue":v=>t.dosage=v,min:0,precision:1,step:.5,placeholder:"剂量",class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(c,{label:"操作",width:"80"},{default:o(({$index:t})=>[e(V,{type:"danger",link:"",onClick:v=>Y(t)},{default:o(()=>[...a[26]||(a[26]=[m(" 删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])])]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:8},{default:o(()=>[e(r,{label:"剂数",prop:"dose_count"},{default:o(()=>[e(b,{modelValue:u(l).dose_count,"onUpdate:modelValue":a[12]||(a[12]=t=>u(l).dose_count=t),min:1,placeholder:"剂数",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"剂量单位",prop:"dose_unit"},{default:o(()=>[e(g,{modelValue:u(l).dose_unit,"onUpdate:modelValue":a[13]||(a[13]=t=>u(l).dose_unit=t),placeholder:"请选择",class:"w-full"},{default:o(()=>[e(n,{label:"剂",value:"剂"}),e(n,{label:"丸",value:"丸"}),e(n,{label:"袋",value:"袋"}),e(n,{label:"盒",value:"盒"}),e(n,{label:"瓶",value:"瓶"}),e(n,{label:"膏",value:"膏"}),e(n,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(s,{span:8},{default:o(()=>[e(r,{label:"服用天数",prop:"usage_days"},{default:o(()=>[e(b,{modelValue:u(l).usage_days,"onUpdate:modelValue":a[14]||(a[14]=t=>u(l).usage_days=t),min:1,max:365,placeholder:"服用天数",class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(r,{label:"用法",prop:"usage_instruction"},{default:o(()=>[e(i,{modelValue:u(l).usage_instruction,"onUpdate:modelValue":a[15]||(a[15]=t=>u(l).usage_instruction=t),placeholder:"例如:水煎服,一日二次",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(p,{gutter:20},{default:o(()=>[e(s,{span:12},{default:o(()=>[e(r,{label:"服用时间",prop:"usage_time"},{default:o(()=>[e(g,{modelValue:u(l).usage_time,"onUpdate:modelValue":a[16]||(a[16]=t=>u(l).usage_time=t),placeholder:"请选择服用时间",class:"w-full"},{default:o(()=>[e(n,{label:"饭前",value:"饭前"}),e(n,{label:"饭后",value:"饭后"}),e(n,{label:"饭中",value:"饭中"}),e(n,{label:"空腹",value:"空腹"}),e(n,{label:"睡前",value:"睡前"}),e(n,{label:"晨起",value:"晨起"}),e(n,{label:"随时",value:"随时"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),e(s,{span:12},{default:o(()=>[e(r,{label:"服用方式",prop:"usage_way"},{default:o(()=>[e(g,{modelValue:u(l).usage_way,"onUpdate:modelValue":a[17]||(a[17]=t=>u(l).usage_way=t),placeholder:"请选择服用方式",class:"w-full"},{default:o(()=>[e(n,{label:"温水送服",value:"温水送服"}),e(n,{label:"开水冲服",value:"开水冲服"}),e(n,{label:"黄酒送服",value:"黄酒送服"}),e(n,{label:"淡盐水送服",value:"淡盐水送服"}),e(n,{label:"米汤送服",value:"米汤送服"}),e(n,{label:"嚼服",value:"嚼服"}),e(n,{label:"含化",value:"含化"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),e(r,{label:"忌口",prop:"dietary_taboo"},{default:o(()=>[e(g,{modelValue:u(l).dietary_taboo,"onUpdate:modelValue":a[18]||(a[18]=t=>u(l).dietary_taboo=t),multiple:"",placeholder:"请选择忌口内容(可多选)",class:"w-full"},{default:o(()=>[e(n,{label:"辛辣食物",value:"辛辣食物"}),e(n,{label:"生冷食物",value:"生冷食物"}),e(n,{label:"油腻食物",value:"油腻食物"}),e(n,{label:"海鲜",value:"海鲜"}),e(n,{label:"牛羊肉",value:"牛羊肉"}),e(n,{label:"鸡蛋",value:"鸡蛋"}),e(n,{label:"豆制品",value:"豆制品"}),e(n,{label:"酒类",value:"酒类"}),e(n,{label:"浓茶",value:"浓茶"}),e(n,{label:"咖啡",value:"咖啡"}),e(n,{label:"烟草",value:"烟草"}),e(n,{label:"萝卜",value:"萝卜"})]),_:1},8,["modelValue"])]),_:1}),e(r,{label:"其他说明",prop:"usage_notes"},{default:o(()=>[e(i,{modelValue:u(l).usage_notes,"onUpdate:modelValue":a[19]||(a[19]=t=>u(l).usage_notes=t),type:"textarea",rows:2,placeholder:"其他服用注意事项",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(r,{label:"医师姓名",prop:"doctor_name"},{default:o(()=>[e(i,{modelValue:u(l).doctor_name,"onUpdate:modelValue":a[20]||(a[20]=t=>u(l).doctor_name=t),placeholder:"请输入医师姓名"},null,8,["modelValue"])]),_:1}),e(r,{label:"是否共享",prop:"is_shared"},{default:o(()=>[e(F,{modelValue:u(l).is_shared,"onUpdate:modelValue":a[21]||(a[21]=t=>u(l).is_shared=t),"active-value":1,"inactive-value":0,"active-text":"所有人可见","inactive-text":"仅自己可见"},null,8,["modelValue"]),a[27]||(a[27]=k("div",{class:"text-xs text-gray-400 mt-1"}," 勾选后,所有医生都可以查看和使用此处方模板 ",-1))]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])}}}),el=te(me,[["__scopeId","data-v-da2c137f"]]);export{el as default}; diff --git a/server/public/admin/assets/preview-Bxm-pT3K.js b/server/public/admin/assets/preview-gBcw24wE.js similarity index 70% rename from server/public/admin/assets/preview-Bxm-pT3K.js rename to server/public/admin/assets/preview-gBcw24wE.js index 283b8989..ebfbd8d9 100644 --- a/server/public/admin/assets/preview-Bxm-pT3K.js +++ b/server/public/admin/assets/preview-gBcw24wE.js @@ -1 +1 @@ -import{i as A,r as z,s as F}from"./element-plus-DFTWCWyi.js";import{s as h}from"./@vue/runtime-dom-DDAG46FW.js";import{v as O,h as T,Z as j,_ as q}from"./@element-plus/icons-vue-HOEUG8sr.js";import{e as G}from"./index-CHZQEiCU.js";import{k as H}from"./lodash-es-C2A-Pj28.js";import{f as J,ak as n,G as C,aN as u,I as v,a as l,O as L,H as V,J as d,F as U,ap as W,aq as Z,at as g,A as b}from"./@vue/runtime-core-C6bnekPw.js";import{o as D}from"./@vue/shared-mAAVTE9n.js";import{y as f,n as K}from"./@vue/reactivity-DiY1c2vO.js";import{_ as Q}from"./index-Nt5zMHcc.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./attr-C9CZlLYE.js";import"./index-D18gAY1e.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js";import"./decoration-img-A6h02C6l.js";import"./attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js";import"./content-DSbMIogU.js";import"./attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js";import"./content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js";import"./attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./content-Bq2N97AM.js";import"./attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js";import"./content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-RKc8NsXf.js";import"./decoration-XX4ow94I.js";import"./attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-BvpTtLa-.js";import"./content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-_IxwYLuN.js";import"./attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js";import"./content.vue_vue_type_script_setup_true_lang-BPonashY.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-DPq40ncB.js";const R={class:"shadow mx-[30px] pages-preview"},X=["onClick"],Y={key:0,class:"widget-btns py-[5px]"},x=J({__name:"preview",props:{pageMeta:{type:Object,default:()=>null},pageData:{type:Array,default:()=>[]},modelValue:{type:Number,default:0}},emits:["update:modelValue","updatePageData"],setup(i,{emit:M}){const p=i,s=M,y=K(-1),N=()=>{p.modelValue===-1?s("update:modelValue",y.value):(y.value=p.modelValue,s("update:modelValue",-1))},B=(t,e)=>{t.disabled||s("update:modelValue",e)},P=b(()=>t=>t===0),$=b(()=>t=>{var e;return((e=p.pageData)==null?void 0:e.length)===t+1}),_=b(()=>t=>(t==null?void 0:t.enabled)==0),E=t=>{t.enabled!==void 0&&(t.enabled=t.enabled?0:1)},k=(t,e)=>{if(t<0||t>=p.pageData.length||e<0||e>=p.pageData.length)return;const a=H(p.pageData),c=a.splice(t,1)[0];a.splice(e,0,c),s("updatePageData",a),s("update:modelValue",e)};return(t,e)=>{const a=A,c=z,S=F;return n(),C(S,{class:"pages-preview-container"},{default:u(()=>[i.pageMeta!==null?(n(),v("div",{key:0,class:"absolute right-4 top-4",onClick:N},[l(a,null,{default:u(()=>[...e[0]||(e[0]=[L("页面设置",-1)])]),_:1})])):V("",!0),d("div",R,[(n(!0),v(U,null,W(i.pageData,(o,r)=>(n(),v("div",{key:o.id,class:D(["relative",{"cursor-pointer":!(o!=null&&o.disabled)}]),onClick:m=>B(o,r)},[d("div",{class:D(["absolute w-full h-full z-[100] border-dashed",{select:r==i.modelValue,hide:_.value(o.content),"border-[#dcdfe6] border-2":!(o!=null&&o.disabled)}])},null,2),Z(t.$slots,"default",{},()=>{var m;return[(n(),C(g((m=f(G)[o==null?void 0:o.name])==null?void 0:m.content),{content:o.content,styles:o.styles,key:o.id},null,8,["content","styles"]))]},!0),r==i.modelValue?(n(),v("div",Y,[d("div",null,[l(c,{effect:"dark",content:_.value(o.content)?"显示":"隐藏",placement:"right"},{default:u(()=>[l(a,{class:"py-[5px]",type:"primary",icon:_.value(o.content)?f(O):f(T),onClick:m=>E(o.content)},null,8,["icon","onClick"])]),_:2},1032,["content"])]),d("div",null,[l(c,{effect:"dark",content:"上移",placement:"right"},{default:u(()=>[l(a,{class:"py-[5px]",type:"primary",icon:f(j),disabled:P.value(r),onClick:h(m=>k(r,r-1),["stop"])},null,8,["icon","disabled","onClick"])]),_:2},1024)]),d("div",null,[l(c,{effect:"dark",content:"下移",placement:"right"},{default:u(()=>[l(a,{class:"py-[5px]",type:"primary",icon:f(q),disabled:$.value(r),onClick:h(m=>k(r,r+1),["stop"])},null,8,["icon","disabled","onClick"])]),_:2},1024)])])):V("",!0)],10,X))),128))])]),_:3})}}}),No=Q(x,[["__scopeId","data-v-a459312e"]]);export{No as default}; +import{i as A,r as z,s as F}from"./element-plus-DFTWCWyi.js";import{s as h}from"./@vue/runtime-dom-DDAG46FW.js";import{v as O,h as T,Z as j,_ as q}from"./@element-plus/icons-vue-HOEUG8sr.js";import{e as G}from"./index-2TepIesZ.js";import{k as H}from"./lodash-es-C2A-Pj28.js";import{f as J,ak as n,G as C,aN as u,I as v,a as l,O as L,H as V,J as d,F as U,ap as W,aq as Z,at as g,A as b}from"./@vue/runtime-core-C6bnekPw.js";import{o as D}from"./@vue/shared-mAAVTE9n.js";import{y as f,n as K}from"./@vue/reactivity-DiY1c2vO.js";import{_ as Q}from"./index--WnM67ZH.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./attr-LeDws8D5.js";import"./index-BtiRSS_3.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./content.vue_vue_type_script_setup_true_lang-D3j4saYE.js";import"./decoration-img-Bn25X5JS.js";import"./attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js";import"./content-DeSOYKs_.js";import"./attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js";import"./content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js";import"./attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./content-BRFykSo7.js";import"./attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js";import"./content.vue_vue_type_script_setup_true_lang-jnpmExki.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-TNbubsqc.js";import"./decoration-BA17WVMJ.js";import"./attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-DDJw1TZH.js";import"./content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-By25GabM.js";import"./attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js";import"./content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-BLxl9Qo-.js";const R={class:"shadow mx-[30px] pages-preview"},X=["onClick"],Y={key:0,class:"widget-btns py-[5px]"},x=J({__name:"preview",props:{pageMeta:{type:Object,default:()=>null},pageData:{type:Array,default:()=>[]},modelValue:{type:Number,default:0}},emits:["update:modelValue","updatePageData"],setup(i,{emit:M}){const p=i,s=M,y=K(-1),N=()=>{p.modelValue===-1?s("update:modelValue",y.value):(y.value=p.modelValue,s("update:modelValue",-1))},B=(t,e)=>{t.disabled||s("update:modelValue",e)},P=b(()=>t=>t===0),$=b(()=>t=>{var e;return((e=p.pageData)==null?void 0:e.length)===t+1}),_=b(()=>t=>(t==null?void 0:t.enabled)==0),E=t=>{t.enabled!==void 0&&(t.enabled=t.enabled?0:1)},k=(t,e)=>{if(t<0||t>=p.pageData.length||e<0||e>=p.pageData.length)return;const a=H(p.pageData),c=a.splice(t,1)[0];a.splice(e,0,c),s("updatePageData",a),s("update:modelValue",e)};return(t,e)=>{const a=A,c=z,S=F;return n(),C(S,{class:"pages-preview-container"},{default:u(()=>[i.pageMeta!==null?(n(),v("div",{key:0,class:"absolute right-4 top-4",onClick:N},[l(a,null,{default:u(()=>[...e[0]||(e[0]=[L("页面设置",-1)])]),_:1})])):V("",!0),d("div",R,[(n(!0),v(U,null,W(i.pageData,(o,r)=>(n(),v("div",{key:o.id,class:D(["relative",{"cursor-pointer":!(o!=null&&o.disabled)}]),onClick:m=>B(o,r)},[d("div",{class:D(["absolute w-full h-full z-[100] border-dashed",{select:r==i.modelValue,hide:_.value(o.content),"border-[#dcdfe6] border-2":!(o!=null&&o.disabled)}])},null,2),Z(t.$slots,"default",{},()=>{var m;return[(n(),C(g((m=f(G)[o==null?void 0:o.name])==null?void 0:m.content),{content:o.content,styles:o.styles,key:o.id},null,8,["content","styles"]))]},!0),r==i.modelValue?(n(),v("div",Y,[d("div",null,[l(c,{effect:"dark",content:_.value(o.content)?"显示":"隐藏",placement:"right"},{default:u(()=>[l(a,{class:"py-[5px]",type:"primary",icon:_.value(o.content)?f(O):f(T),onClick:m=>E(o.content)},null,8,["icon","onClick"])]),_:2},1032,["content"])]),d("div",null,[l(c,{effect:"dark",content:"上移",placement:"right"},{default:u(()=>[l(a,{class:"py-[5px]",type:"primary",icon:f(j),disabled:P.value(r),onClick:h(m=>k(r,r-1),["stop"])},null,8,["icon","disabled","onClick"])]),_:2},1024)]),d("div",null,[l(c,{effect:"dark",content:"下移",placement:"right"},{default:u(()=>[l(a,{class:"py-[5px]",type:"primary",icon:f(q),disabled:$.value(r),onClick:h(m=>k(r,r+1),["stop"])},null,8,["icon","disabled","onClick"])]),_:2},1024)])])):V("",!0)],10,X))),128))])]),_:3})}}}),No=Q(x,[["__scopeId","data-v-a459312e"]]);export{No as default}; diff --git a/server/public/admin/assets/preview-pc-CFpdKBXT.js b/server/public/admin/assets/preview-pc-C8bP-zog.js similarity index 64% rename from server/public/admin/assets/preview-pc-CFpdKBXT.js rename to server/public/admin/assets/preview-pc-C8bP-zog.js index 579023c9..1b96b05b 100644 --- a/server/public/admin/assets/preview-pc-CFpdKBXT.js +++ b/server/public/admin/assets/preview-pc-C8bP-zog.js @@ -1 +1 @@ -import{i as $,r as B}from"./element-plus-DFTWCWyi.js";import{Y as N,v as S,h as q}from"./@element-plus/icons-vue-HOEUG8sr.js";import{e as R}from"./index-CHZQEiCU.js";import{f as z,ak as r,I as i,J as l,H as y,F as D,ap as E,aq as I,G as A,at as F,a as s,aN as _,A as P}from"./@vue/runtime-core-C6bnekPw.js";import{o as h,p as v}from"./@vue/shared-mAAVTE9n.js";import{y as e,q as j}from"./@vue/reactivity-DiY1c2vO.js";import{_ as G}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./attr-C9CZlLYE.js";import"./index-D18gAY1e.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./content.vue_vue_type_script_setup_true_lang-g2qbX7pV.js";import"./decoration-img-A6h02C6l.js";import"./attr.vue_vue_type_script_setup_true_lang-cvEGht3-.js";import"./content-DSbMIogU.js";import"./attr.vue_vue_type_script_setup_true_lang-DhWaJTkJ.js";import"./content.vue_vue_type_script_setup_true_lang-Bi5-WsGk.js";import"./attr.vue_vue_type_script_setup_true_lang-jSQqotMu.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CYy06ha3.js";import"./content-Bq2N97AM.js";import"./attr.vue_vue_type_script_setup_true_lang-qRc2eULF.js";import"./content.vue_vue_type_script_setup_true_lang-DvAwE6yc.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-RKc8NsXf.js";import"./decoration-XX4ow94I.js";import"./attr.vue_vue_type_script_setup_true_lang-91ggAlw8.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-BvpTtLa-.js";import"./content.vue_vue_type_script_setup_true_lang-CjOcCmpo.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-_IxwYLuN.js";import"./attr.vue_vue_type_script_setup_true_lang-B7rnXyUi.js";import"./content.vue_vue_type_script_setup_true_lang-BPonashY.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-DPq40ncB.js";const H={class:"pages-preview"},J={class:"relative flex justify-center h-full mt-5 mx-10"},L=["src"],T={class:"max-w-[1200px] w-full absolute"},W=["onClick"],Y=z({__name:"preview-pc",props:{pageData:{type:Array,default:()=>[]},modelValue:{type:Number,default:0}},emits:["update:modelValue"],setup(a,{emit:k}){const u=j(),b=k,c=P(()=>o=>(o==null?void 0:o.enabled)==0),C=o=>{var m;(m=u.value[o])==null||m.open()},V=o=>{o.enabled!==void 0&&(o.enabled=o.enabled?0:1)},x=(o,m)=>{o.disabled||b("update:modelValue",m)};return(o,m)=>{const f=$,d=B;return r(),i("div",H,[l("div",J,[o.$route.query.url?(r(),i("iframe",{key:0,ref:"previewIframeRef",class:"flex-1 h-full",width:"100%",height:"100%",scrolling:"no",src:o.$route.query.url},null,8,L)):y("",!0),l("div",T,[(r(!0),i(D,null,E(a.pageData,(t,n)=>(r(),i("div",{key:t.id,class:h(["absolute left-0 top-0",{"cursor-pointer":!(t!=null&&t.disabled)}]),onClick:p=>x(t,n)},[l("div",{class:h(["absolute w-full h-full z-[100] border-dashed",{select:n==a.modelValue,"border-[#dcdfe6] border-2":!(t!=null&&t.disabled),hide:e(c)(t.content)}]),style:v(t.styles)},null,6),I(o.$slots,"default",{},()=>{var p;return[(r(),A(F((p=e(R)[t==null?void 0:t.name])==null?void 0:p.content),{content:t.content,styles:t.styles,key:t.id,ref_for:!0,ref_key:"commonComponentRef",ref:u},null,8,["content","styles"]))]},!0),n==a.modelValue?(r(),i("div",{key:0,class:"widget-btns py-[5px]",style:v({top:t.styles.top,left:t.styles.width})},[l("div",null,[s(d,{effect:"dark",content:"编辑组件内容",placement:"right"},{default:_(()=>[s(f,{class:"py-[5px]",type:"primary",icon:e(N),onClick:p=>C(n)},null,8,["icon","onClick"])]),_:2},1024)]),l("div",null,[s(d,{effect:"dark",content:e(c)(t.content)?"显示":"隐藏",placement:"right"},{default:_(()=>[s(f,{class:"py-[5px]",type:"primary",icon:e(c)(t.content)?e(S):e(q),onClick:p=>V(t.content)},null,8,["icon","onClick"])]),_:2},1032,["content"])])],4)):y("",!0)],10,W))),128))])])])}}}),vo=G(Y,[["__scopeId","data-v-ccf0ad8b"]]);export{vo as default}; +import{i as $,r as B}from"./element-plus-DFTWCWyi.js";import{Y as N,v as S,h as q}from"./@element-plus/icons-vue-HOEUG8sr.js";import{e as R}from"./index-2TepIesZ.js";import{f as z,ak as r,I as i,J as l,H as y,F as D,ap as E,aq as I,G as A,at as F,a as s,aN as _,A as P}from"./@vue/runtime-core-C6bnekPw.js";import{o as h,p as v}from"./@vue/shared-mAAVTE9n.js";import{y as e,q as j}from"./@vue/reactivity-DiY1c2vO.js";import{_ as G}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./attr-LeDws8D5.js";import"./index-BtiRSS_3.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./content.vue_vue_type_script_setup_true_lang-D3j4saYE.js";import"./decoration-img-Bn25X5JS.js";import"./attr.vue_vue_type_script_setup_true_lang-CHaoilRo.js";import"./content-DeSOYKs_.js";import"./attr.vue_vue_type_script_setup_true_lang-DX2rjYVu.js";import"./content.vue_vue_type_script_setup_true_lang-Ceh-LD36.js";import"./attr.vue_vue_type_script_setup_true_lang-DN7dlzy5.js";import"./add-nav.vue_vue_type_script_setup_true_lang-CvFvw3Rc.js";import"./content-BRFykSo7.js";import"./attr.vue_vue_type_script_setup_true_lang-iWgyrx46.js";import"./content.vue_vue_type_script_setup_true_lang-jnpmExki.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-TNbubsqc.js";import"./decoration-BA17WVMJ.js";import"./attr.vue_vue_type_script_setup_true_lang-CetCzQZt.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-DDJw1TZH.js";import"./content.vue_vue_type_script_setup_true_lang-BRjy6hOi.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-By25GabM.js";import"./attr.vue_vue_type_script_setup_true_lang-Bp4UepHF.js";import"./content.vue_vue_type_script_setup_true_lang-DUYSUAuU.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-BLxl9Qo-.js";const H={class:"pages-preview"},J={class:"relative flex justify-center h-full mt-5 mx-10"},L=["src"],T={class:"max-w-[1200px] w-full absolute"},W=["onClick"],Y=z({__name:"preview-pc",props:{pageData:{type:Array,default:()=>[]},modelValue:{type:Number,default:0}},emits:["update:modelValue"],setup(a,{emit:k}){const u=j(),b=k,c=P(()=>o=>(o==null?void 0:o.enabled)==0),C=o=>{var m;(m=u.value[o])==null||m.open()},V=o=>{o.enabled!==void 0&&(o.enabled=o.enabled?0:1)},x=(o,m)=>{o.disabled||b("update:modelValue",m)};return(o,m)=>{const f=$,d=B;return r(),i("div",H,[l("div",J,[o.$route.query.url?(r(),i("iframe",{key:0,ref:"previewIframeRef",class:"flex-1 h-full",width:"100%",height:"100%",scrolling:"no",src:o.$route.query.url},null,8,L)):y("",!0),l("div",T,[(r(!0),i(D,null,E(a.pageData,(t,n)=>(r(),i("div",{key:t.id,class:h(["absolute left-0 top-0",{"cursor-pointer":!(t!=null&&t.disabled)}]),onClick:p=>x(t,n)},[l("div",{class:h(["absolute w-full h-full z-[100] border-dashed",{select:n==a.modelValue,"border-[#dcdfe6] border-2":!(t!=null&&t.disabled),hide:e(c)(t.content)}]),style:v(t.styles)},null,6),I(o.$slots,"default",{},()=>{var p;return[(r(),A(F((p=e(R)[t==null?void 0:t.name])==null?void 0:p.content),{content:t.content,styles:t.styles,key:t.id,ref_for:!0,ref_key:"commonComponentRef",ref:u},null,8,["content","styles"]))]},!0),n==a.modelValue?(r(),i("div",{key:0,class:"widget-btns py-[5px]",style:v({top:t.styles.top,left:t.styles.width})},[l("div",null,[s(d,{effect:"dark",content:"编辑组件内容",placement:"right"},{default:_(()=>[s(f,{class:"py-[5px]",type:"primary",icon:e(N),onClick:p=>C(n)},null,8,["icon","onClick"])]),_:2},1024)]),l("div",null,[s(d,{effect:"dark",content:e(c)(t.content)?"显示":"隐藏",placement:"right"},{default:_(()=>[s(f,{class:"py-[5px]",type:"primary",icon:e(c)(t.content)?e(S):e(q),onClick:p=>V(t.content)},null,8,["icon","onClick"])]),_:2},1032,["content"])])],4)):y("",!0)],10,W))),128))])])])}}}),vo=G(Y,[["__scopeId","data-v-ccf0ad8b"]]);export{vo as default}; diff --git a/server/public/admin/assets/progress-DiEvcC7c.js b/server/public/admin/assets/progress-Dk3GB0SN.js similarity index 98% rename from server/public/admin/assets/progress-DiEvcC7c.js rename to server/public/admin/assets/progress-Dk3GB0SN.js index 65e55957..22c74e28 100644 --- a/server/public/admin/assets/progress-DiEvcC7c.js +++ b/server/public/admin/assets/progress-Dk3GB0SN.js @@ -1 +1 @@ -import{d as kt,a2 as Et,Q as St,P as xt,C as Vt,i as $t,F as It,G as Mt,L as Ct,N as Tt,T as At,a0 as Dt,M as Rt,R as Pt}from"./element-plus-DFTWCWyi.js";import{w as Ut}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Yt}from"./vue-router-QlpZ4wdW.js";import{d as K}from"./dayjs-DG77mNTn.js";import{k as Bt,$ as zt,N as et,x as Ft,X as Lt}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as Gt,a as nt}from"./doctor-B7qEhSpt.js";import{u as Ot,_ as Kt}from"./index-Nt5zMHcc.js";import{f as at,b as jt,d as qt,ak as i,I as p,J as a,a as o,aN as u,O as N,F as z,ap as st,G as M,H as k,aP as Ht,A as C}from"./@vue/runtime-core-C6bnekPw.js";import{n as T,y as A,r as Qt}from"./@vue/reactivity-DiY1c2vO.js";import{Q as c,o as j}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Jt={class:"dp-page"},Wt={class:"dp-glass dp-toolbar"},Xt={class:"dp-toolbar-row"},Zt={class:"dp-field-label"},wt={class:"dp-field-label"},te={class:"dp-field-label"},ee={class:"dp-toolbar-actions"},ne={key:0,class:"dp-glass dp-doc-section"},se={class:"dp-section-head"},ae={class:"dp-glass dp-table-wrap"},oe={class:"dp-table-head"},le={class:"dp-table-head-left"},ie={key:0,class:"dp-table-range"},re={class:"dp-table-badges"},de={key:0,class:"dp-chip dp-chip--account"},ue={key:1,class:"dp-chip dp-chip--doc"},pe={key:2,class:"dp-chip dp-chip--count"},ce={key:3,class:"dp-chip dp-chip--muted"},me={class:"dp-my-patients-eta"},_e={class:"dp-cell-user-body"},fe={class:"dp-avatar"},ve={class:"dp-user-meta"},ge={class:"dp-user-name"},he={class:"dp-user-phone"},be={class:"dp-time"},ye={class:"dp-steps"},Ne={class:"dp-step-dot"},ke={class:"dp-step-text"},Ee={class:"dp-step-name"},Se={key:0,class:"dp-step-hint"},xe={key:1,class:"dp-muted"},Ve={key:1,class:"dp-muted"},$e=at({name:"doctorProgress"}),Ie=at({...$e,setup(Me){const ot=Yt(),q=Ot(),D=T(!1),E=T([]),f=T(void 0),S=T([]),R=()=>K().format("YYYY-MM-DD"),b=T([R(),R()]),v=Qt({status:"",patient_name:""}),H=C(()=>{const e=f.value;if(e===void 0)return"";const t=E.value.find(n=>Number(n.id)===e);return t?String(t.name||t.account||""):""}),lt=C(()=>{var t;const e=(t=q.userInfo)==null?void 0:t.id;return e!=null&&e!==""?Number(e):NaN}),Q=C(()=>{const e=q.userInfo||{};return String(e.name||e.account||"").trim()});function F(e){const t=lt.value;if(Number.isNaN(t))return!1;const n=e==null?void 0:e.assistant_id;return n==null||n===""?!1:Number(n)===t}const it=15,J=T(0);let P=null;function W(e){const t=String(e.appointment_date||"");let n=e.appointment_time||"";return typeof n=="string"&&n.length>5&&(n=n.slice(0,5)),`${t} ${n}`.trim()}function rt(e){const t=e.appointment_date;if(!t)return null;let n=e.appointment_time||"00:00";typeof n=="string"&&n.length>5&&(n=n.slice(0,5));const l=K(`${t} ${n}`);return l.isValid()?l:null}function X(e){const t=Math.max(0,Math.round(e));if(t===0)return"不到 1 分钟";if(t<60)return`${t} 分钟`;const n=Math.floor(t/60),l=t%60;return l===0?`${n} 小时`:`${n} 小时${l} 分钟`}function dt(e){if(J.value,!F(e))return"";const t=Number(e.status);if(t===3)return"面诊已完成(医生已点完成)";if(t===4)return"已过号,无法按序预估";if(t!==1)return"";const n=K(),l=rt(e),r=l?l.isAfter(n):!1,m=r&&l?Math.max(0,l.diff(n,"minute")):0,y=S.value.filter(d=>d.appointment_date===e.appointment_date&&Number(d.status)===1).slice().sort((d,$)=>{const B=W(d).localeCompare(W($));return B!==0?B:Number(d.id)-Number($.id)}).findIndex(d=>Number(d.id)===Number(e.id)),g=y>=0?y:0,V=g*it,_=[];return r&&_.push(`距预约时段还有约 ${X(m)}`),g===0?_.push(r?"到号后可优先安排面诊":"已到号,可尽快面诊"):_.push(`前面约 ${g} 人,按序粗估约 ${X(V)}`),_.join(";")}function Z(){const e=v.status;return e===""||e===void 0||e===null}const U=C(()=>Z()?S.value.filter(e=>Number(e.status)===3).length:0),L=C(()=>Z()?S.value.filter(e=>Number(e.status)!==3):S.value),ut=C(()=>U.value>0&&L.value.length===0?`本时段有 ${U.value} 条「已完成」已隐藏,可在状态中选择「已完成」查看`:"该时段内暂无挂号");function pt(e){const t=String(e||"?").trim();return t?t[0]:"?"}function ct(e){const t=e.appointment_date||"";let n=e.appointment_time||"";return typeof n=="string"&&n.length>5&&(n=n.slice(0,5)),t?`${t} ${n}`.trim():"—"}function mt(e){return e===3?"success":e===4?"warning":e===2?"info":"primary"}function w(e){const t=Number(e.status)===2,n=!t&&[1,3,4].includes(Number(e.status)),l=!!e.diagnosis_confirmed,r=Number(e.status)===3,m=!!e.has_prescription;return[{label:"挂号",done:n,current:n&&!l&&Number(e.status)===1,hint:t?"已取消":Number(e.status)===4?"已过号":""},{label:"确认诊单",done:l,current:n&&!l,hint:""},{label:"就诊中",done:r,current:n&&l&&!r&&Number(e.status)===1,hint:Number(e.status)===1&&l?"待完诊":""},{label:"开方",done:m,current:r&&!m,hint:""}]}function _t(e){const n=w(e).filter(l=>l.done).length;return Math.round(n/4*100)}const G=2e3,ft=15e3;let Y=null;async function vt(){const e=await Gt({role_id:1,page_type:0,page_no:1,progress_board:1});if(E.value=(e==null?void 0:e.lists)||[],!E.value.length){f.value=void 0,S.value=[];return}const t=E.value.some(n=>Number(n.id)===f.value);(f.value===void 0||!t)&&(f.value=Number(E.value[0].id))}async function x(e){var n,l;if(f.value===void 0){S.value=[];return}const t=(e==null?void 0:e.silent)===!0;t||(D.value=!0);try{const r={doctor_id:f.value,page_type:1,page_no:1,page_size:G,prescription_today_only:1,exclude_cancelled:1,progress_board:1};((n=b.value)==null?void 0:n.length)===2&&(r.start_date=b.value[0],r.end_date=b.value[1]),v.status!==""&&(r.status=v.status),(l=v.patient_name)!=null&&l.trim()&&(r.patient_name=v.patient_name.trim());const m=await nt(r);let h=(m==null?void 0:m.lists)||[];const y=Number((m==null?void 0:m.count)??h.length);if(y>h.length&&h.length>=G){const g=[],V=Math.min(Math.ceil(y/G),20);for(let _=2;_<=V;_++){const d=await nt({...r,page_no:_}),$=(d==null?void 0:d.lists)||[];if(!$.length)break;g.push(...$)}h=[...h,...g]}S.value=[...h].sort((g,V)=>{const _=`${g.appointment_date||""} ${g.appointment_time||""}`,d=`${V.appointment_date||""} ${V.appointment_time||""}`;return _.localeCompare(d)})}catch(r){console.error(r),t||(S.value=[])}finally{t||(D.value=!1)}}function gt(){typeof document<"u"&&document.hidden||x({silent:!0}).catch(()=>{})}function ht(){v.status="",v.patient_name="",b.value=[R(),R()],x()}function bt(e){ot.push({path:"/tcm/diagnosis",query:{id:String(e)}})}return jt(async()=>{await vt(),await x(),Y=setInterval(gt,ft),P=setInterval(()=>{J.value+=1},6e4)}),qt(()=>{Y!=null&&(clearInterval(Y),Y=null),P!=null&&(clearInterval(P),P=null)}),(e,t)=>{var tt;const n=kt,l=Et,r=St,m=xt,h=Vt,y=$t,g=It,V=Mt,_=Pt,d=Tt,$=At,B=Dt,yt=Rt,Nt=Ct;return i(),p("div",Jt,[a("section",Wt,[a("div",Xt,[a("span",Zt,[o(n,null,{default:u(()=>[o(A(Bt))]),_:1}),t[9]||(t[9]=N(" 预约日期 ",-1))]),o(l,{modelValue:b.value,"onUpdate:modelValue":t[0]||(t[0]=s=>b.value=s),type:"daterange","range-separator":"—","start-placeholder":"开始","end-placeholder":"结束","value-format":"YYYY-MM-DD","unlink-panels":"",class:"dp-field-date",onChange:t[1]||(t[1]=()=>x())},null,8,["modelValue"]),a("span",wt,[o(n,null,{default:u(()=>[o(A(zt))]),_:1}),t[10]||(t[10]=N(" 状态 ",-1))]),o(m,{modelValue:v.status,"onUpdate:modelValue":t[2]||(t[2]=s=>v.status=s),placeholder:"全部",clearable:"",class:"dp-field-select",onChange:t[3]||(t[3]=()=>x())},{default:u(()=>[o(r,{label:"全部状态",value:""}),o(r,{label:"已预约(待就诊)",value:"1"}),o(r,{label:"已完成",value:"3"}),o(r,{label:"已过号",value:"4"})]),_:1},8,["modelValue"]),a("span",te,[o(n,null,{default:u(()=>[o(A(et))]),_:1}),t[11]||(t[11]=N(" 患者 ",-1))]),o(h,{modelValue:v.patient_name,"onUpdate:modelValue":t[4]||(t[4]=s=>v.patient_name=s),placeholder:"姓名",clearable:"",class:"dp-field-search",onKeyup:t[5]||(t[5]=Ut(()=>x(),["enter"]))},null,8,["modelValue"]),a("div",ee,[o(y,{type:"primary",loading:D.value,icon:A(et),onClick:t[6]||(t[6]=()=>x())},{default:u(()=>[...t[12]||(t[12]=[N(" 查询 ",-1)])]),_:1},8,["loading","icon"]),o(y,{icon:A(Ft),onClick:ht},{default:u(()=>[...t[13]||(t[13]=[N("重置",-1)])]),_:1},8,["icon"])])])]),E.value.length?(i(),p("section",ne,[a("div",se,[o(n,{class:"dp-section-icon"},{default:u(()=>[o(A(Lt))]),_:1}),t[14]||(t[14]=a("span",{class:"dp-section-title"},"选择医生",-1)),t[15]||(t[15]=a("span",{class:"dp-section-hint"},"切换后自动加载该医生挂号",-1))]),o(V,{modelValue:f.value,"onUpdate:modelValue":t[7]||(t[7]=s=>f.value=s),class:"dp-doc-pills",onChange:t[8]||(t[8]=()=>x())},{default:u(()=>[(i(!0),p(z,null,st(E.value,s=>(i(),M(g,{key:s.id,label:Number(s.id),class:"dp-doc-pill"},{default:u(()=>[N(c(s.name||s.account||"—"),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])):k("",!0),Ht((i(),p("section",ae,[a("div",oe,[a("div",le,[t[16]||(t[16]=a("span",{class:"dp-table-title"},"患者列表",-1)),((tt=b.value)==null?void 0:tt.length)===2?(i(),p("span",ie,c(b.value[0])+" ~ "+c(b.value[1]),1)):k("",!0)]),a("div",re,[Q.value?(i(),p("span",de,"当前账号 "+c(Q.value),1)):k("",!0),H.value?(i(),p("span",ue,c(H.value),1)):k("",!0),f.value!==void 0&&!D.value?(i(),p("span",pe,c(L.value.length)+" 人",1)):k("",!0),U.value>0?(i(),p("span",ce,"已隐藏已完成 "+c(U.value),1)):k("",!0)])]),E.value.length?f.value===void 0?(i(),M(_,{key:1,description:"请选择医生"})):(i(),M(yt,{key:2,data:L.value,class:"dp-table",size:"default","empty-text":ut.value},{default:u(()=>[o(d,{label:"患者","min-width":"200",fixed:"left"},{default:u(({row:s})=>[a("div",{class:j(["dp-cell-user",{"is-my-patients":F(s)}])},[F(s)?(i(),p(z,{key:0},[t[17]||(t[17]=a("div",{class:"dp-my-patients-caption"},"我的患者",-1)),a("div",me,c(dt(s)),1)],64)):k("",!0),a("div",_e,[a("div",fe,c(pt(s.patient_name)),1),a("div",ve,[a("span",ge,c(s.patient_name||"—"),1),a("span",he,c(s.patient_phone||"—"),1)])])],2)]),_:1}),o(d,{label:"预约时间",width:"170"},{default:u(({row:s})=>[a("span",be,c(ct(s)),1)]),_:1}),o(d,{label:"挂号",width:"104",align:"center"},{default:u(({row:s})=>[o($,{type:mt(s.status),effect:"light",round:"",size:"small"},{default:u(()=>[N(c(s.status_desc),1)]),_:2},1032,["type"])]),_:1}),o(d,{label:"面诊进度","min-width":"360"},{default:u(({row:s})=>[a("div",ye,[(i(!0),p(z,null,st(w(s),(I,O)=>(i(),p(z,{key:O},[a("div",{class:j(["dp-step",{"is-done":I.done,"is-current":I.current&&!I.done}])},[a("div",Ne,c(O+1),1),a("div",ke,[a("span",Ee,c(I.label),1),I.hint?(i(),p("span",Se,c(I.hint),1)):k("",!0)])],2),O<3?(i(),p("div",{key:0,class:j(["dp-step-line",{"is-done":I.done}])},null,2)):k("",!0)],64))),128))]),o(B,{percentage:_t(s),"stroke-width":8,class:"dp-progress"},null,8,["percentage"])]),_:1}),o(d,{label:"处方",width:"92",align:"center"},{default:u(({row:s})=>[s.has_prescription?(i(),M($,{key:0,type:"success",effect:"dark",round:"",size:"small"},{default:u(()=>[...t[18]||(t[18]=[N("已开",-1)])]),_:1})):(i(),p("span",xe,"未开"))]),_:1}),o(d,{label:"操作",width:"96",fixed:"right",align:"center"},{default:u(({row:s})=>[s.diagnosis_id?(i(),M(y,{key:0,type:"primary",size:"small",round:"",plain:"",onClick:I=>bt(s.diagnosis_id)},{default:u(()=>[...t[19]||(t[19]=[N(" 诊单 ",-1)])]),_:1},8,["onClick"])):(i(),p("span",Ve,"—"))]),_:1})]),_:1},8,["data","empty-text"])):(i(),M(_,{key:0,description:"暂无医生数据"}))])),[[Nt,D.value]])])}}}),fn=Kt(Ie,[["__scopeId","data-v-6bc1551c"]]);export{fn as default}; +import{d as kt,a2 as Et,Q as St,P as xt,C as Vt,i as $t,F as It,G as Mt,L as Ct,N as Tt,T as At,a0 as Dt,M as Rt,R as Pt}from"./element-plus-DFTWCWyi.js";import{w as Ut}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Yt}from"./vue-router-QlpZ4wdW.js";import{d as K}from"./dayjs-DG77mNTn.js";import{k as Bt,$ as zt,N as et,x as Ft,X as Lt}from"./@element-plus/icons-vue-HOEUG8sr.js";import{f as Gt,a as nt}from"./doctor-BlvK2TEo.js";import{u as Ot,_ as Kt}from"./index--WnM67ZH.js";import{f as at,b as jt,d as qt,ak as i,I as p,J as a,a as o,aN as u,O as N,F as z,ap as st,G as M,H as k,aP as Ht,A as C}from"./@vue/runtime-core-C6bnekPw.js";import{n as T,y as A,r as Qt}from"./@vue/reactivity-DiY1c2vO.js";import{Q as c,o as j}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Jt={class:"dp-page"},Wt={class:"dp-glass dp-toolbar"},Xt={class:"dp-toolbar-row"},Zt={class:"dp-field-label"},wt={class:"dp-field-label"},te={class:"dp-field-label"},ee={class:"dp-toolbar-actions"},ne={key:0,class:"dp-glass dp-doc-section"},se={class:"dp-section-head"},ae={class:"dp-glass dp-table-wrap"},oe={class:"dp-table-head"},le={class:"dp-table-head-left"},ie={key:0,class:"dp-table-range"},re={class:"dp-table-badges"},de={key:0,class:"dp-chip dp-chip--account"},ue={key:1,class:"dp-chip dp-chip--doc"},pe={key:2,class:"dp-chip dp-chip--count"},ce={key:3,class:"dp-chip dp-chip--muted"},me={class:"dp-my-patients-eta"},_e={class:"dp-cell-user-body"},fe={class:"dp-avatar"},ve={class:"dp-user-meta"},ge={class:"dp-user-name"},he={class:"dp-user-phone"},be={class:"dp-time"},ye={class:"dp-steps"},Ne={class:"dp-step-dot"},ke={class:"dp-step-text"},Ee={class:"dp-step-name"},Se={key:0,class:"dp-step-hint"},xe={key:1,class:"dp-muted"},Ve={key:1,class:"dp-muted"},$e=at({name:"doctorProgress"}),Ie=at({...$e,setup(Me){const ot=Yt(),q=Ot(),D=T(!1),E=T([]),f=T(void 0),S=T([]),R=()=>K().format("YYYY-MM-DD"),b=T([R(),R()]),v=Qt({status:"",patient_name:""}),H=C(()=>{const e=f.value;if(e===void 0)return"";const t=E.value.find(n=>Number(n.id)===e);return t?String(t.name||t.account||""):""}),lt=C(()=>{var t;const e=(t=q.userInfo)==null?void 0:t.id;return e!=null&&e!==""?Number(e):NaN}),Q=C(()=>{const e=q.userInfo||{};return String(e.name||e.account||"").trim()});function F(e){const t=lt.value;if(Number.isNaN(t))return!1;const n=e==null?void 0:e.assistant_id;return n==null||n===""?!1:Number(n)===t}const it=15,J=T(0);let P=null;function W(e){const t=String(e.appointment_date||"");let n=e.appointment_time||"";return typeof n=="string"&&n.length>5&&(n=n.slice(0,5)),`${t} ${n}`.trim()}function rt(e){const t=e.appointment_date;if(!t)return null;let n=e.appointment_time||"00:00";typeof n=="string"&&n.length>5&&(n=n.slice(0,5));const l=K(`${t} ${n}`);return l.isValid()?l:null}function X(e){const t=Math.max(0,Math.round(e));if(t===0)return"不到 1 分钟";if(t<60)return`${t} 分钟`;const n=Math.floor(t/60),l=t%60;return l===0?`${n} 小时`:`${n} 小时${l} 分钟`}function dt(e){if(J.value,!F(e))return"";const t=Number(e.status);if(t===3)return"面诊已完成(医生已点完成)";if(t===4)return"已过号,无法按序预估";if(t!==1)return"";const n=K(),l=rt(e),r=l?l.isAfter(n):!1,m=r&&l?Math.max(0,l.diff(n,"minute")):0,y=S.value.filter(d=>d.appointment_date===e.appointment_date&&Number(d.status)===1).slice().sort((d,$)=>{const B=W(d).localeCompare(W($));return B!==0?B:Number(d.id)-Number($.id)}).findIndex(d=>Number(d.id)===Number(e.id)),g=y>=0?y:0,V=g*it,_=[];return r&&_.push(`距预约时段还有约 ${X(m)}`),g===0?_.push(r?"到号后可优先安排面诊":"已到号,可尽快面诊"):_.push(`前面约 ${g} 人,按序粗估约 ${X(V)}`),_.join(";")}function Z(){const e=v.status;return e===""||e===void 0||e===null}const U=C(()=>Z()?S.value.filter(e=>Number(e.status)===3).length:0),L=C(()=>Z()?S.value.filter(e=>Number(e.status)!==3):S.value),ut=C(()=>U.value>0&&L.value.length===0?`本时段有 ${U.value} 条「已完成」已隐藏,可在状态中选择「已完成」查看`:"该时段内暂无挂号");function pt(e){const t=String(e||"?").trim();return t?t[0]:"?"}function ct(e){const t=e.appointment_date||"";let n=e.appointment_time||"";return typeof n=="string"&&n.length>5&&(n=n.slice(0,5)),t?`${t} ${n}`.trim():"—"}function mt(e){return e===3?"success":e===4?"warning":e===2?"info":"primary"}function w(e){const t=Number(e.status)===2,n=!t&&[1,3,4].includes(Number(e.status)),l=!!e.diagnosis_confirmed,r=Number(e.status)===3,m=!!e.has_prescription;return[{label:"挂号",done:n,current:n&&!l&&Number(e.status)===1,hint:t?"已取消":Number(e.status)===4?"已过号":""},{label:"确认诊单",done:l,current:n&&!l,hint:""},{label:"就诊中",done:r,current:n&&l&&!r&&Number(e.status)===1,hint:Number(e.status)===1&&l?"待完诊":""},{label:"开方",done:m,current:r&&!m,hint:""}]}function _t(e){const n=w(e).filter(l=>l.done).length;return Math.round(n/4*100)}const G=2e3,ft=15e3;let Y=null;async function vt(){const e=await Gt({role_id:1,page_type:0,page_no:1,progress_board:1});if(E.value=(e==null?void 0:e.lists)||[],!E.value.length){f.value=void 0,S.value=[];return}const t=E.value.some(n=>Number(n.id)===f.value);(f.value===void 0||!t)&&(f.value=Number(E.value[0].id))}async function x(e){var n,l;if(f.value===void 0){S.value=[];return}const t=(e==null?void 0:e.silent)===!0;t||(D.value=!0);try{const r={doctor_id:f.value,page_type:1,page_no:1,page_size:G,prescription_today_only:1,exclude_cancelled:1,progress_board:1};((n=b.value)==null?void 0:n.length)===2&&(r.start_date=b.value[0],r.end_date=b.value[1]),v.status!==""&&(r.status=v.status),(l=v.patient_name)!=null&&l.trim()&&(r.patient_name=v.patient_name.trim());const m=await nt(r);let h=(m==null?void 0:m.lists)||[];const y=Number((m==null?void 0:m.count)??h.length);if(y>h.length&&h.length>=G){const g=[],V=Math.min(Math.ceil(y/G),20);for(let _=2;_<=V;_++){const d=await nt({...r,page_no:_}),$=(d==null?void 0:d.lists)||[];if(!$.length)break;g.push(...$)}h=[...h,...g]}S.value=[...h].sort((g,V)=>{const _=`${g.appointment_date||""} ${g.appointment_time||""}`,d=`${V.appointment_date||""} ${V.appointment_time||""}`;return _.localeCompare(d)})}catch(r){console.error(r),t||(S.value=[])}finally{t||(D.value=!1)}}function gt(){typeof document<"u"&&document.hidden||x({silent:!0}).catch(()=>{})}function ht(){v.status="",v.patient_name="",b.value=[R(),R()],x()}function bt(e){ot.push({path:"/tcm/diagnosis",query:{id:String(e)}})}return jt(async()=>{await vt(),await x(),Y=setInterval(gt,ft),P=setInterval(()=>{J.value+=1},6e4)}),qt(()=>{Y!=null&&(clearInterval(Y),Y=null),P!=null&&(clearInterval(P),P=null)}),(e,t)=>{var tt;const n=kt,l=Et,r=St,m=xt,h=Vt,y=$t,g=It,V=Mt,_=Pt,d=Tt,$=At,B=Dt,yt=Rt,Nt=Ct;return i(),p("div",Jt,[a("section",Wt,[a("div",Xt,[a("span",Zt,[o(n,null,{default:u(()=>[o(A(Bt))]),_:1}),t[9]||(t[9]=N(" 预约日期 ",-1))]),o(l,{modelValue:b.value,"onUpdate:modelValue":t[0]||(t[0]=s=>b.value=s),type:"daterange","range-separator":"—","start-placeholder":"开始","end-placeholder":"结束","value-format":"YYYY-MM-DD","unlink-panels":"",class:"dp-field-date",onChange:t[1]||(t[1]=()=>x())},null,8,["modelValue"]),a("span",wt,[o(n,null,{default:u(()=>[o(A(zt))]),_:1}),t[10]||(t[10]=N(" 状态 ",-1))]),o(m,{modelValue:v.status,"onUpdate:modelValue":t[2]||(t[2]=s=>v.status=s),placeholder:"全部",clearable:"",class:"dp-field-select",onChange:t[3]||(t[3]=()=>x())},{default:u(()=>[o(r,{label:"全部状态",value:""}),o(r,{label:"已预约(待就诊)",value:"1"}),o(r,{label:"已完成",value:"3"}),o(r,{label:"已过号",value:"4"})]),_:1},8,["modelValue"]),a("span",te,[o(n,null,{default:u(()=>[o(A(et))]),_:1}),t[11]||(t[11]=N(" 患者 ",-1))]),o(h,{modelValue:v.patient_name,"onUpdate:modelValue":t[4]||(t[4]=s=>v.patient_name=s),placeholder:"姓名",clearable:"",class:"dp-field-search",onKeyup:t[5]||(t[5]=Ut(()=>x(),["enter"]))},null,8,["modelValue"]),a("div",ee,[o(y,{type:"primary",loading:D.value,icon:A(et),onClick:t[6]||(t[6]=()=>x())},{default:u(()=>[...t[12]||(t[12]=[N(" 查询 ",-1)])]),_:1},8,["loading","icon"]),o(y,{icon:A(Ft),onClick:ht},{default:u(()=>[...t[13]||(t[13]=[N("重置",-1)])]),_:1},8,["icon"])])])]),E.value.length?(i(),p("section",ne,[a("div",se,[o(n,{class:"dp-section-icon"},{default:u(()=>[o(A(Lt))]),_:1}),t[14]||(t[14]=a("span",{class:"dp-section-title"},"选择医生",-1)),t[15]||(t[15]=a("span",{class:"dp-section-hint"},"切换后自动加载该医生挂号",-1))]),o(V,{modelValue:f.value,"onUpdate:modelValue":t[7]||(t[7]=s=>f.value=s),class:"dp-doc-pills",onChange:t[8]||(t[8]=()=>x())},{default:u(()=>[(i(!0),p(z,null,st(E.value,s=>(i(),M(g,{key:s.id,label:Number(s.id),class:"dp-doc-pill"},{default:u(()=>[N(c(s.name||s.account||"—"),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])):k("",!0),Ht((i(),p("section",ae,[a("div",oe,[a("div",le,[t[16]||(t[16]=a("span",{class:"dp-table-title"},"患者列表",-1)),((tt=b.value)==null?void 0:tt.length)===2?(i(),p("span",ie,c(b.value[0])+" ~ "+c(b.value[1]),1)):k("",!0)]),a("div",re,[Q.value?(i(),p("span",de,"当前账号 "+c(Q.value),1)):k("",!0),H.value?(i(),p("span",ue,c(H.value),1)):k("",!0),f.value!==void 0&&!D.value?(i(),p("span",pe,c(L.value.length)+" 人",1)):k("",!0),U.value>0?(i(),p("span",ce,"已隐藏已完成 "+c(U.value),1)):k("",!0)])]),E.value.length?f.value===void 0?(i(),M(_,{key:1,description:"请选择医生"})):(i(),M(yt,{key:2,data:L.value,class:"dp-table",size:"default","empty-text":ut.value},{default:u(()=>[o(d,{label:"患者","min-width":"200",fixed:"left"},{default:u(({row:s})=>[a("div",{class:j(["dp-cell-user",{"is-my-patients":F(s)}])},[F(s)?(i(),p(z,{key:0},[t[17]||(t[17]=a("div",{class:"dp-my-patients-caption"},"我的患者",-1)),a("div",me,c(dt(s)),1)],64)):k("",!0),a("div",_e,[a("div",fe,c(pt(s.patient_name)),1),a("div",ve,[a("span",ge,c(s.patient_name||"—"),1),a("span",he,c(s.patient_phone||"—"),1)])])],2)]),_:1}),o(d,{label:"预约时间",width:"170"},{default:u(({row:s})=>[a("span",be,c(ct(s)),1)]),_:1}),o(d,{label:"挂号",width:"104",align:"center"},{default:u(({row:s})=>[o($,{type:mt(s.status),effect:"light",round:"",size:"small"},{default:u(()=>[N(c(s.status_desc),1)]),_:2},1032,["type"])]),_:1}),o(d,{label:"面诊进度","min-width":"360"},{default:u(({row:s})=>[a("div",ye,[(i(!0),p(z,null,st(w(s),(I,O)=>(i(),p(z,{key:O},[a("div",{class:j(["dp-step",{"is-done":I.done,"is-current":I.current&&!I.done}])},[a("div",Ne,c(O+1),1),a("div",ke,[a("span",Ee,c(I.label),1),I.hint?(i(),p("span",Se,c(I.hint),1)):k("",!0)])],2),O<3?(i(),p("div",{key:0,class:j(["dp-step-line",{"is-done":I.done}])},null,2)):k("",!0)],64))),128))]),o(B,{percentage:_t(s),"stroke-width":8,class:"dp-progress"},null,8,["percentage"])]),_:1}),o(d,{label:"处方",width:"92",align:"center"},{default:u(({row:s})=>[s.has_prescription?(i(),M($,{key:0,type:"success",effect:"dark",round:"",size:"small"},{default:u(()=>[...t[18]||(t[18]=[N("已开",-1)])]),_:1})):(i(),p("span",xe,"未开"))]),_:1}),o(d,{label:"操作",width:"96",fixed:"right",align:"center"},{default:u(({row:s})=>[s.diagnosis_id?(i(),M(y,{key:0,type:"primary",size:"small",round:"",plain:"",onClick:I=>bt(s.diagnosis_id)},{default:u(()=>[...t[19]||(t[19]=[N(" 诊单 ",-1)])]),_:1},8,["onClick"])):(i(),p("span",Ve,"—"))]),_:1})]),_:1},8,["data","empty-text"])):(i(),M(_,{key:0,description:"暂无医生数据"}))])),[[Nt,D.value]])])}}}),fn=Kt(Ie,[["__scopeId","data-v-6bc1551c"]]);export{fn as default}; diff --git a/server/public/admin/assets/protocol-54IflrUs.js b/server/public/admin/assets/protocol-BloD-dLt.js similarity index 88% rename from server/public/admin/assets/protocol-54IflrUs.js rename to server/public/admin/assets/protocol-BloD-dLt.js index eeaeaf89..96d1bb75 100644 --- a/server/public/admin/assets/protocol-54IflrUs.js +++ b/server/public/admin/assets/protocol-BloD-dLt.js @@ -1 +1 @@ -import{_ as h}from"./index-DbiC_Mh1.js";import{D as w,B as y,C as g,J as E,i as B}from"./element-plus-DFTWCWyi.js";import{_ as U}from"./index.vue_vue_type_style_index_0_lang-BHpNHC57.js";import{c as k,d as C}from"./website-D92RBx7y.js";import{f,as as P,ak as c,I as D,J as i,a as o,aN as m,aP as F,G as N,O as I,F as G}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,n as J}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@wangeditor/editor-Cyf37SuL.js";import"./@wangeditor/editor-for-vue-D1vSph3l.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const O={class:"xl:flex"},j={class:"xl:flex"},A=f({name:"webProtocol"}),Ht=f({...A,setup(T){const e=J({service_title:"",service_content:"",privacy_title:"",privacy_content:"",health_title:"",health_content:""}),_=async()=>{const u=await k();Object.assign(e.value,u)},v=async()=>{await C({...e.value}),_()};return _(),(u,t)=>{const a=g,n=y,p=w,s=U,d=E,b=B,V=h,x=P("perms");return c(),D(G,null,[i("div",O,[o(d,{class:"!border-none flex-1 xl:mr-4 mb-4",shadow:"never"},{header:m(()=>[...t[6]||(t[6]=[i("span",{class:"font-medium"},"服务协议",-1)])]),default:m(()=>[o(p,{model:l(e),"label-width":"80px"},{default:m(()=>[o(n,{label:"协议名称"},{default:m(()=>[o(a,{modelValue:l(e).service_title,"onUpdate:modelValue":t[0]||(t[0]=r=>l(e).service_title=r)},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),o(s,{class:"mb-10",modelValue:l(e).service_content,"onUpdate:modelValue":t[1]||(t[1]=r=>l(e).service_content=r),height:"500"},null,8,["modelValue"])]),_:1}),o(d,{class:"!border-none flex-1 mb-4",shadow:"never"},{header:m(()=>[...t[7]||(t[7]=[i("span",{class:"font-medium"},"隐私协议",-1)])]),default:m(()=>[o(p,{model:l(e),"label-width":"80px"},{default:m(()=>[o(n,{label:"协议名称"},{default:m(()=>[o(a,{modelValue:l(e).privacy_title,"onUpdate:modelValue":t[2]||(t[2]=r=>l(e).privacy_title=r)},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),o(s,{class:"mb-10",modelValue:l(e).privacy_content,"onUpdate:modelValue":t[3]||(t[3]=r=>l(e).privacy_content=r),height:"500"},null,8,["modelValue"])]),_:1})]),i("div",j,[o(d,{class:"!border-none flex-1 mb-4",shadow:"never"},{header:m(()=>[...t[8]||(t[8]=[i("span",{class:"font-medium"},"卫健委备案信息",-1)])]),default:m(()=>[o(p,{model:l(e),"label-width":"80px"},{default:m(()=>[o(n,{label:"协议名称"},{default:m(()=>[o(a,{modelValue:l(e).health_title,"onUpdate:modelValue":t[4]||(t[4]=r=>l(e).health_title=r)},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),o(s,{class:"mb-10",modelValue:l(e).health_content,"onUpdate:modelValue":t[5]||(t[5]=r=>l(e).health_content=r),height:"500"},null,8,["modelValue"])]),_:1})]),F((c(),N(V,null,{default:m(()=>[o(b,{type:"primary",onClick:v},{default:m(()=>[...t[9]||(t[9]=[I("保存",-1)])]),_:1})]),_:1})),[[x,["setting.web.web_setting/setAgreement"]]])],64)}}});export{Ht as default}; +import{_ as h}from"./index-j275bAO5.js";import{D as w,B as y,C as g,J as E,i as B}from"./element-plus-DFTWCWyi.js";import{_ as U}from"./index.vue_vue_type_style_index_0_lang-Dbv7WGME.js";import{c as k,d as C}from"./website-HcLkfBpP.js";import{f,as as P,ak as c,I as D,J as i,a as o,aN as m,aP as F,G as N,O as I,F as G}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,n as J}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@wangeditor/editor-Cyf37SuL.js";import"./@wangeditor/editor-for-vue-D1vSph3l.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const O={class:"xl:flex"},j={class:"xl:flex"},A=f({name:"webProtocol"}),Ht=f({...A,setup(T){const e=J({service_title:"",service_content:"",privacy_title:"",privacy_content:"",health_title:"",health_content:""}),_=async()=>{const u=await k();Object.assign(e.value,u)},v=async()=>{await C({...e.value}),_()};return _(),(u,t)=>{const a=g,n=y,p=w,s=U,d=E,b=B,V=h,x=P("perms");return c(),D(G,null,[i("div",O,[o(d,{class:"!border-none flex-1 xl:mr-4 mb-4",shadow:"never"},{header:m(()=>[...t[6]||(t[6]=[i("span",{class:"font-medium"},"服务协议",-1)])]),default:m(()=>[o(p,{model:l(e),"label-width":"80px"},{default:m(()=>[o(n,{label:"协议名称"},{default:m(()=>[o(a,{modelValue:l(e).service_title,"onUpdate:modelValue":t[0]||(t[0]=r=>l(e).service_title=r)},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),o(s,{class:"mb-10",modelValue:l(e).service_content,"onUpdate:modelValue":t[1]||(t[1]=r=>l(e).service_content=r),height:"500"},null,8,["modelValue"])]),_:1}),o(d,{class:"!border-none flex-1 mb-4",shadow:"never"},{header:m(()=>[...t[7]||(t[7]=[i("span",{class:"font-medium"},"隐私协议",-1)])]),default:m(()=>[o(p,{model:l(e),"label-width":"80px"},{default:m(()=>[o(n,{label:"协议名称"},{default:m(()=>[o(a,{modelValue:l(e).privacy_title,"onUpdate:modelValue":t[2]||(t[2]=r=>l(e).privacy_title=r)},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),o(s,{class:"mb-10",modelValue:l(e).privacy_content,"onUpdate:modelValue":t[3]||(t[3]=r=>l(e).privacy_content=r),height:"500"},null,8,["modelValue"])]),_:1})]),i("div",j,[o(d,{class:"!border-none flex-1 mb-4",shadow:"never"},{header:m(()=>[...t[8]||(t[8]=[i("span",{class:"font-medium"},"卫健委备案信息",-1)])]),default:m(()=>[o(p,{model:l(e),"label-width":"80px"},{default:m(()=>[o(n,{label:"协议名称"},{default:m(()=>[o(a,{modelValue:l(e).health_title,"onUpdate:modelValue":t[4]||(t[4]=r=>l(e).health_title=r)},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),o(s,{class:"mb-10",modelValue:l(e).health_content,"onUpdate:modelValue":t[5]||(t[5]=r=>l(e).health_content=r),height:"500"},null,8,["modelValue"])]),_:1})]),F((c(),N(V,null,{default:m(()=>[o(b,{type:"primary",onClick:v},{default:m(()=>[...t[9]||(t[9]=[I("保存",-1)])]),_:1})]),_:1})),[[x,["setting.web.web_setting/setAgreement"]]])],64)}}});export{Ht as default}; diff --git a/server/public/admin/assets/qywx-D1l8A6TI.js b/server/public/admin/assets/qywx-CDt9a_vU.js similarity index 99% rename from server/public/admin/assets/qywx-D1l8A6TI.js rename to server/public/admin/assets/qywx-CDt9a_vU.js index 03c6677a..d8832791 100644 --- a/server/public/admin/assets/qywx-D1l8A6TI.js +++ b/server/public/admin/assets/qywx-CDt9a_vU.js @@ -1 +1 @@ -import{K as le,J as ae,T as se,i as ne,D as oe,B as ie,C as re,a2 as ue,P as de,ag as me,Q as ce,M as _e,N as fe,q as pe,r as ge,L as ye,g as ve,V as xe,ac as be,ad as we,R as he,e as Se,ah as ke,ai as Ce,aa as Ve,ab as Ee}from"./element-plus-DFTWCWyi.js";import{_ as Te}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as kt}from"./@vue/runtime-dom-DDAG46FW.js";import{a1 as Ae,a2 as Ne,L as rt,Y as ze}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as qe}from"./usePaging-VsbTxSU0.js";import{r as z,i as A,_ as De}from"./index-Nt5zMHcc.js";import{f as $e,b as Le,d as Ue,ak as u,I as c,a,aN as l,J as n,H as N,F as E,ap as T,O as d,G as x,aP as Ie,A as Z}from"./@vue/runtime-core-C6bnekPw.js";import{r as U,y as b,a as Pe,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as r,p as je,o as Me}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function He(L){return z.get({url:"/qywx.customer/lists",params:L})}function Be(){return z.post({url:"/qywx.customer/sync"})}function Ke(){return z.get({url:"/qywx.customer/stats"})}function Re(){return z.get({url:"/qywx.customer/tagStats"})}function Fe(){return z.get({url:"/qywx.customer/todayArrival"})}function Ge(L){return z.get({url:"/qywx.customer/todayArrivalList",params:L})}function Oe(){return z.get({url:"/qywx.customer/getSyncSettings"})}function Ye(L){return z.post({url:"/qywx.customer/saveSyncSettings",params:L})}const Je={class:"qywx-customer-page p-4"},Qe={class:"flex items-center justify-between"},We={class:"flex gap-2"},Xe={class:"grid grid-cols-4 gap-4 mb-4"},Ze={class:"text-2xl font-bold text-primary"},tl={class:"flex items-center justify-between mb-1"},el={key:0,class:"text-xs text-gray-400"},ll={class:"flex items-end gap-2"},al={class:"text-2xl font-bold text-success leading-none"},sl=["title"],nl={class:"mt-2 pt-2 border-t border-gray-100"},ol={class:"text-lg font-semibold text-gray-800"},il={class:"text-sm font-medium"},rl={class:"flex items-center justify-between gap-3"},ul={class:"text-xs text-gray-400"},dl={class:"flex items-center gap-2"},ml={class:"font-medium"},cl={class:"text-xs text-gray-400"},_l={key:0},fl={key:1,class:"text-gray-400"},pl={key:0},gl={key:0,class:"ml-1 text-gray-400 text-xs"},yl={key:1,class:"text-gray-400"},vl={class:"flex justify-end mt-4"},xl={class:"flex items-center justify-between w-full pr-4"},bl={class:"flex items-center gap-3"},wl={class:"px-1"},hl={key:0,class:"mb-3"},Sl={class:"flex flex-wrap gap-1"},kl={class:"flex items-start gap-2"},Cl={class:"flex-1 min-w-0"},Vl={class:"text-sm font-medium truncate"},El={class:"text-xs text-gray-500 mt-0.5"},Tl={key:0,class:"ml-2"},Al={key:1,class:"ml-2 text-emerald-500"},Nl={key:3,class:"mt-3 text-center"},zl={class:"flex items-center justify-between w-full pr-4"},ql={class:"flex items-center gap-3"},Dl={class:"px-1"},$l={class:"grid grid-cols-3 gap-2 mb-3"},Ll={class:"text-xl font-bold text-warning"},Ul={class:"text-xl font-bold"},Il={class:"text-xl font-bold"},Pl={class:"flex items-center gap-2 w-full"},jl={class:"font-medium"},Ml={class:"ml-auto text-xs text-gray-500"},Hl={class:"font-medium"},Bl={class:"text-xs text-gray-400 truncate"},Kl={class:"text-warning font-bold"},Rl={key:0},Fl={key:1,class:"text-gray-400"},Gl={key:0},Ol={key:0,class:"ml-1 text-gray-400 text-xs"},Yl={key:1,class:"text-gray-400"},Jl=$e({__name:"qywx",setup(L){const I=k(!1),P=k(!1),tt=k(!1),y=k(null),C=U({total:0,today:0,today_follow_staff:0,lastSync:"",syncStatus:"idle",syncStatusText:"未同步"}),Ct=Z(()=>{switch(C.syncStatus){case"success":return"success";case"syncing":return"warning";case"failed":return"danger";default:return"info"}}),w=U({auto_sync:!1,interval:3600}),_=U({name:"",follow_user:"",tag_ids:[],add_time_start:"",add_time_end:""}),et=k(null);function Vt(e){e&&e.length===2&&e[0]&&e[1]?(_.add_time_start=e[0],_.add_time_end=e[1]):(_.add_time_start="",_.add_time_end=""),q()}const v=U({total_tags:0,total_relations:0,total_tagged_customers:0,groups:[]}),j=k(!1),F=k(!1),lt=k(""),at=k([]),ut=Z(()=>{const e=lt.value.trim().toLowerCase();if(!e)return v.groups;const t=[];for(const i of v.groups){const m=(i.group_name||"").toLowerCase().includes(e),g=i.tags.filter(p=>m||(p.tag_name||"").toLowerCase().includes(e));g.length&&t.push({...i,tags:g})}return t});async function st(e=!1){j.value=!0;try{const t=await Re();t&&typeof t=="object"&&(v.total_tags=Number(t.total_tags??0),v.total_relations=Number(t.total_relations??0),v.total_tagged_customers=Number(t.total_tagged_customers??0),v.groups=Array.isArray(t.groups)?t.groups:[]),e&&A.msgSuccess("已刷新")}catch(t){e&&A.msgError((t==null?void 0:t.message)||"加载标签统计失败"),console.error("加载标签统计失败",t)}finally{j.value=!1}}function Et(){var e;F.value=!0,at.value=(e=v.groups[0])!=null&&e.group_name?[v.groups[0].group_name]:[],v.groups.length===0&&st()}function Tt(e){e&&(_.tag_ids.includes(e)||(_.tag_ids.push(e),q()))}function At(e){e&&(_.tag_ids=[e],F.value=!1,q())}const h=U({total:0,recent_time:0,hourly:new Array(24).fill(0),by_state:[]}),M=k(!1),G=k(!1),f=U({total:0,page_no:1,page_size:20,lists:[]}),Nt=new Date().getHours(),zt=Z(()=>Math.max(1,...h.hourly));function qt(e){if(e<=0)return"2px";const t=e/zt.value;return Math.max(4,Math.round(t*32))+"px"}const Dt=Z(()=>{const e=[];return h.hourly.forEach((t,i)=>{t>0&&e.push(`${String(i).padStart(2,"0")}:00 · ${t}`)}),e.length?e.join(" "):"今天还没有人进入"});async function O(e=!1){try{const t=await Fe();t&&(h.total=Number(t.total??0),h.recent_time=Number(t.recent_time??0),h.hourly=Array.isArray(t.hourly)&&t.hourly.length===24?t.hourly.map(i=>Number(i)||0):new Array(24).fill(0),h.by_state=Array.isArray(t.by_state)?t.by_state:[])}catch(t){console.error("加载今日进入分布失败",t)}e&&M.value&&(f.page_no=1,f.lists=[],await nt())}async function nt(){G.value=!0;try{const e=await Ge({page_no:f.page_no,page_size:f.page_size});if(e){f.total=Number(e.total??0);const t=Array.isArray(e.lists)?e.lists:[];f.page_no===1?f.lists=t:f.lists.push(...t)}}catch(e){console.error("加载今日进入明细失败",e)}finally{G.value=!1}}async function dt(){M.value=!0,f.page_no=1,f.lists=[],await Promise.all([O(!1),nt()])}async function $t(){f.lists.length>=f.total||(f.page_no+=1,await nt())}function Lt(e){if(!e||e<=0)return"";const t=new Date(e<1e12?e*1e3:e);return`${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}`}function Ut(e){if(!e||e<=0)return"—";const t=new Date(e<1e12?e*1e3:e);return`${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}:${String(t.getSeconds()).padStart(2,"0")}`}let H=null,Y=null;function ot(){Y!==null&&(clearInterval(Y),Y=null)}async function It(e){return He(e)}const{pager:B,getLists:J,resetPage:q,resetParams:Pt}=qe({fetchFun:It,params:_});function jt(){_.name="",_.follow_user="",_.tag_ids=[],_.add_time_start="",_.add_time_end="",et.value=null,Pt()}function Mt(){ot();let e=0;Y=window.setInterval(async()=>{e+=1,await Q(),await J(),(C.syncStatus!=="syncing"||e>=120)&&(ot(),I.value=!1,e>=120&&C.syncStatus==="syncing"?A.msgWarning("长时间仍为「同步中」,请刷新页面或查看服务器 runtime/log/qywx_sync.log(可能未安装 CLI php 或禁用了 exec)"):C.syncStatus==="failed"&&A.msgError("同步失败,请查看服务器 runtime/log/qywx_sync.log 或后台同步状态"))},3e3)}async function mt(e){const t=(e==null?void 0:e.silent)===!0;I.value=!0;try{const i=await Be();t||A.msgSuccess((i==null?void 0:i.message)||"操作成功"),await Q(),await J(),i!=null&&i.background?Mt():I.value=!1}catch(i){const m=(i==null?void 0:i.message)||(i==null?void 0:i.msg)||"同步失败";(!t||!String(m).includes("正在执行"))&&A.msgError(m),I.value=!1}}async function Q(){try{const e=await Ke();e&&typeof e=="object"&&Object.assign(C,e)}catch(e){console.error("加载统计失败",e)}}async function Ht(){try{const e=await Oe();e&&typeof e=="object"&&Object.assign(w,e),w.auto_sync&&ct()}catch(e){console.error("加载同步设置失败",e)}}async function Bt(){try{await Ye(w),A.msgSuccess("保存成功"),P.value=!1,_t(),w.auto_sync&&ct()}catch(e){A.msgError((e==null?void 0:e.message)||"保存失败")}}function ct(){H||(H=window.setInterval(()=>{mt({silent:!0})},w.interval*1e3))}function _t(){H&&(clearInterval(H),H=null)}function Kt(e){y.value=e,tt.value=!0}function ft(e){const t=String((e==null?void 0:e.admin_name)??"").trim(),i=String((e==null?void 0:e.userid)??"").trim(),m=String((e==null?void 0:e.name)??"").trim();return t||(m&&i?`${m}(${i})`:m||i||"—")}function W(e){const t=String((e==null?void 0:e.admin_name)??"").trim(),i=String((e==null?void 0:e.userid)??"").trim(),m=[];return t&&m.push("后台:"+t),i&&m.push("企微:"+i),m.join("|")}function pt(e){if(!e)return null;const t=Number(e.external_first_add_time??0);if(t>0)return t;const i=e.follow_users;if(Array.isArray(i)&&i.length>0){let m=0;for(const g of i){const p=Number((g==null?void 0:g.createtime)??0);p>0&&(m===0||p0)return m}return e.create_time??null}function X(e){if(e===""||e===null||e===void 0)return"—";const t=Number(e),i=typeof e=="string"&&/^\d+$/.test(e.trim());let m;return typeof e=="number"?m=e<1e12?e*1e3:e:!Number.isNaN(t)&&i?m=t<1e12?t*1e3:t:m=new Date(e).getTime(),Number.isNaN(m)?"—":new Date(m).toLocaleString("zh-CN")}let K=null;function Rt(){K===null&&(K=window.setInterval(()=>{Q(),O(M.value)},3e4))}function Ft(){K!==null&&(clearInterval(K),K=null)}return Le(()=>{J(),Q(),Ht(),O(!1),st(),Rt()}),Ue(()=>{_t(),ot(),Ft()}),(e,t)=>{const i=ne,m=le,g=ae,p=se,it=re,D=ie,Gt=ue,$=ce,Ot=me,gt=de,yt=oe,vt=pe,S=fe,xt=ge,bt=_e,Yt=Te,Jt=ve,wt=xe,Qt=we,Wt=be,ht=he,St=Se,Xt=Ce,Zt=ke,V=Ee,te=Ve,ee=ye;return u(),c("div",Je,[a(g,{shadow:"never",class:"mb-4"},{header:l(()=>[n("div",Qe,[t[22]||(t[22]=n("span",{class:"text-lg font-semibold"},"企业微信客户管理",-1)),n("div",We,[a(i,{type:"success",plain:"",onClick:dt},{icon:l(()=>[a(b(Ae))]),default:l(()=>[t[18]||(t[18]=d(" 今日进入明细 ",-1))]),_:1}),a(i,{type:"warning",plain:"",onClick:Et},{icon:l(()=>[a(b(Ne))]),default:l(()=>[t[19]||(t[19]=d(" 标签维度 ",-1))]),_:1}),a(i,{type:"primary",loading:I.value,onClick:t[0]||(t[0]=s=>mt())},{icon:l(()=>[a(b(rt))]),default:l(()=>[t[20]||(t[20]=d(" 立即同步 ",-1))]),_:1},8,["loading"]),a(i,{onClick:t[1]||(t[1]=s=>P.value=!0)},{icon:l(()=>[a(b(ze))]),default:l(()=>[t[21]||(t[21]=d(" 同步设置 ",-1))]),_:1})])])]),default:l(()=>[a(m,{title:"功能说明",type:"info",closable:!1,class:"mb-4"},{default:l(()=>[...t[23]||(t[23]=[n("div",{class:"text-sm"},[n("p",null,"自动从企业微信同步外部联系人(客户)信息,包括客户基本信息、跟进人等。"),n("p",{class:"mt-1"},"同步后的数据可用于患者信息匹配和自动关联。")],-1)])]),_:1}),n("div",Xe,[a(g,{shadow:"hover"},{default:l(()=>[t[24]||(t[24]=n("div",{class:"text-gray-500 text-sm mb-1"},"总客户数",-1)),n("div",Ze,r(C.total),1)]),_:1}),a(g,{shadow:"hover",class:"today-arrival-card cursor-pointer",onClick:dt},{default:l(()=>[n("div",tl,[t[25]||(t[25]=n("span",{class:"text-gray-500 text-sm"},"今日新增",-1)),h.recent_time?(u(),c("span",el," 最近 "+r(Lt(h.recent_time)),1)):N("",!0)]),n("div",ll,[n("div",al,r(C.today),1),t[26]||(t[26]=n("div",{class:"text-xs text-gray-400 pb-1"},"人",-1))]),n("div",{class:"hourly-bars mt-2",title:Dt.value},[(u(!0),c(E,null,T(h.hourly,(s,o)=>(u(),c("div",{key:o,class:Me(["hourly-bar",{"is-empty":s===0,"is-current":o===b(Nt)}]),style:je({height:qt(s)})},null,6))),128))],8,sl),n("div",nl,[t[27]||(t[27]=n("div",{class:"text-gray-500 text-xs mb-0.5"},"今日跟进人合计",-1)),n("div",ol,r(C.today_follow_staff),1)])]),_:1}),a(g,{shadow:"hover"},{default:l(()=>[t[28]||(t[28]=n("div",{class:"text-gray-500 text-sm mb-1"},"最后同步",-1)),n("div",il,r(C.lastSync||"未同步"),1)]),_:1}),a(g,{shadow:"hover"},{default:l(()=>[t[29]||(t[29]=n("div",{class:"text-gray-500 text-sm mb-1"},"同步状态",-1)),a(p,{type:Ct.value,size:"small"},{default:l(()=>[d(r(C.syncStatusText),1)]),_:1},8,["type"])]),_:1})])]),_:1}),a(g,{shadow:"never"},{default:l(()=>[a(yt,{model:_,inline:"",class:"mb-4"},{default:l(()=>[a(D,{label:"客户名称"},{default:l(()=>[a(it,{modelValue:_.name,"onUpdate:modelValue":t[2]||(t[2]=s=>_.name=s),placeholder:"搜索客户名称",clearable:"",onKeyup:kt(b(q),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(D,{label:"跟进人"},{default:l(()=>[a(it,{modelValue:_.follow_user,"onUpdate:modelValue":t[3]||(t[3]=s=>_.follow_user=s),placeholder:"跟进人姓名",clearable:"",onKeyup:kt(b(q),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(D,{label:"添加时间"},{default:l(()=>[a(Gt,{modelValue:et.value,"onUpdate:modelValue":t[4]||(t[4]=s=>et.value=s),type:"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始日期","end-placeholder":"结束日期",clearable:"",class:"!w-[280px]",onChange:Vt},null,8,["modelValue"])]),_:1}),a(D,{label:"标签"},{default:l(()=>[a(gt,{modelValue:_.tag_ids,"onUpdate:modelValue":t[5]||(t[5]=s=>_.tag_ids=s),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",filterable:"",placeholder:"按标签筛选(可多选,命中任一即返回)",loading:j.value,style:{"min-width":"320px"},onChange:b(q)},{default:l(()=>[(u(!0),c(E,null,T(v.groups,s=>(u(),x(Ot,{key:s.group_name||"_",label:(s.group_name||"(未分组)")+" · "+s.customer_count},{default:l(()=>[(u(!0),c(E,null,T(s.tags,o=>(u(),x($,{key:o.tag_id,value:o.tag_id,label:o.tag_name},{default:l(()=>[n("span",rl,[n("span",null,r(o.tag_name),1),n("span",ul,r(o.customer_count)+" 人",1)])]),_:2},1032,["value","label"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","loading","onChange"])]),_:1}),a(D,null,{default:l(()=>[a(i,{type:"primary",onClick:b(q)},{default:l(()=>[...t[30]||(t[30]=[d("查询",-1)])]),_:1},8,["onClick"]),a(i,{onClick:jt},{default:l(()=>[...t[31]||(t[31]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),Ie((u(),x(bt,{data:b(B).lists,stripe:""},{default:l(()=>[a(S,{label:"客户信息","min-width":"200"},{default:l(({row:s})=>[n("div",dl,[a(vt,{size:40,src:s.avatar},null,8,["src"]),n("div",null,[n("div",ml,r(s.name),1),n("div",cl,r(s.external_userid),1)])])]),_:1}),a(S,{label:"类型",width:"80"},{default:l(({row:s})=>[a(p,{size:"small"},{default:l(()=>[d(r(s.type===1?"微信":"企微"),1)]),_:2},1024)]),_:1}),a(S,{label:"性别",width:"60"},{default:l(({row:s})=>[d(r(s.gender===1?"男":s.gender===2?"女":"未知"),1)]),_:1}),a(S,{label:"跟进人","min-width":"150"},{default:l(({row:s})=>[s.follow_users&&s.follow_users.length?(u(),c("div",_l,[(u(!0),c(E,null,T(s.follow_users,(o,R)=>(u(),x(xt,{key:(o.userid||"")+"-"+R,disabled:!W(o),content:W(o),placement:"top"},{default:l(()=>[a(p,{size:"small",class:"mr-1 mb-1"},{default:l(()=>[d(r(ft(o)),1)]),_:2},1024)]),_:2},1032,["disabled","content"]))),128))])):(u(),c("span",fl,"—"))]),_:1}),a(S,{label:"标签","min-width":"180"},{default:l(({row:s})=>[s.tags&&s.tags.length?(u(),c("div",pl,[(u(!0),c(E,null,T(s.tags,o=>(u(),x(p,{key:o.tag_id,size:"small",effect:"light",type:"warning",class:"mr-1 mb-1 cursor-pointer",onClick:R=>Tt(o.tag_id)},{default:l(()=>[d(r(o.tag_name)+" ",1),o.group_name?(u(),c("span",gl,r(o.group_name),1)):N("",!0)]),_:2},1032,["onClick"]))),128))])):(u(),c("span",yl,"—"))]),_:1}),a(S,{label:"添加时间",width:"160"},{default:l(({row:s})=>[d(r(X(pt(s))),1)]),_:1}),a(S,{label:"更新时间",width:"160"},{default:l(({row:s})=>[d(r(X(s.update_time)),1)]),_:1}),a(S,{label:"操作",width:"120",fixed:"right"},{default:l(({row:s})=>[a(i,{type:"primary",link:"",onClick:o=>Kt(s)},{default:l(()=>[...t[32]||(t[32]=[d("查看详情",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[ee,b(B).loading]]),n("div",vl,[a(Yt,{modelValue:b(B),"onUpdate:modelValue":t[6]||(t[6]=s=>Pe(B)?B.value=s:null),onChange:b(J)},null,8,["modelValue","onChange"])])]),_:1}),a(wt,{modelValue:P.value,"onUpdate:modelValue":t[10]||(t[10]=s=>P.value=s),title:"同步设置",width:"500px"},{footer:l(()=>[a(i,{onClick:t[9]||(t[9]=s=>P.value=!1)},{default:l(()=>[...t[34]||(t[34]=[d("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Bt},{default:l(()=>[...t[35]||(t[35]=[d("保存",-1)])]),_:1})]),default:l(()=>[a(yt,{model:w,"label-width":"120px"},{default:l(()=>[a(D,{label:"自动同步"},{default:l(()=>[a(Jt,{modelValue:w.auto_sync,"onUpdate:modelValue":t[7]||(t[7]=s=>w.auto_sync=s)},null,8,["modelValue"]),t[33]||(t[33]=n("div",{class:"text-xs text-gray-400 mt-1"}," 开启后将定时自动同步企业微信客户数据 ",-1))]),_:1}),a(D,{label:"同步间隔"},{default:l(()=>[a(gt,{modelValue:w.interval,"onUpdate:modelValue":t[8]||(t[8]=s=>w.interval=s),disabled:!w.auto_sync},{default:l(()=>[a($,{label:"每小时",value:3600}),a($,{label:"每2小时",value:7200}),a($,{label:"每4小时",value:14400}),a($,{label:"每6小时",value:21600}),a($,{label:"每12小时",value:43200}),a($,{label:"每天",value:86400})]),_:1},8,["modelValue","disabled"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),a(St,{modelValue:M.value,"onUpdate:modelValue":t[12]||(t[12]=s=>M.value=s),title:"今日进入明细",direction:"rtl",size:"520px","destroy-on-close":!1},{header:l(()=>[n("div",xl,[n("div",bl,[t[36]||(t[36]=n("span",{class:"text-base font-semibold"},"今日进入明细",-1)),a(p,{type:"success",effect:"plain"},{default:l(()=>[d("共 "+r(f.total)+" 人",1)]),_:1})]),a(i,{link:"",type:"primary",loading:G.value,onClick:t[11]||(t[11]=s=>O(!0))},{icon:l(()=>[a(b(rt))]),default:l(()=>[t[37]||(t[37]=d(" 刷新 ",-1))]),_:1},8,["loading"])])]),default:l(()=>{var s;return[n("div",wl,[a(m,{type:"info",closable:!1,class:"mb-3","show-icon":""},{title:l(()=>[...t[38]||(t[38]=[n("span",{class:"text-xs"}," 一次推送 = 一个人进来;数据来源为企微回调流水表(INSERT IGNORE 幂等),与客户同步解耦,数字零误差。 ",-1)])]),_:1}),(s=h.by_state)!=null&&s.length?(u(),c("div",hl,[t[39]||(t[39]=n("div",{class:"text-xs text-gray-500 mb-1"},"今日推广渠道 Top",-1)),n("div",Sl,[(u(!0),c(E,null,T(h.by_state,o=>(u(),x(p,{key:o.state||"_",size:"small",effect:"light",type:"success"},{default:l(()=>[d(r(o.state||"(无 state)")+" · "+r(o.count),1)]),_:2},1024))),128))])])):N("",!0),f.lists.length?(u(),x(Wt,{key:1,class:"mt-2"},{default:l(()=>[(u(!0),c(E,null,T(f.lists,o=>(u(),x(Qt,{key:o.id,timestamp:Ut(o.event_time),placement:"top",type:"success",hollow:!1},{default:l(()=>[n("div",kl,[a(vt,{size:32,src:o.customer_avatar||void 0},{default:l(()=>[d(r((o.customer_name||"?").slice(0,1)),1)]),_:2},1032,["src"]),n("div",Cl,[n("div",Vl,r(o.customer_name||o.external_userid||"(未知客户)"),1),n("div",El,[n("span",null,"接待:"+r(o.admin_name||o.user_id||"—"),1),o.state?(u(),c("span",Tl,[t[40]||(t[40]=d(" 渠道:",-1)),a(p,{size:"small",type:"info",effect:"plain"},{default:l(()=>[d(r(o.state),1)]),_:2},1024)])):N("",!0),o.welcome_code?(u(),c("span",Al,"欢迎语")):N("",!0)])])])]),_:2},1032,["timestamp"]))),128))]),_:1})):(u(),x(ht,{key:2,description:"今天还没有人进入","image-size":80})),f.total>f.lists.length?(u(),c("div",Nl,[a(i,{loading:G.value,size:"small",onClick:$t},{default:l(()=>[d(" 加载更多(还剩 "+r(f.total-f.lists.length)+") ",1)]),_:1},8,["loading"])])):N("",!0)])]}),_:1},8,["modelValue"]),a(St,{modelValue:F.value,"onUpdate:modelValue":t[16]||(t[16]=s=>F.value=s),title:"标签维度统计",direction:"rtl",size:"560px","destroy-on-close":!1},{header:l(()=>[n("div",zl,[n("div",ql,[t[41]||(t[41]=n("span",{class:"text-base font-semibold"},"标签维度统计",-1)),a(p,{type:"warning",effect:"plain"},{default:l(()=>[d(r(v.groups.length)+" 组 · "+r(v.total_tags)+" 标签 ",1)]),_:1})]),a(i,{link:"",type:"primary",loading:j.value,onClick:t[13]||(t[13]=s=>st(!0))},{icon:l(()=>[a(b(rt))]),default:l(()=>[t[42]||(t[42]=d(" 刷新 ",-1))]),_:1},8,["loading"])])]),default:l(()=>[n("div",Dl,[n("div",$l,[a(g,{shadow:"never","body-class":"!p-3"},{default:l(()=>[t[43]||(t[43]=n("div",{class:"text-xs text-gray-500"},"已打标签客户",-1)),n("div",Ll,r(v.total_tagged_customers),1)]),_:1}),a(g,{shadow:"never","body-class":"!p-3"},{default:l(()=>[t[44]||(t[44]=n("div",{class:"text-xs text-gray-500"},"标签数",-1)),n("div",Ul,r(v.total_tags),1)]),_:1}),a(g,{shadow:"never","body-class":"!p-3"},{default:l(()=>[t[45]||(t[45]=n("div",{class:"text-xs text-gray-500"},"关系总数",-1)),n("div",Il,r(v.total_relations),1)]),_:1})]),a(it,{modelValue:lt.value,"onUpdate:modelValue":t[14]||(t[14]=s=>lt.value=s),placeholder:"筛选标签名 / 分组名",clearable:"",size:"small",class:"mb-3"},null,8,["modelValue"]),ut.value.length===0?(u(),x(ht,{key:0,description:j.value?"加载中…":"暂无标签数据","image-size":64},null,8,["description"])):(u(),x(Zt,{key:1,modelValue:at.value,"onUpdate:modelValue":t[15]||(t[15]=s=>at.value=s)},{default:l(()=>[(u(!0),c(E,null,T(ut.value,s=>(u(),x(Xt,{key:s.group_name||"_",name:s.group_name||"_"},{title:l(()=>[n("div",Pl,[n("span",jl,r(s.group_name||"(未分组)"),1),a(p,{size:"small",effect:"plain"},{default:l(()=>[d(r(s.tags.length),1)]),_:2},1024),n("span",Ml," 最热 "+r(s.customer_count)+" 人 ",1)])]),default:l(()=>[a(bt,{data:s.tags,size:"small",stripe:""},{default:l(()=>[a(S,{label:"标签","min-width":"160"},{default:l(({row:o})=>[n("span",Hl,r(o.tag_name),1),n("div",Bl,r(o.tag_id),1)]),_:1}),a(S,{label:"客户数",width:"100",align:"right"},{default:l(({row:o})=>[n("span",Kl,r(o.customer_count),1)]),_:1}),a(S,{label:"操作",width:"80",align:"center"},{default:l(({row:o})=>[a(i,{link:"",type:"primary",size:"small",onClick:R=>At(o.tag_id)},{default:l(()=>[...t[46]||(t[46]=[d(" 筛选 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]))])]),_:1},8,["modelValue"]),a(wt,{modelValue:tt.value,"onUpdate:modelValue":t[17]||(t[17]=s=>tt.value=s),title:"客户详情",width:"600px"},{default:l(()=>[y.value?(u(),x(te,{key:0,column:2,border:""},{default:l(()=>[a(V,{label:"客户名称"},{default:l(()=>[d(r(y.value.name),1)]),_:1}),a(V,{label:"External ID"},{default:l(()=>[d(r(y.value.external_userid),1)]),_:1}),a(V,{label:"性别"},{default:l(()=>[d(r(y.value.gender===1?"男":y.value.gender===2?"女":"未知"),1)]),_:1}),a(V,{label:"类型"},{default:l(()=>[d(r(y.value.type===1?"微信用户":"企业微信用户"),1)]),_:1}),a(V,{label:"企业名称",span:2},{default:l(()=>[d(r(y.value.corp_name||"—"),1)]),_:1}),a(V,{label:"职位",span:2},{default:l(()=>[d(r(y.value.position||"—"),1)]),_:1}),a(V,{label:"添加时间",span:2},{default:l(()=>[d(r(X(pt(y.value))),1)]),_:1}),a(V,{label:"更新时间",span:2},{default:l(()=>[d(r(X(y.value.update_time)),1)]),_:1}),a(V,{label:"跟进人",span:2},{default:l(()=>{var s;return[(s=y.value.follow_users)!=null&&s.length?(u(),c("div",Rl,[(u(!0),c(E,null,T(y.value.follow_users,(o,R)=>(u(),x(xt,{key:(o.userid||"")+"-"+R,disabled:!W(o),content:W(o),placement:"top"},{default:l(()=>[a(p,{size:"small",class:"mr-1 mb-1"},{default:l(()=>[d(r(ft(o)),1)]),_:2},1024)]),_:2},1032,["disabled","content"]))),128))])):(u(),c("span",Fl,"—"))]}),_:1}),a(V,{label:"标签",span:2},{default:l(()=>{var s;return[(s=y.value.tags)!=null&&s.length?(u(),c("div",Gl,[(u(!0),c(E,null,T(y.value.tags,o=>(u(),x(p,{key:o.tag_id,size:"small",effect:"light",type:"warning",class:"mr-1 mb-1"},{default:l(()=>[d(r(o.tag_name)+" ",1),o.group_name?(u(),c("span",Ol,r(o.group_name),1)):N("",!0)]),_:2},1024))),128))])):(u(),c("span",Yl,"—"))]}),_:1})]),_:1})):N("",!0)]),_:1},8,["modelValue"])])}}}),La=De(Jl,[["__scopeId","data-v-07da3e76"]]);export{La as default}; +import{K as le,J as ae,T as se,i as ne,D as oe,B as ie,C as re,a2 as ue,P as de,ag as me,Q as ce,M as _e,N as fe,q as pe,r as ge,L as ye,g as ve,V as xe,ac as be,ad as we,R as he,e as Se,ah as ke,ai as Ce,aa as Ve,ab as Ee}from"./element-plus-DFTWCWyi.js";import{_ as Te}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as kt}from"./@vue/runtime-dom-DDAG46FW.js";import{a1 as Ae,a2 as Ne,L as rt,Y as ze}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as qe}from"./usePaging-VsbTxSU0.js";import{r as z,i as A,_ as De}from"./index--WnM67ZH.js";import{f as $e,b as Le,d as Ue,ak as u,I as c,a,aN as l,J as n,H as N,F as E,ap as T,O as d,G as x,aP as Ie,A as Z}from"./@vue/runtime-core-C6bnekPw.js";import{r as U,y as b,a as Pe,n as k}from"./@vue/reactivity-DiY1c2vO.js";import{Q as r,p as je,o as Me}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";function He(L){return z.get({url:"/qywx.customer/lists",params:L})}function Be(){return z.post({url:"/qywx.customer/sync"})}function Ke(){return z.get({url:"/qywx.customer/stats"})}function Re(){return z.get({url:"/qywx.customer/tagStats"})}function Fe(){return z.get({url:"/qywx.customer/todayArrival"})}function Ge(L){return z.get({url:"/qywx.customer/todayArrivalList",params:L})}function Oe(){return z.get({url:"/qywx.customer/getSyncSettings"})}function Ye(L){return z.post({url:"/qywx.customer/saveSyncSettings",params:L})}const Je={class:"qywx-customer-page p-4"},Qe={class:"flex items-center justify-between"},We={class:"flex gap-2"},Xe={class:"grid grid-cols-4 gap-4 mb-4"},Ze={class:"text-2xl font-bold text-primary"},tl={class:"flex items-center justify-between mb-1"},el={key:0,class:"text-xs text-gray-400"},ll={class:"flex items-end gap-2"},al={class:"text-2xl font-bold text-success leading-none"},sl=["title"],nl={class:"mt-2 pt-2 border-t border-gray-100"},ol={class:"text-lg font-semibold text-gray-800"},il={class:"text-sm font-medium"},rl={class:"flex items-center justify-between gap-3"},ul={class:"text-xs text-gray-400"},dl={class:"flex items-center gap-2"},ml={class:"font-medium"},cl={class:"text-xs text-gray-400"},_l={key:0},fl={key:1,class:"text-gray-400"},pl={key:0},gl={key:0,class:"ml-1 text-gray-400 text-xs"},yl={key:1,class:"text-gray-400"},vl={class:"flex justify-end mt-4"},xl={class:"flex items-center justify-between w-full pr-4"},bl={class:"flex items-center gap-3"},wl={class:"px-1"},hl={key:0,class:"mb-3"},Sl={class:"flex flex-wrap gap-1"},kl={class:"flex items-start gap-2"},Cl={class:"flex-1 min-w-0"},Vl={class:"text-sm font-medium truncate"},El={class:"text-xs text-gray-500 mt-0.5"},Tl={key:0,class:"ml-2"},Al={key:1,class:"ml-2 text-emerald-500"},Nl={key:3,class:"mt-3 text-center"},zl={class:"flex items-center justify-between w-full pr-4"},ql={class:"flex items-center gap-3"},Dl={class:"px-1"},$l={class:"grid grid-cols-3 gap-2 mb-3"},Ll={class:"text-xl font-bold text-warning"},Ul={class:"text-xl font-bold"},Il={class:"text-xl font-bold"},Pl={class:"flex items-center gap-2 w-full"},jl={class:"font-medium"},Ml={class:"ml-auto text-xs text-gray-500"},Hl={class:"font-medium"},Bl={class:"text-xs text-gray-400 truncate"},Kl={class:"text-warning font-bold"},Rl={key:0},Fl={key:1,class:"text-gray-400"},Gl={key:0},Ol={key:0,class:"ml-1 text-gray-400 text-xs"},Yl={key:1,class:"text-gray-400"},Jl=$e({__name:"qywx",setup(L){const I=k(!1),P=k(!1),tt=k(!1),y=k(null),C=U({total:0,today:0,today_follow_staff:0,lastSync:"",syncStatus:"idle",syncStatusText:"未同步"}),Ct=Z(()=>{switch(C.syncStatus){case"success":return"success";case"syncing":return"warning";case"failed":return"danger";default:return"info"}}),w=U({auto_sync:!1,interval:3600}),_=U({name:"",follow_user:"",tag_ids:[],add_time_start:"",add_time_end:""}),et=k(null);function Vt(e){e&&e.length===2&&e[0]&&e[1]?(_.add_time_start=e[0],_.add_time_end=e[1]):(_.add_time_start="",_.add_time_end=""),q()}const v=U({total_tags:0,total_relations:0,total_tagged_customers:0,groups:[]}),j=k(!1),F=k(!1),lt=k(""),at=k([]),ut=Z(()=>{const e=lt.value.trim().toLowerCase();if(!e)return v.groups;const t=[];for(const i of v.groups){const m=(i.group_name||"").toLowerCase().includes(e),g=i.tags.filter(p=>m||(p.tag_name||"").toLowerCase().includes(e));g.length&&t.push({...i,tags:g})}return t});async function st(e=!1){j.value=!0;try{const t=await Re();t&&typeof t=="object"&&(v.total_tags=Number(t.total_tags??0),v.total_relations=Number(t.total_relations??0),v.total_tagged_customers=Number(t.total_tagged_customers??0),v.groups=Array.isArray(t.groups)?t.groups:[]),e&&A.msgSuccess("已刷新")}catch(t){e&&A.msgError((t==null?void 0:t.message)||"加载标签统计失败"),console.error("加载标签统计失败",t)}finally{j.value=!1}}function Et(){var e;F.value=!0,at.value=(e=v.groups[0])!=null&&e.group_name?[v.groups[0].group_name]:[],v.groups.length===0&&st()}function Tt(e){e&&(_.tag_ids.includes(e)||(_.tag_ids.push(e),q()))}function At(e){e&&(_.tag_ids=[e],F.value=!1,q())}const h=U({total:0,recent_time:0,hourly:new Array(24).fill(0),by_state:[]}),M=k(!1),G=k(!1),f=U({total:0,page_no:1,page_size:20,lists:[]}),Nt=new Date().getHours(),zt=Z(()=>Math.max(1,...h.hourly));function qt(e){if(e<=0)return"2px";const t=e/zt.value;return Math.max(4,Math.round(t*32))+"px"}const Dt=Z(()=>{const e=[];return h.hourly.forEach((t,i)=>{t>0&&e.push(`${String(i).padStart(2,"0")}:00 · ${t}`)}),e.length?e.join(" "):"今天还没有人进入"});async function O(e=!1){try{const t=await Fe();t&&(h.total=Number(t.total??0),h.recent_time=Number(t.recent_time??0),h.hourly=Array.isArray(t.hourly)&&t.hourly.length===24?t.hourly.map(i=>Number(i)||0):new Array(24).fill(0),h.by_state=Array.isArray(t.by_state)?t.by_state:[])}catch(t){console.error("加载今日进入分布失败",t)}e&&M.value&&(f.page_no=1,f.lists=[],await nt())}async function nt(){G.value=!0;try{const e=await Ge({page_no:f.page_no,page_size:f.page_size});if(e){f.total=Number(e.total??0);const t=Array.isArray(e.lists)?e.lists:[];f.page_no===1?f.lists=t:f.lists.push(...t)}}catch(e){console.error("加载今日进入明细失败",e)}finally{G.value=!1}}async function dt(){M.value=!0,f.page_no=1,f.lists=[],await Promise.all([O(!1),nt()])}async function $t(){f.lists.length>=f.total||(f.page_no+=1,await nt())}function Lt(e){if(!e||e<=0)return"";const t=new Date(e<1e12?e*1e3:e);return`${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}`}function Ut(e){if(!e||e<=0)return"—";const t=new Date(e<1e12?e*1e3:e);return`${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}:${String(t.getSeconds()).padStart(2,"0")}`}let H=null,Y=null;function ot(){Y!==null&&(clearInterval(Y),Y=null)}async function It(e){return He(e)}const{pager:B,getLists:J,resetPage:q,resetParams:Pt}=qe({fetchFun:It,params:_});function jt(){_.name="",_.follow_user="",_.tag_ids=[],_.add_time_start="",_.add_time_end="",et.value=null,Pt()}function Mt(){ot();let e=0;Y=window.setInterval(async()=>{e+=1,await Q(),await J(),(C.syncStatus!=="syncing"||e>=120)&&(ot(),I.value=!1,e>=120&&C.syncStatus==="syncing"?A.msgWarning("长时间仍为「同步中」,请刷新页面或查看服务器 runtime/log/qywx_sync.log(可能未安装 CLI php 或禁用了 exec)"):C.syncStatus==="failed"&&A.msgError("同步失败,请查看服务器 runtime/log/qywx_sync.log 或后台同步状态"))},3e3)}async function mt(e){const t=(e==null?void 0:e.silent)===!0;I.value=!0;try{const i=await Be();t||A.msgSuccess((i==null?void 0:i.message)||"操作成功"),await Q(),await J(),i!=null&&i.background?Mt():I.value=!1}catch(i){const m=(i==null?void 0:i.message)||(i==null?void 0:i.msg)||"同步失败";(!t||!String(m).includes("正在执行"))&&A.msgError(m),I.value=!1}}async function Q(){try{const e=await Ke();e&&typeof e=="object"&&Object.assign(C,e)}catch(e){console.error("加载统计失败",e)}}async function Ht(){try{const e=await Oe();e&&typeof e=="object"&&Object.assign(w,e),w.auto_sync&&ct()}catch(e){console.error("加载同步设置失败",e)}}async function Bt(){try{await Ye(w),A.msgSuccess("保存成功"),P.value=!1,_t(),w.auto_sync&&ct()}catch(e){A.msgError((e==null?void 0:e.message)||"保存失败")}}function ct(){H||(H=window.setInterval(()=>{mt({silent:!0})},w.interval*1e3))}function _t(){H&&(clearInterval(H),H=null)}function Kt(e){y.value=e,tt.value=!0}function ft(e){const t=String((e==null?void 0:e.admin_name)??"").trim(),i=String((e==null?void 0:e.userid)??"").trim(),m=String((e==null?void 0:e.name)??"").trim();return t||(m&&i?`${m}(${i})`:m||i||"—")}function W(e){const t=String((e==null?void 0:e.admin_name)??"").trim(),i=String((e==null?void 0:e.userid)??"").trim(),m=[];return t&&m.push("后台:"+t),i&&m.push("企微:"+i),m.join("|")}function pt(e){if(!e)return null;const t=Number(e.external_first_add_time??0);if(t>0)return t;const i=e.follow_users;if(Array.isArray(i)&&i.length>0){let m=0;for(const g of i){const p=Number((g==null?void 0:g.createtime)??0);p>0&&(m===0||p0)return m}return e.create_time??null}function X(e){if(e===""||e===null||e===void 0)return"—";const t=Number(e),i=typeof e=="string"&&/^\d+$/.test(e.trim());let m;return typeof e=="number"?m=e<1e12?e*1e3:e:!Number.isNaN(t)&&i?m=t<1e12?t*1e3:t:m=new Date(e).getTime(),Number.isNaN(m)?"—":new Date(m).toLocaleString("zh-CN")}let K=null;function Rt(){K===null&&(K=window.setInterval(()=>{Q(),O(M.value)},3e4))}function Ft(){K!==null&&(clearInterval(K),K=null)}return Le(()=>{J(),Q(),Ht(),O(!1),st(),Rt()}),Ue(()=>{_t(),ot(),Ft()}),(e,t)=>{const i=ne,m=le,g=ae,p=se,it=re,D=ie,Gt=ue,$=ce,Ot=me,gt=de,yt=oe,vt=pe,S=fe,xt=ge,bt=_e,Yt=Te,Jt=ve,wt=xe,Qt=we,Wt=be,ht=he,St=Se,Xt=Ce,Zt=ke,V=Ee,te=Ve,ee=ye;return u(),c("div",Je,[a(g,{shadow:"never",class:"mb-4"},{header:l(()=>[n("div",Qe,[t[22]||(t[22]=n("span",{class:"text-lg font-semibold"},"企业微信客户管理",-1)),n("div",We,[a(i,{type:"success",plain:"",onClick:dt},{icon:l(()=>[a(b(Ae))]),default:l(()=>[t[18]||(t[18]=d(" 今日进入明细 ",-1))]),_:1}),a(i,{type:"warning",plain:"",onClick:Et},{icon:l(()=>[a(b(Ne))]),default:l(()=>[t[19]||(t[19]=d(" 标签维度 ",-1))]),_:1}),a(i,{type:"primary",loading:I.value,onClick:t[0]||(t[0]=s=>mt())},{icon:l(()=>[a(b(rt))]),default:l(()=>[t[20]||(t[20]=d(" 立即同步 ",-1))]),_:1},8,["loading"]),a(i,{onClick:t[1]||(t[1]=s=>P.value=!0)},{icon:l(()=>[a(b(ze))]),default:l(()=>[t[21]||(t[21]=d(" 同步设置 ",-1))]),_:1})])])]),default:l(()=>[a(m,{title:"功能说明",type:"info",closable:!1,class:"mb-4"},{default:l(()=>[...t[23]||(t[23]=[n("div",{class:"text-sm"},[n("p",null,"自动从企业微信同步外部联系人(客户)信息,包括客户基本信息、跟进人等。"),n("p",{class:"mt-1"},"同步后的数据可用于患者信息匹配和自动关联。")],-1)])]),_:1}),n("div",Xe,[a(g,{shadow:"hover"},{default:l(()=>[t[24]||(t[24]=n("div",{class:"text-gray-500 text-sm mb-1"},"总客户数",-1)),n("div",Ze,r(C.total),1)]),_:1}),a(g,{shadow:"hover",class:"today-arrival-card cursor-pointer",onClick:dt},{default:l(()=>[n("div",tl,[t[25]||(t[25]=n("span",{class:"text-gray-500 text-sm"},"今日新增",-1)),h.recent_time?(u(),c("span",el," 最近 "+r(Lt(h.recent_time)),1)):N("",!0)]),n("div",ll,[n("div",al,r(C.today),1),t[26]||(t[26]=n("div",{class:"text-xs text-gray-400 pb-1"},"人",-1))]),n("div",{class:"hourly-bars mt-2",title:Dt.value},[(u(!0),c(E,null,T(h.hourly,(s,o)=>(u(),c("div",{key:o,class:Me(["hourly-bar",{"is-empty":s===0,"is-current":o===b(Nt)}]),style:je({height:qt(s)})},null,6))),128))],8,sl),n("div",nl,[t[27]||(t[27]=n("div",{class:"text-gray-500 text-xs mb-0.5"},"今日跟进人合计",-1)),n("div",ol,r(C.today_follow_staff),1)])]),_:1}),a(g,{shadow:"hover"},{default:l(()=>[t[28]||(t[28]=n("div",{class:"text-gray-500 text-sm mb-1"},"最后同步",-1)),n("div",il,r(C.lastSync||"未同步"),1)]),_:1}),a(g,{shadow:"hover"},{default:l(()=>[t[29]||(t[29]=n("div",{class:"text-gray-500 text-sm mb-1"},"同步状态",-1)),a(p,{type:Ct.value,size:"small"},{default:l(()=>[d(r(C.syncStatusText),1)]),_:1},8,["type"])]),_:1})])]),_:1}),a(g,{shadow:"never"},{default:l(()=>[a(yt,{model:_,inline:"",class:"mb-4"},{default:l(()=>[a(D,{label:"客户名称"},{default:l(()=>[a(it,{modelValue:_.name,"onUpdate:modelValue":t[2]||(t[2]=s=>_.name=s),placeholder:"搜索客户名称",clearable:"",onKeyup:kt(b(q),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(D,{label:"跟进人"},{default:l(()=>[a(it,{modelValue:_.follow_user,"onUpdate:modelValue":t[3]||(t[3]=s=>_.follow_user=s),placeholder:"跟进人姓名",clearable:"",onKeyup:kt(b(q),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),a(D,{label:"添加时间"},{default:l(()=>[a(Gt,{modelValue:et.value,"onUpdate:modelValue":t[4]||(t[4]=s=>et.value=s),type:"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始日期","end-placeholder":"结束日期",clearable:"",class:"!w-[280px]",onChange:Vt},null,8,["modelValue"])]),_:1}),a(D,{label:"标签"},{default:l(()=>[a(gt,{modelValue:_.tag_ids,"onUpdate:modelValue":t[5]||(t[5]=s=>_.tag_ids=s),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",filterable:"",placeholder:"按标签筛选(可多选,命中任一即返回)",loading:j.value,style:{"min-width":"320px"},onChange:b(q)},{default:l(()=>[(u(!0),c(E,null,T(v.groups,s=>(u(),x(Ot,{key:s.group_name||"_",label:(s.group_name||"(未分组)")+" · "+s.customer_count},{default:l(()=>[(u(!0),c(E,null,T(s.tags,o=>(u(),x($,{key:o.tag_id,value:o.tag_id,label:o.tag_name},{default:l(()=>[n("span",rl,[n("span",null,r(o.tag_name),1),n("span",ul,r(o.customer_count)+" 人",1)])]),_:2},1032,["value","label"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","loading","onChange"])]),_:1}),a(D,null,{default:l(()=>[a(i,{type:"primary",onClick:b(q)},{default:l(()=>[...t[30]||(t[30]=[d("查询",-1)])]),_:1},8,["onClick"]),a(i,{onClick:jt},{default:l(()=>[...t[31]||(t[31]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),Ie((u(),x(bt,{data:b(B).lists,stripe:""},{default:l(()=>[a(S,{label:"客户信息","min-width":"200"},{default:l(({row:s})=>[n("div",dl,[a(vt,{size:40,src:s.avatar},null,8,["src"]),n("div",null,[n("div",ml,r(s.name),1),n("div",cl,r(s.external_userid),1)])])]),_:1}),a(S,{label:"类型",width:"80"},{default:l(({row:s})=>[a(p,{size:"small"},{default:l(()=>[d(r(s.type===1?"微信":"企微"),1)]),_:2},1024)]),_:1}),a(S,{label:"性别",width:"60"},{default:l(({row:s})=>[d(r(s.gender===1?"男":s.gender===2?"女":"未知"),1)]),_:1}),a(S,{label:"跟进人","min-width":"150"},{default:l(({row:s})=>[s.follow_users&&s.follow_users.length?(u(),c("div",_l,[(u(!0),c(E,null,T(s.follow_users,(o,R)=>(u(),x(xt,{key:(o.userid||"")+"-"+R,disabled:!W(o),content:W(o),placement:"top"},{default:l(()=>[a(p,{size:"small",class:"mr-1 mb-1"},{default:l(()=>[d(r(ft(o)),1)]),_:2},1024)]),_:2},1032,["disabled","content"]))),128))])):(u(),c("span",fl,"—"))]),_:1}),a(S,{label:"标签","min-width":"180"},{default:l(({row:s})=>[s.tags&&s.tags.length?(u(),c("div",pl,[(u(!0),c(E,null,T(s.tags,o=>(u(),x(p,{key:o.tag_id,size:"small",effect:"light",type:"warning",class:"mr-1 mb-1 cursor-pointer",onClick:R=>Tt(o.tag_id)},{default:l(()=>[d(r(o.tag_name)+" ",1),o.group_name?(u(),c("span",gl,r(o.group_name),1)):N("",!0)]),_:2},1032,["onClick"]))),128))])):(u(),c("span",yl,"—"))]),_:1}),a(S,{label:"添加时间",width:"160"},{default:l(({row:s})=>[d(r(X(pt(s))),1)]),_:1}),a(S,{label:"更新时间",width:"160"},{default:l(({row:s})=>[d(r(X(s.update_time)),1)]),_:1}),a(S,{label:"操作",width:"120",fixed:"right"},{default:l(({row:s})=>[a(i,{type:"primary",link:"",onClick:o=>Kt(s)},{default:l(()=>[...t[32]||(t[32]=[d("查看详情",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[ee,b(B).loading]]),n("div",vl,[a(Yt,{modelValue:b(B),"onUpdate:modelValue":t[6]||(t[6]=s=>Pe(B)?B.value=s:null),onChange:b(J)},null,8,["modelValue","onChange"])])]),_:1}),a(wt,{modelValue:P.value,"onUpdate:modelValue":t[10]||(t[10]=s=>P.value=s),title:"同步设置",width:"500px"},{footer:l(()=>[a(i,{onClick:t[9]||(t[9]=s=>P.value=!1)},{default:l(()=>[...t[34]||(t[34]=[d("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Bt},{default:l(()=>[...t[35]||(t[35]=[d("保存",-1)])]),_:1})]),default:l(()=>[a(yt,{model:w,"label-width":"120px"},{default:l(()=>[a(D,{label:"自动同步"},{default:l(()=>[a(Jt,{modelValue:w.auto_sync,"onUpdate:modelValue":t[7]||(t[7]=s=>w.auto_sync=s)},null,8,["modelValue"]),t[33]||(t[33]=n("div",{class:"text-xs text-gray-400 mt-1"}," 开启后将定时自动同步企业微信客户数据 ",-1))]),_:1}),a(D,{label:"同步间隔"},{default:l(()=>[a(gt,{modelValue:w.interval,"onUpdate:modelValue":t[8]||(t[8]=s=>w.interval=s),disabled:!w.auto_sync},{default:l(()=>[a($,{label:"每小时",value:3600}),a($,{label:"每2小时",value:7200}),a($,{label:"每4小时",value:14400}),a($,{label:"每6小时",value:21600}),a($,{label:"每12小时",value:43200}),a($,{label:"每天",value:86400})]),_:1},8,["modelValue","disabled"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),a(St,{modelValue:M.value,"onUpdate:modelValue":t[12]||(t[12]=s=>M.value=s),title:"今日进入明细",direction:"rtl",size:"520px","destroy-on-close":!1},{header:l(()=>[n("div",xl,[n("div",bl,[t[36]||(t[36]=n("span",{class:"text-base font-semibold"},"今日进入明细",-1)),a(p,{type:"success",effect:"plain"},{default:l(()=>[d("共 "+r(f.total)+" 人",1)]),_:1})]),a(i,{link:"",type:"primary",loading:G.value,onClick:t[11]||(t[11]=s=>O(!0))},{icon:l(()=>[a(b(rt))]),default:l(()=>[t[37]||(t[37]=d(" 刷新 ",-1))]),_:1},8,["loading"])])]),default:l(()=>{var s;return[n("div",wl,[a(m,{type:"info",closable:!1,class:"mb-3","show-icon":""},{title:l(()=>[...t[38]||(t[38]=[n("span",{class:"text-xs"}," 一次推送 = 一个人进来;数据来源为企微回调流水表(INSERT IGNORE 幂等),与客户同步解耦,数字零误差。 ",-1)])]),_:1}),(s=h.by_state)!=null&&s.length?(u(),c("div",hl,[t[39]||(t[39]=n("div",{class:"text-xs text-gray-500 mb-1"},"今日推广渠道 Top",-1)),n("div",Sl,[(u(!0),c(E,null,T(h.by_state,o=>(u(),x(p,{key:o.state||"_",size:"small",effect:"light",type:"success"},{default:l(()=>[d(r(o.state||"(无 state)")+" · "+r(o.count),1)]),_:2},1024))),128))])])):N("",!0),f.lists.length?(u(),x(Wt,{key:1,class:"mt-2"},{default:l(()=>[(u(!0),c(E,null,T(f.lists,o=>(u(),x(Qt,{key:o.id,timestamp:Ut(o.event_time),placement:"top",type:"success",hollow:!1},{default:l(()=>[n("div",kl,[a(vt,{size:32,src:o.customer_avatar||void 0},{default:l(()=>[d(r((o.customer_name||"?").slice(0,1)),1)]),_:2},1032,["src"]),n("div",Cl,[n("div",Vl,r(o.customer_name||o.external_userid||"(未知客户)"),1),n("div",El,[n("span",null,"接待:"+r(o.admin_name||o.user_id||"—"),1),o.state?(u(),c("span",Tl,[t[40]||(t[40]=d(" 渠道:",-1)),a(p,{size:"small",type:"info",effect:"plain"},{default:l(()=>[d(r(o.state),1)]),_:2},1024)])):N("",!0),o.welcome_code?(u(),c("span",Al,"欢迎语")):N("",!0)])])])]),_:2},1032,["timestamp"]))),128))]),_:1})):(u(),x(ht,{key:2,description:"今天还没有人进入","image-size":80})),f.total>f.lists.length?(u(),c("div",Nl,[a(i,{loading:G.value,size:"small",onClick:$t},{default:l(()=>[d(" 加载更多(还剩 "+r(f.total-f.lists.length)+") ",1)]),_:1},8,["loading"])])):N("",!0)])]}),_:1},8,["modelValue"]),a(St,{modelValue:F.value,"onUpdate:modelValue":t[16]||(t[16]=s=>F.value=s),title:"标签维度统计",direction:"rtl",size:"560px","destroy-on-close":!1},{header:l(()=>[n("div",zl,[n("div",ql,[t[41]||(t[41]=n("span",{class:"text-base font-semibold"},"标签维度统计",-1)),a(p,{type:"warning",effect:"plain"},{default:l(()=>[d(r(v.groups.length)+" 组 · "+r(v.total_tags)+" 标签 ",1)]),_:1})]),a(i,{link:"",type:"primary",loading:j.value,onClick:t[13]||(t[13]=s=>st(!0))},{icon:l(()=>[a(b(rt))]),default:l(()=>[t[42]||(t[42]=d(" 刷新 ",-1))]),_:1},8,["loading"])])]),default:l(()=>[n("div",Dl,[n("div",$l,[a(g,{shadow:"never","body-class":"!p-3"},{default:l(()=>[t[43]||(t[43]=n("div",{class:"text-xs text-gray-500"},"已打标签客户",-1)),n("div",Ll,r(v.total_tagged_customers),1)]),_:1}),a(g,{shadow:"never","body-class":"!p-3"},{default:l(()=>[t[44]||(t[44]=n("div",{class:"text-xs text-gray-500"},"标签数",-1)),n("div",Ul,r(v.total_tags),1)]),_:1}),a(g,{shadow:"never","body-class":"!p-3"},{default:l(()=>[t[45]||(t[45]=n("div",{class:"text-xs text-gray-500"},"关系总数",-1)),n("div",Il,r(v.total_relations),1)]),_:1})]),a(it,{modelValue:lt.value,"onUpdate:modelValue":t[14]||(t[14]=s=>lt.value=s),placeholder:"筛选标签名 / 分组名",clearable:"",size:"small",class:"mb-3"},null,8,["modelValue"]),ut.value.length===0?(u(),x(ht,{key:0,description:j.value?"加载中…":"暂无标签数据","image-size":64},null,8,["description"])):(u(),x(Zt,{key:1,modelValue:at.value,"onUpdate:modelValue":t[15]||(t[15]=s=>at.value=s)},{default:l(()=>[(u(!0),c(E,null,T(ut.value,s=>(u(),x(Xt,{key:s.group_name||"_",name:s.group_name||"_"},{title:l(()=>[n("div",Pl,[n("span",jl,r(s.group_name||"(未分组)"),1),a(p,{size:"small",effect:"plain"},{default:l(()=>[d(r(s.tags.length),1)]),_:2},1024),n("span",Ml," 最热 "+r(s.customer_count)+" 人 ",1)])]),default:l(()=>[a(bt,{data:s.tags,size:"small",stripe:""},{default:l(()=>[a(S,{label:"标签","min-width":"160"},{default:l(({row:o})=>[n("span",Hl,r(o.tag_name),1),n("div",Bl,r(o.tag_id),1)]),_:1}),a(S,{label:"客户数",width:"100",align:"right"},{default:l(({row:o})=>[n("span",Kl,r(o.customer_count),1)]),_:1}),a(S,{label:"操作",width:"80",align:"center"},{default:l(({row:o})=>[a(i,{link:"",type:"primary",size:"small",onClick:R=>At(o.tag_id)},{default:l(()=>[...t[46]||(t[46]=[d(" 筛选 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]))])]),_:1},8,["modelValue"]),a(wt,{modelValue:tt.value,"onUpdate:modelValue":t[17]||(t[17]=s=>tt.value=s),title:"客户详情",width:"600px"},{default:l(()=>[y.value?(u(),x(te,{key:0,column:2,border:""},{default:l(()=>[a(V,{label:"客户名称"},{default:l(()=>[d(r(y.value.name),1)]),_:1}),a(V,{label:"External ID"},{default:l(()=>[d(r(y.value.external_userid),1)]),_:1}),a(V,{label:"性别"},{default:l(()=>[d(r(y.value.gender===1?"男":y.value.gender===2?"女":"未知"),1)]),_:1}),a(V,{label:"类型"},{default:l(()=>[d(r(y.value.type===1?"微信用户":"企业微信用户"),1)]),_:1}),a(V,{label:"企业名称",span:2},{default:l(()=>[d(r(y.value.corp_name||"—"),1)]),_:1}),a(V,{label:"职位",span:2},{default:l(()=>[d(r(y.value.position||"—"),1)]),_:1}),a(V,{label:"添加时间",span:2},{default:l(()=>[d(r(X(pt(y.value))),1)]),_:1}),a(V,{label:"更新时间",span:2},{default:l(()=>[d(r(X(y.value.update_time)),1)]),_:1}),a(V,{label:"跟进人",span:2},{default:l(()=>{var s;return[(s=y.value.follow_users)!=null&&s.length?(u(),c("div",Rl,[(u(!0),c(E,null,T(y.value.follow_users,(o,R)=>(u(),x(xt,{key:(o.userid||"")+"-"+R,disabled:!W(o),content:W(o),placement:"top"},{default:l(()=>[a(p,{size:"small",class:"mr-1 mb-1"},{default:l(()=>[d(r(ft(o)),1)]),_:2},1024)]),_:2},1032,["disabled","content"]))),128))])):(u(),c("span",Fl,"—"))]}),_:1}),a(V,{label:"标签",span:2},{default:l(()=>{var s;return[(s=y.value.tags)!=null&&s.length?(u(),c("div",Gl,[(u(!0),c(E,null,T(y.value.tags,o=>(u(),x(p,{key:o.tag_id,size:"small",effect:"light",type:"warning",class:"mr-1 mb-1"},{default:l(()=>[d(r(o.tag_name)+" ",1),o.group_name?(u(),c("span",Ol,r(o.group_name),1)):N("",!0)]),_:2},1024))),128))])):(u(),c("span",Yl,"—"))]}),_:1})]),_:1})):N("",!0)]),_:1},8,["modelValue"])])}}}),La=De(Jl,[["__scopeId","data-v-07da3e76"]]);export{La as default}; diff --git a/server/public/admin/assets/readonly-CR0ge2o6.js b/server/public/admin/assets/readonly-hz28EqXX.js similarity index 86% rename from server/public/admin/assets/readonly-CR0ge2o6.js rename to server/public/admin/assets/readonly-hz28EqXX.js index 15d562ed..d9c46981 100644 --- a/server/public/admin/assets/readonly-CR0ge2o6.js +++ b/server/public/admin/assets/readonly-hz28EqXX.js @@ -1 +1 @@ -import{L as H,d as J,i as Q,r as S,R as $}from"./element-plus-DFTWCWyi.js";import{u as j,a as K}from"./vue-router-QlpZ4wdW.js";import{o as U}from"./@element-plus/icons-vue-HOEUG8sr.js";import{as as W}from"./tcm-DCW3HTOw.js";import{g as X}from"./patient-BKtZKzsB.js";import{f as Y}from"./diag-display-DCz_VAqj.js";import{h as p}from"./perm-DkIPMPyD.js";import Z from"./PatientInfoCard-QbPK3em5.js";import tt from"./PatientCaseCard-D3V_iWVf.js";import et from"./DailyMatrix-j3uF_86P.js";import ot from"./CallRecordPanel-DvHFqqux.js";import it from"./ImChatRecordPanel-DpRXSwhQ.js";import at from"./AssignLogPanel-B1IM06sV.js";import st from"./AppointmentRecordPanel-CHr1S2Xh.js";import rt from"./PatientOrderList-MM0hhqMY.js";import nt from"./NoteTimeline-BrIUegAJ.js";import{f as dt,b as lt,aP as ct,ak as o,I as n,J as i,a as _,aN as b,O as B,F as A,H as l,G as a,A as m}from"./@vue/runtime-core-C6bnekPw.js";import{y as u,n as f}from"./@vue/reactivity-DiY1c2vO.js";import{Q as k,o as mt}from"./@vue/shared-mAAVTE9n.js";import{_ as ut}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./blood-thresholds-CJ1fqMjh.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./vue-echarts-BNtg2q_G.js";import"./resize-detector-G6vbKCU7.js";import"./DiagnosisTodoList-BFQuq0si.js";import"./RecordingPlaybackBlock-39655xEj.js";import"./RecordingVideoPlayer-CRxrgEoO.js";import"./im-business-message-parse-QKjFLn3X.js";import"./doctor-B7qEhSpt.js";const pt={class:"readonly-page"},vt={class:"readonly-hero"},_t={class:"hero-left"},gt={key:0,class:"hero-right"},yt={class:"patient-name"},ft={class:"patient-meta"},kt={key:1,class:"unserved-badge unserved-muted"},bt={key:0,class:"card tracking-card"},ht={class:"card-body"},Nt={class:"card note-card"},xt={class:"card-body card-body--matrix-align"},Ct={key:1,class:"card section-card"},Dt={class:"card-body card-body--matrix-align"},Pt={key:2,class:"card section-card"},Rt={class:"card-body card-body--matrix-align"},wt={key:3,class:"card section-card"},It={class:"card-body card-body--matrix-align"},Bt={key:4,class:"card section-card"},At={class:"card-body card-body--matrix-align"},Et={key:5,class:"card section-card"},Lt={class:"card-body card-body--matrix-align"},Vt=dt({__name:"readonly",setup(Ft){const E=j(),h=K(),N=m(()=>Number(E.query.id||0)),g=f(!1),y=f(""),d=f(null),v=f([]),x=m(()=>{var e;return((e=d.value)==null?void 0:e.appointment)||{}}),r=m(()=>{var e;return((e=d.value)==null?void 0:e.diagnosis)||{}}),L=m(()=>p(["tcm.diagnosis/dailyRecord"])),s=m(()=>{var e;return Number(((e=r.value)==null?void 0:e.id)??N.value??0)}),C=m(()=>{var e;return Number(((e=r.value)==null?void 0:e.patient_id)??0)}),D=m(()=>{var t;const e=(t=d.value)==null?void 0:t.unserved_days;return e==null?null:Number(e)}),P=m(()=>{var e;return((e=d.value)==null?void 0:e.last_blood_record_at)||""}),V=e=>{if(e==null)return"unserved-muted";const t=Number(e);return Number.isFinite(t)?t>=7?"unserved-red":t>=3?"unserved-orange":"unserved-green":"unserved-muted"},F=async()=>{const e=s.value;if(e)try{const t=await X({diagnosis_id:e})||[];v.value=t}catch{}},M=async()=>{const e=N.value;if(!e||e<=0){y.value="诊单 id 缺失",d.value=null,v.value=[];return}g.value=!0,y.value="";try{const t=await W({id:e});d.value=t||null,v.value=Array.isArray(t==null?void 0:t.doctor_notes)?t.doctor_notes:[],await F()}catch(t){y.value=(t==null?void 0:t.message)||"",d.value=null,v.value=[]}finally{g.value=!1}},O=()=>{window.history.length>1?h.back():h.push({path:"/tcm/diagnosis"})};return lt(M),(e,t)=>{var R,w,I;const T=J,z=Q,G=S,c=$,q=H;return ct((o(),n("div",pt,[i("div",vt,[i("div",_t,[_(z,{link:"",size:"default",onClick:O,class:"back-btn"},{default:b(()=>[_(T,null,{default:b(()=>[_(u(U))]),_:1}),t[0]||(t[0]=i("span",null,"返回",-1))]),_:1}),t[1]||(t[1]=i("span",{class:"title"},"患者信息详情",-1))]),(R=r.value)!=null&&R.patient_name?(o(),n("div",gt,[i("span",yt,k(r.value.patient_name),1),i("span",ft,[B(k(u(Y)(r.value.gender))+" ",1),r.value.age!=null?(o(),n(A,{key:0},[B(" · "+k(r.value.age)+"岁",1)],64)):l("",!0)]),P.value?(o(),a(G,{key:0,content:`最近一次健康打卡:${P.value}`,placement:"bottom"},{default:b(()=>[i("span",{class:mt(["unserved-badge",V(D.value)])}," 未服务 "+k(D.value??"—")+" 天 ",3)]),_:1},8,["content"])):(o(),n("span",kt,"从未打卡"))])):l("",!0)]),!g.value&&!d.value?(o(),a(c,{key:0,description:y.value||"诊单不存在或无权访问",class:"empty-state"},null,8,["description"])):d.value?(o(),n(A,{key:1},[_(Z,{apt:x.value,diag:r.value},null,8,["apt","diag"]),_(tt,{apt:x.value,diag:r.value},null,8,["apt","diag"]),L.value?(o(),n("div",bt,[t[2]||(t[2]=i("div",{class:"card-title"},"日常记录",-1)),i("div",ht,[_(et,{"diagnosis-id":s.value,"patient-id":C.value,age:((w=r.value)==null?void 0:w.age)??null,"patient-name":((I=r.value)==null?void 0:I.patient_name)||"","read-only":!0},null,8,["diagnosis-id","patient-id","age","patient-name"])])])):l("",!0),i("div",Nt,[t[3]||(t[3]=i("div",{class:"card-title"},"医生备注 & 舌苔照片 & 检查报告",-1)),i("div",xt,[s.value<=0?(o(),a(c,{key:0,description:"诊单数据不完整"})):v.value.length?(o(),a(nt,{key:2,notes:v.value,"diagnosis-id":s.value,readonly:!0},null,8,["notes","diagnosis-id"])):(o(),a(c,{key:1,description:"暂无医生备注"}))])]),u(p)(["tcm.diagnosis/patientOrders"])?(o(),n("div",Ct,[t[4]||(t[4]=i("div",{class:"card-title"},"业务订单",-1)),i("div",Dt,[s.value>0?(o(),a(rt,{key:0,"diagnosis-id":s.value,"patient-id":C.value||0},null,8,["diagnosis-id","patient-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["tcm.diagnosis/huifang"])?(o(),n("div",Pt,[t[5]||(t[5]=i("div",{class:"card-title"},"视频录制回放记录",-1)),i("div",Rt,[s.value>0?(o(),a(ot,{key:0,"diagnosis-id":s.value,"read-only":!0},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["tcm.diagnosis/chat"])?(o(),n("div",wt,[t[6]||(t[6]=i("div",{class:"card-title"},"聊天记录",-1)),i("div",It,[s.value>0?(o(),a(it,{key:0,"diagnosis-id":s.value},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["tcm.diagnosis/assign"])||u(p)(["tcm.diagnosis/detail"])?(o(),n("div",Bt,[t[7]||(t[7]=i("div",{class:"card-title"},"指派医助记录",-1)),i("div",At,[s.value>0?(o(),a(at,{key:0,"diagnosis-id":s.value},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["doctor.appointment/lists"])?(o(),n("div",Et,[t[8]||(t[8]=i("div",{class:"card-title"},"挂号记录",-1)),i("div",Lt,[s.value>0?(o(),a(st,{key:0,"diagnosis-id":s.value},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0)],64)):l("",!0)])),[[q,g.value]])}}}),oo=ut(Vt,[["__scopeId","data-v-d5db5705"]]);export{oo as default}; +import{L as H,d as J,i as Q,r as S,R as $}from"./element-plus-DFTWCWyi.js";import{u as j,a as K}from"./vue-router-QlpZ4wdW.js";import{o as U}from"./@element-plus/icons-vue-HOEUG8sr.js";import{as as W}from"./tcm-DzAQc_oE.js";import{g as X}from"./patient-BNjmKCvA.js";import{f as Y}from"./diag-display-DCz_VAqj.js";import{h as p}from"./perm-CLhA0PJe.js";import Z from"./PatientInfoCard-D7xW7q4X.js";import tt from"./PatientCaseCard-MkaTBq87.js";import et from"./DailyMatrix-DyqovtVx.js";import ot from"./CallRecordPanel-BQekhSi-.js";import it from"./ImChatRecordPanel-yVs1ANxt.js";import at from"./AssignLogPanel-nLggvTO6.js";import st from"./AppointmentRecordPanel-CNtykthG.js";import rt from"./PatientOrderList-_Y1o6_3U.js";import nt from"./NoteTimeline-Vt4S5dzs.js";import{f as dt,b as lt,aP as ct,ak as o,I as n,J as i,a as _,aN as b,O as B,F as A,H as l,G as a,A as m}from"./@vue/runtime-core-C6bnekPw.js";import{y as u,n as f}from"./@vue/reactivity-DiY1c2vO.js";import{Q as k,o as mt}from"./@vue/shared-mAAVTE9n.js";import{_ as ut}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./blood-thresholds-CJ1fqMjh.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./vue-echarts-BNtg2q_G.js";import"./resize-detector-G6vbKCU7.js";import"./DiagnosisTodoList-Be3uAeoQ.js";import"./RecordingPlaybackBlock-BHZL3zDJ.js";import"./RecordingVideoPlayer-LJMNYP-k.js";import"./im-business-message-parse-QKjFLn3X.js";import"./doctor-BlvK2TEo.js";const pt={class:"readonly-page"},vt={class:"readonly-hero"},_t={class:"hero-left"},gt={key:0,class:"hero-right"},yt={class:"patient-name"},ft={class:"patient-meta"},kt={key:1,class:"unserved-badge unserved-muted"},bt={key:0,class:"card tracking-card"},ht={class:"card-body"},Nt={class:"card note-card"},xt={class:"card-body card-body--matrix-align"},Ct={key:1,class:"card section-card"},Dt={class:"card-body card-body--matrix-align"},Pt={key:2,class:"card section-card"},Rt={class:"card-body card-body--matrix-align"},wt={key:3,class:"card section-card"},It={class:"card-body card-body--matrix-align"},Bt={key:4,class:"card section-card"},At={class:"card-body card-body--matrix-align"},Et={key:5,class:"card section-card"},Lt={class:"card-body card-body--matrix-align"},Vt=dt({__name:"readonly",setup(Ft){const E=j(),h=K(),N=m(()=>Number(E.query.id||0)),g=f(!1),y=f(""),d=f(null),v=f([]),x=m(()=>{var e;return((e=d.value)==null?void 0:e.appointment)||{}}),r=m(()=>{var e;return((e=d.value)==null?void 0:e.diagnosis)||{}}),L=m(()=>p(["tcm.diagnosis/dailyRecord"])),s=m(()=>{var e;return Number(((e=r.value)==null?void 0:e.id)??N.value??0)}),C=m(()=>{var e;return Number(((e=r.value)==null?void 0:e.patient_id)??0)}),D=m(()=>{var t;const e=(t=d.value)==null?void 0:t.unserved_days;return e==null?null:Number(e)}),P=m(()=>{var e;return((e=d.value)==null?void 0:e.last_blood_record_at)||""}),V=e=>{if(e==null)return"unserved-muted";const t=Number(e);return Number.isFinite(t)?t>=7?"unserved-red":t>=3?"unserved-orange":"unserved-green":"unserved-muted"},F=async()=>{const e=s.value;if(e)try{const t=await X({diagnosis_id:e})||[];v.value=t}catch{}},M=async()=>{const e=N.value;if(!e||e<=0){y.value="诊单 id 缺失",d.value=null,v.value=[];return}g.value=!0,y.value="";try{const t=await W({id:e});d.value=t||null,v.value=Array.isArray(t==null?void 0:t.doctor_notes)?t.doctor_notes:[],await F()}catch(t){y.value=(t==null?void 0:t.message)||"",d.value=null,v.value=[]}finally{g.value=!1}},O=()=>{window.history.length>1?h.back():h.push({path:"/tcm/diagnosis"})};return lt(M),(e,t)=>{var R,w,I;const T=J,z=Q,G=S,c=$,q=H;return ct((o(),n("div",pt,[i("div",vt,[i("div",_t,[_(z,{link:"",size:"default",onClick:O,class:"back-btn"},{default:b(()=>[_(T,null,{default:b(()=>[_(u(U))]),_:1}),t[0]||(t[0]=i("span",null,"返回",-1))]),_:1}),t[1]||(t[1]=i("span",{class:"title"},"患者信息详情",-1))]),(R=r.value)!=null&&R.patient_name?(o(),n("div",gt,[i("span",yt,k(r.value.patient_name),1),i("span",ft,[B(k(u(Y)(r.value.gender))+" ",1),r.value.age!=null?(o(),n(A,{key:0},[B(" · "+k(r.value.age)+"岁",1)],64)):l("",!0)]),P.value?(o(),a(G,{key:0,content:`最近一次健康打卡:${P.value}`,placement:"bottom"},{default:b(()=>[i("span",{class:mt(["unserved-badge",V(D.value)])}," 未服务 "+k(D.value??"—")+" 天 ",3)]),_:1},8,["content"])):(o(),n("span",kt,"从未打卡"))])):l("",!0)]),!g.value&&!d.value?(o(),a(c,{key:0,description:y.value||"诊单不存在或无权访问",class:"empty-state"},null,8,["description"])):d.value?(o(),n(A,{key:1},[_(Z,{apt:x.value,diag:r.value},null,8,["apt","diag"]),_(tt,{apt:x.value,diag:r.value},null,8,["apt","diag"]),L.value?(o(),n("div",bt,[t[2]||(t[2]=i("div",{class:"card-title"},"日常记录",-1)),i("div",ht,[_(et,{"diagnosis-id":s.value,"patient-id":C.value,age:((w=r.value)==null?void 0:w.age)??null,"patient-name":((I=r.value)==null?void 0:I.patient_name)||"","read-only":!0},null,8,["diagnosis-id","patient-id","age","patient-name"])])])):l("",!0),i("div",Nt,[t[3]||(t[3]=i("div",{class:"card-title"},"医生备注 & 舌苔照片 & 检查报告",-1)),i("div",xt,[s.value<=0?(o(),a(c,{key:0,description:"诊单数据不完整"})):v.value.length?(o(),a(nt,{key:2,notes:v.value,"diagnosis-id":s.value,readonly:!0},null,8,["notes","diagnosis-id"])):(o(),a(c,{key:1,description:"暂无医生备注"}))])]),u(p)(["tcm.diagnosis/patientOrders"])?(o(),n("div",Ct,[t[4]||(t[4]=i("div",{class:"card-title"},"业务订单",-1)),i("div",Dt,[s.value>0?(o(),a(rt,{key:0,"diagnosis-id":s.value,"patient-id":C.value||0},null,8,["diagnosis-id","patient-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["tcm.diagnosis/huifang"])?(o(),n("div",Pt,[t[5]||(t[5]=i("div",{class:"card-title"},"视频录制回放记录",-1)),i("div",Rt,[s.value>0?(o(),a(ot,{key:0,"diagnosis-id":s.value,"read-only":!0},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["tcm.diagnosis/chat"])?(o(),n("div",wt,[t[6]||(t[6]=i("div",{class:"card-title"},"聊天记录",-1)),i("div",It,[s.value>0?(o(),a(it,{key:0,"diagnosis-id":s.value},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["tcm.diagnosis/assign"])||u(p)(["tcm.diagnosis/detail"])?(o(),n("div",Bt,[t[7]||(t[7]=i("div",{class:"card-title"},"指派医助记录",-1)),i("div",At,[s.value>0?(o(),a(at,{key:0,"diagnosis-id":s.value},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0),u(p)(["doctor.appointment/lists"])?(o(),n("div",Et,[t[8]||(t[8]=i("div",{class:"card-title"},"挂号记录",-1)),i("div",Lt,[s.value>0?(o(),a(st,{key:0,"diagnosis-id":s.value},null,8,["diagnosis-id"])):(o(),a(c,{key:1,description:"诊单数据不完整"}))])])):l("",!0)],64)):l("",!0)])),[[q,g.value]])}}}),oo=ut(Vt,[["__scopeId","data-v-d5db5705"]]);export{oo as default}; diff --git a/server/public/admin/assets/recharge_record-B_1vUb_E.js b/server/public/admin/assets/recharge_record-mWDEyCxs.js similarity index 95% rename from server/public/admin/assets/recharge_record-B_1vUb_E.js rename to server/public/admin/assets/recharge_record-mWDEyCxs.js index 38fb7765..87793d81 100644 --- a/server/public/admin/assets/recharge_record-B_1vUb_E.js +++ b/server/public/admin/assets/recharge_record-mWDEyCxs.js @@ -1 +1 @@ -import{K as $,D as F,B as I,C as j,P as J,Q as O,i as Q,J as S,M as q,N as A,L as G}from"./element-plus-DFTWCWyi.js";import{_ as H}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{h as M,i as W}from"./index-Nt5zMHcc.js";import{_ as X}from"./index.vue_vue_type_script_setup_true_lang-Sp3yloCV.js";import{_ as Y}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as v}from"./@vue/runtime-dom-DDAG46FW.js";import{j as V,k as Z}from"./finance-L1-WPbJt.js";import{u as ee}from"./usePaging-VsbTxSU0.js";import{f as C,as as te,ak as c,I as ae,a as e,aN as l,O as p,aP as x,G as k,J as f,H as oe}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,a as le,r as ne}from"./@vue/reactivity-DiY1c2vO.js";import{Q as h,o as se}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";const re={class:"flex items-center"},ie={class:"flex justify-end mt-4"},me=C({name:"rechargeRecord"}),tt=C({...me,setup(pe){const n=ne({sn:"",user_info:"",pay_way:"",pay_status:"",start_time:"",end_time:""}),{pager:r,getLists:d,resetPage:_,resetParams:E}=ee({fetchFun:V,params:n}),T=async b=>{await W.confirm("确认退款?"),await Z({recharge_id:b}),d()};return d(),(b,o)=>{const U=$,y=j,i=I,m=O,g=J,B=Y,u=Q,K=X,N=F,w=S,P=M,s=A,z=q,D=H,L=te("perms"),R=G;return c(),ae("div",null,[e(w,{class:"!border-none",shadow:"never"},{default:l(()=>[e(U,{type:"warning",title:"温馨提示:用户充值记录",closable:!1,"show-icon":""}),e(N,{ref:"formRef",class:"mb-[-16px] mt-[16px]",model:t(n),inline:!0},{default:l(()=>[e(i,{class:"w-[280px]",label:"充值单号"},{default:l(()=>[e(y,{modelValue:t(n).sn,"onUpdate:modelValue":o[0]||(o[0]=a=>t(n).sn=a),placeholder:"请输入充值单号",clearable:"",onKeyup:v(t(_),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(i,{class:"w-[280px]",label:"用户信息"},{default:l(()=>[e(y,{modelValue:t(n).user_info,"onUpdate:modelValue":o[1]||(o[1]=a=>t(n).user_info=a),placeholder:"请输入用户账号/昵称/手机号",clearable:"",onKeyup:v(t(_),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(i,{class:"w-[280px]",label:"支付方式"},{default:l(()=>[e(g,{modelValue:t(n).pay_way,"onUpdate:modelValue":o[2]||(o[2]=a=>t(n).pay_way=a)},{default:l(()=>[e(m,{label:"全部",value:""}),e(m,{label:"微信支付",value:2})]),_:1},8,["modelValue"])]),_:1}),e(i,{class:"w-[280px]",label:"支付状态"},{default:l(()=>[e(g,{modelValue:t(n).pay_status,"onUpdate:modelValue":o[3]||(o[3]=a=>t(n).pay_status=a)},{default:l(()=>[e(m,{label:"全部",value:""}),e(m,{label:"未支付",value:0}),e(m,{label:"已支付",value:1})]),_:1},8,["modelValue"])]),_:1}),e(i,{label:"下单时间"},{default:l(()=>[e(B,{startTime:t(n).start_time,"onUpdate:startTime":o[4]||(o[4]=a=>t(n).start_time=a),endTime:t(n).end_time,"onUpdate:endTime":o[5]||(o[5]=a=>t(n).end_time=a)},null,8,["startTime","endTime"])]),_:1}),e(i,null,{default:l(()=>[e(u,{type:"primary",onClick:t(_)},{default:l(()=>[...o[7]||(o[7]=[p("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:t(E)},{default:l(()=>[...o[8]||(o[8]=[p("重置",-1)])]),_:1},8,["onClick"]),e(K,{class:"ml-2.5","fetch-fun":t(V),params:t(n),"page-size":t(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),e(w,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[x((c(),k(z,{size:"large",data:t(r).lists},{default:l(()=>[e(s,{label:"用户信息","min-width":"160"},{default:l(({row:a})=>[f("div",re,[e(P,{class:"flex-none mr-2",src:a.avatar,width:40,height:40,"preview-teleported":"",fit:"contain"},null,8,["src"]),p(" "+h(a.nickname),1)])]),_:1}),e(s,{label:"充值单号",prop:"sn","min-width":"190"}),e(s,{label:"充值金额",prop:"order_amount","min-width":"100"}),e(s,{label:"支付方式",prop:"pay_way_text","min-width":"100"}),e(s,{label:"支付状态",prop:"","min-width":"100"},{default:l(({row:a})=>[f("span",{class:se({"text-error":a.pay_status==0})},h(a.pay_status_text),3)]),_:1}),e(s,{label:"提交时间",prop:"create_time","min-width":"180"}),e(s,{label:"支付时间",prop:"pay_time","min-width":"180"}),e(s,{label:"操作",width:"120",fixed:"right"},{default:l(({row:a})=>[a.pay_status==1?x((c(),k(u,{key:0,type:"primary",link:"",disabled:a.refund_status==1,onClick:de=>T(a.id)},{default:l(()=>[...o[9]||(o[9]=[p(" 退款 ",-1)])]),_:1},8,["disabled","onClick"])),[[L,["recharge.recharge/refund"]]]):oe("",!0)]),_:1})]),_:1},8,["data"])),[[R,t(r).loading]]),f("div",ie,[e(D,{modelValue:t(r),"onUpdate:modelValue":o[6]||(o[6]=a=>le(r)?r.value=a:null),onChange:t(d)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{tt as default}; +import{K as $,D as F,B as I,C as j,P as J,Q as O,i as Q,J as S,M as q,N as A,L as G}from"./element-plus-DFTWCWyi.js";import{_ as H}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{h as M,i as W}from"./index--WnM67ZH.js";import{_ as X}from"./index.vue_vue_type_script_setup_true_lang-BNC6Akpr.js";import{_ as Y}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as v}from"./@vue/runtime-dom-DDAG46FW.js";import{j as V,k as Z}from"./finance-CuL8jhJS.js";import{u as ee}from"./usePaging-VsbTxSU0.js";import{f as C,as as te,ak as c,I as ae,a as e,aN as l,O as p,aP as x,G as k,J as f,H as oe}from"./@vue/runtime-core-C6bnekPw.js";import{y as t,a as le,r as ne}from"./@vue/reactivity-DiY1c2vO.js";import{Q as h,o as se}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";const re={class:"flex items-center"},ie={class:"flex justify-end mt-4"},me=C({name:"rechargeRecord"}),tt=C({...me,setup(pe){const n=ne({sn:"",user_info:"",pay_way:"",pay_status:"",start_time:"",end_time:""}),{pager:r,getLists:d,resetPage:_,resetParams:E}=ee({fetchFun:V,params:n}),T=async b=>{await W.confirm("确认退款?"),await Z({recharge_id:b}),d()};return d(),(b,o)=>{const U=$,y=j,i=I,m=O,g=J,B=Y,u=Q,K=X,N=F,w=S,P=M,s=A,z=q,D=H,L=te("perms"),R=G;return c(),ae("div",null,[e(w,{class:"!border-none",shadow:"never"},{default:l(()=>[e(U,{type:"warning",title:"温馨提示:用户充值记录",closable:!1,"show-icon":""}),e(N,{ref:"formRef",class:"mb-[-16px] mt-[16px]",model:t(n),inline:!0},{default:l(()=>[e(i,{class:"w-[280px]",label:"充值单号"},{default:l(()=>[e(y,{modelValue:t(n).sn,"onUpdate:modelValue":o[0]||(o[0]=a=>t(n).sn=a),placeholder:"请输入充值单号",clearable:"",onKeyup:v(t(_),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(i,{class:"w-[280px]",label:"用户信息"},{default:l(()=>[e(y,{modelValue:t(n).user_info,"onUpdate:modelValue":o[1]||(o[1]=a=>t(n).user_info=a),placeholder:"请输入用户账号/昵称/手机号",clearable:"",onKeyup:v(t(_),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(i,{class:"w-[280px]",label:"支付方式"},{default:l(()=>[e(g,{modelValue:t(n).pay_way,"onUpdate:modelValue":o[2]||(o[2]=a=>t(n).pay_way=a)},{default:l(()=>[e(m,{label:"全部",value:""}),e(m,{label:"微信支付",value:2})]),_:1},8,["modelValue"])]),_:1}),e(i,{class:"w-[280px]",label:"支付状态"},{default:l(()=>[e(g,{modelValue:t(n).pay_status,"onUpdate:modelValue":o[3]||(o[3]=a=>t(n).pay_status=a)},{default:l(()=>[e(m,{label:"全部",value:""}),e(m,{label:"未支付",value:0}),e(m,{label:"已支付",value:1})]),_:1},8,["modelValue"])]),_:1}),e(i,{label:"下单时间"},{default:l(()=>[e(B,{startTime:t(n).start_time,"onUpdate:startTime":o[4]||(o[4]=a=>t(n).start_time=a),endTime:t(n).end_time,"onUpdate:endTime":o[5]||(o[5]=a=>t(n).end_time=a)},null,8,["startTime","endTime"])]),_:1}),e(i,null,{default:l(()=>[e(u,{type:"primary",onClick:t(_)},{default:l(()=>[...o[7]||(o[7]=[p("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:t(E)},{default:l(()=>[...o[8]||(o[8]=[p("重置",-1)])]),_:1},8,["onClick"]),e(K,{class:"ml-2.5","fetch-fun":t(V),params:t(n),"page-size":t(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),e(w,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[x((c(),k(z,{size:"large",data:t(r).lists},{default:l(()=>[e(s,{label:"用户信息","min-width":"160"},{default:l(({row:a})=>[f("div",re,[e(P,{class:"flex-none mr-2",src:a.avatar,width:40,height:40,"preview-teleported":"",fit:"contain"},null,8,["src"]),p(" "+h(a.nickname),1)])]),_:1}),e(s,{label:"充值单号",prop:"sn","min-width":"190"}),e(s,{label:"充值金额",prop:"order_amount","min-width":"100"}),e(s,{label:"支付方式",prop:"pay_way_text","min-width":"100"}),e(s,{label:"支付状态",prop:"","min-width":"100"},{default:l(({row:a})=>[f("span",{class:se({"text-error":a.pay_status==0})},h(a.pay_status_text),3)]),_:1}),e(s,{label:"提交时间",prop:"create_time","min-width":"180"}),e(s,{label:"支付时间",prop:"pay_time","min-width":"180"}),e(s,{label:"操作",width:"120",fixed:"right"},{default:l(({row:a})=>[a.pay_status==1?x((c(),k(u,{key:0,type:"primary",link:"",disabled:a.refund_status==1,onClick:de=>T(a.id)},{default:l(()=>[...o[9]||(o[9]=[p(" 退款 ",-1)])]),_:1},8,["disabled","onClick"])),[[L,["recharge.recharge/refund"]]]):oe("",!0)]),_:1})]),_:1},8,["data"])),[[R,t(r).loading]]),f("div",ie,[e(D,{modelValue:t(r),"onUpdate:modelValue":o[6]||(o[6]=a=>le(r)?r.value=a:null),onChange:t(d)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{tt as default}; diff --git a/server/public/admin/assets/refund-log-Cq6vU47n.js b/server/public/admin/assets/refund-log-DeGBbgar.js similarity index 86% rename from server/public/admin/assets/refund-log-Cq6vU47n.js rename to server/public/admin/assets/refund-log-DeGBbgar.js index a8fb9d18..dba17a17 100644 --- a/server/public/admin/assets/refund-log-Cq6vU47n.js +++ b/server/public/admin/assets/refund-log-DeGBbgar.js @@ -1 +1 @@ -import{_ as o}from"./refund-log.vue_vue_type_script_setup_true_lang-DNk4F4v6.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./finance-L1-WPbJt.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; +import{_ as o}from"./refund-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./finance-CuL8jhJS.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";export{o as default}; diff --git a/server/public/admin/assets/refund-log.vue_vue_type_script_setup_true_lang-DNk4F4v6.js b/server/public/admin/assets/refund-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js similarity index 96% rename from server/public/admin/assets/refund-log.vue_vue_type_script_setup_true_lang-DNk4F4v6.js rename to server/public/admin/assets/refund-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js index cf171712..6d0a422c 100644 --- a/server/public/admin/assets/refund-log.vue_vue_type_script_setup_true_lang-DNk4F4v6.js +++ b/server/public/admin/assets/refund-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js @@ -1 +1 @@ -import{V as E,M as L,N,T,L as B}from"./element-plus-DFTWCWyi.js";import{r as C}from"./finance-L1-WPbJt.js";import{f as D,w as I,ak as s,I as R,a as o,aN as a,aP as z,G as r,O as d,H as c,A}from"./@vue/runtime-core-C6bnekPw.js";import{a as G,y as p,n as h}from"./@vue/reactivity-DiY1c2vO.js";import{Q as u}from"./@vue/shared-mAAVTE9n.js";const H={class:"code-preview"},U=D({__name:"refund-log",props:{modelValue:{type:Boolean},refundId:{}},emits:["update:modelValue"],setup(V,{emit:v}){const i=h(!1),_=h([]),f=V,y=v,n=A({get(){return f.modelValue},set(t){y("update:modelValue",t)}}),b=async()=>{i.value=!0,_.value=[];try{const t=await C({record_id:f.refundId});_.value=t}catch(t){console.log(t)}i.value=!1};return I(n,t=>{t&&b()}),(t,g)=>{const l=N,m=T,w=L,x=E,k=B;return s(),R("div",H,[o(x,{modelValue:p(n),"onUpdate:modelValue":g[0]||(g[0]=e=>G(n)?n.value=e:null),width:"760px",title:"退款日志"},{default:a(()=>[z((s(),r(w,{size:"large",data:p(_),height:"500"},{default:a(()=>[o(l,{label:"流水单号",prop:"sn","min-width":"190"}),o(l,{label:"退款金额","min-width":"110"},{default:a(({row:e})=>[d(" ¥"+u(e.refund_amount),1)]),_:1}),o(l,{label:"退款状态",prop:"","min-width":"100"},{default:a(({row:e})=>[e.refund_status==0?(s(),r(m,{key:0,type:"warning"},{default:a(()=>[d(u(e.refund_status_text),1)]),_:2},1024)):c("",!0),e.refund_status==1?(s(),r(m,{key:1},{default:a(()=>[d(u(e.refund_status_text),1)]),_:2},1024)):c("",!0),e.refund_status==2?(s(),r(m,{key:2,type:"danger"},{default:a(()=>[d(u(e.refund_status_text),1)]),_:2},1024)):c("",!0)]),_:1}),o(l,{label:"记录时间",prop:"create_time","min-width":"180"}),o(l,{label:"操作人",prop:"handler","min-width":"120"})]),_:1},8,["data"])),[[k,p(i)]])]),_:1},8,["modelValue"])])}}});export{U as _}; +import{V as E,M as L,N,T,L as B}from"./element-plus-DFTWCWyi.js";import{r as C}from"./finance-CuL8jhJS.js";import{f as D,w as I,ak as s,I as R,a as o,aN as a,aP as z,G as r,O as d,H as c,A}from"./@vue/runtime-core-C6bnekPw.js";import{a as G,y as p,n as h}from"./@vue/reactivity-DiY1c2vO.js";import{Q as u}from"./@vue/shared-mAAVTE9n.js";const H={class:"code-preview"},U=D({__name:"refund-log",props:{modelValue:{type:Boolean},refundId:{}},emits:["update:modelValue"],setup(V,{emit:v}){const i=h(!1),_=h([]),f=V,y=v,n=A({get(){return f.modelValue},set(t){y("update:modelValue",t)}}),b=async()=>{i.value=!0,_.value=[];try{const t=await C({record_id:f.refundId});_.value=t}catch(t){console.log(t)}i.value=!1};return I(n,t=>{t&&b()}),(t,g)=>{const l=N,m=T,w=L,x=E,k=B;return s(),R("div",H,[o(x,{modelValue:p(n),"onUpdate:modelValue":g[0]||(g[0]=e=>G(n)?n.value=e:null),width:"760px",title:"退款日志"},{default:a(()=>[z((s(),r(w,{size:"large",data:p(_),height:"500"},{default:a(()=>[o(l,{label:"流水单号",prop:"sn","min-width":"190"}),o(l,{label:"退款金额","min-width":"110"},{default:a(({row:e})=>[d(" ¥"+u(e.refund_amount),1)]),_:1}),o(l,{label:"退款状态",prop:"","min-width":"100"},{default:a(({row:e})=>[e.refund_status==0?(s(),r(m,{key:0,type:"warning"},{default:a(()=>[d(u(e.refund_status_text),1)]),_:2},1024)):c("",!0),e.refund_status==1?(s(),r(m,{key:1},{default:a(()=>[d(u(e.refund_status_text),1)]),_:2},1024)):c("",!0),e.refund_status==2?(s(),r(m,{key:2,type:"danger"},{default:a(()=>[d(u(e.refund_status_text),1)]),_:2},1024)):c("",!0)]),_:1}),o(l,{label:"记录时间",prop:"create_time","min-width":"180"}),o(l,{label:"操作人",prop:"handler","min-width":"120"})]),_:1},8,["data"])),[[k,p(i)]])]),_:1},8,["modelValue"])])}}});export{U as _}; diff --git a/server/public/admin/assets/refund_record-C_Z4S92m.js b/server/public/admin/assets/refund_record-3X79bN9_.js similarity index 95% rename from server/public/admin/assets/refund_record-C_Z4S92m.js rename to server/public/admin/assets/refund_record-3X79bN9_.js index dcf82a4f..3eefa7cc 100644 --- a/server/public/admin/assets/refund_record-C_Z4S92m.js +++ b/server/public/admin/assets/refund_record-3X79bN9_.js @@ -1 +1 @@ -import{J as Z,D as ee,B as te,C as ne,P as ae,Q as le,i as oe,m as se,l as re,M as ie,N as de,T as me,L as ue}from"./element-plus-DFTWCWyi.js";import{_ as pe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{h as _e,i as fe}from"./index-Nt5zMHcc.js";import{_ as ce}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as h}from"./@vue/runtime-dom-DDAG46FW.js";import{l as ge,m as ye,n as be}from"./finance-L1-WPbJt.js";import{u as ve}from"./usePaging-VsbTxSU0.js";import{_ as we}from"./refund-log.vue_vue_type_script_setup_true_lang-DNk4F4v6.js";import{f as S,as as xe,ak as i,I as D,a as t,aN as a,J as r,O as d,F as Ve,ap as ke,G as _,aP as K,H as w}from"./@vue/runtime-core-C6bnekPw.js";import{Q as m}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as R,r as F,n as x}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ce={class:"flex flex-wrap"},Te={class:"w-1/2 md:w-1/4"},Ee={class:"text-6xl"},he={class:"w-1/2 md:w-1/4"},Ke={class:"text-6xl"},Re={class:"w-1/2 md:w-1/4"},Ue={class:"text-6xl"},Le={class:"w-1/2 md:w-1/4"},Pe={class:"text-6xl"},$e={class:"flex items-center"},Be={class:"flex justify-end mt-4"},Ne=S({name:"refundRecord"}),Tt=S({...Ne,setup(De){const o=F({sn:"",order_sn:"",user_info:"",refund_type:"",start_time:"",end_time:"",refund_status:""}),g=F({total:0,ing:0,success:0,error:0}),b=x(!1),U=x(0),V=x(0),L=x([{name:"全部",type:"",numKey:"total"},{name:"退款中",type:0,numKey:"ing"},{name:"退款成功",type:1,numKey:"success"},{name:"退款失败",type:2,numKey:"error"}]),{pager:f,getLists:k,resetPage:y,resetParams:I}=ve({fetchFun:ge,params:o}),O=async u=>{await fe.confirm("确认重新退款?"),await ye({record_id:u}),k(),P()},j=async u=>{b.value=!0,U.value=u},A=u=>{o.refund_status=L.value[u].type,y()},P=async()=>{const u=await be();Object.assign(g,u)};return P(),k(),(u,e)=>{const C=Z,T=ne,c=te,$=le,J=ae,Q=ce,v=oe,q=ee,p=de,z=_e,E=me,G=ie,H=re,M=se,W=pe,B=xe("perms"),X=ue;return i(),D("div",null,[t(C,{class:"!border-none mb-4",shadow:"never"},{default:a(()=>[r("div",Ce,[r("div",Te,[e[9]||(e[9]=r("div",{class:"leading-10"},"累计退款金额 (元)",-1)),r("div",Ee,m(n(g).total),1)]),r("div",he,[e[10]||(e[10]=r("div",{class:"leading-10"},"退款中金额 (元)",-1)),r("div",Ke,m(n(g).ing),1)]),r("div",Re,[e[11]||(e[11]=r("div",{class:"leading-10"},"退款成功金额 (元)",-1)),r("div",Ue,m(n(g).success),1)]),r("div",Le,[e[12]||(e[12]=r("div",{class:"leading-10"},"退款失败金额 (元)",-1)),r("div",Pe,m(n(g).error),1)])])]),_:1}),t(C,{class:"!border-none",shadow:"never"},{default:a(()=>[t(q,{ref:"formRef",class:"mb-[-16px] mt-[16px]",model:n(o),inline:!0},{default:a(()=>[t(c,{class:"w-[280px]",label:"退款单号"},{default:a(()=>[t(T,{modelValue:n(o).sn,"onUpdate:modelValue":e[0]||(e[0]=l=>n(o).sn=l),placeholder:"请输入退款单号",clearable:"",onKeyup:h(n(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(c,{class:"w-[280px]",label:"来源单号"},{default:a(()=>[t(T,{modelValue:n(o).order_sn,"onUpdate:modelValue":e[1]||(e[1]=l=>n(o).order_sn=l),placeholder:"请输入来源单号",clearable:"",onKeyup:h(n(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(c,{class:"w-[280px]",label:"用户信息"},{default:a(()=>[t(T,{modelValue:n(o).user_info,"onUpdate:modelValue":e[2]||(e[2]=l=>n(o).user_info=l),placeholder:"请输入用户信息",clearable:"",onKeyup:h(n(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(c,{class:"w-[280px]",label:"退款类型"},{default:a(()=>[t(J,{modelValue:n(o).refund_type,"onUpdate:modelValue":e[3]||(e[3]=l=>n(o).refund_type=l)},{default:a(()=>[t($,{label:"全部",value:""}),t($,{label:"后台退款",value:1})]),_:1},8,["modelValue"])]),_:1}),t(c,{label:"记录时间"},{default:a(()=>[t(Q,{startTime:n(o).start_time,"onUpdate:startTime":e[4]||(e[4]=l=>n(o).start_time=l),endTime:n(o).end_time,"onUpdate:endTime":e[5]||(e[5]=l=>n(o).end_time=l)},null,8,["startTime","endTime"])]),_:1}),t(c,null,{default:a(()=>[t(v,{type:"primary",onClick:n(y)},{default:a(()=>[...e[13]||(e[13]=[d("查询",-1)])]),_:1},8,["onClick"]),t(v,{onClick:n(I)},{default:a(()=>[...e[14]||(e[14]=[d("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(C,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[t(M,{modelValue:n(V),"onUpdate:modelValue":e[6]||(e[6]=l=>R(V)?V.value=l:null),onTabChange:A},{default:a(()=>[(i(!0),D(Ve,null,ke(n(L),(l,N)=>(i(),_(H,{label:`${l.name}(${n(f).extend[l.numKey]??0})`,name:N,key:N},{default:a(()=>[K((i(),_(G,{size:"large",data:n(f).lists},{default:a(()=>[t(p,{label:"退款单号",prop:"sn","min-width":"190"}),t(p,{label:"用户信息","min-width":"160"},{default:a(({row:s})=>[r("div",$e,[t(z,{class:"flex-none mr-2",src:s.avatar,width:40,height:40,"preview-teleported":"",fit:"contain"},null,8,["src"]),d(" "+m(s.nickname),1)])]),_:1}),t(p,{label:"来源单号",prop:"order_sn","min-width":"190"}),t(p,{label:"退款金额","min-width":"100"},{default:a(({row:s})=>[d(" ¥ "+m(s.refund_amount),1)]),_:1}),t(p,{label:"退款类型",prop:"refund_type_text","min-width":"100"}),t(p,{label:"退款状态",prop:"","min-width":"100"},{default:a(({row:s})=>[s.refund_status==0?(i(),_(E,{key:0,type:"warning"},{default:a(()=>[d(m(s.refund_status_text),1)]),_:2},1024)):w("",!0),s.refund_status==1?(i(),_(E,{key:1},{default:a(()=>[d(m(s.refund_status_text),1)]),_:2},1024)):w("",!0),s.refund_status==2?(i(),_(E,{key:2,type:"danger"},{default:a(()=>[d(m(s.refund_status_text),1)]),_:2},1024)):w("",!0)]),_:1}),t(p,{label:"记录时间",prop:"create_time","min-width":"180"}),t(p,{label:"操作",width:"180",fixed:"right"},{default:a(({row:s})=>[K((i(),_(v,{type:"primary",link:"",onClick:Y=>j(s.id)},{default:a(()=>[...e[15]||(e[15]=[d(" 退款日志 ",-1)])]),_:1},8,["onClick"])),[[B,["finance.refund/log"]]]),s.refund_status==2?K((i(),_(v,{key:0,type:"primary",link:"",onClick:Y=>O(s.id)},{default:a(()=>[...e[16]||(e[16]=[d(" 重新退款 ",-1)])]),_:1},8,["onClick"])),[[B,["recharge.recharge/refundAgain"]]]):w("",!0)]),_:1})]),_:1},8,["data"])),[[X,n(f).loading]])]),_:1},8,["label","name"]))),128))]),_:1},8,["modelValue"]),r("div",Be,[t(W,{modelValue:n(f),"onUpdate:modelValue":e[7]||(e[7]=l=>R(f)?f.value=l:null),onChange:n(k)},null,8,["modelValue","onChange"])])]),_:1}),t(we,{modelValue:n(b),"onUpdate:modelValue":e[8]||(e[8]=l=>R(b)?b.value=l:null),"refund-id":n(U)},null,8,["modelValue","refund-id"])])}}});export{Tt as default}; +import{J as Z,D as ee,B as te,C as ne,P as ae,Q as le,i as oe,m as se,l as re,M as ie,N as de,T as me,L as ue}from"./element-plus-DFTWCWyi.js";import{_ as pe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{h as _e,i as fe}from"./index--WnM67ZH.js";import{_ as ce}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as h}from"./@vue/runtime-dom-DDAG46FW.js";import{l as ge,m as ye,n as be}from"./finance-CuL8jhJS.js";import{u as ve}from"./usePaging-VsbTxSU0.js";import{_ as we}from"./refund-log.vue_vue_type_script_setup_true_lang-DVTC_0tY.js";import{f as S,as as xe,ak as i,I as D,a as t,aN as a,J as r,O as d,F as Ve,ap as ke,G as _,aP as K,H as w}from"./@vue/runtime-core-C6bnekPw.js";import{Q as m}from"./@vue/shared-mAAVTE9n.js";import{y as n,a as R,r as F,n as x}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ce={class:"flex flex-wrap"},Te={class:"w-1/2 md:w-1/4"},Ee={class:"text-6xl"},he={class:"w-1/2 md:w-1/4"},Ke={class:"text-6xl"},Re={class:"w-1/2 md:w-1/4"},Ue={class:"text-6xl"},Le={class:"w-1/2 md:w-1/4"},Pe={class:"text-6xl"},$e={class:"flex items-center"},Be={class:"flex justify-end mt-4"},Ne=S({name:"refundRecord"}),Tt=S({...Ne,setup(De){const o=F({sn:"",order_sn:"",user_info:"",refund_type:"",start_time:"",end_time:"",refund_status:""}),g=F({total:0,ing:0,success:0,error:0}),b=x(!1),U=x(0),V=x(0),L=x([{name:"全部",type:"",numKey:"total"},{name:"退款中",type:0,numKey:"ing"},{name:"退款成功",type:1,numKey:"success"},{name:"退款失败",type:2,numKey:"error"}]),{pager:f,getLists:k,resetPage:y,resetParams:I}=ve({fetchFun:ge,params:o}),O=async u=>{await fe.confirm("确认重新退款?"),await ye({record_id:u}),k(),P()},j=async u=>{b.value=!0,U.value=u},A=u=>{o.refund_status=L.value[u].type,y()},P=async()=>{const u=await be();Object.assign(g,u)};return P(),k(),(u,e)=>{const C=Z,T=ne,c=te,$=le,J=ae,Q=ce,v=oe,q=ee,p=de,z=_e,E=me,G=ie,H=re,M=se,W=pe,B=xe("perms"),X=ue;return i(),D("div",null,[t(C,{class:"!border-none mb-4",shadow:"never"},{default:a(()=>[r("div",Ce,[r("div",Te,[e[9]||(e[9]=r("div",{class:"leading-10"},"累计退款金额 (元)",-1)),r("div",Ee,m(n(g).total),1)]),r("div",he,[e[10]||(e[10]=r("div",{class:"leading-10"},"退款中金额 (元)",-1)),r("div",Ke,m(n(g).ing),1)]),r("div",Re,[e[11]||(e[11]=r("div",{class:"leading-10"},"退款成功金额 (元)",-1)),r("div",Ue,m(n(g).success),1)]),r("div",Le,[e[12]||(e[12]=r("div",{class:"leading-10"},"退款失败金额 (元)",-1)),r("div",Pe,m(n(g).error),1)])])]),_:1}),t(C,{class:"!border-none",shadow:"never"},{default:a(()=>[t(q,{ref:"formRef",class:"mb-[-16px] mt-[16px]",model:n(o),inline:!0},{default:a(()=>[t(c,{class:"w-[280px]",label:"退款单号"},{default:a(()=>[t(T,{modelValue:n(o).sn,"onUpdate:modelValue":e[0]||(e[0]=l=>n(o).sn=l),placeholder:"请输入退款单号",clearable:"",onKeyup:h(n(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(c,{class:"w-[280px]",label:"来源单号"},{default:a(()=>[t(T,{modelValue:n(o).order_sn,"onUpdate:modelValue":e[1]||(e[1]=l=>n(o).order_sn=l),placeholder:"请输入来源单号",clearable:"",onKeyup:h(n(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(c,{class:"w-[280px]",label:"用户信息"},{default:a(()=>[t(T,{modelValue:n(o).user_info,"onUpdate:modelValue":e[2]||(e[2]=l=>n(o).user_info=l),placeholder:"请输入用户信息",clearable:"",onKeyup:h(n(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(c,{class:"w-[280px]",label:"退款类型"},{default:a(()=>[t(J,{modelValue:n(o).refund_type,"onUpdate:modelValue":e[3]||(e[3]=l=>n(o).refund_type=l)},{default:a(()=>[t($,{label:"全部",value:""}),t($,{label:"后台退款",value:1})]),_:1},8,["modelValue"])]),_:1}),t(c,{label:"记录时间"},{default:a(()=>[t(Q,{startTime:n(o).start_time,"onUpdate:startTime":e[4]||(e[4]=l=>n(o).start_time=l),endTime:n(o).end_time,"onUpdate:endTime":e[5]||(e[5]=l=>n(o).end_time=l)},null,8,["startTime","endTime"])]),_:1}),t(c,null,{default:a(()=>[t(v,{type:"primary",onClick:n(y)},{default:a(()=>[...e[13]||(e[13]=[d("查询",-1)])]),_:1},8,["onClick"]),t(v,{onClick:n(I)},{default:a(()=>[...e[14]||(e[14]=[d("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(C,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[t(M,{modelValue:n(V),"onUpdate:modelValue":e[6]||(e[6]=l=>R(V)?V.value=l:null),onTabChange:A},{default:a(()=>[(i(!0),D(Ve,null,ke(n(L),(l,N)=>(i(),_(H,{label:`${l.name}(${n(f).extend[l.numKey]??0})`,name:N,key:N},{default:a(()=>[K((i(),_(G,{size:"large",data:n(f).lists},{default:a(()=>[t(p,{label:"退款单号",prop:"sn","min-width":"190"}),t(p,{label:"用户信息","min-width":"160"},{default:a(({row:s})=>[r("div",$e,[t(z,{class:"flex-none mr-2",src:s.avatar,width:40,height:40,"preview-teleported":"",fit:"contain"},null,8,["src"]),d(" "+m(s.nickname),1)])]),_:1}),t(p,{label:"来源单号",prop:"order_sn","min-width":"190"}),t(p,{label:"退款金额","min-width":"100"},{default:a(({row:s})=>[d(" ¥ "+m(s.refund_amount),1)]),_:1}),t(p,{label:"退款类型",prop:"refund_type_text","min-width":"100"}),t(p,{label:"退款状态",prop:"","min-width":"100"},{default:a(({row:s})=>[s.refund_status==0?(i(),_(E,{key:0,type:"warning"},{default:a(()=>[d(m(s.refund_status_text),1)]),_:2},1024)):w("",!0),s.refund_status==1?(i(),_(E,{key:1},{default:a(()=>[d(m(s.refund_status_text),1)]),_:2},1024)):w("",!0),s.refund_status==2?(i(),_(E,{key:2,type:"danger"},{default:a(()=>[d(m(s.refund_status_text),1)]),_:2},1024)):w("",!0)]),_:1}),t(p,{label:"记录时间",prop:"create_time","min-width":"180"}),t(p,{label:"操作",width:"180",fixed:"right"},{default:a(({row:s})=>[K((i(),_(v,{type:"primary",link:"",onClick:Y=>j(s.id)},{default:a(()=>[...e[15]||(e[15]=[d(" 退款日志 ",-1)])]),_:1},8,["onClick"])),[[B,["finance.refund/log"]]]),s.refund_status==2?K((i(),_(v,{key:0,type:"primary",link:"",onClick:Y=>O(s.id)},{default:a(()=>[...e[16]||(e[16]=[d(" 重新退款 ",-1)])]),_:1},8,["onClick"])),[[B,["recharge.recharge/refundAgain"]]]):w("",!0)]),_:1})]),_:1},8,["data"])),[[X,n(f).loading]])]),_:1},8,["label","name"]))),128))]),_:1},8,["modelValue"]),r("div",Be,[t(W,{modelValue:n(f),"onUpdate:modelValue":e[7]||(e[7]=l=>R(f)?f.value=l:null),onChange:n(k)},null,8,["modelValue","onChange"])])]),_:1}),t(we,{modelValue:n(b),"onUpdate:modelValue":e[8]||(e[8]=l=>R(b)?b.value=l:null),"refund-id":n(U)},null,8,["modelValue","refund-id"])])}}});export{Tt as default}; diff --git a/server/public/admin/assets/relations-add-QP6EItjc.js b/server/public/admin/assets/relations-add-DIyG8vSg.js similarity index 79% rename from server/public/admin/assets/relations-add-QP6EItjc.js rename to server/public/admin/assets/relations-add-DIyG8vSg.js index 774e5df3..dcb8ea8e 100644 --- a/server/public/admin/assets/relations-add-QP6EItjc.js +++ b/server/public/admin/assets/relations-add-DIyG8vSg.js @@ -1 +1 @@ -import{_ as o}from"./relations-add.vue_vue_type_script_setup_true_lang-Dd5lfrrN.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./code-C9qHBHs_.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./useDictOptions-CT8hbU1b.js";export{o as default}; +import{_ as o}from"./relations-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./code-CrOutkes.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./useDictOptions-lSbSoycG.js";export{o as default}; diff --git a/server/public/admin/assets/relations-add.vue_vue_type_script_setup_true_lang-Dd5lfrrN.js b/server/public/admin/assets/relations-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js similarity index 93% rename from server/public/admin/assets/relations-add.vue_vue_type_script_setup_true_lang-Dd5lfrrN.js rename to server/public/admin/assets/relations-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js index 3e9a392d..28c268af 100644 --- a/server/public/admin/assets/relations-add.vue_vue_type_script_setup_true_lang-Dd5lfrrN.js +++ b/server/public/admin/assets/relations-add.vue_vue_type_script_setup_true_lang-DKqlBXCa.js @@ -1 +1 @@ -import{D as A,B as I,P as N,Q as O,C as S}from"./element-plus-DFTWCWyi.js";import{a as $}from"./code-C9qHBHs_.js";import{_ as G}from"./index-BQY2-_X1.js";import{u as L}from"./useDictOptions-CT8hbU1b.js";import{f as M,ak as u,I as m,a as t,aN as n,F as i,ap as _,G as y,A as P}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as g,r as Q,n as T}from"./@vue/reactivity-DiY1c2vO.js";const j={class:"edit-popup"},Y=M({__name:"relations-add",props:{column:{type:Array,default:()=>[]},types:{type:Array,default:()=>[]}},emits:["add","close","edit"],setup(k,{expose:x,emit:q}){const v=q,V=g(),d=g(),p=T("add"),C=P(()=>p.value=="edit"?"编辑关联":"新增关联"),o=Q({name:"",model:"",type:"",local_key:"",foreign_key:""}),E={name:[{required:!0,message:"请输入关联名称"}],type:[{required:!0,message:"请选择关联类型"}],model:[{required:!0,message:"请选择关联模型"}],local_key:[{required:!0,message:"请选择关联健"}],foreign_key:[{required:!0,message:"请输入外键"}]},{optionsData:R}=L({models:{api:$}}),w=async()=>{var r,e;await((r=V.value)==null?void 0:r.validate()),(e=d.value)==null||e.close(),v(p.value,o)},D=(r="add")=>{var e;p.value=r,(e=d.value)==null||e.open()},F=r=>{for(const e in o)r[e]!=null&&r[e]!=null&&(o[e]=r[e])},U=()=>{v("close")};return x({open:D,setFormData:F}),(r,e)=>{const f=O,c=N,s=I,b=S,B=A;return u(),m("div",j,[t(G,{ref_key:"popupRef",ref:d,title:a(C),async:!0,width:"550px",onConfirm:w,onClose:U},{default:n(()=>[t(B,{ref_key:"formRef",ref:V,model:a(o),"label-width":"84px",rules:E},{default:n(()=>[t(s,{label:"关联类型",prop:"type"},{default:n(()=>[t(c,{class:"flex-1",modelValue:a(o).type,"onUpdate:modelValue":e[0]||(e[0]=l=>a(o).type=l),placeholder:"请选择关联类型"},{default:n(()=>[(u(!0),m(i,null,_(k.types,(l,h)=>(u(),y(f,{key:h,label:l.name,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(s,{label:"关联名称",prop:"name"},{default:n(()=>[t(b,{modelValue:a(o).name,"onUpdate:modelValue":e[1]||(e[1]=l=>a(o).name=l),placeholder:"请输入关联名称"},null,8,["modelValue"])]),_:1}),t(s,{label:"关联模型",prop:"model"},{default:n(()=>[t(c,{class:"flex-1",modelValue:a(o).model,"onUpdate:modelValue":e[2]||(e[2]=l=>a(o).model=l),placeholder:"请选择关联模型"},{default:n(()=>[(u(!0),m(i,null,_(a(R).models,l=>(u(),y(f,{label:l,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(s,{label:"关联健",prop:"local_key"},{default:n(()=>[t(c,{class:"flex-1",modelValue:a(o).local_key,"onUpdate:modelValue":e[3]||(e[3]=l=>a(o).local_key=l),clearable:"",placeholder:"请选择关联健"},{default:n(()=>[(u(!0),m(i,null,_(k.column,l=>(u(),y(f,{key:l.id,value:l.column_name,label:`${l.column_name}:${l.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(s,{label:"外键",prop:"foreign_key"},{default:n(()=>[t(b,{modelValue:a(o).foreign_key,"onUpdate:modelValue":e[4]||(e[4]=l=>a(o).foreign_key=l),placeholder:"关联表外键或中间表的外键"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{Y as _}; +import{D as A,B as I,P as N,Q as O,C as S}from"./element-plus-DFTWCWyi.js";import{a as $}from"./code-CrOutkes.js";import{_ as G}from"./index-SocYjCJ1.js";import{u as L}from"./useDictOptions-lSbSoycG.js";import{f as M,ak as u,I as m,a as t,aN as n,F as i,ap as _,G as y,A as P}from"./@vue/runtime-core-C6bnekPw.js";import{y as a,q as g,r as Q,n as T}from"./@vue/reactivity-DiY1c2vO.js";const j={class:"edit-popup"},Y=M({__name:"relations-add",props:{column:{type:Array,default:()=>[]},types:{type:Array,default:()=>[]}},emits:["add","close","edit"],setup(k,{expose:x,emit:q}){const v=q,V=g(),d=g(),p=T("add"),C=P(()=>p.value=="edit"?"编辑关联":"新增关联"),o=Q({name:"",model:"",type:"",local_key:"",foreign_key:""}),E={name:[{required:!0,message:"请输入关联名称"}],type:[{required:!0,message:"请选择关联类型"}],model:[{required:!0,message:"请选择关联模型"}],local_key:[{required:!0,message:"请选择关联健"}],foreign_key:[{required:!0,message:"请输入外键"}]},{optionsData:R}=L({models:{api:$}}),w=async()=>{var r,e;await((r=V.value)==null?void 0:r.validate()),(e=d.value)==null||e.close(),v(p.value,o)},D=(r="add")=>{var e;p.value=r,(e=d.value)==null||e.open()},F=r=>{for(const e in o)r[e]!=null&&r[e]!=null&&(o[e]=r[e])},U=()=>{v("close")};return x({open:D,setFormData:F}),(r,e)=>{const f=O,c=N,s=I,b=S,B=A;return u(),m("div",j,[t(G,{ref_key:"popupRef",ref:d,title:a(C),async:!0,width:"550px",onConfirm:w,onClose:U},{default:n(()=>[t(B,{ref_key:"formRef",ref:V,model:a(o),"label-width":"84px",rules:E},{default:n(()=>[t(s,{label:"关联类型",prop:"type"},{default:n(()=>[t(c,{class:"flex-1",modelValue:a(o).type,"onUpdate:modelValue":e[0]||(e[0]=l=>a(o).type=l),placeholder:"请选择关联类型"},{default:n(()=>[(u(!0),m(i,null,_(k.types,(l,h)=>(u(),y(f,{key:h,label:l.name,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(s,{label:"关联名称",prop:"name"},{default:n(()=>[t(b,{modelValue:a(o).name,"onUpdate:modelValue":e[1]||(e[1]=l=>a(o).name=l),placeholder:"请输入关联名称"},null,8,["modelValue"])]),_:1}),t(s,{label:"关联模型",prop:"model"},{default:n(()=>[t(c,{class:"flex-1",modelValue:a(o).model,"onUpdate:modelValue":e[2]||(e[2]=l=>a(o).model=l),placeholder:"请选择关联模型"},{default:n(()=>[(u(!0),m(i,null,_(a(R).models,l=>(u(),y(f,{label:l,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(s,{label:"关联健",prop:"local_key"},{default:n(()=>[t(c,{class:"flex-1",modelValue:a(o).local_key,"onUpdate:modelValue":e[3]||(e[3]=l=>a(o).local_key=l),clearable:"",placeholder:"请选择关联健"},{default:n(()=>[(u(!0),m(i,null,_(k.column,l=>(u(),y(f,{key:l.id,value:l.column_name,label:`${l.column_name}:${l.column_comment}`},null,8,["value","label"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(s,{label:"外键",prop:"foreign_key"},{default:n(()=>[t(b,{modelValue:a(o).foreign_key,"onUpdate:modelValue":e[4]||(e[4]=l=>a(o).foreign_key=l),placeholder:"关联表外键或中间表的外键"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{Y as _}; diff --git a/server/public/admin/assets/rich_text-DCadQVqu.js b/server/public/admin/assets/rich_text-BnBjFfGI.js similarity index 82% rename from server/public/admin/assets/rich_text-DCadQVqu.js rename to server/public/admin/assets/rich_text-BnBjFfGI.js index 89533056..87d0aef3 100644 --- a/server/public/admin/assets/rich_text-DCadQVqu.js +++ b/server/public/admin/assets/rich_text-BnBjFfGI.js @@ -1 +1 @@ -import{J as l}from"./element-plus-DFTWCWyi.js";import{_ as n}from"./index.vue_vue_type_style_index_0_lang-BHpNHC57.js";import{f as s,ak as d,I as u,a as r,aN as a}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,r as _}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@wangeditor/editor-Cyf37SuL.js";import"./@wangeditor/editor-for-vue-D1vSph3l.js";import"./picker-cSgp8cEl.js";import"./index-BQY2-_X1.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const Vo=s({__name:"rich_text",setup(c){const o=_({value1:"",value2:""});return(f,t)=>{const i=n,e=l;return d(),u("div",null,[r(e,{header:"基础使用",shadow:"never",class:"!border-none"},{default:a(()=>[r(i,{modelValue:m(o).value1,"onUpdate:modelValue":t[0]||(t[0]=p=>m(o).value1=p),height:"500px"},null,8,["modelValue"])]),_:1}),r(e,{header:"简洁模式",shadow:"never",class:"!border-none mt-4"},{default:a(()=>[r(i,{modelValue:m(o).value2,"onUpdate:modelValue":t[1]||(t[1]=p=>m(o).value2=p),height:"500px",mode:"simple"},null,8,["modelValue"])]),_:1})])}}});export{Vo as default}; +import{J as l}from"./element-plus-DFTWCWyi.js";import{_ as n}from"./index.vue_vue_type_style_index_0_lang-Dbv7WGME.js";import{f as s,ak as d,I as u,a as r,aN as a}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,r as _}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@wangeditor/editor-Cyf37SuL.js";import"./@wangeditor/editor-for-vue-D1vSph3l.js";import"./picker-DzCeqD7m.js";import"./index-SocYjCJ1.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const Vo=s({__name:"rich_text",setup(c){const o=_({value1:"",value2:""});return(f,t)=>{const i=n,e=l;return d(),u("div",null,[r(e,{header:"基础使用",shadow:"never",class:"!border-none"},{default:a(()=>[r(i,{modelValue:m(o).value1,"onUpdate:modelValue":t[0]||(t[0]=p=>m(o).value1=p),height:"500px"},null,8,["modelValue"])]),_:1}),r(e,{header:"简洁模式",shadow:"never",class:"!border-none mt-4"},{default:a(()=>[r(i,{modelValue:m(o).value2,"onUpdate:modelValue":t[1]||(t[1]=p=>m(o).value2=p),height:"500px",mode:"simple"},null,8,["modelValue"])]),_:1})])}}});export{Vo as default}; diff --git a/server/public/admin/assets/role-Dce31LXP.js b/server/public/admin/assets/role-BvkAFvOK.js similarity index 83% rename from server/public/admin/assets/role-Dce31LXP.js rename to server/public/admin/assets/role-BvkAFvOK.js index 6b808114..e1fd51e7 100644 --- a/server/public/admin/assets/role-Dce31LXP.js +++ b/server/public/admin/assets/role-BvkAFvOK.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function l(r){return t.get({url:"/auth.role/lists",params:r})}function o(r){return t.get({url:"/auth.role/all",params:r})}function u(r){return t.post({url:"/auth.role/add",params:r})}function n(r){return t.post({url:"/auth.role/edit",params:r})}function a(r){return t.post({url:"/auth.role/delete",params:r})}export{n as a,u as b,l as c,a as d,o as r}; +import{r as t}from"./index--WnM67ZH.js";function l(r){return t.get({url:"/auth.role/lists",params:r})}function o(r){return t.get({url:"/auth.role/all",params:r})}function u(r){return t.post({url:"/auth.role/add",params:r})}function n(r){return t.post({url:"/auth.role/edit",params:r})}function a(r){return t.post({url:"/auth.role/delete",params:r})}export{n as a,u as b,l as c,a as d,o as r}; diff --git a/server/public/admin/assets/roster-U-rezV1y.js b/server/public/admin/assets/roster-Clo3lqg1.js similarity index 99% rename from server/public/admin/assets/roster-U-rezV1y.js rename to server/public/admin/assets/roster-Clo3lqg1.js index 7462979a..d0b6a2bf 100644 --- a/server/public/admin/assets/roster-U-rezV1y.js +++ b/server/public/admin/assets/roster-Clo3lqg1.js @@ -1 +1 @@ -import{D as qe,B as Ue,C as $e,i as Ie,K as Se,M as Me,N as Be,L as We,J as Ne,V as he,ae as Re,P as Te,Q as Le,h as Fe,G as Ae,I as Ge,a2 as Oe,af as Pe,H as je,a as ze}from"./element-plus-DFTWCWyi.js";import{d as M,g as He}from"./dayjs-DG77mNTn.js";import{i as m,_ as Je}from"./index-Nt5zMHcc.js";import{a as Qe}from"./admin-BAFPFiwc.js";import{h as Ke,i as Xe,r as Ze,j as et}from"./doctor-B7qEhSpt.js";import{f as ae,b as tt,ak as f,I as k,a,aN as o,J as v,O as s,aP as at,G as B,F as R,ap as T,H as te,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{n as _}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y,o as lt}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ot={class:"doctor-roster p-4"},st={class:"flex justify-between items-center"},nt={class:"mb-4"},rt={class:"text-center mb-4 text-gray-600"},ut=["onClick"],dt={key:0,class:"text-xs text-gray-400 text-center py-2"},it={key:1,class:"space-y-1"},mt={class:"flex items-center gap-2 flex-wrap"},pt={class:"w-full space-y-2"},ft=ae({name:"doctorRoster"}),vt=ae({...ft,setup(_t){M.extend(He);const F=_(""),g=_(M().startOf("isoWeek")),A=_(!1),W=_(!1),V=_(null),x=_(""),z=_([]),U=_(!1),G=_(!1),d=_({id:null,doctorId:0,date:"",start_time:"09:00",end_time:"12:00",shift_type:"",slot_minutes:15,status:1,quota:0,max_patients:0,remark:""}),$=_(!1),O=_(!1),H=()=>[{start_time:"09:00",end_time:"12:00",shift_type:"day",slot_minutes:15,quota:0},{start_time:"14:00",end_time:"18:00",shift_type:"day",slot_minutes:15,quota:0}],r=_({doctorIds:[],dateRange:[],weekdays:[1,2,3,4,5],status:1,remark:"",segments:H()}),q=_([]),le=L(()=>{const t=F.value.trim();return t?q.value.filter(e=>e.doctorName.includes(t)):q.value}),oe=L(()=>!V.value||!x.value?"当日排班":`${V.value.doctorName} · ${x.value}`),se=L(()=>{const t=[],e=["周一","周二","周三","周四","周五","周六","周日"];for(let u=0;u<7;u++){const i=g.value.add(u,"day");t.push({date:i.format("YYYY-MM-DD"),label:`${e[u]} ${i.format("MM-DD")}`})}return t}),ne=L(()=>{const t=g.value.format("YYYY-MM-DD"),e=g.value.add(6,"day").format("YYYY-MM-DD");return`${t} 至 ${e}`});function J(t){return{1:"出诊",2:"停诊",3:"休息",4:"请假"}[t]??String(t)}function Q(t){return t==="day"?"白班":t==="night"?"夜班":"—"}function re(t){return t===1?"bg-emerald-50 text-emerald-800 border border-emerald-100":t===2?"bg-amber-50 text-amber-900 border border-amber-100":t===3?"bg-slate-100 text-slate-600 border border-slate-200":"bg-gray-100 text-gray-700 border border-gray-200"}function ue(t){const e=`${t.start_time}-${t.end_time}`,u=Q(t.shift_type),i=u!=="—"?` ${u}`:"";if(t.status===1){const n=t.quota>0?` 号源${t.quota}`:"";return`${e}${i} 出诊${n}`}return`${e}${i} ${J(t.status)}`}function K(t,e){return t.rostersByDate[e]||[]}function N(){if(!V.value||!x.value)return;const t=q.value.find(e=>e.doctorId===V.value.doctorId);t&&(z.value=[...t.rostersByDate[x.value]||[]].sort((e,u)=>e.start_time.localeCompare(u.start_time)))}function de(t,e){V.value=t,x.value=e,N(),W.value=!0}function X(t){if(!V.value||!x.value){m.msgWarning("请先选择日期格子");return}t?d.value={id:t.id,doctorId:V.value.doctorId,date:x.value,start_time:t.start_time||"09:00",end_time:t.end_time||"12:00",shift_type:t.shift_type||"",slot_minutes:t.slot_minutes||15,status:t.status,quota:t.quota??0,max_patients:t.max_patients??0,remark:t.remark||""}:d.value={id:null,doctorId:V.value.doctorId,date:x.value,start_time:"09:00",end_time:"12:00",shift_type:"day",slot_minutes:15,status:1,quota:0,max_patients:0,remark:""},U.value=!0}async function ie(){const t=d.value;if(!t.start_time||!t.end_time){m.msgWarning("请填写接诊开始与结束时间");return}if(t.status===1&&t.start_time>=t.end_time){m.msgWarning("出诊时结束时间须晚于开始时间");return}if(t.start_time>=t.end_time){m.msgWarning("结束时间须晚于开始时间");return}G.value=!0;try{const e={doctor_id:t.doctorId,date:t.date,period:"segment",start_time:t.start_time,end_time:t.end_time,slot_minutes:t.slot_minutes||15,status:t.status,quota:t.status===1?t.quota:0,max_patients:t.status===1?t.max_patients:0,remark:t.remark||""};t.shift_type&&(e.shift_type=t.shift_type),t.id&&(e.id=t.id),await Ke(e),m.msgSuccess("保存成功"),U.value=!1,await w(),N()}catch{m.msgError("保存失败")}finally{G.value=!1}}async function me(t){try{await ze.confirm("确定删除该时段?","提示",{type:"warning"})}catch{return}try{await Xe({id:t.id}),m.msgSuccess("已删除"),await w(),N()}catch{m.msgError("删除失败")}}const pe=async()=>{try{const t=await Qe({page_no:1,page_size:1e3,role_id:1});q.value=((t==null?void 0:t.lists)||[]).map(e=>({doctorId:e.id,doctorName:e.name||e.account,rostersByDate:{}})),await w()}catch(t){console.error("加载医生列表失败:",t),m.msgError("加载医生列表失败")}},w=async()=>{A.value=!0;try{const t={start_date:g.value.format("YYYY-MM-DD"),end_date:g.value.add(6,"day").format("YYYY-MM-DD")},e=await Ze(t),u=(e==null?void 0:e.lists)||[];q.value.forEach(i=>{i.rostersByDate={},u.forEach(n=>{if(n.doctor_id!==i.doctorId)return;const b=n.date;i.rostersByDate[b]||(i.rostersByDate[b]=[]),i.rostersByDate[b].push({id:n.id,status:n.status,quota:n.quota||0,max_patients:n.max_patients,start_time:n.start_time||fe(n.period),end_time:n.end_time||ve(n.period),shift_type:n.shift_type,slot_minutes:n.slot_minutes??15,remark:n.remark,period:n.period})})}),N()}catch(t){console.error("加载排班数据失败:",t),m.msgError("加载排班数据失败")}finally{A.value=!1}};function fe(t){return t==="morning"?"09:00":t==="afternoon"?"14:00":t==="night"?"18:00":"09:00"}function ve(t){return t==="morning"?"12:00":t==="afternoon"?"18:00":t==="night"?"22:00":"12:00"}const _e=()=>{w()},ye=()=>{g.value=g.value.subtract(1,"week"),w()},ge=()=>{g.value=g.value.add(1,"week"),w()},be=()=>{g.value=M().startOf("isoWeek"),w()},ke=()=>{r.value={doctorIds:[],dateRange:[],weekdays:[1,2,3,4,5],status:1,remark:"",segments:H()},$.value=!0},Ve=()=>{r.value.segments.push({start_time:"09:00",end_time:"12:00",shift_type:"day",slot_minutes:15,quota:0})},xe=()=>{r.value.segments.push({start_time:"18:00",end_time:"22:00",shift_type:"night",slot_minutes:15,quota:0})},we=t=>{r.value.segments.length<=1||r.value.segments.splice(t,1)},ce=async()=>{if(r.value.doctorIds.length===0){m.msgWarning("请选择医生");return}if(!r.value.dateRange||r.value.dateRange.length!==2){m.msgWarning("请选择日期范围");return}if(r.value.weekdays.length===0){m.msgWarning("请选择星期");return}for(const t of r.value.segments){if(!t.start_time||!t.end_time){m.msgWarning("请完善时段模板的开始与结束时间");return}if(t.start_time>=t.end_time){m.msgWarning("时段模板中结束时间须晚于开始时间");return}}O.value=!0;try{const t=[],e=M(r.value.dateRange[0]),u=M(r.value.dateRange[1]);let i=e;for(;i.isBefore(u)||i.isSame(u,"day");){const n=i.day();r.value.weekdays.includes(n)&&r.value.doctorIds.forEach(b=>{r.value.segments.forEach(c=>{const y={doctor_id:b,date:i.format("YYYY-MM-DD"),period:"segment",start_time:c.start_time,end_time:c.end_time,slot_minutes:c.slot_minutes||15,status:r.value.status,quota:r.value.status===1?c.quota:0,max_patients:0,remark:r.value.remark};c.shift_type&&(y.shift_type=c.shift_type),t.push(y)})}),i=i.add(1,"day")}if(t.length===0){m.msgWarning("没有符合条件的排班数据");return}await et({rosters:t}),m.msgSuccess(`批量保存成功!共处理 ${t.length} 条记录`),$.value=!1,await w()}catch(t){console.error("批量保存失败:",t),m.msgError("批量保存失败")}finally{O.value=!1}};return tt(()=>{pe()}),(t,e)=>{const u=Ie,i=$e,n=Ue,b=qe,c=Se,y=Be,Z=Me,De=Ne,P=he,h=Re,I=Le,j=Te,S=Fe,D=Ge,ee=Ae,Ce=Oe,E=je,Ye=Pe,Ee=We;return f(),k("div",ot,[a(De,{shadow:"never"},{header:o(()=>[v("div",st,[e[25]||(e[25]=v("span",{class:"text-lg font-medium"},"医生排班管理",-1)),v("div",null,[a(u,{type:"success",onClick:ke},{default:o(()=>[...e[21]||(e[21]=[s("批量排班",-1)])]),_:1}),a(u,{onClick:ye},{default:o(()=>[...e[22]||(e[22]=[s("上一周",-1)])]),_:1}),a(u,{onClick:ge},{default:o(()=>[...e[23]||(e[23]=[s("下一周",-1)])]),_:1}),a(u,{type:"primary",onClick:be},{default:o(()=>[...e[24]||(e[24]=[s("本周",-1)])]),_:1})])])]),default:o(()=>[v("div",nt,[a(b,{inline:""},{default:o(()=>[a(n,{label:"医生"},{default:o(()=>[a(i,{modelValue:F.value,"onUpdate:modelValue":e[0]||(e[0]=l=>F.value=l),placeholder:"请输入医生姓名",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),a(n,null,{default:o(()=>[a(u,{type:"primary",onClick:_e},{default:o(()=>[...e[26]||(e[26]=[s("查询",-1)])]),_:1})]),_:1})]),_:1})]),a(c,{type:"info",closable:!1,class:"mb-4","show-icon":""},{default:o(()=>[...e[27]||(e[27]=[s(" 每条排班为一段连续可挂号时间;同一天可添加多段(如白班 + 夜班)。休息时段不添加出诊段即可。号源间隔默认 15 分钟;号源数填 0 表示按时段长度自动满号。 ",-1)])]),_:1}),v("div",rt,Y(ne.value),1),at((f(),B(Z,{data:le.value,border:""},{default:o(()=>[a(y,{prop:"doctorName",label:"医生",width:"120",fixed:""}),(f(!0),k(R,null,T(se.value,l=>(f(),B(y,{key:l.date,label:l.label,"min-width":"168"},{default:o(({row:C})=>[v("div",{class:"day-cell rounded border border-dashed border-gray-200 p-1 min-h-[56px] cursor-pointer hover:bg-gray-50",onClick:p=>de(C,l.date)},[K(C,l.date).length===0?(f(),k("div",dt,"点击管理")):(f(),k("div",it,[(f(!0),k(R,null,T(K(C,l.date),p=>(f(),k("div",{key:p.id,class:lt(["text-xs px-1 py-0.5 rounded leading-tight",re(p.status)])},Y(ue(p)),3))),128))]))],8,ut)]),_:2},1032,["label"]))),128))]),_:1},8,["data"])),[[Ee,A.value]])]),_:1}),a(P,{modelValue:W.value,"onUpdate:modelValue":e[3]||(e[3]=l=>W.value=l),title:oe.value,width:"720px","destroy-on-close":""},{footer:o(()=>[a(u,{onClick:e[1]||(e[1]=l=>W.value=!1)},{default:o(()=>[...e[30]||(e[30]=[s("关闭",-1)])]),_:1}),a(u,{type:"primary",onClick:e[2]||(e[2]=l=>X())},{default:o(()=>[...e[31]||(e[31]=[s("添加时段",-1)])]),_:1})]),default:o(()=>[a(Z,{data:z.value,border:"",size:"small","max-height":"360"},{default:o(()=>[a(y,{label:"时间",width:"150"},{default:o(({row:l})=>[s(Y(l.start_time)+" - "+Y(l.end_time),1)]),_:1}),a(y,{label:"班次",width:"80"},{default:o(({row:l})=>[s(Y(Q(l.shift_type)),1)]),_:1}),a(y,{label:"状态",width:"88"},{default:o(({row:l})=>[s(Y(J(l.status)),1)]),_:1}),a(y,{label:"间隔",width:"72"},{default:o(({row:l})=>[s(Y(l.slot_minutes||15)+" 分",1)]),_:1}),a(y,{label:"号源",width:"72"},{default:o(({row:l})=>[s(Y(l.status===1?l.quota||"不限":"-"),1)]),_:1}),a(y,{label:"备注",prop:"remark","min-width":"100","show-overflow-tooltip":""}),a(y,{label:"操作",width:"140",fixed:"right"},{default:o(({row:l})=>[a(u,{type:"primary",link:"",onClick:C=>X(l)},{default:o(()=>[...e[28]||(e[28]=[s("编辑",-1)])]),_:1},8,["onClick"]),a(u,{type:"danger",link:"",onClick:C=>me(l)},{default:o(()=>[...e[29]||(e[29]=[s("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:1},8,["modelValue","title"]),a(P,{modelValue:U.value,"onUpdate:modelValue":e[13]||(e[13]=l=>U.value=l),title:d.value.id?"编辑时段":"添加时段",width:"520px","destroy-on-close":""},{footer:o(()=>[a(u,{onClick:e[12]||(e[12]=l=>U.value=!1)},{default:o(()=>[...e[39]||(e[39]=[s("取消",-1)])]),_:1}),a(u,{type:"primary",loading:G.value,onClick:ie},{default:o(()=>[...e[40]||(e[40]=[s("保存",-1)])]),_:1},8,["loading"])]),default:o(()=>[a(b,{model:d.value,"label-width":"110px"},{default:o(()=>[a(n,{label:"接诊时间",required:""},{default:o(()=>[v("div",mt,[a(h,{modelValue:d.value.start_time,"onUpdate:modelValue":e[4]||(e[4]=l=>d.value.start_time=l),start:"00:00",step:"00:5",end:"23:45",placeholder:"开始",style:{width:"120px"}},null,8,["modelValue"]),e[32]||(e[32]=v("span",null,"至",-1)),a(h,{modelValue:d.value.end_time,"onUpdate:modelValue":e[5]||(e[5]=l=>d.value.end_time=l),start:"00:00",step:"00:5",end:"23:45",placeholder:"结束",style:{width:"120px"}},null,8,["modelValue"])])]),_:1}),a(n,{label:"班次标签"},{default:o(()=>[a(j,{modelValue:d.value.shift_type,"onUpdate:modelValue":e[6]||(e[6]=l=>d.value.shift_type=l),placeholder:"选填",clearable:"",style:{width:"200px"}},{default:o(()=>[a(I,{label:"白班",value:"day"}),a(I,{label:"夜班",value:"night"})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"号源间隔(分)"},{default:o(()=>[a(S,{modelValue:d.value.slot_minutes,"onUpdate:modelValue":e[7]||(e[7]=l=>d.value.slot_minutes=l),min:5,max:120,step:5},null,8,["modelValue"]),e[33]||(e[33]=v("span",{class:"ml-2 text-gray-500 text-sm"},"默认 15",-1))]),_:1}),a(n,{label:"状态"},{default:o(()=>[a(ee,{modelValue:d.value.status,"onUpdate:modelValue":e[8]||(e[8]=l=>d.value.status=l)},{default:o(()=>[a(D,{label:1},{default:o(()=>[...e[34]||(e[34]=[s("出诊",-1)])]),_:1}),a(D,{label:2},{default:o(()=>[...e[35]||(e[35]=[s("停诊",-1)])]),_:1}),a(D,{label:3},{default:o(()=>[...e[36]||(e[36]=[s("休息",-1)])]),_:1}),a(D,{label:4},{default:o(()=>[...e[37]||(e[37]=[s("请假",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.value.status===1?(f(),B(n,{key:0,label:"号源上限"},{default:o(()=>[a(S,{modelValue:d.value.quota,"onUpdate:modelValue":e[9]||(e[9]=l=>d.value.quota=l),min:0,max:200},null,8,["modelValue"]),e[38]||(e[38]=v("div",{class:"text-gray-500 text-xs mt-1"},"0 表示不限制(由时段÷间隔计算可约数)",-1))]),_:1})):te("",!0),d.value.status===1?(f(),B(n,{key:1,label:"最大接诊"},{default:o(()=>[a(S,{modelValue:d.value.max_patients,"onUpdate:modelValue":e[10]||(e[10]=l=>d.value.max_patients=l),min:0,max:500},null,8,["modelValue"])]),_:1})):te("",!0),a(n,{label:"备注"},{default:o(()=>[a(i,{modelValue:d.value.remark,"onUpdate:modelValue":e[11]||(e[11]=l=>d.value.remark=l),type:"textarea",rows:2},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(P,{modelValue:$.value,"onUpdate:modelValue":e[20]||(e[20]=l=>$.value=l),title:"批量排班",width:"780px","destroy-on-close":""},{footer:o(()=>[a(u,{onClick:e[19]||(e[19]=l=>$.value=!1)},{default:o(()=>[...e[58]||(e[58]=[s("取消",-1)])]),_:1}),a(u,{type:"primary",onClick:ce,loading:O.value},{default:o(()=>[...e[59]||(e[59]=[s("确定",-1)])]),_:1},8,["loading"])]),default:o(()=>[a(b,{model:r.value,"label-width":"100px"},{default:o(()=>[a(n,{label:"选择医生",required:""},{default:o(()=>[a(j,{modelValue:r.value.doctorIds,"onUpdate:modelValue":e[14]||(e[14]=l=>r.value.doctorIds=l),multiple:"",placeholder:"请选择医生",class:"w-full",filterable:""},{default:o(()=>[(f(!0),k(R,null,T(q.value,l=>(f(),B(I,{key:l.doctorId,label:l.doctorName,value:l.doctorId},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"日期范围",required:""},{default:o(()=>[a(Ce,{modelValue:r.value.dateRange,"onUpdate:modelValue":e[15]||(e[15]=l=>r.value.dateRange=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"星期",required:""},{default:o(()=>[a(Ye,{modelValue:r.value.weekdays,"onUpdate:modelValue":e[16]||(e[16]=l=>r.value.weekdays=l)},{default:o(()=>[a(E,{label:1},{default:o(()=>[...e[41]||(e[41]=[s("周一",-1)])]),_:1}),a(E,{label:2},{default:o(()=>[...e[42]||(e[42]=[s("周二",-1)])]),_:1}),a(E,{label:3},{default:o(()=>[...e[43]||(e[43]=[s("周三",-1)])]),_:1}),a(E,{label:4},{default:o(()=>[...e[44]||(e[44]=[s("周四",-1)])]),_:1}),a(E,{label:5},{default:o(()=>[...e[45]||(e[45]=[s("周五",-1)])]),_:1}),a(E,{label:6},{default:o(()=>[...e[46]||(e[46]=[s("周六",-1)])]),_:1}),a(E,{label:0},{default:o(()=>[...e[47]||(e[47]=[s("周日",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"时段模板"},{default:o(()=>[v("div",pt,[(f(!0),k(R,null,T(r.value.segments,(l,C)=>(f(),k("div",{key:C,class:"flex flex-wrap items-center gap-2 p-2 bg-gray-50 rounded"},[a(h,{modelValue:l.start_time,"onUpdate:modelValue":p=>l.start_time=p,start:"00:00",step:"00:05",end:"23:45",placeholder:"开始",style:{width:"110px"}},null,8,["modelValue","onUpdate:modelValue"]),e[49]||(e[49]=v("span",null,"—",-1)),a(h,{modelValue:l.end_time,"onUpdate:modelValue":p=>l.end_time=p,start:"00:00",step:"00:05",end:"23:45",placeholder:"结束",style:{width:"110px"}},null,8,["modelValue","onUpdate:modelValue"]),a(j,{modelValue:l.shift_type,"onUpdate:modelValue":p=>l.shift_type=p,placeholder:"班次",clearable:"",style:{width:"100px"}},{default:o(()=>[a(I,{label:"白班",value:"day"}),a(I,{label:"夜班",value:"night"})]),_:1},8,["modelValue","onUpdate:modelValue"]),e[50]||(e[50]=v("span",{class:"text-sm text-gray-500"},"间隔",-1)),a(S,{modelValue:l.slot_minutes,"onUpdate:modelValue":p=>l.slot_minutes=p,min:5,max:120,step:5,style:{width:"100px"}},null,8,["modelValue","onUpdate:modelValue"]),e[51]||(e[51]=v("span",{class:"text-sm text-gray-500"},"号源0=不限",-1)),a(S,{modelValue:l.quota,"onUpdate:modelValue":p=>l.quota=p,min:0,max:200,style:{width:"100px"}},null,8,["modelValue","onUpdate:modelValue"]),a(u,{type:"danger",link:"",onClick:p=>we(C),disabled:r.value.segments.length<=1},{default:o(()=>[...e[48]||(e[48]=[s("删除",-1)])]),_:1},8,["onClick","disabled"])]))),128)),a(u,{type:"primary",link:"",onClick:Ve},{default:o(()=>[...e[52]||(e[52]=[s("+ 增加一段",-1)])]),_:1}),a(u,{type:"success",link:"",onClick:xe},{default:o(()=>[...e[53]||(e[53]=[s("+ 夜班 18:00–22:00",-1)])]),_:1})])]),_:1}),a(n,{label:"排班状态",required:""},{default:o(()=>[a(ee,{modelValue:r.value.status,"onUpdate:modelValue":e[17]||(e[17]=l=>r.value.status=l)},{default:o(()=>[a(D,{label:1},{default:o(()=>[...e[54]||(e[54]=[s("出诊",-1)])]),_:1}),a(D,{label:2},{default:o(()=>[...e[55]||(e[55]=[s("停诊",-1)])]),_:1}),a(D,{label:3},{default:o(()=>[...e[56]||(e[56]=[s("休息",-1)])]),_:1}),a(D,{label:4},{default:o(()=>[...e[57]||(e[57]=[s("请假",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"备注"},{default:o(()=>[a(i,{modelValue:r.value.remark,"onUpdate:modelValue":e[18]||(e[18]=l=>r.value.remark=l),type:"textarea",rows:2},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),ta=Je(vt,[["__scopeId","data-v-396c02a7"]]);export{ta as default}; +import{D as qe,B as Ue,C as $e,i as Ie,K as Se,M as Me,N as Be,L as We,J as Ne,V as he,ae as Re,P as Te,Q as Le,h as Fe,G as Ae,I as Ge,a2 as Oe,af as Pe,H as je,a as ze}from"./element-plus-DFTWCWyi.js";import{d as M,g as He}from"./dayjs-DG77mNTn.js";import{i as m,_ as Je}from"./index--WnM67ZH.js";import{a as Qe}from"./admin-CGNFdyXh.js";import{h as Ke,i as Xe,r as Ze,j as et}from"./doctor-BlvK2TEo.js";import{f as ae,b as tt,ak as f,I as k,a,aN as o,J as v,O as s,aP as at,G as B,F as R,ap as T,H as te,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{n as _}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y,o as lt}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ot={class:"doctor-roster p-4"},st={class:"flex justify-between items-center"},nt={class:"mb-4"},rt={class:"text-center mb-4 text-gray-600"},ut=["onClick"],dt={key:0,class:"text-xs text-gray-400 text-center py-2"},it={key:1,class:"space-y-1"},mt={class:"flex items-center gap-2 flex-wrap"},pt={class:"w-full space-y-2"},ft=ae({name:"doctorRoster"}),vt=ae({...ft,setup(_t){M.extend(He);const F=_(""),g=_(M().startOf("isoWeek")),A=_(!1),W=_(!1),V=_(null),x=_(""),z=_([]),U=_(!1),G=_(!1),d=_({id:null,doctorId:0,date:"",start_time:"09:00",end_time:"12:00",shift_type:"",slot_minutes:15,status:1,quota:0,max_patients:0,remark:""}),$=_(!1),O=_(!1),H=()=>[{start_time:"09:00",end_time:"12:00",shift_type:"day",slot_minutes:15,quota:0},{start_time:"14:00",end_time:"18:00",shift_type:"day",slot_minutes:15,quota:0}],r=_({doctorIds:[],dateRange:[],weekdays:[1,2,3,4,5],status:1,remark:"",segments:H()}),q=_([]),le=L(()=>{const t=F.value.trim();return t?q.value.filter(e=>e.doctorName.includes(t)):q.value}),oe=L(()=>!V.value||!x.value?"当日排班":`${V.value.doctorName} · ${x.value}`),se=L(()=>{const t=[],e=["周一","周二","周三","周四","周五","周六","周日"];for(let u=0;u<7;u++){const i=g.value.add(u,"day");t.push({date:i.format("YYYY-MM-DD"),label:`${e[u]} ${i.format("MM-DD")}`})}return t}),ne=L(()=>{const t=g.value.format("YYYY-MM-DD"),e=g.value.add(6,"day").format("YYYY-MM-DD");return`${t} 至 ${e}`});function J(t){return{1:"出诊",2:"停诊",3:"休息",4:"请假"}[t]??String(t)}function Q(t){return t==="day"?"白班":t==="night"?"夜班":"—"}function re(t){return t===1?"bg-emerald-50 text-emerald-800 border border-emerald-100":t===2?"bg-amber-50 text-amber-900 border border-amber-100":t===3?"bg-slate-100 text-slate-600 border border-slate-200":"bg-gray-100 text-gray-700 border border-gray-200"}function ue(t){const e=`${t.start_time}-${t.end_time}`,u=Q(t.shift_type),i=u!=="—"?` ${u}`:"";if(t.status===1){const n=t.quota>0?` 号源${t.quota}`:"";return`${e}${i} 出诊${n}`}return`${e}${i} ${J(t.status)}`}function K(t,e){return t.rostersByDate[e]||[]}function N(){if(!V.value||!x.value)return;const t=q.value.find(e=>e.doctorId===V.value.doctorId);t&&(z.value=[...t.rostersByDate[x.value]||[]].sort((e,u)=>e.start_time.localeCompare(u.start_time)))}function de(t,e){V.value=t,x.value=e,N(),W.value=!0}function X(t){if(!V.value||!x.value){m.msgWarning("请先选择日期格子");return}t?d.value={id:t.id,doctorId:V.value.doctorId,date:x.value,start_time:t.start_time||"09:00",end_time:t.end_time||"12:00",shift_type:t.shift_type||"",slot_minutes:t.slot_minutes||15,status:t.status,quota:t.quota??0,max_patients:t.max_patients??0,remark:t.remark||""}:d.value={id:null,doctorId:V.value.doctorId,date:x.value,start_time:"09:00",end_time:"12:00",shift_type:"day",slot_minutes:15,status:1,quota:0,max_patients:0,remark:""},U.value=!0}async function ie(){const t=d.value;if(!t.start_time||!t.end_time){m.msgWarning("请填写接诊开始与结束时间");return}if(t.status===1&&t.start_time>=t.end_time){m.msgWarning("出诊时结束时间须晚于开始时间");return}if(t.start_time>=t.end_time){m.msgWarning("结束时间须晚于开始时间");return}G.value=!0;try{const e={doctor_id:t.doctorId,date:t.date,period:"segment",start_time:t.start_time,end_time:t.end_time,slot_minutes:t.slot_minutes||15,status:t.status,quota:t.status===1?t.quota:0,max_patients:t.status===1?t.max_patients:0,remark:t.remark||""};t.shift_type&&(e.shift_type=t.shift_type),t.id&&(e.id=t.id),await Ke(e),m.msgSuccess("保存成功"),U.value=!1,await w(),N()}catch{m.msgError("保存失败")}finally{G.value=!1}}async function me(t){try{await ze.confirm("确定删除该时段?","提示",{type:"warning"})}catch{return}try{await Xe({id:t.id}),m.msgSuccess("已删除"),await w(),N()}catch{m.msgError("删除失败")}}const pe=async()=>{try{const t=await Qe({page_no:1,page_size:1e3,role_id:1});q.value=((t==null?void 0:t.lists)||[]).map(e=>({doctorId:e.id,doctorName:e.name||e.account,rostersByDate:{}})),await w()}catch(t){console.error("加载医生列表失败:",t),m.msgError("加载医生列表失败")}},w=async()=>{A.value=!0;try{const t={start_date:g.value.format("YYYY-MM-DD"),end_date:g.value.add(6,"day").format("YYYY-MM-DD")},e=await Ze(t),u=(e==null?void 0:e.lists)||[];q.value.forEach(i=>{i.rostersByDate={},u.forEach(n=>{if(n.doctor_id!==i.doctorId)return;const b=n.date;i.rostersByDate[b]||(i.rostersByDate[b]=[]),i.rostersByDate[b].push({id:n.id,status:n.status,quota:n.quota||0,max_patients:n.max_patients,start_time:n.start_time||fe(n.period),end_time:n.end_time||ve(n.period),shift_type:n.shift_type,slot_minutes:n.slot_minutes??15,remark:n.remark,period:n.period})})}),N()}catch(t){console.error("加载排班数据失败:",t),m.msgError("加载排班数据失败")}finally{A.value=!1}};function fe(t){return t==="morning"?"09:00":t==="afternoon"?"14:00":t==="night"?"18:00":"09:00"}function ve(t){return t==="morning"?"12:00":t==="afternoon"?"18:00":t==="night"?"22:00":"12:00"}const _e=()=>{w()},ye=()=>{g.value=g.value.subtract(1,"week"),w()},ge=()=>{g.value=g.value.add(1,"week"),w()},be=()=>{g.value=M().startOf("isoWeek"),w()},ke=()=>{r.value={doctorIds:[],dateRange:[],weekdays:[1,2,3,4,5],status:1,remark:"",segments:H()},$.value=!0},Ve=()=>{r.value.segments.push({start_time:"09:00",end_time:"12:00",shift_type:"day",slot_minutes:15,quota:0})},xe=()=>{r.value.segments.push({start_time:"18:00",end_time:"22:00",shift_type:"night",slot_minutes:15,quota:0})},we=t=>{r.value.segments.length<=1||r.value.segments.splice(t,1)},ce=async()=>{if(r.value.doctorIds.length===0){m.msgWarning("请选择医生");return}if(!r.value.dateRange||r.value.dateRange.length!==2){m.msgWarning("请选择日期范围");return}if(r.value.weekdays.length===0){m.msgWarning("请选择星期");return}for(const t of r.value.segments){if(!t.start_time||!t.end_time){m.msgWarning("请完善时段模板的开始与结束时间");return}if(t.start_time>=t.end_time){m.msgWarning("时段模板中结束时间须晚于开始时间");return}}O.value=!0;try{const t=[],e=M(r.value.dateRange[0]),u=M(r.value.dateRange[1]);let i=e;for(;i.isBefore(u)||i.isSame(u,"day");){const n=i.day();r.value.weekdays.includes(n)&&r.value.doctorIds.forEach(b=>{r.value.segments.forEach(c=>{const y={doctor_id:b,date:i.format("YYYY-MM-DD"),period:"segment",start_time:c.start_time,end_time:c.end_time,slot_minutes:c.slot_minutes||15,status:r.value.status,quota:r.value.status===1?c.quota:0,max_patients:0,remark:r.value.remark};c.shift_type&&(y.shift_type=c.shift_type),t.push(y)})}),i=i.add(1,"day")}if(t.length===0){m.msgWarning("没有符合条件的排班数据");return}await et({rosters:t}),m.msgSuccess(`批量保存成功!共处理 ${t.length} 条记录`),$.value=!1,await w()}catch(t){console.error("批量保存失败:",t),m.msgError("批量保存失败")}finally{O.value=!1}};return tt(()=>{pe()}),(t,e)=>{const u=Ie,i=$e,n=Ue,b=qe,c=Se,y=Be,Z=Me,De=Ne,P=he,h=Re,I=Le,j=Te,S=Fe,D=Ge,ee=Ae,Ce=Oe,E=je,Ye=Pe,Ee=We;return f(),k("div",ot,[a(De,{shadow:"never"},{header:o(()=>[v("div",st,[e[25]||(e[25]=v("span",{class:"text-lg font-medium"},"医生排班管理",-1)),v("div",null,[a(u,{type:"success",onClick:ke},{default:o(()=>[...e[21]||(e[21]=[s("批量排班",-1)])]),_:1}),a(u,{onClick:ye},{default:o(()=>[...e[22]||(e[22]=[s("上一周",-1)])]),_:1}),a(u,{onClick:ge},{default:o(()=>[...e[23]||(e[23]=[s("下一周",-1)])]),_:1}),a(u,{type:"primary",onClick:be},{default:o(()=>[...e[24]||(e[24]=[s("本周",-1)])]),_:1})])])]),default:o(()=>[v("div",nt,[a(b,{inline:""},{default:o(()=>[a(n,{label:"医生"},{default:o(()=>[a(i,{modelValue:F.value,"onUpdate:modelValue":e[0]||(e[0]=l=>F.value=l),placeholder:"请输入医生姓名",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),a(n,null,{default:o(()=>[a(u,{type:"primary",onClick:_e},{default:o(()=>[...e[26]||(e[26]=[s("查询",-1)])]),_:1})]),_:1})]),_:1})]),a(c,{type:"info",closable:!1,class:"mb-4","show-icon":""},{default:o(()=>[...e[27]||(e[27]=[s(" 每条排班为一段连续可挂号时间;同一天可添加多段(如白班 + 夜班)。休息时段不添加出诊段即可。号源间隔默认 15 分钟;号源数填 0 表示按时段长度自动满号。 ",-1)])]),_:1}),v("div",rt,Y(ne.value),1),at((f(),B(Z,{data:le.value,border:""},{default:o(()=>[a(y,{prop:"doctorName",label:"医生",width:"120",fixed:""}),(f(!0),k(R,null,T(se.value,l=>(f(),B(y,{key:l.date,label:l.label,"min-width":"168"},{default:o(({row:C})=>[v("div",{class:"day-cell rounded border border-dashed border-gray-200 p-1 min-h-[56px] cursor-pointer hover:bg-gray-50",onClick:p=>de(C,l.date)},[K(C,l.date).length===0?(f(),k("div",dt,"点击管理")):(f(),k("div",it,[(f(!0),k(R,null,T(K(C,l.date),p=>(f(),k("div",{key:p.id,class:lt(["text-xs px-1 py-0.5 rounded leading-tight",re(p.status)])},Y(ue(p)),3))),128))]))],8,ut)]),_:2},1032,["label"]))),128))]),_:1},8,["data"])),[[Ee,A.value]])]),_:1}),a(P,{modelValue:W.value,"onUpdate:modelValue":e[3]||(e[3]=l=>W.value=l),title:oe.value,width:"720px","destroy-on-close":""},{footer:o(()=>[a(u,{onClick:e[1]||(e[1]=l=>W.value=!1)},{default:o(()=>[...e[30]||(e[30]=[s("关闭",-1)])]),_:1}),a(u,{type:"primary",onClick:e[2]||(e[2]=l=>X())},{default:o(()=>[...e[31]||(e[31]=[s("添加时段",-1)])]),_:1})]),default:o(()=>[a(Z,{data:z.value,border:"",size:"small","max-height":"360"},{default:o(()=>[a(y,{label:"时间",width:"150"},{default:o(({row:l})=>[s(Y(l.start_time)+" - "+Y(l.end_time),1)]),_:1}),a(y,{label:"班次",width:"80"},{default:o(({row:l})=>[s(Y(Q(l.shift_type)),1)]),_:1}),a(y,{label:"状态",width:"88"},{default:o(({row:l})=>[s(Y(J(l.status)),1)]),_:1}),a(y,{label:"间隔",width:"72"},{default:o(({row:l})=>[s(Y(l.slot_minutes||15)+" 分",1)]),_:1}),a(y,{label:"号源",width:"72"},{default:o(({row:l})=>[s(Y(l.status===1?l.quota||"不限":"-"),1)]),_:1}),a(y,{label:"备注",prop:"remark","min-width":"100","show-overflow-tooltip":""}),a(y,{label:"操作",width:"140",fixed:"right"},{default:o(({row:l})=>[a(u,{type:"primary",link:"",onClick:C=>X(l)},{default:o(()=>[...e[28]||(e[28]=[s("编辑",-1)])]),_:1},8,["onClick"]),a(u,{type:"danger",link:"",onClick:C=>me(l)},{default:o(()=>[...e[29]||(e[29]=[s("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:1},8,["modelValue","title"]),a(P,{modelValue:U.value,"onUpdate:modelValue":e[13]||(e[13]=l=>U.value=l),title:d.value.id?"编辑时段":"添加时段",width:"520px","destroy-on-close":""},{footer:o(()=>[a(u,{onClick:e[12]||(e[12]=l=>U.value=!1)},{default:o(()=>[...e[39]||(e[39]=[s("取消",-1)])]),_:1}),a(u,{type:"primary",loading:G.value,onClick:ie},{default:o(()=>[...e[40]||(e[40]=[s("保存",-1)])]),_:1},8,["loading"])]),default:o(()=>[a(b,{model:d.value,"label-width":"110px"},{default:o(()=>[a(n,{label:"接诊时间",required:""},{default:o(()=>[v("div",mt,[a(h,{modelValue:d.value.start_time,"onUpdate:modelValue":e[4]||(e[4]=l=>d.value.start_time=l),start:"00:00",step:"00:5",end:"23:45",placeholder:"开始",style:{width:"120px"}},null,8,["modelValue"]),e[32]||(e[32]=v("span",null,"至",-1)),a(h,{modelValue:d.value.end_time,"onUpdate:modelValue":e[5]||(e[5]=l=>d.value.end_time=l),start:"00:00",step:"00:5",end:"23:45",placeholder:"结束",style:{width:"120px"}},null,8,["modelValue"])])]),_:1}),a(n,{label:"班次标签"},{default:o(()=>[a(j,{modelValue:d.value.shift_type,"onUpdate:modelValue":e[6]||(e[6]=l=>d.value.shift_type=l),placeholder:"选填",clearable:"",style:{width:"200px"}},{default:o(()=>[a(I,{label:"白班",value:"day"}),a(I,{label:"夜班",value:"night"})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"号源间隔(分)"},{default:o(()=>[a(S,{modelValue:d.value.slot_minutes,"onUpdate:modelValue":e[7]||(e[7]=l=>d.value.slot_minutes=l),min:5,max:120,step:5},null,8,["modelValue"]),e[33]||(e[33]=v("span",{class:"ml-2 text-gray-500 text-sm"},"默认 15",-1))]),_:1}),a(n,{label:"状态"},{default:o(()=>[a(ee,{modelValue:d.value.status,"onUpdate:modelValue":e[8]||(e[8]=l=>d.value.status=l)},{default:o(()=>[a(D,{label:1},{default:o(()=>[...e[34]||(e[34]=[s("出诊",-1)])]),_:1}),a(D,{label:2},{default:o(()=>[...e[35]||(e[35]=[s("停诊",-1)])]),_:1}),a(D,{label:3},{default:o(()=>[...e[36]||(e[36]=[s("休息",-1)])]),_:1}),a(D,{label:4},{default:o(()=>[...e[37]||(e[37]=[s("请假",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.value.status===1?(f(),B(n,{key:0,label:"号源上限"},{default:o(()=>[a(S,{modelValue:d.value.quota,"onUpdate:modelValue":e[9]||(e[9]=l=>d.value.quota=l),min:0,max:200},null,8,["modelValue"]),e[38]||(e[38]=v("div",{class:"text-gray-500 text-xs mt-1"},"0 表示不限制(由时段÷间隔计算可约数)",-1))]),_:1})):te("",!0),d.value.status===1?(f(),B(n,{key:1,label:"最大接诊"},{default:o(()=>[a(S,{modelValue:d.value.max_patients,"onUpdate:modelValue":e[10]||(e[10]=l=>d.value.max_patients=l),min:0,max:500},null,8,["modelValue"])]),_:1})):te("",!0),a(n,{label:"备注"},{default:o(()=>[a(i,{modelValue:d.value.remark,"onUpdate:modelValue":e[11]||(e[11]=l=>d.value.remark=l),type:"textarea",rows:2},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(P,{modelValue:$.value,"onUpdate:modelValue":e[20]||(e[20]=l=>$.value=l),title:"批量排班",width:"780px","destroy-on-close":""},{footer:o(()=>[a(u,{onClick:e[19]||(e[19]=l=>$.value=!1)},{default:o(()=>[...e[58]||(e[58]=[s("取消",-1)])]),_:1}),a(u,{type:"primary",onClick:ce,loading:O.value},{default:o(()=>[...e[59]||(e[59]=[s("确定",-1)])]),_:1},8,["loading"])]),default:o(()=>[a(b,{model:r.value,"label-width":"100px"},{default:o(()=>[a(n,{label:"选择医生",required:""},{default:o(()=>[a(j,{modelValue:r.value.doctorIds,"onUpdate:modelValue":e[14]||(e[14]=l=>r.value.doctorIds=l),multiple:"",placeholder:"请选择医生",class:"w-full",filterable:""},{default:o(()=>[(f(!0),k(R,null,T(q.value,l=>(f(),B(I,{key:l.doctorId,label:l.doctorName,value:l.doctorId},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"日期范围",required:""},{default:o(()=>[a(Ce,{modelValue:r.value.dateRange,"onUpdate:modelValue":e[15]||(e[15]=l=>r.value.dateRange=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD",class:"w-full"},null,8,["modelValue"])]),_:1}),a(n,{label:"星期",required:""},{default:o(()=>[a(Ye,{modelValue:r.value.weekdays,"onUpdate:modelValue":e[16]||(e[16]=l=>r.value.weekdays=l)},{default:o(()=>[a(E,{label:1},{default:o(()=>[...e[41]||(e[41]=[s("周一",-1)])]),_:1}),a(E,{label:2},{default:o(()=>[...e[42]||(e[42]=[s("周二",-1)])]),_:1}),a(E,{label:3},{default:o(()=>[...e[43]||(e[43]=[s("周三",-1)])]),_:1}),a(E,{label:4},{default:o(()=>[...e[44]||(e[44]=[s("周四",-1)])]),_:1}),a(E,{label:5},{default:o(()=>[...e[45]||(e[45]=[s("周五",-1)])]),_:1}),a(E,{label:6},{default:o(()=>[...e[46]||(e[46]=[s("周六",-1)])]),_:1}),a(E,{label:0},{default:o(()=>[...e[47]||(e[47]=[s("周日",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"时段模板"},{default:o(()=>[v("div",pt,[(f(!0),k(R,null,T(r.value.segments,(l,C)=>(f(),k("div",{key:C,class:"flex flex-wrap items-center gap-2 p-2 bg-gray-50 rounded"},[a(h,{modelValue:l.start_time,"onUpdate:modelValue":p=>l.start_time=p,start:"00:00",step:"00:05",end:"23:45",placeholder:"开始",style:{width:"110px"}},null,8,["modelValue","onUpdate:modelValue"]),e[49]||(e[49]=v("span",null,"—",-1)),a(h,{modelValue:l.end_time,"onUpdate:modelValue":p=>l.end_time=p,start:"00:00",step:"00:05",end:"23:45",placeholder:"结束",style:{width:"110px"}},null,8,["modelValue","onUpdate:modelValue"]),a(j,{modelValue:l.shift_type,"onUpdate:modelValue":p=>l.shift_type=p,placeholder:"班次",clearable:"",style:{width:"100px"}},{default:o(()=>[a(I,{label:"白班",value:"day"}),a(I,{label:"夜班",value:"night"})]),_:1},8,["modelValue","onUpdate:modelValue"]),e[50]||(e[50]=v("span",{class:"text-sm text-gray-500"},"间隔",-1)),a(S,{modelValue:l.slot_minutes,"onUpdate:modelValue":p=>l.slot_minutes=p,min:5,max:120,step:5,style:{width:"100px"}},null,8,["modelValue","onUpdate:modelValue"]),e[51]||(e[51]=v("span",{class:"text-sm text-gray-500"},"号源0=不限",-1)),a(S,{modelValue:l.quota,"onUpdate:modelValue":p=>l.quota=p,min:0,max:200,style:{width:"100px"}},null,8,["modelValue","onUpdate:modelValue"]),a(u,{type:"danger",link:"",onClick:p=>we(C),disabled:r.value.segments.length<=1},{default:o(()=>[...e[48]||(e[48]=[s("删除",-1)])]),_:1},8,["onClick","disabled"])]))),128)),a(u,{type:"primary",link:"",onClick:Ve},{default:o(()=>[...e[52]||(e[52]=[s("+ 增加一段",-1)])]),_:1}),a(u,{type:"success",link:"",onClick:xe},{default:o(()=>[...e[53]||(e[53]=[s("+ 夜班 18:00–22:00",-1)])]),_:1})])]),_:1}),a(n,{label:"排班状态",required:""},{default:o(()=>[a(ee,{modelValue:r.value.status,"onUpdate:modelValue":e[17]||(e[17]=l=>r.value.status=l)},{default:o(()=>[a(D,{label:1},{default:o(()=>[...e[54]||(e[54]=[s("出诊",-1)])]),_:1}),a(D,{label:2},{default:o(()=>[...e[55]||(e[55]=[s("停诊",-1)])]),_:1}),a(D,{label:3},{default:o(()=>[...e[56]||(e[56]=[s("休息",-1)])]),_:1}),a(D,{label:4},{default:o(()=>[...e[57]||(e[57]=[s("请假",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(n,{label:"备注"},{default:o(()=>[a(i,{modelValue:r.value.remark,"onUpdate:modelValue":e[18]||(e[18]=l=>r.value.remark=l),type:"textarea",rows:2},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),ta=Je(vt,[["__scopeId","data-v-396c02a7"]]);export{ta as default}; diff --git a/server/public/admin/assets/self_input_stats-DMYot1WP.js b/server/public/admin/assets/self_input_stats-C4Lr_Fd7.js similarity index 91% rename from server/public/admin/assets/self_input_stats-DMYot1WP.js rename to server/public/admin/assets/self_input_stats-C4Lr_Fd7.js index 7146f5f1..cc733615 100644 --- a/server/public/admin/assets/self_input_stats-DMYot1WP.js +++ b/server/public/admin/assets/self_input_stats-C4Lr_Fd7.js @@ -1 +1 @@ -import{r as s}from"./index-Nt5zMHcc.js";function n(t){return s.get({url:"/stats.self_input/overview",params:t})}function o(){return s.get({url:"/stats.self_input/mediaSourceOptions"})}function r(t){return s.post({url:"/stats.personal_yeji/add",data:t})}function a(t){return s.post({url:"/stats.personal_yeji/edit",data:t})}function u(t){return s.post({url:"/stats.personal_yeji/delete",params:t})}function c(t){return s.get({url:"/stats.personal_account_cost/lists",params:t})}function l(t){return s.post({url:"/stats.personal_account_cost/add",data:t})}function i(t){return s.post({url:"/stats.personal_account_cost/edit",data:t})}function p(t){return s.post({url:"/stats.personal_account_cost/delete",params:t})}export{p as a,i as b,l as c,n as d,u as e,a as f,o as g,r as h,c as p}; +import{r as s}from"./index--WnM67ZH.js";function n(t){return s.get({url:"/stats.self_input/overview",params:t})}function o(){return s.get({url:"/stats.self_input/mediaSourceOptions"})}function r(t){return s.post({url:"/stats.personal_yeji/add",data:t})}function a(t){return s.post({url:"/stats.personal_yeji/edit",data:t})}function u(t){return s.post({url:"/stats.personal_yeji/delete",params:t})}function c(t){return s.get({url:"/stats.personal_account_cost/lists",params:t})}function l(t){return s.post({url:"/stats.personal_account_cost/add",data:t})}function i(t){return s.post({url:"/stats.personal_account_cost/edit",data:t})}function p(t){return s.post({url:"/stats.personal_account_cost/delete",params:t})}export{p as a,i as b,l as c,n as d,u as e,a as f,o as g,r as h,c as p}; diff --git a/server/public/admin/assets/setting-BPZ7dWvp.js b/server/public/admin/assets/setting-I73bbSku.js similarity index 94% rename from server/public/admin/assets/setting-BPZ7dWvp.js rename to server/public/admin/assets/setting-I73bbSku.js index 7c9753de..d5584457 100644 --- a/server/public/admin/assets/setting-BPZ7dWvp.js +++ b/server/public/admin/assets/setting-I73bbSku.js @@ -1 +1 @@ -import{D as A,B as H,C as K,T as G,d as Q,i as X,J as Y,V as Z,E as v}from"./element-plus-DFTWCWyi.js";import{_ as $}from"./index-DbiC_Mh1.js";import{_ as oo}from"./picker-cSgp8cEl.js";import{d as eo,ad as to,l as ro}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as so,a as ao,i as m,L as no,b as io,N as lo,_ as mo}from"./index-Nt5zMHcc.js";import{a as po}from"./wecomOauthPostMessage-C_e6VGrO.js";import{f as L,b as co,d as uo,ak as p,I as u,a as t,aN as s,J as d,G as _o,F as B,O as _,H as wo,n as D}from"./@vue/runtime-core-C6bnekPw.js";import{y as x,n as w,r as q}from"./@vue/reactivity-DiY1c2vO.js";import{Q as fo}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const go={class:"user-setting"},ko={class:"w-80"},bo={class:"w-80"},vo={class:"flex items-center gap-3"},yo={class:"w-80"},ho={class:"w-80"},Vo={class:"w-80"},xo={class:"bind-qrcode-wrap"},Uo={key:0,class:"text-center py-8"},Eo={key:1,id:"bind_wxwork_qrcode",class:"bind-qrcode"},Io=L({name:"userSetting"}),Co=L({...Io,setup(Bo){const U=w(),f=so(),e=q({avatar:"",account:"",name:"",work_wechat_userid:"",password_old:"",password:"",password_confirm:""}),N=q({avatar:[{required:!0,message:"头像不能为空",trigger:["change"]}],name:[{required:!0,message:"请输入名称",trigger:["blur"]}]}),g="like_admin_wx_bind_oauth",E=w(!1),y=w({corp_id:"",agent_id:""}),k=w(!1),b=w(!1);let i=null;const S=async()=>{const r=f.userInfo;for(const o in e)r[o]!==void 0&&(e[o]=r[o])},W=async()=>{if(e.password_old||e.password||e.password_confirm){if(!e.password_old)return m.msgError("请输入当前密码");if(!e.password)return m.msgError("请输入新的密码");if(!e.password_confirm)return m.msgError("请输入确定密码");if(e.password_confirm!=e.password)return m.msgError("两次输入的密码不一样")}if(e.password_old&&e.password&&e.password_confirm){if(e.password_old.length<6||e.password_old.length>32)return m.msgError("密码长度在6到32之间");if(e.password.length<6||e.password.length>32)return m.msgError("密码长度在6到32之间");if(e.password_confirm.length<6||e.password_confirm.length>32)return m.msgError("密码长度在6到32之间")}const{work_wechat_userid:r,...o}=e;await lo(o),f.getUserInfo()},M=async()=>{var r;await((r=U.value)==null?void 0:r.validate()),W()},R=()=>window.location.origin+window.location.pathname+"?bind_wxwork=1",T=async()=>{k.value=!0,b.value=!0,window.WwLogin||await new Promise((o,c)=>{const a=document.createElement("script");a.src="https://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js",a.onload=()=>o(),a.onerror=()=>c(new Error("加载企业微信JS失败")),document.head.appendChild(a)}),await D(),b.value=!1,await D(),i==null||i(),i=po({pathIncludes:"user/setting",lockKey:g,wxBindState:"bind_wxwork",onCode:o=>I(o)});const r=encodeURIComponent(R());new window.WwLogin({id:"bind_wxwork_qrcode",appid:y.value.corp_id,agentid:y.value.agent_id,redirect_uri:r,lang:"zh",state:"bind_wxwork",href:"",self_redirect:!1})},z=()=>{b.value=!1,i==null||i(),i=null},F=async()=>{await m.confirm("确定要解绑企业微信吗?解绑后将无法使用企业微信扫码登录。");try{await no(),e.work_wechat_userid="",v.success("解绑成功"),f.getUserInfo()}catch(r){v.error((r==null?void 0:r.msg)||"解绑失败")}},I=async r=>{try{const o=await io({code:r});e.work_wechat_userid=(o==null?void 0:o.work_wechat_userid)||"",k.value=!1,v.success("企业微信绑定成功"),f.getUserInfo()}catch(o){v.error((o==null?void 0:o.msg)||(o==null?void 0:o.message)||"绑定失败")}finally{const o=window.location.pathname;window.history.replaceState({},"",o)}};return co(async()=>{try{const l=await ao();l!=null&&l.enabled&&(E.value=!0,y.value={corp_id:l.corp_id,agent_id:l.agent_id})}catch{}const r=new URLSearchParams(window.location.search),o=r.get("code"),c=r.get("state"),a=r.get("bind_wxwork");if(o&&(c==="bind_wxwork"||a==="1")){if(sessionStorage.getItem(g)===o)return;sessionStorage.setItem(g,o),I(o).finally(()=>{sessionStorage.removeItem(g)})}}),S(),uo(()=>{i==null||i(),i=null}),(r,o)=>{const c=oo,a=H,l=K,h=Q,C=G,V=X,O=A,J=Y,P=$,j=Z;return p(),u("div",go,[t(J,{class:"!border-none",shadow:"never"},{default:s(()=>[t(O,{ref_key:"formRef",ref:U,class:"ls-form",model:e,rules:N,"label-width":"100px"},{default:s(()=>[t(a,{label:"头像:",prop:"avatar"},{default:s(()=>[t(c,{modelValue:e.avatar,"onUpdate:modelValue":o[0]||(o[0]=n=>e.avatar=n),limit:1},null,8,["modelValue"])]),_:1}),t(a,{label:"账号:",prop:"account"},{default:s(()=>[d("div",ko,[t(l,{modelValue:e.account,"onUpdate:modelValue":o[1]||(o[1]=n=>e.account=n),disabled:""},null,8,["modelValue"])])]),_:1}),t(a,{label:"名称:",prop:"name"},{default:s(()=>[d("div",bo,[t(l,{modelValue:e.name,"onUpdate:modelValue":o[2]||(o[2]=n=>e.name=n),placeholder:"请输入名称"},null,8,["modelValue"])])]),_:1}),E.value?(p(),_o(a,{key:0,label:"企业微信:"},{default:s(()=>[d("div",vo,[e.work_wechat_userid?(p(),u(B,{key:0},[t(C,{type:"success",size:"large"},{default:s(()=>[t(h,{class:"mr-1"},{default:s(()=>[t(x(eo))]),_:1}),_(" 已绑定("+fo(e.work_wechat_userid)+") ",1)]),_:1}),t(V,{type:"danger",link:"",onClick:F},{default:s(()=>[...o[7]||(o[7]=[_("解绑",-1)])]),_:1})],64)):(p(),u(B,{key:1},[t(C,{type:"info",size:"large"},{default:s(()=>[...o[8]||(o[8]=[_("未绑定",-1)])]),_:1}),t(V,{type:"primary",onClick:T},{default:s(()=>[t(h,{class:"mr-1"},{default:s(()=>[t(x(to))]),_:1}),o[9]||(o[9]=_(" 扫码绑定 ",-1))]),_:1})],64))])]),_:1})):wo("",!0),t(a,{label:"当前密码:",prop:"password_old"},{default:s(()=>[d("div",yo,[t(l,{modelValue:e.password_old,"onUpdate:modelValue":o[3]||(o[3]=n=>e.password_old=n),modelModifiers:{trim:!0},placeholder:"修改密码时必填, 不修改密码时留空",type:"password","show-password":""},null,8,["modelValue"])])]),_:1}),t(a,{label:"新的密码:",prop:"password"},{default:s(()=>[d("div",ho,[t(l,{modelValue:e.password,"onUpdate:modelValue":o[4]||(o[4]=n=>e.password=n),modelModifiers:{trim:!0},placeholder:"修改密码时必填, 不修改密码时留空",type:"password","show-password":""},null,8,["modelValue"])])]),_:1}),t(a,{label:"确定密码:",prop:"password_confirm"},{default:s(()=>[d("div",Vo,[t(l,{modelValue:e.password_confirm,"onUpdate:modelValue":o[5]||(o[5]=n=>e.password_confirm=n),modelModifiers:{trim:!0},placeholder:"修改密码时必填, 不修改密码时留空",type:"password","show-password":""},null,8,["modelValue"])])]),_:1})]),_:1},8,["model","rules"])]),_:1}),t(P,null,{default:s(()=>[t(V,{type:"primary",onClick:M},{default:s(()=>[...o[10]||(o[10]=[_("保存",-1)])]),_:1})]),_:1}),t(j,{modelValue:k.value,"onUpdate:modelValue":o[6]||(o[6]=n=>k.value=n),title:"扫码绑定企业微信",width:"440px","close-on-click-modal":!1,onClose:z},{default:s(()=>[d("div",xo,[b.value?(p(),u("div",Uo,[t(h,{class:"is-loading",size:36,color:"var(--el-color-primary)"},{default:s(()=>[t(x(ro))]),_:1}),o[11]||(o[11]=d("div",{class:"mt-3 text-gray-400"},"加载企业微信扫码...",-1))])):(p(),u("div",Eo))]),o[12]||(o[12]=d("div",{class:"text-center text-sm text-gray-400 mt-2 mb-2"}," 请使用企业微信扫描二维码完成绑定 ",-1))]),_:1},8,["modelValue"])])}}}),De=mo(Co,[["__scopeId","data-v-e7afb159"]]);export{De as default}; +import{D as A,B as H,C as K,T as G,d as Q,i as X,J as Y,V as Z,E as v}from"./element-plus-DFTWCWyi.js";import{_ as $}from"./index-j275bAO5.js";import{_ as oo}from"./picker-DzCeqD7m.js";import{d as eo,ad as to,l as ro}from"./@element-plus/icons-vue-HOEUG8sr.js";import{u as so,a as ao,i as m,L as no,b as io,N as lo,_ as mo}from"./index--WnM67ZH.js";import{a as po}from"./wecomOauthPostMessage-C_e6VGrO.js";import{f as L,b as co,d as uo,ak as p,I as u,a as t,aN as s,J as d,G as _o,F as B,O as _,H as wo,n as D}from"./@vue/runtime-core-C6bnekPw.js";import{y as x,n as w,r as q}from"./@vue/reactivity-DiY1c2vO.js";import{Q as fo}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const go={class:"user-setting"},ko={class:"w-80"},bo={class:"w-80"},vo={class:"flex items-center gap-3"},yo={class:"w-80"},ho={class:"w-80"},Vo={class:"w-80"},xo={class:"bind-qrcode-wrap"},Uo={key:0,class:"text-center py-8"},Eo={key:1,id:"bind_wxwork_qrcode",class:"bind-qrcode"},Io=L({name:"userSetting"}),Co=L({...Io,setup(Bo){const U=w(),f=so(),e=q({avatar:"",account:"",name:"",work_wechat_userid:"",password_old:"",password:"",password_confirm:""}),N=q({avatar:[{required:!0,message:"头像不能为空",trigger:["change"]}],name:[{required:!0,message:"请输入名称",trigger:["blur"]}]}),g="like_admin_wx_bind_oauth",E=w(!1),y=w({corp_id:"",agent_id:""}),k=w(!1),b=w(!1);let i=null;const S=async()=>{const r=f.userInfo;for(const o in e)r[o]!==void 0&&(e[o]=r[o])},W=async()=>{if(e.password_old||e.password||e.password_confirm){if(!e.password_old)return m.msgError("请输入当前密码");if(!e.password)return m.msgError("请输入新的密码");if(!e.password_confirm)return m.msgError("请输入确定密码");if(e.password_confirm!=e.password)return m.msgError("两次输入的密码不一样")}if(e.password_old&&e.password&&e.password_confirm){if(e.password_old.length<6||e.password_old.length>32)return m.msgError("密码长度在6到32之间");if(e.password.length<6||e.password.length>32)return m.msgError("密码长度在6到32之间");if(e.password_confirm.length<6||e.password_confirm.length>32)return m.msgError("密码长度在6到32之间")}const{work_wechat_userid:r,...o}=e;await lo(o),f.getUserInfo()},M=async()=>{var r;await((r=U.value)==null?void 0:r.validate()),W()},R=()=>window.location.origin+window.location.pathname+"?bind_wxwork=1",T=async()=>{k.value=!0,b.value=!0,window.WwLogin||await new Promise((o,c)=>{const a=document.createElement("script");a.src="https://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.7.js",a.onload=()=>o(),a.onerror=()=>c(new Error("加载企业微信JS失败")),document.head.appendChild(a)}),await D(),b.value=!1,await D(),i==null||i(),i=po({pathIncludes:"user/setting",lockKey:g,wxBindState:"bind_wxwork",onCode:o=>I(o)});const r=encodeURIComponent(R());new window.WwLogin({id:"bind_wxwork_qrcode",appid:y.value.corp_id,agentid:y.value.agent_id,redirect_uri:r,lang:"zh",state:"bind_wxwork",href:"",self_redirect:!1})},z=()=>{b.value=!1,i==null||i(),i=null},F=async()=>{await m.confirm("确定要解绑企业微信吗?解绑后将无法使用企业微信扫码登录。");try{await no(),e.work_wechat_userid="",v.success("解绑成功"),f.getUserInfo()}catch(r){v.error((r==null?void 0:r.msg)||"解绑失败")}},I=async r=>{try{const o=await io({code:r});e.work_wechat_userid=(o==null?void 0:o.work_wechat_userid)||"",k.value=!1,v.success("企业微信绑定成功"),f.getUserInfo()}catch(o){v.error((o==null?void 0:o.msg)||(o==null?void 0:o.message)||"绑定失败")}finally{const o=window.location.pathname;window.history.replaceState({},"",o)}};return co(async()=>{try{const l=await ao();l!=null&&l.enabled&&(E.value=!0,y.value={corp_id:l.corp_id,agent_id:l.agent_id})}catch{}const r=new URLSearchParams(window.location.search),o=r.get("code"),c=r.get("state"),a=r.get("bind_wxwork");if(o&&(c==="bind_wxwork"||a==="1")){if(sessionStorage.getItem(g)===o)return;sessionStorage.setItem(g,o),I(o).finally(()=>{sessionStorage.removeItem(g)})}}),S(),uo(()=>{i==null||i(),i=null}),(r,o)=>{const c=oo,a=H,l=K,h=Q,C=G,V=X,O=A,J=Y,P=$,j=Z;return p(),u("div",go,[t(J,{class:"!border-none",shadow:"never"},{default:s(()=>[t(O,{ref_key:"formRef",ref:U,class:"ls-form",model:e,rules:N,"label-width":"100px"},{default:s(()=>[t(a,{label:"头像:",prop:"avatar"},{default:s(()=>[t(c,{modelValue:e.avatar,"onUpdate:modelValue":o[0]||(o[0]=n=>e.avatar=n),limit:1},null,8,["modelValue"])]),_:1}),t(a,{label:"账号:",prop:"account"},{default:s(()=>[d("div",ko,[t(l,{modelValue:e.account,"onUpdate:modelValue":o[1]||(o[1]=n=>e.account=n),disabled:""},null,8,["modelValue"])])]),_:1}),t(a,{label:"名称:",prop:"name"},{default:s(()=>[d("div",bo,[t(l,{modelValue:e.name,"onUpdate:modelValue":o[2]||(o[2]=n=>e.name=n),placeholder:"请输入名称"},null,8,["modelValue"])])]),_:1}),E.value?(p(),_o(a,{key:0,label:"企业微信:"},{default:s(()=>[d("div",vo,[e.work_wechat_userid?(p(),u(B,{key:0},[t(C,{type:"success",size:"large"},{default:s(()=>[t(h,{class:"mr-1"},{default:s(()=>[t(x(eo))]),_:1}),_(" 已绑定("+fo(e.work_wechat_userid)+") ",1)]),_:1}),t(V,{type:"danger",link:"",onClick:F},{default:s(()=>[...o[7]||(o[7]=[_("解绑",-1)])]),_:1})],64)):(p(),u(B,{key:1},[t(C,{type:"info",size:"large"},{default:s(()=>[...o[8]||(o[8]=[_("未绑定",-1)])]),_:1}),t(V,{type:"primary",onClick:T},{default:s(()=>[t(h,{class:"mr-1"},{default:s(()=>[t(x(to))]),_:1}),o[9]||(o[9]=_(" 扫码绑定 ",-1))]),_:1})],64))])]),_:1})):wo("",!0),t(a,{label:"当前密码:",prop:"password_old"},{default:s(()=>[d("div",yo,[t(l,{modelValue:e.password_old,"onUpdate:modelValue":o[3]||(o[3]=n=>e.password_old=n),modelModifiers:{trim:!0},placeholder:"修改密码时必填, 不修改密码时留空",type:"password","show-password":""},null,8,["modelValue"])])]),_:1}),t(a,{label:"新的密码:",prop:"password"},{default:s(()=>[d("div",ho,[t(l,{modelValue:e.password,"onUpdate:modelValue":o[4]||(o[4]=n=>e.password=n),modelModifiers:{trim:!0},placeholder:"修改密码时必填, 不修改密码时留空",type:"password","show-password":""},null,8,["modelValue"])])]),_:1}),t(a,{label:"确定密码:",prop:"password_confirm"},{default:s(()=>[d("div",Vo,[t(l,{modelValue:e.password_confirm,"onUpdate:modelValue":o[5]||(o[5]=n=>e.password_confirm=n),modelModifiers:{trim:!0},placeholder:"修改密码时必填, 不修改密码时留空",type:"password","show-password":""},null,8,["modelValue"])])]),_:1})]),_:1},8,["model","rules"])]),_:1}),t(P,null,{default:s(()=>[t(V,{type:"primary",onClick:M},{default:s(()=>[...o[10]||(o[10]=[_("保存",-1)])]),_:1})]),_:1}),t(j,{modelValue:k.value,"onUpdate:modelValue":o[6]||(o[6]=n=>k.value=n),title:"扫码绑定企业微信",width:"440px","close-on-click-modal":!1,onClose:z},{default:s(()=>[d("div",xo,[b.value?(p(),u("div",Uo,[t(h,{class:"is-loading",size:36,color:"var(--el-color-primary)"},{default:s(()=>[t(x(ro))]),_:1}),o[11]||(o[11]=d("div",{class:"mt-3 text-gray-400"},"加载企业微信扫码...",-1))])):(p(),u("div",Eo))]),o[12]||(o[12]=d("div",{class:"text-center text-sm text-gray-400 mt-2 mb-2"}," 请使用企业微信扫描二维码完成绑定 ",-1))]),_:1},8,["modelValue"])])}}}),De=mo(Co,[["__scopeId","data-v-e7afb159"]]);export{De as default}; diff --git a/server/public/admin/assets/setup-BM_sBJNd.js b/server/public/admin/assets/setup-BJisEyDs.js similarity index 84% rename from server/public/admin/assets/setup-BM_sBJNd.js rename to server/public/admin/assets/setup-BJisEyDs.js index 0045b62f..91370dab 100644 --- a/server/public/admin/assets/setup-BM_sBJNd.js +++ b/server/public/admin/assets/setup-BJisEyDs.js @@ -1 +1 @@ -import{_ as y}from"./index-DbiC_Mh1.js";import{D as k,B as w,J as B,i as V}from"./element-plus-DFTWCWyi.js";import{_ as x}from"./picker-cSgp8cEl.js";import{a as C,b as D}from"./user-BJIsEXJM.js";import{f as l,as as E,ak as n,I as N,a as e,aN as m,J as i,aP as S,G as U,O as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as p,r as F}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-BQY2-_X1.js";import"./index--GZeyamQ.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-D18gAY1e.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const I={class:"user-setup"},J=l({name:"userSetup"}),Gt=l({...J,setup(h){const o=F({default_avatar:""}),a=async()=>{try{const r=await C();for(const t in o)o[t]=r[t]}catch(r){console.log("获取=>",r)}},_=async()=>{try{await D(o),a()}catch(r){console.log("保存=>",r)}};return a(),(r,t)=>{const u=x,s=w,c=k,d=B,f=V,v=y,g=E("perms");return n(),N("div",I,[e(d,{shadow:"never",class:"!border-none"},{default:m(()=>[t[2]||(t[2]=i("div",{class:"font-medium mb-7"},"基本设置",-1)),e(c,{ref:"formRef",model:p(o),"label-width":"120px"},{default:m(()=>[e(s,{label:"用户默认头像"},{default:m(()=>[i("div",null,[e(u,{modelValue:p(o).default_avatar,"onUpdate:modelValue":t[0]||(t[0]=b=>p(o).default_avatar=b),limit:1},null,8,["modelValue"])])]),_:1}),e(s,null,{default:m(()=>[...t[1]||(t[1]=[i("div",null,[i("div",{class:"form-tips"}," 用户注册时给的默认头像,建议尺寸:400*400像素,支持jpg,jpeg,png格式 ")],-1)])]),_:1})]),_:1},8,["model"])]),_:1}),S((n(),U(v,null,{default:m(()=>[e(f,{type:"primary",onClick:_},{default:m(()=>[...t[3]||(t[3]=[j("保存",-1)])]),_:1})]),_:1})),[[g,["setting.user.user/setConfig"]]])])}}});export{Gt as default}; +import{_ as y}from"./index-j275bAO5.js";import{D as k,B as w,J as B,i as V}from"./element-plus-DFTWCWyi.js";import{_ as x}from"./picker-DzCeqD7m.js";import{a as C,b as D}from"./user-sO2W9aq7.js";import{f as l,as as E,ak as n,I as N,a as e,aN as m,J as i,aP as S,G as U,O as j}from"./@vue/runtime-core-C6bnekPw.js";import{y as p,r as F}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";const I={class:"user-setup"},J=l({name:"userSetup"}),Gt=l({...J,setup(h){const o=F({default_avatar:""}),a=async()=>{try{const r=await C();for(const t in o)o[t]=r[t]}catch(r){console.log("获取=>",r)}},_=async()=>{try{await D(o),a()}catch(r){console.log("保存=>",r)}};return a(),(r,t)=>{const u=x,s=w,c=k,d=B,f=V,v=y,g=E("perms");return n(),N("div",I,[e(d,{shadow:"never",class:"!border-none"},{default:m(()=>[t[2]||(t[2]=i("div",{class:"font-medium mb-7"},"基本设置",-1)),e(c,{ref:"formRef",model:p(o),"label-width":"120px"},{default:m(()=>[e(s,{label:"用户默认头像"},{default:m(()=>[i("div",null,[e(u,{modelValue:p(o).default_avatar,"onUpdate:modelValue":t[0]||(t[0]=b=>p(o).default_avatar=b),limit:1},null,8,["modelValue"])])]),_:1}),e(s,null,{default:m(()=>[...t[1]||(t[1]=[i("div",null,[i("div",{class:"form-tips"}," 用户注册时给的默认头像,建议尺寸:400*400像素,支持jpg,jpeg,png格式 ")],-1)])]),_:1})]),_:1},8,["model"])]),_:1}),S((n(),U(v,null,{default:m(()=>[e(f,{type:"primary",onClick:_},{default:m(()=>[...t[3]||(t[3]=[j("保存",-1)])]),_:1})]),_:1})),[[g,["setting.user.user/setConfig"]]])])}}});export{Gt as default}; diff --git a/server/public/admin/assets/statistics-CKJuOq2I.js b/server/public/admin/assets/statistics-CCqrf9HY.js similarity index 93% rename from server/public/admin/assets/statistics-CKJuOq2I.js rename to server/public/admin/assets/statistics-CCqrf9HY.js index 4470d6cb..72d5df38 100644 --- a/server/public/admin/assets/statistics-CKJuOq2I.js +++ b/server/public/admin/assets/statistics-CCqrf9HY.js @@ -1 +1 @@ -import{_ as C}from"./index-DbiC_Mh1.js";import{J as g,B as D,C as h,D as B,i as E}from"./element-plus-DFTWCWyi.js";import{e as I,f as V}from"./website-D92RBx7y.js";import{f as c,b as S,as as N,ak as p,I as F,a as r,aN as i,J as s,O as a,aP as J,G as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,n as R,r as G}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const O={class:"website-statistics"},P={class:"flex flex-col"},T={class:"w-80"},U=c({name:"webInformation"}),Et=c({...U,setup(W){const l=R(),o=G({clarity_code:""}),_={},n=async()=>{const e=await I();for(const t in o)o[t]=e[t]},d=async()=>{var e;await((e=l.value)==null?void 0:e.validate()),await V(o),n()};return S(()=>{n()}),(e,t)=>{const f=h,u=D,y=g,b=B,w=E,v=C,x=N("perms");return p(),F("div",O,[r(b,{ref_key:"formRef",ref:l,rules:_,class:"ls-form",model:m(o),"scroll-to-error":"","label-width":"120px"},{default:i(()=>[r(y,{shadow:"never",class:"!border-none"},{default:i(()=>[t[2]||(t[2]=s("div",{class:"text-xl font-medium mb-[20px]"},"Clarity配置",-1)),r(u,{label:"应用ID",prop:"clarity_code"},{default:i(()=>[s("div",P,[s("div",T,[r(f,{modelValue:m(o).clarity_code,"onUpdate:modelValue":t[0]||(t[0]=k=>m(o).clarity_code=k),modelModifiers:{trim:!0},placeholder:"请填写应用ID",maxlength:"10","show-word-limit":""},null,8,["modelValue"])]),t[1]||(t[1]=s("div",{class:"form-tips"},[a(" 请前往"),s("a",{class:"text-primary",href:"https://clarity.microsoft.com",target:"_blank"}," 《Clarity官网》 "),a(" 创建Clarity统计应用 ")],-1))])]),_:1})]),_:1})]),_:1},8,["model"]),J((p(),M(v,null,{default:i(()=>[r(w,{type:"primary",onClick:d},{default:i(()=>[...t[3]||(t[3]=[a("保存",-1)])]),_:1})]),_:1})),[[x,["setting.web.web_setting/setWebsite"]]])])}}});export{Et as default}; +import{_ as C}from"./index-j275bAO5.js";import{J as g,B as D,C as h,D as B,i as E}from"./element-plus-DFTWCWyi.js";import{e as I,f as V}from"./website-HcLkfBpP.js";import{f as c,b as S,as as N,ak as p,I as F,a as r,aN as i,J as s,O as a,aP as J,G as M}from"./@vue/runtime-core-C6bnekPw.js";import{y as m,n as R,r as G}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";const O={class:"website-statistics"},P={class:"flex flex-col"},T={class:"w-80"},U=c({name:"webInformation"}),Et=c({...U,setup(W){const l=R(),o=G({clarity_code:""}),_={},n=async()=>{const e=await I();for(const t in o)o[t]=e[t]},d=async()=>{var e;await((e=l.value)==null?void 0:e.validate()),await V(o),n()};return S(()=>{n()}),(e,t)=>{const f=h,u=D,y=g,b=B,w=E,v=C,x=N("perms");return p(),F("div",O,[r(b,{ref_key:"formRef",ref:l,rules:_,class:"ls-form",model:m(o),"scroll-to-error":"","label-width":"120px"},{default:i(()=>[r(y,{shadow:"never",class:"!border-none"},{default:i(()=>[t[2]||(t[2]=s("div",{class:"text-xl font-medium mb-[20px]"},"Clarity配置",-1)),r(u,{label:"应用ID",prop:"clarity_code"},{default:i(()=>[s("div",P,[s("div",T,[r(f,{modelValue:m(o).clarity_code,"onUpdate:modelValue":t[0]||(t[0]=k=>m(o).clarity_code=k),modelModifiers:{trim:!0},placeholder:"请填写应用ID",maxlength:"10","show-word-limit":""},null,8,["modelValue"])]),t[1]||(t[1]=s("div",{class:"form-tips"},[a(" 请前往"),s("a",{class:"text-primary",href:"https://clarity.microsoft.com",target:"_blank"}," 《Clarity官网》 "),a(" 创建Clarity统计应用 ")],-1))])]),_:1})]),_:1})]),_:1},8,["model"]),J((p(),M(v,null,{default:i(()=>[r(w,{type:"primary",onClick:d},{default:i(()=>[...t[3]||(t[3]=[a("保存",-1)])]),_:1})]),_:1})),[[x,["setting.web.web_setting/setWebsite"]]])])}}});export{Et as default}; diff --git a/server/public/admin/assets/stats-BCrGkFwR.js b/server/public/admin/assets/stats-CxdEJGSN.js similarity index 90% rename from server/public/admin/assets/stats-BCrGkFwR.js rename to server/public/admin/assets/stats-CxdEJGSN.js index 9fa0e9e6..6752120b 100644 --- a/server/public/admin/assets/stats-BCrGkFwR.js +++ b/server/public/admin/assets/stats-CxdEJGSN.js @@ -1 +1 @@ -import{r as e}from"./index-Nt5zMHcc.js";function i(t){return e.get({url:"/stats.conversion/overview",params:t})}function o(t){return e.get({url:"/stats.yejiStats/overview",params:t})}function r(t){return e.get({url:"/stats.yejiStats/multi",params:t})}function a(){return e.get({url:"/stats.yejiStats/deptOptions"})}function u(){return e.get({url:"/stats.yejiStats/channelOptions"})}function m(t){return e.get({url:"/stats.yejiStats/leaderboard",params:t})}function c(t){return e.get({url:"/stats.yejiStats/unassignedBreakdown",params:t})}function l(t){return e.get({url:"/stats.yejiStats/leadLines",params:t})}function S(t){return e.get({url:"/stats.yejiStats/appointmentLines",params:t})}function v(t){return e.get({url:"/stats.yejiStats/revisitBreakdown",params:t})}function f(t){return e.get({url:"/stats.doctorDailyStats/overview",params:t})}const n=12e4;function g(t){return e.get({url:"/stats.commissionSettlement/overview",params:t,timeout:n},{ignoreCancelToken:!0})}function p(){return e.get({url:"/stats.commissionSettlement/deptOptions"})}function y(){return e.get({url:"/stats.commissionSettlement/channelOptions"})}function d(t){return e.get({url:"/stats.commissionSettlement/orderLines",params:t,timeout:n},{ignoreCancelToken:!0})}function j(t){return e.post({url:"/stats.commissionSettlement/saveReconcile",params:t})}function O(t){return e.post({url:"/stats.commissionSettlement/confirmFinalize",params:t,timeout:n},{ignoreCancelToken:!0})}function w(t){return e.post({url:"/stats.commissionSettlement/confirmRevoke",params:t})}function k(t){return e.get({url:"/stats.assistantPerformance/overview",params:t})}export{p as a,y as b,d as c,g as d,j as e,O as f,w as g,f as h,a as i,u as j,o as k,v as l,m,c as n,l as o,S as p,k as q,i as r,r as y}; +import{r as e}from"./index--WnM67ZH.js";function i(t){return e.get({url:"/stats.conversion/overview",params:t})}function o(t){return e.get({url:"/stats.yejiStats/overview",params:t})}function r(t){return e.get({url:"/stats.yejiStats/multi",params:t})}function a(){return e.get({url:"/stats.yejiStats/deptOptions"})}function u(){return e.get({url:"/stats.yejiStats/channelOptions"})}function m(t){return e.get({url:"/stats.yejiStats/leaderboard",params:t})}function c(t){return e.get({url:"/stats.yejiStats/unassignedBreakdown",params:t})}function l(t){return e.get({url:"/stats.yejiStats/leadLines",params:t})}function S(t){return e.get({url:"/stats.yejiStats/appointmentLines",params:t})}function v(t){return e.get({url:"/stats.yejiStats/revisitBreakdown",params:t})}function f(t){return e.get({url:"/stats.doctorDailyStats/overview",params:t})}const n=12e4;function g(t){return e.get({url:"/stats.commissionSettlement/overview",params:t,timeout:n},{ignoreCancelToken:!0})}function p(){return e.get({url:"/stats.commissionSettlement/deptOptions"})}function y(){return e.get({url:"/stats.commissionSettlement/channelOptions"})}function d(t){return e.get({url:"/stats.commissionSettlement/orderLines",params:t,timeout:n},{ignoreCancelToken:!0})}function j(t){return e.post({url:"/stats.commissionSettlement/saveReconcile",params:t})}function O(t){return e.post({url:"/stats.commissionSettlement/confirmFinalize",params:t,timeout:n},{ignoreCancelToken:!0})}function w(t){return e.post({url:"/stats.commissionSettlement/confirmRevoke",params:t})}function k(t){return e.get({url:"/stats.assistantPerformance/overview",params:t})}export{p as a,y as b,d as c,g as d,j as e,O as f,w as g,f as h,a as i,u as j,o as k,v as l,l as m,m as n,c as o,S as p,k as q,i as r,r as y}; diff --git a/server/public/admin/assets/style--mOAeHu_.js b/server/public/admin/assets/style-C7rdSz_0.js similarity index 88% rename from server/public/admin/assets/style--mOAeHu_.js rename to server/public/admin/assets/style-C7rdSz_0.js index 36c7937e..c04363a9 100644 --- a/server/public/admin/assets/style--mOAeHu_.js +++ b/server/public/admin/assets/style-C7rdSz_0.js @@ -1 +1 @@ -import{_ as x}from"./index-DbiC_Mh1.js";import{m as k,l as B,J as N,i as T}from"./element-plus-DFTWCWyi.js";import{a as h,s as D}from"./decoration-XX4ow94I.js";import{_ as E}from"./mobile-style.vue_vue_type_script_setup_true_lang-CvaVjBKl.js";import{f as J,b as I,ak as m,I as l,a as n,aN as a,J as O,F as d,ap as P,G as u,at as U,O as F,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{n as c,m as R,a as S,y as _}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./theme-picker-BmoSb7ra.js";const A={class:"mt-[-10px]"},Et=J({__name:"style",setup(G){const e=c(0),s=c([{name:"移动端",id:5,component:R(E),data:{themeColorId:1,topTextColor:"white",navigationBarColor:"",themeColor1:"",themeColor2:"",buttonColor:"white"}}]),o=L(()=>s.value[e.value]||{}),p=async()=>{const i=await h({id:o.value.id});o.value.data=JSON.parse(i.data)},f=async()=>{await D({id:o.value.id,type:o.value.id,data:JSON.stringify(o.value.data)}),p()};return I(async()=>{await p()}),(i,r)=>{const b=B,v=k,y=N,C=T,V=x;return m(),l(d,null,[n(y,{shadow:"never",class:"!border-none"},{default:a(()=>[O("div",A,[n(v,{modelValue:_(e),"onUpdate:modelValue":r[0]||(r[0]=t=>S(e)?e.value=t:null)},{default:a(()=>[(m(!0),l(d,null,P(_(s),(t,g)=>(m(),u(b,{key:t.id,label:t.name,name:g},{default:a(()=>[(m(),u(U(t.component),{modelValue:t.data,"onUpdate:modelValue":w=>t.data=w},null,8,["modelValue","onUpdate:modelValue"]))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])]),_:1}),n(V,{class:"mt-4",fixed:!0},{default:a(()=>[n(C,{type:"primary",onClick:f},{default:a(()=>[...r[1]||(r[1]=[F("保存",-1)])]),_:1})]),_:1})],64)}}});export{Et as default}; +import{_ as x}from"./index-j275bAO5.js";import{m as k,l as B,J as N,i as T}from"./element-plus-DFTWCWyi.js";import{a as h,s as D}from"./decoration-BA17WVMJ.js";import{_ as E}from"./mobile-style.vue_vue_type_script_setup_true_lang-DTxpnvZp.js";import{f as J,b as I,ak as m,I as l,a as n,aN as a,J as O,F as d,ap as P,G as u,at as U,O as F,A as L}from"./@vue/runtime-core-C6bnekPw.js";import{n as c,m as R,a as S,y as _}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./theme-picker-6MJIe8r7.js";const A={class:"mt-[-10px]"},Et=J({__name:"style",setup(G){const e=c(0),s=c([{name:"移动端",id:5,component:R(E),data:{themeColorId:1,topTextColor:"white",navigationBarColor:"",themeColor1:"",themeColor2:"",buttonColor:"white"}}]),o=L(()=>s.value[e.value]||{}),p=async()=>{const i=await h({id:o.value.id});o.value.data=JSON.parse(i.data)},f=async()=>{await D({id:o.value.id,type:o.value.id,data:JSON.stringify(o.value.data)}),p()};return I(async()=>{await p()}),(i,r)=>{const b=B,v=k,y=N,C=T,V=x;return m(),l(d,null,[n(y,{shadow:"never",class:"!border-none"},{default:a(()=>[O("div",A,[n(v,{modelValue:_(e),"onUpdate:modelValue":r[0]||(r[0]=t=>S(e)?e.value=t:null)},{default:a(()=>[(m(!0),l(d,null,P(_(s),(t,g)=>(m(),u(b,{key:t.id,label:t.name,name:g},{default:a(()=>[(m(),u(U(t.component),{modelValue:t.data,"onUpdate:modelValue":w=>t.data=w},null,8,["modelValue","onUpdate:modelValue"]))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])]),_:1}),n(V,{class:"mt-4",fixed:!0},{default:a(()=>[n(C,{type:"primary",onClick:f},{default:a(()=>[...r[1]||(r[1]=[F("保存",-1)])]),_:1})]),_:1})],64)}}});export{Et as default}; diff --git a/server/public/admin/assets/tabbar-CJ50lDht.js b/server/public/admin/assets/tabbar-BCvE1VW6.js similarity index 81% rename from server/public/admin/assets/tabbar-CJ50lDht.js rename to server/public/admin/assets/tabbar-BCvE1VW6.js index 782a4cf4..39b7e1e7 100644 --- a/server/public/admin/assets/tabbar-CJ50lDht.js +++ b/server/public/admin/assets/tabbar-BCvE1VW6.js @@ -1 +1 @@ -import{_ as k}from"./index-DbiC_Mh1.js";import{J as B,s as f,i as C}from"./element-plus-DFTWCWyi.js";import{c as E,d as T}from"./decoration-XX4ow94I.js";import P from"./menu-DdD-PeZU.js";import{_ as N}from"./attr.vue_vue_type_script_setup_true_lang-Bh0NQXfx.js";import I from"./content-CJ-9B74m.js";import{f as b,w as M,as as R,ak as p,I as J,J as i,a as m,aN as n,G as c,at as v,Z as O,aP as S,O as U,A as z}from"./@vue/runtime-core-C6bnekPw.js";import{r as A,m as G,y as e,a as L,n as Z}from"./@vue/reactivity-DiY1c2vO.js";import{P as $}from"./@vue/shared-mAAVTE9n.js";import{_ as j}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-D18gAY1e.js";import"./picker-W7EVmvPL.js";import"./index-BQY2-_X1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-nZc1fauP.js";import"./usePaging-VsbTxSU0.js";import"./picker-cSgp8cEl.js";import"./index--GZeyamQ.js";import"./index-DMnmuOhU.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./decoration-img-A6h02C6l.js";const q={attr:N,content:I},F={class:"decoration-tabbar"},H={class:"flex-1 min-h-0 w-full"},K={class:"h-full"},Q={class:"flex min-w-[900px] scroll-view-content"},W={class:"flex-1 pages-preview-box"},X={class:"pages-preview mx-[30px]"},Y={class:"px-5 pb-5"},tt=b({name:"decorationTabbar"}),ot=b({...tt,setup(et){let d;(t=>{t.MOBILE="1",t.PC="2"})(d||(d={}));const a=Z("1"),l=A({1:{id:1,type:1,name:"移动端导航栏",data:{style:{default_color:"",selected_color:""},list:[]},component:G(q)}}),r=z(()=>l[a.value]),_=async()=>{const t=await E({type:a.value});l[1].data=t},x=async()=>{const{data:t}=r.value;await T({...t}),_()};return M(a,()=>{_()},{immediate:!0}),(t,s)=>{const w=B,u=f,h=f,y=C,g=k,V=R("perms");return p(),J("div",F,[i("div",H,[i("div",K,[m(h,null,{default:n(()=>[i("div",Q,[m(w,{shadow:"never",class:"!border-none flex","body-style":{"padding-right":0}},{default:n(()=>[m(P,{class:"!h-full flex-none",modelValue:e(a),"onUpdate:modelValue":s[0]||(s[0]=o=>L(a)?a.value=o:null),menus:e(l)},null,8,["modelValue","menus"])]),_:1}),i("div",W,[i("div",X,[m(u,{height:"100%"},{default:n(()=>{var o;return[(p(),c(v((o=e(r).component)==null?void 0:o.content),$(O(e(r).data)),null,16))]}),_:1})])]),m(u,{class:"attr-setting flex-none"},{default:n(()=>{var o;return[i("div",Y,[(p(),c(v((o=e(r).component)==null?void 0:o.attr),{modelValue:e(r).data,"onUpdate:modelValue":s[1]||(s[1]=D=>e(r).data=D)},null,8,["modelValue"]))])]}),_:1})])]),_:1})])]),S((p(),c(g,{fixed:!0},{default:n(()=>[m(y,{type:"primary",onClick:x},{default:n(()=>[...s[2]||(s[2]=[U("保存",-1)])]),_:1})]),_:1})),[[V,["decorate:tabbar:save"]]])])}}}),lo=j(ot,[["__scopeId","data-v-e8ac299a"]]);export{lo as default}; +import{_ as k}from"./index-j275bAO5.js";import{J as B,s as f,i as C}from"./element-plus-DFTWCWyi.js";import{c as E,d as T}from"./decoration-BA17WVMJ.js";import P from"./menu-DAbI419p.js";import{_ as N}from"./attr.vue_vue_type_script_setup_true_lang-CtlICasq.js";import I from"./content-C08_uobP.js";import{f as b,w as M,as as R,ak as p,I as J,J as i,a as m,aN as n,G as c,at as v,Z as O,aP as S,O as U,A as z}from"./@vue/runtime-core-C6bnekPw.js";import{r as A,m as G,y as e,a as L,n as Z}from"./@vue/reactivity-DiY1c2vO.js";import{P as $}from"./@vue/shared-mAAVTE9n.js";import{_ as j}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BtiRSS_3.js";import"./picker-Btcf59sz.js";import"./index-SocYjCJ1.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-CrrySQF9.js";import"./usePaging-VsbTxSU0.js";import"./picker-DzCeqD7m.js";import"./index-CH2au-Zf.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./decoration-img-Bn25X5JS.js";const q={attr:N,content:I},F={class:"decoration-tabbar"},H={class:"flex-1 min-h-0 w-full"},K={class:"h-full"},Q={class:"flex min-w-[900px] scroll-view-content"},W={class:"flex-1 pages-preview-box"},X={class:"pages-preview mx-[30px]"},Y={class:"px-5 pb-5"},tt=b({name:"decorationTabbar"}),ot=b({...tt,setup(et){let d;(t=>{t.MOBILE="1",t.PC="2"})(d||(d={}));const a=Z("1"),l=A({1:{id:1,type:1,name:"移动端导航栏",data:{style:{default_color:"",selected_color:""},list:[]},component:G(q)}}),r=z(()=>l[a.value]),_=async()=>{const t=await E({type:a.value});l[1].data=t},x=async()=>{const{data:t}=r.value;await T({...t}),_()};return M(a,()=>{_()},{immediate:!0}),(t,s)=>{const w=B,u=f,h=f,y=C,g=k,V=R("perms");return p(),J("div",F,[i("div",H,[i("div",K,[m(h,null,{default:n(()=>[i("div",Q,[m(w,{shadow:"never",class:"!border-none flex","body-style":{"padding-right":0}},{default:n(()=>[m(P,{class:"!h-full flex-none",modelValue:e(a),"onUpdate:modelValue":s[0]||(s[0]=o=>L(a)?a.value=o:null),menus:e(l)},null,8,["modelValue","menus"])]),_:1}),i("div",W,[i("div",X,[m(u,{height:"100%"},{default:n(()=>{var o;return[(p(),c(v((o=e(r).component)==null?void 0:o.content),$(O(e(r).data)),null,16))]}),_:1})])]),m(u,{class:"attr-setting flex-none"},{default:n(()=>{var o;return[i("div",Y,[(p(),c(v((o=e(r).component)==null?void 0:o.attr),{modelValue:e(r).data,"onUpdate:modelValue":s[1]||(s[1]=D=>e(r).data=D)},null,8,["modelValue"]))])]}),_:1})])]),_:1})])]),S((p(),c(g,{fixed:!0},{default:n(()=>[m(y,{type:"primary",onClick:x},{default:n(()=>[...s[2]||(s[2]=[U("保存",-1)])]),_:1})]),_:1})),[[V,["decorate:tabbar:save"]]])])}}}),lo=j(ot,[["__scopeId","data-v-e8ac299a"]]);export{lo as default}; diff --git a/server/public/admin/assets/tcm-DCW3HTOw.js b/server/public/admin/assets/tcm-DzAQc_oE.js similarity index 99% rename from server/public/admin/assets/tcm-DCW3HTOw.js rename to server/public/admin/assets/tcm-DzAQc_oE.js index 32a6ac89..f127f681 100644 --- a/server/public/admin/assets/tcm-DCW3HTOw.js +++ b/server/public/admin/assets/tcm-DzAQc_oE.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function i(r){return t.get({url:"/tcm.diagnosis/lists",params:r})}function n(r){return t.get({url:"/tcm.diagnosis/readonlyDetail",params:r})}function s(r){return t.get({url:"/tcm.diagnosis/trackingWindow",params:r})}function o(r){return t.post({url:"/tcm.diagnosis/addTrackingNote",params:r})}function c(r){return t.get({url:"/tcm.diagnosis/trackingNotes",params:r})}function a(r){return t.get({url:"/tcm.diagnosis/assistantDiagnosisStats",params:r})}function u(r){return t.post({url:"/tcm.diagnosis/add",params:r})}function d(r){return t.post({url:"/tcm.diagnosis/edit",params:r})}function p(r){return t.post({url:"/tcm.diagnosis/delete",params:r})}function l(r){return t.get({url:"/tcm.diagnosis/detail",params:r})}function g(r){return t.get({url:"/tcm.diagnosis/guahaoLogList",params:r})}function m(r){return t.post({url:"/tcm.diagnosis/checkPhone",params:r})}function f(r){return t.post({url:"/tcm.diagnosis/checkIdCard",params:r})}function O(r){return t.post({url:"/tcm.diagnosis/fillIdCard",params:r})}function R(r){return t.post({url:"/tcm.diagnosis/assign",params:r})}function h(r){return t.get({url:"/tcm.diagnosis/assignLogList",params:r})}function C(){return t.get({url:"/tcm.diagnosis/getAssistants"})}function y(){return t.get({url:"/tcm.diagnosis/getDoctors"})}function P(r){return t.post({url:"/tcm.bloodRecord/add",params:r})}function L(r){return t.post({url:"/tcm.bloodRecord/edit",params:r})}function D(r){return t.post({url:"/tcm.bloodRecord/delete",params:r})}function A(r){return t.get({url:"/tcm.bloodRecord/getRecordsByPatient",params:r})}function b(r){return t.get({url:"/tcm.bloodRecord/getBloodSugarTrend",params:r})}function k(r){return t.post({url:"/tcm.dietRecord/add",params:r})}function T(r){return t.post({url:"/tcm.dietRecord/edit",params:r})}function x(r){return t.post({url:"/tcm.dietRecord/delete",params:r})}function S(r){return t.get({url:"/tcm.dietRecord/getRecordsByPatient",params:r})}function B(r){return t.post({url:"/tcm.exerciseRecord/add",params:r})}function W(r){return t.post({url:"/tcm.exerciseRecord/edit",params:r})}function E(r){return t.post({url:"/tcm.exerciseRecord/delete",params:r})}function w(r){return t.get({url:"/tcm.exerciseRecord/getRecordsByPatient",params:r})}function v(r){return t.post({url:"/tcm.diagnosis/getCallSignature",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function I(r){return t.post({url:"/tcm.diagnosis/startCall",params:r})}function M(r){return t.post({url:"/tcm.diagnosis/endCall",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function G(r){return t.get({url:"/tcm.diagnosis/getCallRecords",params:r})}function q(r){return t.post({url:"/tcm.diagnosis/bindCallRoom",params:r})}function N(r){return t.post({url:"/tcm.diagnosis/attachLocalCallRecording",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function Q(r){return t.post({url:"/tcm.diagnosis/createManualCallRecord",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function j(r){return t.get({url:"/tcm.diagnosis/watchCall",params:r})}function U(r){return t.post({url:"/tcm.diagnosis/generateMiniProgramQrcode",params:r})}function V(r){return t.post({url:"/tcm.diagnosis/generateOrderQrcode",params:r})}function z(r){return t.get({url:"/tcm.diagnosis/getImChatMessages",params:r})}function F(r){return t.post({url:"/tcm.diagnosis/triggerImChatSync",data:r})}function H(r){return t.get({url:"/tcm.diagnosis/getWechatChatRecords",params:r})}function J(r){return t.post({url:"/tcm.diagnosis/addWechatChatRecord",params:r})}function K(r){return t.post({url:"/tcm.diagnosis/deleteWechatChatRecord",params:r})}function X(r){return t.get({url:"/tcm.diagnosis/getWechatExternalContact",params:r})}function Y(r){return t.get({url:"/tcm.prescription/lists",params:r})}function Z(r){return t.post({url:"/tcm.prescription/add",params:r})}function _(r){return t.post({url:"/tcm.prescription/edit",params:r})}function $(r){return t.post({url:"/tcm.prescription/patchPatient",params:r})}function rr(r){return t.post({url:"/tcm.prescription/delete",params:r})}function tr(r){return t.get({url:"/tcm.prescription/detail",params:r})}function er(r){return t.get({url:"/tcm.prescription/listByDiagnosis",params:r})}function ir(r){return t.get({url:"/tcm.prescription/getByAppointment",params:r})}function nr(r){return t.post({url:"/tcm.prescription/void",params:r})}function sr(r){return t.post({url:"/tcm.prescription/audit",params:r})}function or(r){return t.post({url:"/tcm.prescriptionOrder/create",params:r})}function cr(r){return t.get({url:"/tcm.prescriptionOrder/lists",params:r})}function ar(r){return t.get({url:"/tcm.prescriptionOrder/export",params:r})}function ur(r){return t.get({url:"/tcm.prescriptionOrder/paidPayOrders",params:r})}function dr(r){return t.post({url:"/tcm.prescriptionOrder/withdraw",params:r})}function pr(r){return t.get({url:"/tcm.prescriptionOrder/logisticsTrace",params:r})}function lr(r){return t.get({url:"/tcm.prescriptionOrder/detail",params:r})}function gr(r){return t.post({url:"/tcm.prescriptionOrder/edit",params:r})}function mr(r){return t.post({url:"/tcm.prescriptionOrder/patchPrescriptionPatient",params:r})}function fr(r){return t.post({url:"/tcm.prescriptionOrder/auditPrescription",params:r})}function Or(r){return t.post({url:"/tcm.prescriptionOrder/auditPayment",params:r})}function Rr(r){return t.post({url:"/tcm.prescriptionOrder/revokeRxAudit",params:r})}function hr(r){return t.post({url:"/tcm.prescriptionOrder/revokePayAudit",params:r})}function Cr(r){return t.post({url:"/tcm.prescriptionOrder/ship",params:r})}function yr(r){return t.post({url:"/tcm.prescriptionOrder/addPayOrder",params:r})}function Pr(r){return t.post({url:"/tcm.prescriptionOrder/linkPayOrder",params:r})}function Lr(r){return t.post({url:"/tcm.prescriptionOrder/requestCompletion",params:r})}function Dr(r){return t.post({url:"/tcm.prescriptionOrder/complete",params:r})}function Ar(r){return t.post({url:"/tcm.prescriptionOrder/submitGancaoRecipel",params:r})}function br(r){return t.post({url:"/tcm.prescriptionOrder/previewGancaoRecipel",params:r})}function kr(r){return t.get({url:"/tcm.prescriptionOrder/logs",params:r})}function Tr(r){return t.post({url:"/tcm.prescriptionOrder/updateAmount",params:r})}function xr(r){return t.post({url:"/tcm.prescriptionOrder/setShipMode",params:r})}function Sr(r){return t.get({url:"/tcm.prescriptionLibrary/lists",params:r})}function Br(r){return t.post({url:"/tcm.prescriptionLibrary/add",params:r})}function Wr(r){return t.post({url:"/tcm.prescriptionLibrary/edit",params:r})}function Er(r){return t.post({url:"/tcm.prescriptionLibrary/delete",params:r})}function wr(r){return t.get({url:"/tcm.diagnosisTodo/lists",params:r})}function vr(r){return t.post({url:"/tcm.diagnosisTodo/add",params:r})}function Ir(r){return t.post({url:"/tcm.diagnosisTodo/cancel",params:r})}export{m as $,dr as A,br as B,Ar as C,Cr as D,Dr as E,Lr as F,yr as G,Pr as H,Rr as I,hr as J,V as K,v as L,s as M,c as N,L as O,P,T as Q,k as R,W as S,B as T,o as U,wr as V,vr as W,Ir as X,U as Y,ir as Z,l as _,C as a,f as a0,u as a1,d as a2,h as a3,j as a4,b as a5,A as a6,D as a7,G as a8,N as a9,Q as aa,er as ab,S as ac,x as ad,w as ae,E as af,z as ag,F as ah,nr as ai,i as aj,R as ak,g as al,O as am,H as an,J as ao,K as ap,p as aq,X as ar,n as as,a as at,M as au,q as av,I as aw,ur as b,tr as c,or as d,Y as e,sr as f,y as g,Sr as h,Z as i,_ as j,rr as k,cr as l,Br as m,Wr as n,Er as o,$ as p,ar as q,xr as r,kr as s,pr as t,lr as u,mr as v,Tr as w,gr as x,fr as y,Or as z}; +import{r as t}from"./index--WnM67ZH.js";function i(r){return t.get({url:"/tcm.diagnosis/lists",params:r})}function n(r){return t.get({url:"/tcm.diagnosis/readonlyDetail",params:r})}function s(r){return t.get({url:"/tcm.diagnosis/trackingWindow",params:r})}function o(r){return t.post({url:"/tcm.diagnosis/addTrackingNote",params:r})}function c(r){return t.get({url:"/tcm.diagnosis/trackingNotes",params:r})}function a(r){return t.get({url:"/tcm.diagnosis/assistantDiagnosisStats",params:r})}function u(r){return t.post({url:"/tcm.diagnosis/add",params:r})}function d(r){return t.post({url:"/tcm.diagnosis/edit",params:r})}function p(r){return t.post({url:"/tcm.diagnosis/delete",params:r})}function l(r){return t.get({url:"/tcm.diagnosis/detail",params:r})}function g(r){return t.get({url:"/tcm.diagnosis/guahaoLogList",params:r})}function m(r){return t.post({url:"/tcm.diagnosis/checkPhone",params:r})}function f(r){return t.post({url:"/tcm.diagnosis/checkIdCard",params:r})}function O(r){return t.post({url:"/tcm.diagnosis/fillIdCard",params:r})}function R(r){return t.post({url:"/tcm.diagnosis/assign",params:r})}function h(r){return t.get({url:"/tcm.diagnosis/assignLogList",params:r})}function C(){return t.get({url:"/tcm.diagnosis/getAssistants"})}function y(){return t.get({url:"/tcm.diagnosis/getDoctors"})}function P(r){return t.post({url:"/tcm.bloodRecord/add",params:r})}function L(r){return t.post({url:"/tcm.bloodRecord/edit",params:r})}function D(r){return t.post({url:"/tcm.bloodRecord/delete",params:r})}function A(r){return t.get({url:"/tcm.bloodRecord/getRecordsByPatient",params:r})}function b(r){return t.get({url:"/tcm.bloodRecord/getBloodSugarTrend",params:r})}function k(r){return t.post({url:"/tcm.dietRecord/add",params:r})}function T(r){return t.post({url:"/tcm.dietRecord/edit",params:r})}function x(r){return t.post({url:"/tcm.dietRecord/delete",params:r})}function S(r){return t.get({url:"/tcm.dietRecord/getRecordsByPatient",params:r})}function B(r){return t.post({url:"/tcm.exerciseRecord/add",params:r})}function W(r){return t.post({url:"/tcm.exerciseRecord/edit",params:r})}function E(r){return t.post({url:"/tcm.exerciseRecord/delete",params:r})}function w(r){return t.get({url:"/tcm.exerciseRecord/getRecordsByPatient",params:r})}function v(r){return t.post({url:"/tcm.diagnosis/getCallSignature",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function I(r){return t.post({url:"/tcm.diagnosis/startCall",params:r})}function M(r){return t.post({url:"/tcm.diagnosis/endCall",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function G(r){return t.get({url:"/tcm.diagnosis/getCallRecords",params:r})}function q(r){return t.post({url:"/tcm.diagnosis/bindCallRoom",params:r})}function N(r){return t.post({url:"/tcm.diagnosis/attachLocalCallRecording",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function Q(r){return t.post({url:"/tcm.diagnosis/createManualCallRecord",params:r},{ignoreCancelToken:!0,isOpenRetry:!1})}function j(r){return t.get({url:"/tcm.diagnosis/watchCall",params:r})}function U(r){return t.post({url:"/tcm.diagnosis/generateMiniProgramQrcode",params:r})}function V(r){return t.post({url:"/tcm.diagnosis/generateOrderQrcode",params:r})}function z(r){return t.get({url:"/tcm.diagnosis/getImChatMessages",params:r})}function F(r){return t.post({url:"/tcm.diagnosis/triggerImChatSync",data:r})}function H(r){return t.get({url:"/tcm.diagnosis/getWechatChatRecords",params:r})}function J(r){return t.post({url:"/tcm.diagnosis/addWechatChatRecord",params:r})}function K(r){return t.post({url:"/tcm.diagnosis/deleteWechatChatRecord",params:r})}function X(r){return t.get({url:"/tcm.diagnosis/getWechatExternalContact",params:r})}function Y(r){return t.get({url:"/tcm.prescription/lists",params:r})}function Z(r){return t.post({url:"/tcm.prescription/add",params:r})}function _(r){return t.post({url:"/tcm.prescription/edit",params:r})}function $(r){return t.post({url:"/tcm.prescription/patchPatient",params:r})}function rr(r){return t.post({url:"/tcm.prescription/delete",params:r})}function tr(r){return t.get({url:"/tcm.prescription/detail",params:r})}function er(r){return t.get({url:"/tcm.prescription/listByDiagnosis",params:r})}function ir(r){return t.get({url:"/tcm.prescription/getByAppointment",params:r})}function nr(r){return t.post({url:"/tcm.prescription/void",params:r})}function sr(r){return t.post({url:"/tcm.prescription/audit",params:r})}function or(r){return t.post({url:"/tcm.prescriptionOrder/create",params:r})}function cr(r){return t.get({url:"/tcm.prescriptionOrder/lists",params:r})}function ar(r){return t.get({url:"/tcm.prescriptionOrder/export",params:r})}function ur(r){return t.get({url:"/tcm.prescriptionOrder/paidPayOrders",params:r})}function dr(r){return t.post({url:"/tcm.prescriptionOrder/withdraw",params:r})}function pr(r){return t.get({url:"/tcm.prescriptionOrder/logisticsTrace",params:r})}function lr(r){return t.get({url:"/tcm.prescriptionOrder/detail",params:r})}function gr(r){return t.post({url:"/tcm.prescriptionOrder/edit",params:r})}function mr(r){return t.post({url:"/tcm.prescriptionOrder/patchPrescriptionPatient",params:r})}function fr(r){return t.post({url:"/tcm.prescriptionOrder/auditPrescription",params:r})}function Or(r){return t.post({url:"/tcm.prescriptionOrder/auditPayment",params:r})}function Rr(r){return t.post({url:"/tcm.prescriptionOrder/revokeRxAudit",params:r})}function hr(r){return t.post({url:"/tcm.prescriptionOrder/revokePayAudit",params:r})}function Cr(r){return t.post({url:"/tcm.prescriptionOrder/ship",params:r})}function yr(r){return t.post({url:"/tcm.prescriptionOrder/addPayOrder",params:r})}function Pr(r){return t.post({url:"/tcm.prescriptionOrder/linkPayOrder",params:r})}function Lr(r){return t.post({url:"/tcm.prescriptionOrder/requestCompletion",params:r})}function Dr(r){return t.post({url:"/tcm.prescriptionOrder/complete",params:r})}function Ar(r){return t.post({url:"/tcm.prescriptionOrder/submitGancaoRecipel",params:r})}function br(r){return t.post({url:"/tcm.prescriptionOrder/previewGancaoRecipel",params:r})}function kr(r){return t.get({url:"/tcm.prescriptionOrder/logs",params:r})}function Tr(r){return t.post({url:"/tcm.prescriptionOrder/updateAmount",params:r})}function xr(r){return t.post({url:"/tcm.prescriptionOrder/setShipMode",params:r})}function Sr(r){return t.get({url:"/tcm.prescriptionLibrary/lists",params:r})}function Br(r){return t.post({url:"/tcm.prescriptionLibrary/add",params:r})}function Wr(r){return t.post({url:"/tcm.prescriptionLibrary/edit",params:r})}function Er(r){return t.post({url:"/tcm.prescriptionLibrary/delete",params:r})}function wr(r){return t.get({url:"/tcm.diagnosisTodo/lists",params:r})}function vr(r){return t.post({url:"/tcm.diagnosisTodo/add",params:r})}function Ir(r){return t.post({url:"/tcm.diagnosisTodo/cancel",params:r})}export{m as $,dr as A,br as B,Ar as C,Cr as D,Dr as E,Lr as F,yr as G,Pr as H,Rr as I,hr as J,V as K,v as L,s as M,c as N,L as O,P,T as Q,k as R,W as S,B as T,o as U,wr as V,vr as W,Ir as X,U as Y,ir as Z,l as _,C as a,f as a0,u as a1,d as a2,h as a3,j as a4,b as a5,A as a6,D as a7,G as a8,N as a9,Q as aa,er as ab,S as ac,x as ad,w as ae,E as af,z as ag,F as ah,nr as ai,i as aj,R as ak,g as al,O as am,H as an,J as ao,K as ap,p as aq,X as ar,n as as,a as at,M as au,q as av,I as aw,ur as b,tr as c,or as d,Y as e,sr as f,y as g,Sr as h,Z as i,_ as j,rr as k,cr as l,Br as m,Wr as n,Er as o,$ as p,ar as q,xr as r,kr as s,pr as t,lr as u,mr as v,Tr as w,gr as x,fr as y,Or as z}; diff --git a/server/public/admin/assets/theme-picker-BmoSb7ra.js b/server/public/admin/assets/theme-picker-6MJIe8r7.js similarity index 96% rename from server/public/admin/assets/theme-picker-BmoSb7ra.js rename to server/public/admin/assets/theme-picker-6MJIe8r7.js index 7d2c431e..02892347 100644 --- a/server/public/admin/assets/theme-picker-BmoSb7ra.js +++ b/server/public/admin/assets/theme-picker-6MJIe8r7.js @@ -1 +1 @@ -import{d as u}from"./@vueuse/core-1S4fJlii.js";import{f,ak as e,I as p,F as x,ap as _,J as s}from"./@vue/runtime-core-C6bnekPw.js";import{o as h,p as k,Q as g}from"./@vue/shared-mAAVTE9n.js";import{y as a}from"./@vue/reactivity-DiY1c2vO.js";import{_ as v}from"./index-Nt5zMHcc.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const y={class:"flex flex-wrap"},C=["onClick"],V={class:"ml-[14px]"},w=f({__name:"theme-picker",props:{themeColors:{},modelValue:{}},emits:["update:modelValue","change"],setup(i,{emit:l}){const n=i,m=l,t=u(n,"modelValue",m),c=r=>{t.value=r.id,m("change",r)};return(r,B)=>(e(),p("div",y,[(e(!0),p(x,null,_(i.themeColors,(o,d)=>(e(),p("div",{class:h(["py-[18px] px-[20px] flex items-center text-[14px] shadow rounded-lg mr-[20px] mb-[20px] cursor-pointer",{"is-select":a(t)==o.id,unselect:a(t)!=o.id}]),key:d,onClick:I=>c(o)},[s("div",{class:"rounded-full h-[34px] w-[34px]",style:k(`background: linear-gradient(to right, ${o.color1}, ${o.color2})`)},null,4),s("div",V,g(o.name),1)],10,C))),128))]))}}),no=v(w,[["__scopeId","data-v-48f4aa49"]]);export{no as default}; +import{d as u}from"./@vueuse/core-1S4fJlii.js";import{f,ak as e,I as p,F as x,ap as _,J as s}from"./@vue/runtime-core-C6bnekPw.js";import{o as h,p as k,Q as g}from"./@vue/shared-mAAVTE9n.js";import{y as a}from"./@vue/reactivity-DiY1c2vO.js";import{_ as v}from"./index--WnM67ZH.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./lodash-D3kF6u-c.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const y={class:"flex flex-wrap"},C=["onClick"],V={class:"ml-[14px]"},w=f({__name:"theme-picker",props:{themeColors:{},modelValue:{}},emits:["update:modelValue","change"],setup(i,{emit:l}){const n=i,m=l,t=u(n,"modelValue",m),c=r=>{t.value=r.id,m("change",r)};return(r,B)=>(e(),p("div",y,[(e(!0),p(x,null,_(i.themeColors,(o,d)=>(e(),p("div",{class:h(["py-[18px] px-[20px] flex items-center text-[14px] shadow rounded-lg mr-[20px] mb-[20px] cursor-pointer",{"is-select":a(t)==o.id,unselect:a(t)!=o.id}]),key:d,onClick:I=>c(o)},[s("div",{class:"rounded-full h-[34px] w-[34px]",style:k(`background: linear-gradient(to right, ${o.color1}, ${o.color2})`)},null,4),s("div",V,g(o.name),1)],10,C))),128))]))}}),no=v(w,[["__scopeId","data-v-48f4aa49"]]);export{no as default}; diff --git a/server/public/admin/assets/tongji-B6VJLvKp.js b/server/public/admin/assets/tongji-C0pqWBk3.js similarity index 97% rename from server/public/admin/assets/tongji-B6VJLvKp.js rename to server/public/admin/assets/tongji-C0pqWBk3.js index 52977e1e..44869bd2 100644 --- a/server/public/admin/assets/tongji-B6VJLvKp.js +++ b/server/public/admin/assets/tongji-C0pqWBk3.js @@ -1 +1 @@ -import{D as Q,B as q,P as H,Q as W,G as $,F as A,a2 as K,i as X,J as Z,L as tt,M as et,N as st,T as at,R as ot,E as lt}from"./element-plus-DFTWCWyi.js";import{f as nt,k as it}from"./doctor-B7qEhSpt.js";import{f as rt,b as dt,ak as a,I as i,a as o,aN as s,F as f,ap as y,G as v,O as c,H as _t,J as l,aP as ct}from"./@vue/runtime-core-C6bnekPw.js";import{Q as p}from"./@vue/shared-mAAVTE9n.js";import{n as E,r as pt}from"./@vue/reactivity-DiY1c2vO.js";import{_ as ut}from"./index-Nt5zMHcc.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const mt={class:"statistics-page"},ft={key:0},yt={class:"status-overview"},vt={class:"status-section"},gt={key:0},ht={class:"dept-grid"},bt={class:"dept-header"},kt={class:"dept-name"},Et={class:"dept-total"},Vt={class:"status-tags"},Ct={key:1,class:"text-gray-400"},wt={class:"status-section"},Tt={key:0},xt={class:"channel-grid"},Dt={class:"channel-header"},Mt={class:"channel-name"},Bt={class:"channel-total"},Lt={class:"status-tags"},Nt={key:1,class:"text-gray-400"},St={key:1,class:"empty-data"},Ft=rt({__name:"tongji",setup(Rt){const g=E(!1),x=E([]),h=E([]),_=E([]),r=pt({doctor_id:"",time_type:"today",start_date:"",end_date:""}),S=async()=>{try{const e=await nt({role_id:1});x.value=e.lists||[]}catch(e){console.error("获取医生列表失败:",e)}},V=async()=>{g.value=!0;try{const e={time_type:r.time_type};r.doctor_id&&(e.doctor_id=r.doctor_id),r.time_type==="custom"&&_.value&&_.value.length===2&&(e.start_date=_.value[0],e.end_date=_.value[1]);const t=await it(e);h.value=t.lists||[],h.value.forEach(d=>{d.dept_status_details||(d.dept_status_details=[]),d.channel_status_details||(d.channel_status_details=[])})}catch(e){console.error("获取统计数据错误:",e),lt.error(e.msg||"获取统计数据失败")}finally{g.value=!1}},F=()=>{r.time_type!=="custom"&&(_.value=[])},R=()=>{r.doctor_id="",r.time_type="today",_.value=[],V()},j=e=>e.statuses?Object.values(e.statuses).reduce((t,d)=>t+d,0):0,O=e=>e.statuses?Object.values(e.statuses).reduce((t,d)=>t+d,0):0,D=e=>({1:"已挂号",2:"已取消",3:"已完成",4:"已过号"})[e]||`状态${e}`,M=e=>({1:"info",2:"danger",3:"success",4:"warning"})[e]||"default";return dt(()=>{S(),V()}),(e,t)=>{const d=W,P=H,b=q,k=A,Y=$,G=K,B=X,I=Q,L=Z,C=st,N=at,U=et,z=ot,J=tt;return a(),i("div",mt,[o(L,{class:"mb-4",shadow:"hover"},{header:s(()=>[...t[3]||(t[3]=[l("div",{class:"card-header"},[l("span",{class:"card-title"},"筛选条件")],-1)])]),default:s(()=>[o(I,{inline:!0,model:r,class:"filter-form"},{default:s(()=>[o(b,{label:"医生"},{default:s(()=>[o(P,{modelValue:r.doctor_id,"onUpdate:modelValue":t[0]||(t[0]=n=>r.doctor_id=n),placeholder:"全部医生",clearable:"",filterable:"",style:{width:"200px"}},{default:s(()=>[(a(!0),i(f,null,y(x.value,n=>(a(),v(d,{key:n.id,label:n.name,value:n.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(b,{label:"时间范围"},{default:s(()=>[o(Y,{modelValue:r.time_type,"onUpdate:modelValue":t[1]||(t[1]=n=>r.time_type=n),onChange:F},{default:s(()=>[o(k,{label:"today"},{default:s(()=>[...t[4]||(t[4]=[c("今天",-1)])]),_:1}),o(k,{label:"week"},{default:s(()=>[...t[5]||(t[5]=[c("最近7天",-1)])]),_:1}),o(k,{label:"month"},{default:s(()=>[...t[6]||(t[6]=[c("最近30天",-1)])]),_:1}),o(k,{label:"custom"},{default:s(()=>[...t[7]||(t[7]=[c("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),r.time_type==="custom"?(a(),v(b,{key:0},{default:s(()=>[o(G,{modelValue:_.value,"onUpdate:modelValue":t[2]||(t[2]=n=>_.value=n),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",style:{width:"260px"}},null,8,["modelValue"])]),_:1})):_t("",!0),o(b,null,{default:s(()=>[o(B,{type:"primary",onClick:V,loading:g.value},{default:s(()=>[...t[8]||(t[8]=[c("查询",-1)])]),_:1},8,["loading"]),o(B,{onClick:R},{default:s(()=>[...t[9]||(t[9]=[c("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ct((a(),v(L,{class:"mb-4",shadow:"hover"},{header:s(()=>[...t[10]||(t[10]=[l("div",{class:"card-header"},[l("span",{class:"card-title"},"医生统计数据")],-1)])]),default:s(()=>[h.value.length>0?(a(),i("div",ft,[o(U,{data:h.value,style:{width:"100%"},"header-cell-style":{background:"#f5f7fa",color:"#606266",fontWeight:"600"}},{default:s(()=>[o(C,{prop:"doctor_name",label:"医生姓名",width:"120"}),o(C,{label:"状态明细","min-width":"700"},{default:s(({row:n})=>[l("div",yt,[l("div",vt,[t[11]||(t[11]=l("h4",{class:"section-title"},"部门状态",-1)),n.dept_status_details&&n.dept_status_details.length>0?(a(),i("div",gt,[l("div",ht,[(a(!0),i(f,null,y(n.dept_status_details,(u,w)=>(a(),i("div",{key:w,class:"dept-item"},[l("div",bt,[l("span",kt,p(u.dept_name),1),l("span",Et,"("+p(j(u))+")",1)]),l("div",Vt,[(a(!0),i(f,null,y(u.statuses,(T,m)=>(a(),v(N,{key:m,type:M(m),size:"small",class:"compact-tag"},{default:s(()=>[c(p(D(m))+": "+p(T),1)]),_:2},1032,["type"]))),128))])]))),128))])])):(a(),i("span",Ct,"暂无部门状态明细"))]),l("div",wt,[t[12]||(t[12]=l("h4",{class:"section-title"},"渠道状态",-1)),n.channel_status_details&&n.channel_status_details.length>0?(a(),i("div",Tt,[l("div",xt,[(a(!0),i(f,null,y(n.channel_status_details,(u,w)=>(a(),i("div",{key:w,class:"channel-item"},[l("div",Dt,[l("span",Mt,p(u.channel_name),1),l("span",Bt,"("+p(O(u))+")",1)]),l("div",Lt,[(a(!0),i(f,null,y(u.statuses,(T,m)=>(a(),v(N,{key:m,type:M(m),size:"small",class:"compact-tag"},{default:s(()=>[c(p(D(m))+": "+p(T),1)]),_:2},1032,["type"]))),128))])]))),128))])])):(a(),i("span",Nt,"暂无渠道状态明细"))])])]),_:1}),o(C,{prop:"time_range",label:"统计时间","min-width":"200"})]),_:1},8,["data"])])):(a(),i("div",St,[o(z,{description:"暂无统计数据"})]))]),_:1})),[[J,g.value]])])}}}),be=ut(Ft,[["__scopeId","data-v-aa7d2a93"]]);export{be as default}; +import{D as Q,B as q,P as H,Q as W,G as $,F as A,a2 as K,i as X,J as Z,L as tt,M as et,N as st,T as at,R as ot,E as lt}from"./element-plus-DFTWCWyi.js";import{f as nt,k as it}from"./doctor-BlvK2TEo.js";import{f as rt,b as dt,ak as a,I as i,a as o,aN as s,F as f,ap as y,G as v,O as c,H as _t,J as l,aP as ct}from"./@vue/runtime-core-C6bnekPw.js";import{Q as p}from"./@vue/shared-mAAVTE9n.js";import{n as E,r as pt}from"./@vue/reactivity-DiY1c2vO.js";import{_ as ut}from"./index--WnM67ZH.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const mt={class:"statistics-page"},ft={key:0},yt={class:"status-overview"},vt={class:"status-section"},gt={key:0},ht={class:"dept-grid"},bt={class:"dept-header"},kt={class:"dept-name"},Et={class:"dept-total"},Vt={class:"status-tags"},Ct={key:1,class:"text-gray-400"},wt={class:"status-section"},Tt={key:0},xt={class:"channel-grid"},Dt={class:"channel-header"},Mt={class:"channel-name"},Bt={class:"channel-total"},Lt={class:"status-tags"},Nt={key:1,class:"text-gray-400"},St={key:1,class:"empty-data"},Ft=rt({__name:"tongji",setup(Rt){const g=E(!1),x=E([]),h=E([]),_=E([]),r=pt({doctor_id:"",time_type:"today",start_date:"",end_date:""}),S=async()=>{try{const e=await nt({role_id:1});x.value=e.lists||[]}catch(e){console.error("获取医生列表失败:",e)}},V=async()=>{g.value=!0;try{const e={time_type:r.time_type};r.doctor_id&&(e.doctor_id=r.doctor_id),r.time_type==="custom"&&_.value&&_.value.length===2&&(e.start_date=_.value[0],e.end_date=_.value[1]);const t=await it(e);h.value=t.lists||[],h.value.forEach(d=>{d.dept_status_details||(d.dept_status_details=[]),d.channel_status_details||(d.channel_status_details=[])})}catch(e){console.error("获取统计数据错误:",e),lt.error(e.msg||"获取统计数据失败")}finally{g.value=!1}},F=()=>{r.time_type!=="custom"&&(_.value=[])},R=()=>{r.doctor_id="",r.time_type="today",_.value=[],V()},j=e=>e.statuses?Object.values(e.statuses).reduce((t,d)=>t+d,0):0,O=e=>e.statuses?Object.values(e.statuses).reduce((t,d)=>t+d,0):0,D=e=>({1:"已挂号",2:"已取消",3:"已完成",4:"已过号"})[e]||`状态${e}`,M=e=>({1:"info",2:"danger",3:"success",4:"warning"})[e]||"default";return dt(()=>{S(),V()}),(e,t)=>{const d=W,P=H,b=q,k=A,Y=$,G=K,B=X,I=Q,L=Z,C=st,N=at,U=et,z=ot,J=tt;return a(),i("div",mt,[o(L,{class:"mb-4",shadow:"hover"},{header:s(()=>[...t[3]||(t[3]=[l("div",{class:"card-header"},[l("span",{class:"card-title"},"筛选条件")],-1)])]),default:s(()=>[o(I,{inline:!0,model:r,class:"filter-form"},{default:s(()=>[o(b,{label:"医生"},{default:s(()=>[o(P,{modelValue:r.doctor_id,"onUpdate:modelValue":t[0]||(t[0]=n=>r.doctor_id=n),placeholder:"全部医生",clearable:"",filterable:"",style:{width:"200px"}},{default:s(()=>[(a(!0),i(f,null,y(x.value,n=>(a(),v(d,{key:n.id,label:n.name,value:n.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),o(b,{label:"时间范围"},{default:s(()=>[o(Y,{modelValue:r.time_type,"onUpdate:modelValue":t[1]||(t[1]=n=>r.time_type=n),onChange:F},{default:s(()=>[o(k,{label:"today"},{default:s(()=>[...t[4]||(t[4]=[c("今天",-1)])]),_:1}),o(k,{label:"week"},{default:s(()=>[...t[5]||(t[5]=[c("最近7天",-1)])]),_:1}),o(k,{label:"month"},{default:s(()=>[...t[6]||(t[6]=[c("最近30天",-1)])]),_:1}),o(k,{label:"custom"},{default:s(()=>[...t[7]||(t[7]=[c("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),r.time_type==="custom"?(a(),v(b,{key:0},{default:s(()=>[o(G,{modelValue:_.value,"onUpdate:modelValue":t[2]||(t[2]=n=>_.value=n),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",style:{width:"260px"}},null,8,["modelValue"])]),_:1})):_t("",!0),o(b,null,{default:s(()=>[o(B,{type:"primary",onClick:V,loading:g.value},{default:s(()=>[...t[8]||(t[8]=[c("查询",-1)])]),_:1},8,["loading"]),o(B,{onClick:R},{default:s(()=>[...t[9]||(t[9]=[c("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ct((a(),v(L,{class:"mb-4",shadow:"hover"},{header:s(()=>[...t[10]||(t[10]=[l("div",{class:"card-header"},[l("span",{class:"card-title"},"医生统计数据")],-1)])]),default:s(()=>[h.value.length>0?(a(),i("div",ft,[o(U,{data:h.value,style:{width:"100%"},"header-cell-style":{background:"#f5f7fa",color:"#606266",fontWeight:"600"}},{default:s(()=>[o(C,{prop:"doctor_name",label:"医生姓名",width:"120"}),o(C,{label:"状态明细","min-width":"700"},{default:s(({row:n})=>[l("div",yt,[l("div",vt,[t[11]||(t[11]=l("h4",{class:"section-title"},"部门状态",-1)),n.dept_status_details&&n.dept_status_details.length>0?(a(),i("div",gt,[l("div",ht,[(a(!0),i(f,null,y(n.dept_status_details,(u,w)=>(a(),i("div",{key:w,class:"dept-item"},[l("div",bt,[l("span",kt,p(u.dept_name),1),l("span",Et,"("+p(j(u))+")",1)]),l("div",Vt,[(a(!0),i(f,null,y(u.statuses,(T,m)=>(a(),v(N,{key:m,type:M(m),size:"small",class:"compact-tag"},{default:s(()=>[c(p(D(m))+": "+p(T),1)]),_:2},1032,["type"]))),128))])]))),128))])])):(a(),i("span",Ct,"暂无部门状态明细"))]),l("div",wt,[t[12]||(t[12]=l("h4",{class:"section-title"},"渠道状态",-1)),n.channel_status_details&&n.channel_status_details.length>0?(a(),i("div",Tt,[l("div",xt,[(a(!0),i(f,null,y(n.channel_status_details,(u,w)=>(a(),i("div",{key:w,class:"channel-item"},[l("div",Dt,[l("span",Mt,p(u.channel_name),1),l("span",Bt,"("+p(O(u))+")",1)]),l("div",Lt,[(a(!0),i(f,null,y(u.statuses,(T,m)=>(a(),v(N,{key:m,type:M(m),size:"small",class:"compact-tag"},{default:s(()=>[c(p(D(m))+": "+p(T),1)]),_:2},1032,["type"]))),128))])]))),128))])])):(a(),i("span",Nt,"暂无渠道状态明细"))])])]),_:1}),o(C,{prop:"time_range",label:"统计时间","min-width":"200"})]),_:1},8,["data"])])):(a(),i("div",St,[o(z,{description:"暂无统计数据"})]))]),_:1})),[[J,g.value]])])}}}),be=ut(Ft,[["__scopeId","data-v-aa7d2a93"]]);export{be as default}; diff --git a/server/public/admin/assets/upload-3f7pufJE.js b/server/public/admin/assets/upload-E1VfHXnC.js similarity index 92% rename from server/public/admin/assets/upload-3f7pufJE.js rename to server/public/admin/assets/upload-E1VfHXnC.js index d7639924..74c3cc3a 100644 --- a/server/public/admin/assets/upload-3f7pufJE.js +++ b/server/public/admin/assets/upload-E1VfHXnC.js @@ -1 +1 @@ -import{i as _,J as u}from"./element-plus-DFTWCWyi.js";import{U as l}from"./index-DMnmuOhU.js";import{f as c,ak as f,I as y,a as o,aN as t,J as p,O as n}from"./@vue/runtime-core-C6bnekPw.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-dC1LMm1W.js";const g={class:"flex flex-wrap"},v={class:"m-4"},w={class:"m-4"},h={class:"m-4"},x={class:"m-4"},lo=c({__name:"upload",setup(B){const i=e=>{console.log("上传文件的状态发生改变",e)},s=e=>{console.log("上传文件成功",e)},m=e=>{console.log("上传文件失败",e)};return(e,r)=>{const a=_,d=u;return f(),y("div",null,[o(d,{header:"基础使用",shadow:"never",class:"!border-none"},{default:t(()=>[p("div",g,[p("div",v,[o(l,{onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[0]||(r[0]=[n("上传图片",-1)])]),_:1})]),_:1})]),p("div",w,[o(l,{type:"video",onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[1]||(r[1]=[n("上传视频",-1)])]),_:1})]),_:1})]),p("div",h,[o(l,{multiple:!1,onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[2]||(r[2]=[n("取消多选",-1)])]),_:1})]),_:1})]),p("div",x,[o(l,{limit:2,onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[3]||(r[3]=[n("一次最多上传2张",-1)])]),_:1})]),_:1})])])]),_:1})])}}});export{lo as default}; +import{i as _,J as u}from"./element-plus-DFTWCWyi.js";import{U as l}from"./index-C6BRrxYh.js";import{f as c,ak as f,I as y,a as o,aN as t,J as p,O as n}from"./@vue/runtime-core-C6bnekPw.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";const g={class:"flex flex-wrap"},v={class:"m-4"},w={class:"m-4"},h={class:"m-4"},x={class:"m-4"},lo=c({__name:"upload",setup(B){const i=e=>{console.log("上传文件的状态发生改变",e)},s=e=>{console.log("上传文件成功",e)},m=e=>{console.log("上传文件失败",e)};return(e,r)=>{const a=_,d=u;return f(),y("div",null,[o(d,{header:"基础使用",shadow:"never",class:"!border-none"},{default:t(()=>[p("div",g,[p("div",v,[o(l,{onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[0]||(r[0]=[n("上传图片",-1)])]),_:1})]),_:1})]),p("div",w,[o(l,{type:"video",onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[1]||(r[1]=[n("上传视频",-1)])]),_:1})]),_:1})]),p("div",h,[o(l,{multiple:!1,onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[2]||(r[2]=[n("取消多选",-1)])]),_:1})]),_:1})]),p("div",x,[o(l,{limit:2,onChange:i,onSuccess:s,onError:m,"show-progress":!0},{default:t(()=>[o(a,{type:"primary"},{default:t(()=>[...r[3]||(r[3]=[n("一次最多上传2张",-1)])]),_:1})]),_:1})])])]),_:1})])}}});export{lo as default}; diff --git a/server/public/admin/assets/useDictOptions-CT8hbU1b.js b/server/public/admin/assets/useDictOptions-lSbSoycG.js similarity index 84% rename from server/public/admin/assets/useDictOptions-CT8hbU1b.js rename to server/public/admin/assets/useDictOptions-lSbSoycG.js index 90251032..91bf50c6 100644 --- a/server/public/admin/assets/useDictOptions-CT8hbU1b.js +++ b/server/public/admin/assets/useDictOptions-lSbSoycG.js @@ -1 +1 @@ -import"./index-Nt5zMHcc.js";import{t as p,r as f}from"./@vue/reactivity-DiY1c2vO.js";function d(a){const s=f({}),r=Object.keys(a),i=r.map(o=>{const t=a[o];return s[o]=[],()=>t.api(p(t.params)||{})}),e=async()=>{(await Promise.allSettled(i.map(t=>t()))).forEach((t,u)=>{const n=r[u];if(t.status=="fulfilled"){const{transformData:c}=a[n],l=c?c(t.value):t.value;s[n]=l}})};return e(),{optionsData:s,refresh:e}}export{d as u}; +import"./index--WnM67ZH.js";import{t as p,r as f}from"./@vue/reactivity-DiY1c2vO.js";function d(a){const s=f({}),r=Object.keys(a),i=r.map(o=>{const t=a[o];return s[o]=[],()=>t.api(p(t.params)||{})}),e=async()=>{(await Promise.allSettled(i.map(t=>t()))).forEach((t,u)=>{const n=r[u];if(t.status=="fulfilled"){const{transformData:c}=a[n],l=c?c(t.value):t.value;s[n]=l}})};return e(),{optionsData:s,refresh:e}}export{d as u}; diff --git a/server/public/admin/assets/useMediaSourceOptions-6f8jf4SK.js b/server/public/admin/assets/useMediaSourceOptions-D92lCyJY.js similarity index 90% rename from server/public/admin/assets/useMediaSourceOptions-6f8jf4SK.js rename to server/public/admin/assets/useMediaSourceOptions-D92lCyJY.js index aa277e52..34c7cd6b 100644 --- a/server/public/admin/assets/useMediaSourceOptions-6f8jf4SK.js +++ b/server/public/admin/assets/useMediaSourceOptions-D92lCyJY.js @@ -1 +1 @@ -import{g as f}from"./self_input_stats-DMYot1WP.js";import{n as u}from"./@vue/reactivity-DiY1c2vO.js";function m(){const o=u([]),s=u(!1),c=r=>{if(!Array.isArray(r))return[];const n=[],a=new Set;for(const t of r){if(typeof t=="string"){const e=t.trim();e&&!a.has(e)&&(a.add(e),n.push({name:e,value:""}));continue}if(t&&typeof t=="object"){const e=String(t.name??"").trim();e&&!a.has(e)&&(a.add(e),n.push({name:e,value:String(t.value??"")}))}}return n},i=async(r=!1)=>{if(!(!r&&o.value.length>0)){s.value=!0;try{const n=await f();o.value=c(n)}catch{o.value=[]}finally{s.value=!1}}};return{mediaSourceOptions:o,mediaSourceLoading:s,loadMediaSourceOptions:i,refreshMediaSourceOptions:()=>i(!0)}}export{m as u}; +import{g as f}from"./self_input_stats-C4Lr_Fd7.js";import{n as u}from"./@vue/reactivity-DiY1c2vO.js";function m(){const o=u([]),s=u(!1),c=r=>{if(!Array.isArray(r))return[];const n=[],a=new Set;for(const t of r){if(typeof t=="string"){const e=t.trim();e&&!a.has(e)&&(a.add(e),n.push({name:e,value:""}));continue}if(t&&typeof t=="object"){const e=String(t.name??"").trim();e&&!a.has(e)&&(a.add(e),n.push({name:e,value:String(t.value??"")}))}}return n},i=async(r=!1)=>{if(!(!r&&o.value.length>0)){s.value=!0;try{const n=await f();o.value=c(n)}catch{o.value=[]}finally{s.value=!1}}};return{mediaSourceOptions:o,mediaSourceLoading:s,loadMediaSourceOptions:i,refreshMediaSourceOptions:()=>i(!0)}}export{m as u}; diff --git a/server/public/admin/assets/useMenuOa-pZ-sxT1M.js b/server/public/admin/assets/useMenuOa-_Y0P7idX.js similarity index 92% rename from server/public/admin/assets/useMenuOa-pZ-sxT1M.js rename to server/public/admin/assets/useMenuOa-_Y0P7idX.js index d0386a53..86dda0cf 100644 --- a/server/public/admin/assets/useMenuOa-pZ-sxT1M.js +++ b/server/public/admin/assets/useMenuOa-_Y0P7idX.js @@ -1 +1 @@ -import{a as i,b as c,c as g}from"./wx_oa-BOc4Brkk.js";import{i as o}from"./index-Nt5zMHcc.js";import{r as h,q as d,n as l}from"./@vue/reactivity-DiY1c2vO.js";const r=d(),u=l([]),n=l(0),O=h({name:[{required:!0,message:"必填项不能为空",trigger:["blur","change"]},{min:1,max:12,message:"长度限制12个字符",trigger:["blur","change"]}],menuType:[{required:!0,message:"必填项不能为空",trigger:["blur","change"]}],visitType:[{required:!0,message:"必填项不能为空",trigger:["blur","change"]}],url:[{required:!0,message:"必填项不能为空",trigger:["blur","change"]},{pattern:/(http|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?/,message:"请输入合法的网址链接",trigger:["blur","change"]}],appId:[{required:!0,message:"必填项不能为空",trigger:["blur","change"]}],pagePath:[{required:!0,message:"必填项不能为空",trigger:["blur","change"]}]}),x=s=>(s&&(r.value=s),{menuList:u,menuIndex:n,handleAddMenu:()=>{u.value.push({name:"菜单名称",has_menu:!1,type:"view",url:"",appid:"",pagepath:"",sub_button:[]})},handleAddSubMenu:e=>{const a=n.value;if(u.value[a].sub_button.length>=5){o.msgError("已添加上限~");return}u.value[a].sub_button.push(e)},handleEditSubMenu:(e,a)=>{const t=n.value;u.value[t].sub_button[a]=e},handleDelMenu:e=>{e!=0&&n.value--,u.value.splice(e,1)},handleDelSubMenu:(e,a)=>{u.value[e].sub_button.splice(a,1)},getOaMenuFunc:async()=>{try{u.value=await g()}catch(e){console.log("获取菜单=>",e)}},handleSave:async()=>{const e=r.value.value;for(let a=0;a{const e=r.value.value;for(let a=0;a(s&&(r.value=s),{menuList:u,menuIndex:n,handleAddMenu:()=>{u.value.push({name:"菜单名称",has_menu:!1,type:"view",url:"",appid:"",pagepath:"",sub_button:[]})},handleAddSubMenu:e=>{const a=n.value;if(u.value[a].sub_button.length>=5){o.msgError("已添加上限~");return}u.value[a].sub_button.push(e)},handleEditSubMenu:(e,a)=>{const t=n.value;u.value[t].sub_button[a]=e},handleDelMenu:e=>{e!=0&&n.value--,u.value.splice(e,1)},handleDelSubMenu:(e,a)=>{u.value[e].sub_button.splice(a,1)},getOaMenuFunc:async()=>{try{u.value=await g()}catch(e){console.log("获取菜单=>",e)}},handleSave:async()=>{const e=r.value.value;for(let a=0;a{const e=r.value.value;for(let a=0;a{const v=await J();for(const o in l)l[o]=v[o]},k=async()=>{var v;await((v=w.value)==null?void 0:v.validate()),await W(l),V()};return V(),(v,o)=>{const q=E,b=S,m=F,a=B,I=j,p=N,U=R,y=C,f=x("copy"),A=x("perms");return n(),K("div",null,[t(b,{class:"!border-none",shadow:"never"},{default:i(()=>[t(q,{type:"warning",title:"温馨提示:填写微信小程序开发配置,请前往微信公众平台申请小程序并完成认证",closable:!1,"show-icon":""})]),_:1}),t(U,{ref_key:"formRef",ref:w,model:s(l),rules:D,"label-width":s(c).isMobile?"80px":"160px"},{default:i(()=>[t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[12]||(o[12]=e("div",{class:"font-medium mb-7"},"微信小程序",-1)),t(a,{label:"小程序名称",prop:"name"},{default:i(()=>[e("div",P,[t(m,{modelValue:s(l).name,"onUpdate:modelValue":o[0]||(o[0]=d=>s(l).name=d),placeholder:"请输入小程序名称"},null,8,["modelValue"])])]),_:1}),t(a,{label:"原始ID",prop:"original_id"},{default:i(()=>[e("div",T,[t(m,{modelValue:s(l).original_id,"onUpdate:modelValue":o[1]||(o[1]=d=>s(l).original_id=d),placeholder:"请输入原始ID"},null,8,["modelValue"])])]),_:1}),t(a,{label:"小程序码",prop:"qr_code"},{default:i(()=>[e("div",z,[e("div",null,[t(I,{modelValue:s(l).qr_code,"onUpdate:modelValue":o[2]||(o[2]=d=>s(l).qr_code=d),limit:1},null,8,["modelValue"])]),o[11]||(o[11]=e("div",{class:"form-tips"},"建议尺寸:宽400px*高400px。jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[14]||(o[14]=e("div",{class:"font-medium mb-7"},"开发者ID",-1)),t(a,{label:"AppID",prop:"app_id"},{default:i(()=>[e("div",H,[t(m,{modelValue:s(l).app_id,"onUpdate:modelValue":o[3]||(o[3]=d=>s(l).app_id=d),placeholder:"请输入AppID"},null,8,["modelValue"])])]),_:1}),t(a,{label:"AppSecret",prop:"app_secret"},{default:i(()=>[e("div",L,[t(m,{modelValue:s(l).app_secret,"onUpdate:modelValue":o[4]||(o[4]=d=>s(l).app_secret=d),placeholder:"请输入AppSecret"},null,8,["modelValue"])])]),_:1}),t(a,null,{default:i(()=>[...o[13]||(o[13]=[e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->开发者ID,设置AppID和AppSecret ",-1)])]),_:1})]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[25]||(o[25]=e("div",{class:"font-medium mb-7"},"服务器域名",-1)),t(a,{label:"request合法域名",prop:"appId"},{default:i(()=>[e("div",Q,[e("div",X,[e("div",Y,[t(m,{modelValue:s(l).request_domain,"onUpdate:modelValue":o[5]||(o[5]=d=>s(l).request_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[15]||(o[15]=[_("复制",-1)])]),_:1})),[[f,s(l).request_domain]])]),o[16]||(o[16]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写https协议域名 ",-1))])]),_:1}),t(a,{label:"socket合法域名"},{default:i(()=>[e("div",Z,[e("div",$,[e("div",h,[t(m,{modelValue:s(l).socket_domain,"onUpdate:modelValue":o[6]||(o[6]=d=>s(l).socket_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[17]||(o[17]=[_("复制",-1)])]),_:1})),[[f,s(l).socket_domain]])]),o[18]||(o[18]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写wss协议域名 ",-1))])]),_:1}),t(a,{label:"uploadFile合法域名"},{default:i(()=>[e("div",oo,[e("div",eo,[e("div",lo,[t(m,{modelValue:s(l).upload_file_domain,"onUpdate:modelValue":o[7]||(o[7]=d=>s(l).upload_file_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[19]||(o[19]=[_("复制",-1)])]),_:1})),[[f,s(l).upload_file_domain]])]),o[20]||(o[20]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写https协议域名 ",-1))])]),_:1}),t(a,{label:"downloadFile合法域名"},{default:i(()=>[e("div",to,[e("div",so,[e("div",io,[t(m,{modelValue:s(l).download_file_domain,"onUpdate:modelValue":o[8]||(o[8]=d=>s(l).download_file_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[21]||(o[21]=[_("复制",-1)])]),_:1})),[[f,s(l).download_file_domain]])]),o[22]||(o[22]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写https协议域名 ",-1))])]),_:1}),t(a,{label:"udp合法域名"},{default:i(()=>[e("div",ao,[e("div",mo,[e("div",no,[t(m,{modelValue:s(l).udp_domain,"onUpdate:modelValue":o[9]||(o[9]=d=>s(l).udp_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[23]||(o[23]=[_("复制",-1)])]),_:1})),[[f,s(l).udp_domain]])]),o[24]||(o[24]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写udp协议域名 ",-1))])]),_:1})]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[28]||(o[28]=e("div",{class:"font-medium mb-7"},"业务域名",-1)),t(a,{label:"业务域名"},{default:i(()=>[e("div",po,[e("div",ro,[e("div",uo,[t(m,{modelValue:s(l).business_domain,"onUpdate:modelValue":o[10]||(o[10]=d=>s(l).business_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[26]||(o[26]=[_("复制",-1)])]),_:1})),[[f,s(l).business_domain]])]),o[27]||(o[27]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->业务域名,填写业务域名 ",-1))])]),_:1})]),_:1})]),_:1},8,["model","label-width"]),r((n(),u(y,null,{default:i(()=>[t(p,{type:"primary",onClick:k},{default:i(()=>[...o[29]||(o[29]=[_("保存",-1)])]),_:1})]),_:1})),[[A,["channel.mnp_settings/setConfig"]]])])}}});export{ve as default}; +import{_ as C}from"./index-j275bAO5.js";import{K as E,J as S,B,C as F,i as N,D as R}from"./element-plus-DFTWCWyi.js";import{_ as j}from"./picker-DzCeqD7m.js";import{g as J,s as W}from"./weapp-zf27P1tb.js";import{e as G}from"./index--WnM67ZH.js";import{f as g,as as x,ak as n,I as K,a as t,aN as i,J as e,aP as r,G as u,O as _}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,r as M,q as O}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-SocYjCJ1.js";import"./index-CH2au-Zf.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./index-BtiRSS_3.js";import"./index-C6BRrxYh.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-B0kKUfF_.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const P={class:"w-80"},T={class:"w-80"},z={class:"flex-1"},H={class:"w-80"},L={class:"w-80"},Q={class:"flex-1 min-w-0"},X={class:"sm:flex"},Y={class:"mr-4 sm:w-80 flex"},Z={class:"flex-1 min-w-0"},$={class:"sm:flex"},h={class:"mr-4 sm:w-80 flex"},oo={class:"flex-1 min-w-0"},eo={class:"sm:flex"},lo={class:"mr-4 sm:w-80 flex"},to={class:"flex-1 min-w-0"},so={class:"sm:flex"},io={class:"mr-4 sm:w-80 flex"},ao={class:"flex-1 min-w-0"},mo={class:"sm:flex"},no={class:"mr-4 sm:w-80 flex"},po={class:"flex-1 min-w-0"},ro={class:"sm:flex"},uo={class:"mr-4 sm:w-80 flex"},_o=g({name:"weappConfig"}),ve=g({..._o,setup(fo){const c=G(),l=M({name:"",original_id:"",qr_code:"",app_id:"",app_secret:"",business_domain:"",download_file_domain:"",request_domain:"",socket_domain:"",tcpDomain:"",udp_domain:"",upload_file_domain:""}),w=O(),D={app_id:[{required:!0,message:"请输入AppID",trigger:["blur","change"]}],app_secret:[{required:!0,message:"请输入AppSecret",trigger:["blur","change"]}]},V=async()=>{const v=await J();for(const o in l)l[o]=v[o]},k=async()=>{var v;await((v=w.value)==null?void 0:v.validate()),await W(l),V()};return V(),(v,o)=>{const q=E,b=S,m=F,a=B,I=j,p=N,U=R,y=C,f=x("copy"),A=x("perms");return n(),K("div",null,[t(b,{class:"!border-none",shadow:"never"},{default:i(()=>[t(q,{type:"warning",title:"温馨提示:填写微信小程序开发配置,请前往微信公众平台申请小程序并完成认证",closable:!1,"show-icon":""})]),_:1}),t(U,{ref_key:"formRef",ref:w,model:s(l),rules:D,"label-width":s(c).isMobile?"80px":"160px"},{default:i(()=>[t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[12]||(o[12]=e("div",{class:"font-medium mb-7"},"微信小程序",-1)),t(a,{label:"小程序名称",prop:"name"},{default:i(()=>[e("div",P,[t(m,{modelValue:s(l).name,"onUpdate:modelValue":o[0]||(o[0]=d=>s(l).name=d),placeholder:"请输入小程序名称"},null,8,["modelValue"])])]),_:1}),t(a,{label:"原始ID",prop:"original_id"},{default:i(()=>[e("div",T,[t(m,{modelValue:s(l).original_id,"onUpdate:modelValue":o[1]||(o[1]=d=>s(l).original_id=d),placeholder:"请输入原始ID"},null,8,["modelValue"])])]),_:1}),t(a,{label:"小程序码",prop:"qr_code"},{default:i(()=>[e("div",z,[e("div",null,[t(I,{modelValue:s(l).qr_code,"onUpdate:modelValue":o[2]||(o[2]=d=>s(l).qr_code=d),limit:1},null,8,["modelValue"])]),o[11]||(o[11]=e("div",{class:"form-tips"},"建议尺寸:宽400px*高400px。jpg,jpeg,png格式",-1))])]),_:1})]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[14]||(o[14]=e("div",{class:"font-medium mb-7"},"开发者ID",-1)),t(a,{label:"AppID",prop:"app_id"},{default:i(()=>[e("div",H,[t(m,{modelValue:s(l).app_id,"onUpdate:modelValue":o[3]||(o[3]=d=>s(l).app_id=d),placeholder:"请输入AppID"},null,8,["modelValue"])])]),_:1}),t(a,{label:"AppSecret",prop:"app_secret"},{default:i(()=>[e("div",L,[t(m,{modelValue:s(l).app_secret,"onUpdate:modelValue":o[4]||(o[4]=d=>s(l).app_secret=d),placeholder:"请输入AppSecret"},null,8,["modelValue"])])]),_:1}),t(a,null,{default:i(()=>[...o[13]||(o[13]=[e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->开发者ID,设置AppID和AppSecret ",-1)])]),_:1})]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[25]||(o[25]=e("div",{class:"font-medium mb-7"},"服务器域名",-1)),t(a,{label:"request合法域名",prop:"appId"},{default:i(()=>[e("div",Q,[e("div",X,[e("div",Y,[t(m,{modelValue:s(l).request_domain,"onUpdate:modelValue":o[5]||(o[5]=d=>s(l).request_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[15]||(o[15]=[_("复制",-1)])]),_:1})),[[f,s(l).request_domain]])]),o[16]||(o[16]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写https协议域名 ",-1))])]),_:1}),t(a,{label:"socket合法域名"},{default:i(()=>[e("div",Z,[e("div",$,[e("div",h,[t(m,{modelValue:s(l).socket_domain,"onUpdate:modelValue":o[6]||(o[6]=d=>s(l).socket_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[17]||(o[17]=[_("复制",-1)])]),_:1})),[[f,s(l).socket_domain]])]),o[18]||(o[18]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写wss协议域名 ",-1))])]),_:1}),t(a,{label:"uploadFile合法域名"},{default:i(()=>[e("div",oo,[e("div",eo,[e("div",lo,[t(m,{modelValue:s(l).upload_file_domain,"onUpdate:modelValue":o[7]||(o[7]=d=>s(l).upload_file_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[19]||(o[19]=[_("复制",-1)])]),_:1})),[[f,s(l).upload_file_domain]])]),o[20]||(o[20]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写https协议域名 ",-1))])]),_:1}),t(a,{label:"downloadFile合法域名"},{default:i(()=>[e("div",to,[e("div",so,[e("div",io,[t(m,{modelValue:s(l).download_file_domain,"onUpdate:modelValue":o[8]||(o[8]=d=>s(l).download_file_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[21]||(o[21]=[_("复制",-1)])]),_:1})),[[f,s(l).download_file_domain]])]),o[22]||(o[22]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写https协议域名 ",-1))])]),_:1}),t(a,{label:"udp合法域名"},{default:i(()=>[e("div",ao,[e("div",mo,[e("div",no,[t(m,{modelValue:s(l).udp_domain,"onUpdate:modelValue":o[9]||(o[9]=d=>s(l).udp_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[23]||(o[23]=[_("复制",-1)])]),_:1})),[[f,s(l).udp_domain]])]),o[24]||(o[24]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->服务器域名,填写udp协议域名 ",-1))])]),_:1})]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:i(()=>[o[28]||(o[28]=e("div",{class:"font-medium mb-7"},"业务域名",-1)),t(a,{label:"业务域名"},{default:i(()=>[e("div",po,[e("div",ro,[e("div",uo,[t(m,{modelValue:s(l).business_domain,"onUpdate:modelValue":o[10]||(o[10]=d=>s(l).business_domain=d),disabled:""},null,8,["modelValue"])]),r((n(),u(p,null,{default:i(()=>[...o[26]||(o[26]=[_("复制",-1)])]),_:1})),[[f,s(l).business_domain]])]),o[27]||(o[27]=e("div",{class:"form-tips"}," 小程序账号登录微信公众平台,点击开发>开发设置->业务域名,填写业务域名 ",-1))])]),_:1})]),_:1})]),_:1},8,["model","label-width"]),r((n(),u(y,null,{default:i(()=>[t(p,{type:"primary",onClick:k},{default:i(()=>[...o[29]||(o[29]=[_("保存",-1)])]),_:1})]),_:1})),[[A,["channel.mnp_settings/setConfig"]]])])}}});export{ve as default}; diff --git a/server/public/admin/assets/weapp-BTxqP8mz.js b/server/public/admin/assets/weapp-zf27P1tb.js similarity index 68% rename from server/public/admin/assets/weapp-BTxqP8mz.js rename to server/public/admin/assets/weapp-zf27P1tb.js index 3a83525a..48bbabaf 100644 --- a/server/public/admin/assets/weapp-BTxqP8mz.js +++ b/server/public/admin/assets/weapp-zf27P1tb.js @@ -1 +1 @@ -import{r as n}from"./index-Nt5zMHcc.js";function s(t){return n.post({url:"/channel.mnp_settings/setConfig",params:t})}function r(){return n.get({url:"/channel.mnp_settings/getConfig"})}export{r as g,s}; +import{r as n}from"./index--WnM67ZH.js";function s(t){return n.post({url:"/channel.mnp_settings/setConfig",params:t})}function r(){return n.get({url:"/channel.mnp_settings/getConfig"})}export{r as g,s}; diff --git a/server/public/admin/assets/website-D92RBx7y.js b/server/public/admin/assets/website-HcLkfBpP.js similarity index 91% rename from server/public/admin/assets/website-D92RBx7y.js rename to server/public/admin/assets/website-HcLkfBpP.js index d3c340f9..bff5575b 100644 --- a/server/public/admin/assets/website-D92RBx7y.js +++ b/server/public/admin/assets/website-HcLkfBpP.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function i(){return t.get({url:"/setting.web.web_setting/getCopyright"})}function n(e){return t.post({url:"/setting.web.web_setting/setCopyright",params:e})}function r(){return t.get({url:"/setting.web.web_setting/getWebsite"})}function g(e){return t.post({url:"/setting.web.web_setting/setWebsite",params:e})}function o(){return t.get({url:"/setting.web.web_setting/getAgreement"})}function u(e){return t.post({url:"/setting.web.web_setting/setAgreement",params:e})}function b(){return t.get({url:"/setting.web.web_setting/getSiteStatistics"})}function w(e){return t.post({url:"/setting.web.web_setting/setSiteStatistics",params:e})}export{r as a,g as b,o as c,u as d,b as e,w as f,i as g,n as s}; +import{r as t}from"./index--WnM67ZH.js";function i(){return t.get({url:"/setting.web.web_setting/getCopyright"})}function n(e){return t.post({url:"/setting.web.web_setting/setCopyright",params:e})}function r(){return t.get({url:"/setting.web.web_setting/getWebsite"})}function g(e){return t.post({url:"/setting.web.web_setting/setWebsite",params:e})}function o(){return t.get({url:"/setting.web.web_setting/getAgreement"})}function u(e){return t.post({url:"/setting.web.web_setting/setAgreement",params:e})}function b(){return t.get({url:"/setting.web.web_setting/getSiteStatistics"})}function w(e){return t.post({url:"/setting.web.web_setting/setSiteStatistics",params:e})}export{r as a,g as b,o as c,u as d,b as e,w as f,i as g,n as s}; diff --git a/server/public/admin/assets/wx_oa-BOc4Brkk.js b/server/public/admin/assets/wx_oa-CN0ZaZdj.js similarity index 93% rename from server/public/admin/assets/wx_oa-BOc4Brkk.js rename to server/public/admin/assets/wx_oa-CN0ZaZdj.js index 49157ed1..66db3fd8 100644 --- a/server/public/admin/assets/wx_oa-BOc4Brkk.js +++ b/server/public/admin/assets/wx_oa-CN0ZaZdj.js @@ -1 +1 @@ -import{r as t}from"./index-Nt5zMHcc.js";function a(n){return t.post({url:"/channel.official_account_setting/setConfig",params:n})}function c(){return t.get({url:"/channel.official_account_setting/getConfig"})}function u(){return t.get({url:"/channel.official_account_menu/detail"})}function l(n){return t.post({url:"/channel.official_account_menu/save",params:n})}function o(n){return t.post({url:"/channel.official_account_menu/saveAndPublish",params:n})}function i(n){return t.get({url:"/channel.official_account_reply/lists",params:n})}function r(n){return t.post({url:"/channel.official_account_reply/delete",params:n})}function f(n){return t.post({url:"/channel.official_account_reply/status",params:n})}function s(n){return t.post({url:"/channel.official_account_reply/add",params:n})}function _(n){return t.post({url:"/channel.official_account_reply/edit",params:n})}function p(n){return t.get({url:"/channel.official_account_reply/detail",params:n})}export{o as a,l as b,u as c,i as d,f as e,_ as f,c as g,s as h,p as i,r as o,a as s}; +import{r as t}from"./index--WnM67ZH.js";function a(n){return t.post({url:"/channel.official_account_setting/setConfig",params:n})}function c(){return t.get({url:"/channel.official_account_setting/getConfig"})}function u(){return t.get({url:"/channel.official_account_menu/detail"})}function l(n){return t.post({url:"/channel.official_account_menu/save",params:n})}function o(n){return t.post({url:"/channel.official_account_menu/saveAndPublish",params:n})}function i(n){return t.get({url:"/channel.official_account_reply/lists",params:n})}function r(n){return t.post({url:"/channel.official_account_reply/delete",params:n})}function f(n){return t.post({url:"/channel.official_account_reply/status",params:n})}function s(n){return t.post({url:"/channel.official_account_reply/add",params:n})}function _(n){return t.post({url:"/channel.official_account_reply/edit",params:n})}function p(n){return t.get({url:"/channel.official_account_reply/detail",params:n})}export{o as a,l as b,u as c,i as d,f as e,_ as f,c as g,s as h,p as i,r as o,a as s}; diff --git a/server/public/admin/assets/yeji-4vqdUkps.js b/server/public/admin/assets/yeji-4vqdUkps.js deleted file mode 100644 index 21319334..00000000 --- a/server/public/admin/assets/yeji-4vqdUkps.js +++ /dev/null @@ -1,5 +0,0 @@ -import{P as Pn,Q as Tn,ag as In,W as Mn,L as On,a2 as En,i as Vn,d as Fn,J as Bn,m as Yn,l as Un,M as Hn,N as Wn,R as Jn,r as qn,a4 as Gn,a5 as Zn,X as Xn,e as Kn,V as Qn,E as Ee}from"./element-plus-DFTWCWyi.js";import{s as Z,w as el}from"./@vue/runtime-dom-DDAG46FW.js";import{a as _e}from"./axios-C80V62Fs.js";import{N as tl,x as al,i as B}from"./@element-plus/icons-vue-HOEUG8sr.js";import{H as ee}from"./vue-echarts-BNtg2q_G.js";import{h as nl,y as Xe,i as ll,j as ol,k as sl,l as il,m as rl,n as dl,o as ul,p as cl}from"./stats-BCrGkFwR.js";import{d as _l}from"./finance-L1-WPbJt.js";import{l as va}from"./tcm-DCW3HTOw.js";import{h as pl}from"./perm-DkIPMPyD.js";import{f as ml,w as vl,b as fl,ak as o,I as u,J as a,a as d,aN as _,F as w,ap as E,G as k,aP as X,O as c,H as v,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{Q as r,o as ut}from"./@vue/shared-mAAVTE9n.js";import{y as C,n as f}from"./@vue/reactivity-DiY1c2vO.js";import{_ as yl}from"./index-Nt5zMHcc.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const hl={class:"yeji-page"},bl={class:"filter-surface"},gl={class:"filter-row filter-row--top"},wl={class:"filter-field"},kl={class:"channel-opt-row"},jl={class:"opt-name"},xl={class:"opt-count"},Nl={class:"filter-field filter-field--wide"},Sl={class:"filter-select filter-select--dept filter-dept-tree-wrap"},Dl={class:"filter-field filter-field--date-top"},Cl={class:"filter-actions"},Ll={class:"filter-quick"},zl={class:"date-pills",role:"group","aria-label":"快捷日期"},$l=["onClick"],Al={class:"doctor-daily-card__head"},Rl={class:"doctor-daily-card__title-block"},Pl={key:0,class:"doctor-daily-card__range"},Tl={class:"doctor-daily-card__tools"},Il={key:0,class:"leaderboards-wrap"},Ml={class:"leaderboard-hint"},Ol={class:"muted"},El={class:"tables-wrap"},Vl={key:0,class:"yeji-table leaderboard-table"},Fl={class:"yeji-table__header"},Bl={key:0,class:"leaderboard-sub"},Yl={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"排行榜,可横向滚动"},Ul={class:"yeji-table__body yeji-table__body--leaderboard"},Hl=["onClick"],Wl={class:"col-rank"},Jl={class:"col-abbr"},ql={class:"col-name"},Gl={class:"col-consult"},Zl={class:"col-deal"},Xl={class:"col-assign"},Kl=["onClick"],Ql={key:0,class:"yeji-lead-cell--link"},eo=["onClick"],to={key:0,class:"yeji-lead-cell--link"},ao=["onClick"],no={key:0,class:"yeji-lead-cell--link"},lo={class:"yeji-table__foot yeji-table__foot--left"},oo={key:0},so={key:0,class:"empty-tip leaderboard-empty"},io={class:"tables-wrap"},ro={key:0,class:"empty-tip"},uo={class:"yeji-table__header"},co={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"业绩数据表,可横向滚动"},_o={class:"yeji-table__body yeji-table__body--data"},po={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},mo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},vo={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},fo={key:0,class:"col-completed col-narrow-head"},yo={class:"yeji-th-label"},ho={style:{"max-width":"340px","line-height":"1.7","font-size":"12px"}},bo={key:1,class:"col-completed col-narrow-head"},go={class:"yeji-th-label"},wo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},ko={key:2,class:"col-completed col-narrow-head"},jo={class:"yeji-th-label"},xo={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},No={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},So=["onClick"],Do={class:"col-dept"},Co=["onClick"],Lo={key:0,class:"yeji-lead-cell--link"},zo=["onClick"],$o={key:0,class:"yeji-lead-cell--link"},Ao=["onClick"],Ro={key:0,class:"yeji-lead-cell--link"},Po=["onClick"],To={key:0,class:"col-completed"},Io=["onClick"],Mo=["onClick"],Oo={key:0,class:"yeji-lead-cell--link"},Eo={key:1,class:"col-completed"},Vo={key:2,class:"col-completed"},Fo={class:"total-row"},Bo=["onClick"],Yo={key:0,class:"col-completed"},Uo=["onClick"],Ho={key:1,class:"col-completed"},Wo={key:2,class:"col-completed"},Jo={class:"yeji-table__foot"},qo={key:0},Go={key:1},Zo={class:"tp-matrix-wrap"},Xo={class:"tp-matrix__title"},Ko={class:"tp-matrix",role:"list"},Qo={class:"tp-matrix-card__head"},es={class:"tp-matrix-card__titles"},ts={key:0,class:"tp-matrix-card__parent"},as={class:"tp-matrix-card__name"},ns={class:"tp-matrix-card__target"},ls={class:"tp-matrix-card__table"},os={class:"tp-matrix-card__num"},ss={key:0},is={class:"tp-matrix-card__num"},rs={key:1},ds={class:"tp-matrix-card__num"},us={class:"tp-matrix-card__num tp-matrix-card__num--hot"},cs={class:"tp-matrix-card__num"},_s={class:"yeji-charts-stack"},ps={key:0,class:"yeji-chart-block"},ms={class:"yeji-chart-block__title"},vs={key:0,class:"yeji-chart-block__sub"},fs={class:"yeji-chart-panel"},ys={class:"yeji-chart-panel"},hs={class:"yeji-chart-panel"},bs={class:"yeji-chart-panel"},gs={class:"yeji-chart-panel"},ws={key:0,class:"yeji-chart-block"},ks={class:"yeji-chart-block__title"},js={class:"yeji-chart-panel"},xs={class:"yeji-chart-panel"},Ns={class:"yeji-chart-block__title"},Ss={key:0,class:"yeji-chart-block__sub"},Ds={class:"yeji-chart-block__sub yeji-chart-block__sub--muted"},Cs={class:"yeji-chart-panel"},Ls={class:"yeji-order-drawer__header"},zs={class:"yeji-order-drawer__heading"},$s={class:"yeji-order-drawer__sub"},As={class:"yeji-order-drawer__shell"},Rs={class:"yeji-order-drawer__stats",role:"region","aria-label":"订单汇总"},Ps={class:"yeji-order-drawer__stat-card"},Ts={class:"yeji-order-drawer__stat-value"},Is={class:"yeji-order-drawer__stat-card"},Ms={class:"yeji-order-drawer__stat-value"},Os={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--total"},Es={class:"yeji-order-drawer__stat-label"},Vs={class:"yeji-order-drawer__stat-note"},Fs={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},Bs={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},Ys={class:"yeji-order-drawer__stat-label"},Us={class:"yeji-order-drawer__stat-note"},Hs={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},Ws={key:1,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},Js={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},qs={key:2,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--muted"},Gs={class:"yeji-order-drawer__stat-value"},Zs={class:"yeji-order-drawer__body"},Xs={key:0,class:"yeji-order-appt-lines"},Ks={class:"yeji-order-appt-line"},Qs={class:"yeji-order-appt-line"},ei={key:0,class:"yeji-order-appt-sub"},ti={class:"yeji-order-appt-line"},ai={class:"yeji-order-appt-line yeji-order-appt-line--channel"},ni={class:"yeji-order-appt-channel-text"},li={key:0,class:"yeji-order-appt-sub"},oi={key:1,class:"yeji-order-appt-empty"},si={class:"yeji-order-amt"},ii={class:"yeji-order-drawer__pager"},ri={class:"yeji-unassigned-dialog__head"},di={class:"yeji-unassigned-dialog__sub"},ui={key:0,class:"yeji-unassigned-dialog__note"},ci={class:"yeji-unassigned-dialog__body"},_i={class:"yeji-unassigned-dialog__head"},pi={class:"yeji-unassigned-dialog__sub"},mi={key:0,class:"yeji-unassigned-dialog__note"},vi={class:"yeji-unassigned-dialog__body"},fi={key:2,class:"yeji-leadlines-dialog__pager"},yi={class:"yeji-unassigned-dialog__head"},hi={class:"yeji-unassigned-dialog__sub"},bi={key:0,class:"yeji-unassigned-dialog__note"},gi={class:"yeji-unassigned-dialog__body"},wi={key:2,class:"yeji-leadlines-dialog__pager"},ki={class:"yeji-unassigned-dialog__head"},ji={class:"yeji-unassigned-dialog__sub"},xi={key:0,class:"yeji-unassigned-dialog__note"},Ni={class:"yeji-unassigned-dialog__body"},Si=["onClick","onKeydown"],fa=30,Di="stats.yejiStats/tabDoctor",Ci="stats.yejiStats/tabLeaderboard",Li="stats.yejiStats/tabZyyt",zi="stats.yejiStats/tabTargetMatrix",$i=ml({__name:"yeji",setup(Ai){function Ke(t){return t.some(e=>pl([e]))}const ya={value:"id",label:"name",children:"children"};function ha(t){if(!t.length)return[];const e=new Map;for(const h of t)e.set(h.id,{...h,children:[]});const n=[];for(const h of t){const g=e.get(h.id),j=Number(h.pid);j>0&&e.has(j)?e.get(j).children.push(g):n.push(g)}const s=h=>{var g;(g=h.children)!=null&&g.length?h.children.forEach(s):delete h.children};n.forEach(s);const i=h=>{var g;h.sort((j,Y)=>{const M=j.name.includes("中心")?-1:1,p=Y.name.includes("中心")?-1:1;return M!==p?M-p:j.id-Y.id});for(const j of h)(g=j.children)!=null&&g.length&&i(j.children)};return i(n),n}const te=f(!1),ke=f([]),ct=f(!1),ba=S(()=>ha(ke.value)),R=f([]),Qe=f([]),_t=f(!1),x=f(""),U=f(null),ie=f([]);function pt(t,e){if(!t||typeof t!="object")return e;for(const n of Object.keys(t)){const s=parseInt(n,10);!Number.isNaN(s)&&s>=2&&(e=Math.max(e,s))}return e}function ga(t){var n;let e=0;for(const s of t){for(const i of s.rows)e=pt(i.revisit_slots,e);e=pt((n=s.total)==null?void 0:n.revisit_slots,e)}return e}const mt=S(()=>{const t=Math.min(ga(ie.value),fa);return t<2?[]:Array.from({length:t-1},(e,n)=>n+2)});function wa(t){if(!t.er_center_subtree)return 0;let e=0;for(const n of t.rows)e=pt(n.revisit_slots,e);return e}function Pt(t){const e=Math.min(wa(t),fa);return e<2?[]:Array.from({length:e-1},(n,s)=>s+2)}function et(t){if(t===2)return"复诊2";const e=["三","四","五","六","七","八","九","十"];return t>=3&&t<=10?`复诊${e[t-3]}`:`复诊${t}`}function ae(t,e){const n=t==null?void 0:t.revisit_slots;if(!n||typeof n!="object")return 0;const s=n[e]??n[String(e)],i=Number(s);return Number.isFinite(i)?i:0}const N=f(null),re=f(!1),vt=f(!1),je=f(!1),Tt=f(""),Ve=f(""),xe=f([]),ft=f(!1),Ne=f(!1),It=f(""),Fe=f(""),Se=f([]),Mt=f(null),yt=f(!1),pe=f(!1),Ot=f(""),Be=f(""),De=f([]),Ye=f(0),Ue=f(1),tt=f(20),Et=f(null),at=f(!1),me=f(!1),ht=f(""),Ce=f(""),de=f([]),Le=f(0),ve=f(1),ze=f(20),bt=f(null),ka=S(()=>de.value.some(t=>String(t.channel_source??"")!=="")),ue=f("zyyt"),H=S(()=>Ke([Di,"stats.doctorDailyStats/overview"])),ne=S(()=>Ke([Ci,"stats.yejiStats/leaderboard"])),$e=S(()=>Ke([Li,"stats.yejiStats/multi","stats.yejiStats/overview"])),He=S(()=>Ke([zi,"stats.yejiStats/targetMatrix","stats.yejiStats/multi"])),ja=S(()=>H.value||ne.value||$e.value||He.value);function We(){return $e.value?"zyyt":H.value?"doctor":ne.value?"leaderboard":He.value?"zyyt_matrix":"zyyt"}vl(ue,t=>{(t==="doctor"&&!H.value||t==="leaderboard"&&!ne.value||t==="zyyt"&&!$e.value||t==="zyyt_matrix"&&!He.value)&&(ue.value=We())});const Vt=S(()=>{var t;return(((t=N.value)==null?void 0:t.leaderboards)??[]).filter(e=>e.rows.length>0)});function Ft(t){return t.rows.some(e=>e.dept_id>0&&(Number(e.lead_count)>0||Number(e.consult_count)>0||Number(e.deal_order_count)>0||Number(e.performance_amount)>0||Number(e.completed_performance_amount)>0))}const Ae=f(!1),V=f([]),ce=f({}),Re=f(null),nt=S(()=>{const t=Re.value;return!(t!=null&&t.start)||!(t!=null&&t.end)?"":t.start===t.end?`区间 ${t.start}`:`区间 ${t.start} ~ ${t.end}`}),gt=S(()=>V.value.some(t=>Number(t.deal_amount??0)>0)),wt=S(()=>V.value.some(t=>Number(t.system_prescription_count??0)>0||Number(t.manual_prescription_count??0)>0)),xa=S(()=>H.value?gt.value||wt.value||kt.value||jt.value||xt.value:!1),Na=S(()=>{if(xa.value)return!0;if($e.value){for(const t of ie.value)if(Ft(t))return!0}return!!(ne.value&&Vt.value.length>0)}),kt=S(()=>{const t=ce.value;return Number(t.appointment_completed??0)+Number(t.appointment_missed??0)+Number(t.appointment_cancelled??0)>0}),Sa=S(()=>{const t=ce.value,e=[{value:Number(t.appointment_completed??0),name:"挂号完成"},{value:Number(t.appointment_missed??0),name:"过号"},{value:Number(t.appointment_cancelled??0),name:"取消"}].filter(n=>n.value>0);return{color:["#0d9488","#d97706","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}: {c} ({d}%)"},legend:{bottom:0,type:"scroll",textStyle:{fontSize:10}},series:[{name:"挂号",type:"pie",radius:["42%","68%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} -{c}`,fontSize:11},data:e}]}}),jt=S(()=>V.value.filter(t=>Number(t.deal_order_count??0)>0&&Number(t.deal_amount??0)>0).length>=2),Da=S(()=>{const t=V.value.filter(s=>Number(s.deal_order_count??0)>0&&Number(s.deal_amount??0)>0),e=Math.max(...t.map(s=>Number(s.deal_amount)),1),n=t.map(s=>{const i=Number(s.deal_amount);return{name:String(s.doctor_name||"—"),value:[Number(s.deal_order_count),i],symbolSize:12+Math.sqrt(i/e)*26}});return{color:["#2563eb"],tooltip:{trigger:"item",formatter:s=>{var h;const i=(h=s.data)==null?void 0:h.value;return Array.isArray(i)?`${s.data.name}
接诊诊单:${i[0]}
金额:${Number(i[1]).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`:""}},grid:{left:48,right:24,top:28,bottom:32,containLabel:!0},xAxis:{type:"value",name:"接诊诊单",nameLocation:"middle",nameGap:28,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},yAxis:{type:"value",name:"成交金额",nameLocation:"middle",nameGap:40,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},series:[{type:"scatter",data:n}]}}),xt=S(()=>V.value.filter(e=>Number(e.deal_amount??0)+Number(e.deal_order_count??0)+Number(e.system_prescription_count??0)+Number(e.manual_prescription_count??0)>0).length>=2),Ca=S(()=>{const t=[...V.value].filter(p=>Number(p.deal_amount??0)+Number(p.deal_order_count??0)+Number(p.system_prescription_count??0)+Number(p.manual_prescription_count??0)>0).sort((p,P)=>Number(P.deal_amount)-Number(p.deal_amount)).slice(0,5);if(t.length<2)return{radar:{indicator:[]},series:[{type:"radar",data:[]}]};const e=p=>{const P=String(p.doctor_name||"—");return P.length>7?`${P.slice(0,7)}…`:P},n=p=>Number(p.system_prescription_count??0)+Number(p.manual_prescription_count??0),s=p=>{const P=Number(p.avg_deal_amount);if(Number.isFinite(P)&&P>0)return P;const $=Number(p.deal_order_count);return $>0?Number(p.deal_amount)/$:0},i=Math.max(...t.map(p=>Number(p.deal_amount)),1e-9),h=Math.max(...t.map(p=>Number(p.deal_order_count)),1e-9),g=Math.max(...t.map(n),1e-9),j=Math.max(...t.map(p=>Number(p.appointment_completed??0)),1e-9),Y=Math.max(...t.map(s),1e-9),M=t.map(p=>({name:e(p),value:[Number(p.deal_amount)/i*100,Number(p.deal_order_count)/h*100,n(p)/g*100,Number(p.appointment_completed??0)/j*100,s(p)/Y*100]}));return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b"],tooltip:{trigger:"item"},legend:{bottom:0,type:"scroll",textStyle:{fontSize:10}},radar:{indicator:[{name:"成交金额",max:100},{name:"接诊诊单",max:100},{name:"开方量",max:100},{name:"挂号完成",max:100},{name:"客单价",max:100}],radius:"58%",center:["50%","48%"],splitNumber:4,axisName:{fontSize:10,color:"#64748b"}},series:[{type:"radar",data:M,emphasis:{lineStyle:{width:3}}}]}}),La=S(()=>{const t=[...V.value].filter(s=>Number(s.deal_amount??0)>0).sort((s,i)=>Number(i.deal_amount)-Number(s.deal_amount)).slice(0,20),e=t.map(s=>{const i=String(s.doctor_name||"—");return i.length>10?`${i.slice(0,10)}…`:i}),n=t.map(s=>Number(s.deal_amount??0));return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${s.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`},grid:{left:8,right:16,top:28,bottom:8,containLabel:!0},xAxis:{type:"value",axisLabel:{fontSize:11},splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:[...e].reverse(),axisLabel:{fontSize:11}},series:[{name:"成交金额",type:"bar",data:[...n].reverse(),barMaxWidth:22,itemStyle:{borderRadius:[0,6,6,0]}}]}}),za=S(()=>{const t=[...V.value].filter(n=>Number(n.system_prescription_count??0)+Number(n.manual_prescription_count??0)>0).sort((n,s)=>Number(s.system_prescription_count??0)+Number(s.manual_prescription_count??0)-(Number(n.system_prescription_count??0)+Number(n.manual_prescription_count??0))).slice(0,14),e=t.map(n=>{const s=String(n.doctor_name||"—");return s.length>6?`${s.slice(0,6)}…`:s});return{tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},legend:{top:0,textStyle:{fontSize:11}},grid:{left:44,right:16,top:32,bottom:e.length>10?72:28},xAxis:{type:"category",data:e,axisLabel:{rotate:e.length>8?32:0,fontSize:10}},yAxis:{type:"value",splitLine:{lineStyle:{type:"dashed",opacity:.6}}},series:[{name:"系统开方",type:"bar",stack:"rx",barMaxWidth:18,data:t.map(n=>Number(n.system_prescription_count??0)),itemStyle:{color:"#2563eb"}},{name:"手动开方",type:"bar",stack:"rx",barMaxWidth:18,data:t.map(n=>Number(n.manual_prescription_count??0)),itemStyle:{color:"#d97706"}}]}});function $a(){var e,n;const t={};if(x.value&&(t.channel_code=x.value),(e=U.value)!=null&&e[0]&&((n=U.value)!=null&&n[1]))t.start_date=U.value[0],t.end_date=U.value[1];else{const s=dt(new Date);t.start_date=s,t.end_date=s}return t}function Bt(t){return Number(t??0).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function Aa(t){const e=ce.value,n=[];return t.columns.forEach((s,i)=>{if(i===0){n[i]="合计";return}switch(s.property){case"system_prescription_count":n[i]=String(e.system_prescription_count??0);break;case"manual_prescription_count":n[i]=String(e.manual_prescription_count??0);break;case"deal_amount":n[i]=`¥ ${Bt(e.deal_amount)}`;break;case"deal_order_count":n[i]=String(e.deal_order_count??0);break;case"appointment_completed":n[i]=String(e.appointment_completed??0);break;case"appointment_missed":n[i]=String(e.appointment_missed??0);break;case"appointment_cancelled":n[i]=String(e.appointment_cancelled??0);break;default:n[i]=""}}),n}async function Nt(){if(!H.value){V.value=[],ce.value={},Re.value=null;return}Ae.value=!0;try{const t=await nl($a());V.value=(t==null?void 0:t.rows)??[],ce.value=(t==null?void 0:t.total)??{},t!=null&&t.start_date&&(t!=null&&t.end_date)&&(Re.value={start:t.start_date,end:t.end_date})}catch(t){if(_e.isCancel(t))return;V.value=[],ce.value={},Re.value=null}finally{Ae.value=!1}}const le=f(!1),fe=f(!1),Je=f(""),qe=f(""),ye=f([]),lt=f(0),K=f(1),ot=f(15),G=f("channel"),W=f(null),Ge=f(null),oe=f(null),Yt=S(()=>{const t=oe.value;if(!t)return null;const e=t.stats_order_amount_performance??t.stats_order_amount_not_cancelled;if(e==null||e==="")return null;const n=Number(e);return Number.isFinite(n)?n:null}),Ut=S(()=>{const t=oe.value;if(!t||t.stats_yeji_consult_count===void 0||t.stats_yeji_consult_count===null)return null;const e=Number(t.stats_yeji_consult_count);return Number.isFinite(e)?e:null}),Ra=S(()=>ye.value.reduce((t,e)=>t+Number(e.amount??0),0)),Ht=S(()=>!!x.value&&le.value),St=S(()=>{var e;const t=x.value;if(!t)return"";for(const n of Qe.value){const s=(e=n.channels)==null?void 0:e.find(i=>i.channel_code===t);if(s!=null&&s.channel_name)return String(s.channel_name)}return t}),Pa=S(()=>{const t=W.value;return t&&G.value==="total"?Number.isFinite(t.channelAmount)?t.channelAmount:null:Yt.value}),Pe=f(null),st=f(!1);function Ta(){const t=new Date;return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`}function Ia(t){const[e,n]=t.split("-").map(Number);return new Date(e,n,0).getDate()}async function Ma(){var t,e,n,s;if(!He.value){Pe.value=null;return}st.value=!0,Pe.value=null;try{let i=function(y,L=0){const z=[];for(const A of y??[])z.push({node:A,depth:L}),z.push(...i(A.children??[],L+1));return z},h=function(y){const L=ke.value.find(q=>Number(q.id)===y);if(!L)return"";const z=Number(L.pid);if(!z)return"";const A=ke.value.find(q=>Number(q.id)===z);return A!=null&&A.name?String(A.name):""},g=function(y){const L=[],z=[y];for(;z.length;){const A=z.shift();for(const q of ke.value)Number(q.pid)===A&&(L.push(q.id),z.push(q.id))}return L},j=function(y,L){const z=new Map;for(const A of(y==null?void 0:y.rows)??[])z.set(Number(A.dept_id),Number(A[L]??0));return z};const Y=Ta(),M=await _l({year_month:Y}),p=(M==null?void 0:M.rows)??[];if(!p.length)return;const $=i(p).filter(y=>y.depth>=1&&Number(y.node.target_amount)>0).map(y=>y.node);if(!$.length)return;const Q=new Set,T=$.map(y=>{const L=Number(y.dept_id),z=g(L),A=z.length?z:[L];return A.forEach(q=>Q.add(q)),{dept_id:L,dept_name:String(y.dept_name),target_amount:Number(y.target_amount),totalIds:A}});if(!Q.size)return;const Ie=Qe.value.flatMap(y=>y.channels),J=(t=Ie.find(y=>y.channel_name.includes("自媒体1")))==null?void 0:t.channel_code,ge=(e=Ie.find(y=>y.channel_name.includes("自媒体3")))==null?void 0:e.channel_code,Me=(n=Ie.find(y=>y.channel_name.includes("自媒体4")))==null?void 0:n.channel_code,Oe=Array.from(Q).join(","),[we,F,l,b]=await Promise.all([Xe({dept_ids:Oe}),J?Xe({dept_ids:Oe,channel_code:J}):Promise.resolve(null),ge?Xe({dept_ids:Oe,channel_code:ge}):Promise.resolve(null),Me?Xe({dept_ids:Oe,channel_code:Me}):Promise.resolve(null)]),m=y=>{var L;return((y==null?void 0:y.tables)??[]).find(z=>String(z.label).includes("月"))??((L=y==null?void 0:y.tables)==null?void 0:L[0])},O=y=>{var L,z;return((y==null?void 0:y.tables)??[]).find(A=>String(A.label).includes("昨"))??((z=y==null?void 0:y.tables)==null?void 0:z[((L=y==null?void 0:y.tables)==null?void 0:L.length)-1])},ua=j(m(we),"performance_amount"),Nn=j(O(we),"performance_amount"),ca=F?j(m(F),"completed_performance_amount"):null,_a=l?j(m(l),"completed_performance_amount"):null,pa=b?j(m(b),"completed_performance_amount"):null,Ze=(y,L)=>L.reduce((z,A)=>z+(y.get(A)??0),0),At=new Date,Sn=Ia(Y),Dn=At.getDate(),Cn=T.map(y=>{const L=Ze(ua,y.totalIds),z=Ze(Nn,y.totalIds),A=ca?Ze(ca,y.totalIds):null,q=_a?Ze(_a,y.totalIds):null,ma=pa?Ze(pa,y.totalIds):null,Rt=q!==null||ma!==null?(q??0)+(ma??0):null,An=Math.round(y.target_amount*(Dn/Sn)*100)/100,Rn=y.target_amount>0?L/y.target_amount:null;return{dept_id:y.dept_id,dept_name:y.dept_name,parent_dept_name:h(y.dept_id),target_amount:y.target_amount,total_amount:L,yesterday_amount:z,douyin_amount:A&&A>0?A:null,tuifen_amount:Rt&&Rt>0?Rt:null,target_progress:An,completion_rate:Rn}}),Ln=((s=p[0])==null?void 0:s.dept_name)??"",zn=At.getMonth()+1,$n=At.getDate();Pe.value={title:`${Ln}诊金-${zn}.${$n}`,sections:Cn}}catch{}finally{st.value=!1}}const Oa=S(()=>{var e;const t=(e=N.value)==null?void 0:e.leaderboards;return t?t.filter(n=>n.rows.length>0).length:0}),Wt=[{text:"昨天",value:()=>{const t=new Date;return t.setDate(t.getDate()-1),[t,t]}},{text:"最近七天",value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-6),[e,t]}},{text:"本月",value:()=>{const t=new Date;return[new Date(t.getFullYear(),t.getMonth(),1),t]}},{text:"今日",value:()=>{const t=new Date;return[t,t]}},{text:"本周",value:()=>{const t=new Date,e=new Date,n=e.getDay()||7;return e.setDate(e.getDate()-(n-1)),[e,t]}},{text:"上月",value:()=>{const t=new Date,e=new Date(t.getFullYear(),t.getMonth()-1,1),n=new Date(t.getFullYear(),t.getMonth(),0);return[e,n]}}];function Ea(t){const e=t.value();U.value=[dt(e[0]),dt(e[1])],Te()}async function Va(){ct.value=!0;try{const t=await ll();ke.value=(t||[]).sort((e,n)=>{const s=e.name.includes("中心")?-1:1,i=n.name.includes("中心")?-1:1;return s!==i?s-i:e.id-n.id})}catch{}finally{ct.value=!1}}async function Fa(){_t.value=!0;try{const t=await ol(),e=(t==null?void 0:t.groups)||[];Qe.value=e}catch{}finally{_t.value=!1}}async function Jt(t){if(!ne.value){N.value=null;return}re.value=!0;try{const e={start_date:t.start,end_date:t.end};R.value.length>0&&(e.dept_ids=R.value.join(",")),x.value&&(e.channel_code=x.value);const n=await rl(e);N.value={start_date:n.start_date,end_date:n.end_date,channel_code:n.channel_code||"",channel_name:n.channel_name||"",channel_filter_note:n.channel_filter_note||"",range_note:n.range_note||"",leaderboards:n.leaderboards||[]}}catch(e){if(_e.isCancel(e))return;N.value=null}finally{re.value=!1}}async function Te(){if(te.value=!0,N.value=null,!$e.value){ie.value=[],te.value=!1,H.value?Nt():(V.value=[],ce.value={},Re.value=null);return}try{const t={};if(R.value.length>0&&(t.dept_ids=R.value.join(",")),x.value&&(t.channel_code=x.value),U.value&&U.value[0]&&U.value[1]){const[s,i]=U.value,h={...t,start_date:s,end_date:i},g=await sl(h);ie.value=[{label:s===i?s:`${s} ~ ${i}`,start_date:g.start_date,end_date:g.end_date,channel_code:g.channel_code||"",channel_name:g.channel_name||"",channel_group:g.channel_group||"",channel_filter_note:g.channel_filter_note||"",rows:g.rows||[],total:g.total}],await Jt({start:g.start_date,end:g.end_date});return}const e=await Xe(t);ie.value=((e==null?void 0:e.tables)||[]).map(s=>({label:s.label,start_date:s.start_date,end_date:s.end_date,channel_code:s.channel_code||"",channel_name:s.channel_name||"",channel_group:s.channel_group||"",channel_filter_note:s.channel_filter_note||"",rows:s.rows||[],total:s.total}));const n=dt(new Date);await Jt({start:n,end:n})}catch(t){if(_e.isCancel(t))return;const e=t;Ee.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{te.value=!1,H.value?Nt():(V.value=[],ce.value={},Re.value=null)}}function Ba(){R.value=[],U.value=null,x.value="",Te()}function Ya(t){return t<=0?!1:ke.value.some(e=>Number(e.pid)===t)}function Ua(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function it(t){return t==null||!Number.isFinite(Number(t))?"—":Number(t).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function Ha(t){return(K.value-1)*ot.value+t+1}function Wa(t){const e=(t==null?void 0:t.appointment_date)!=null&&String(t.appointment_date)!==""?String(t.appointment_date):"",n=(t==null?void 0:t.period)!=null&&String(t.period)!==""?String(t.period):"",s=(t==null?void 0:t.appointment_time)!=null&&String(t.appointment_time)!==""?String(t.appointment_time):"",i=[n,s].filter(Boolean).join(" ");return e&&i?`${e} ${i}`:e||i||"—"}function qt(t){if(!t)return"";const e=t.channel_dict_value;if(e!=null&&e!==""){const i=Number(e);if(Number.isFinite(i))return String(Math.trunc(i))}const n=t.channel_source;if(n==null)return"";const s=String(n).trim();return s===""||!/^\d+$/.test(s)?"":String(parseInt(s,10))}function Ja(t){if(t==null||t==="")return"—";const e=Number(t);if(Number.isFinite(e)&&e>=1e9&&e<1e15){const s=e<1e12?e*1e3:e,i=new Date(s);if(!Number.isNaN(i.getTime())){const h=i.getFullYear(),g=String(i.getMonth()+1).padStart(2,"0"),j=String(i.getDate()).padStart(2,"0"),Y=String(i.getHours()).padStart(2,"0"),M=String(i.getMinutes()).padStart(2,"0");return`${h}-${g}-${j} ${Y}:${M}`}}const n=String(t);return n.length>=16?n.slice(0,16):n}function Gt(){const t=Ge.value;if(!t)return null;const e={start_time:`${t.start} 00:00:00`,end_time:`${t.end} 23:59:59`,exclude_fulfillment_cancelled:1,yeji_order_drawer:1};return t.mode==="dept"?(e.assistant_dept_id=t.deptId,R.value.length>0&&(e.dept_ids=R.value.join(",")),t.yejiTableRowDeptIds&&t.yejiTableRowDeptIds.length>0&&(e.yeji_table_row_dept_ids=t.yejiTableRowDeptIds.join(","))):(e.assistant_id=t.assistantId,t.erCenterRevisitSlot!==void 0&&(e.yeji_er_center_revisit_only=1,e.yeji_er_center_revisit_slot=t.erCenterRevisitSlot)),x.value&&le.value&&G.value==="channel"&&(e.channel_code=x.value),e}async function qa(){const t=Gt();if(!t||!x.value)return;const e={...t,channel_code:x.value,page_no:1,page_size:1};try{const n=await va(e),s=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null;s&&s.stats_yeji_drawer_total_performance_amount!=null&&(W.value={totalAmount:Number(s.stats_yeji_drawer_total_performance_amount),totalOrderCount:Number(s.stats_yeji_drawer_total_performance_order_count??0),channelAmount:Number(s.stats_order_amount_performance??0),channelOrderCount:Number((n==null?void 0:n.count)??0)})}catch{}}async function he(){const t=Gt();if(t){x.value&&G.value==="total"&&(W.value=null),fe.value=!0;try{const e={...t,page_no:K.value,page_size:ot.value},n=await va(e);ye.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],lt.value=Number((n==null?void 0:n.count)??0),oe.value=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null,x.value&&G.value==="channel"&&oe.value&&oe.value.stats_yeji_drawer_total_performance_amount!=null&&(W.value={totalAmount:Number(oe.value.stats_yeji_drawer_total_performance_amount),totalOrderCount:Number(oe.value.stats_yeji_drawer_total_performance_order_count??0),channelAmount:Number(oe.value.stats_order_amount_performance??0),channelOrderCount:Number((n==null?void 0:n.count)??0)}),x.value&&le.value&&G.value==="total"&&await qa()}catch(e){if(_e.isCancel(e))return;const n=e;Ee.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载业务订单失败"),ye.value=[],lt.value=0,oe.value=null}finally{fe.value=!1}}}function Zt(t,e,n){const s=!!(x.value&&t.channel_name);G.value=s?(n==null?void 0:n.listTab)??"channel":"channel",W.value=null,Ge.value={mode:"dept",deptId:e.dept_id,deptName:e.dept_name,start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(i=>i.dept_id).filter(i=>typeof i=="number"&&i>0)},Je.value=`业务订单 · ${e.dept_name}`,qe.value=`创建时间:${t.start_date} ~ ${t.end_date} · 与「合计业绩 / 接诊诊单」同口径:订单创建人人事部门 ∈ 本部门子树 · 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function Ga(t,e,n){const s=!!(x.value&&t.channel_name);G.value=s?n:"channel",W.value=null,Ge.value={mode:"dept",deptId:e,deptName:"当前展示合计",start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(i=>i.dept_id).filter(i=>typeof i=="number"&&i>0)},Je.value="业务订单 · 当前展示合计",qe.value=`创建时间:${t.start_date} ~ ${t.end_date} · 已选展示部门 1 个根节点(含其下全部展示行)· 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function Dt(t,e,n){return!(be(e)||e.dept_id<=0||n==="channel"&&!t.channel_name)}function Ct(t,e){return!(R.value.length!==1||e==="channel"&&!t.channel_name)}function Xt(t,e,n){if(!Dt(t,e,n))return;Zt(t,e,{listTab:n==="total"?"total":"channel"})}function Kt(t,e){if(!Ct(t,e))return;const n=R.value[0];if(!n)return;Ga(t,n,e==="total"?"total":"channel")}function Za(t,e,n){G.value="channel",W.value=null,Ge.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n},Je.value=`业务订单 · ${t.name}`,qe.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与排行榜诊金同口径)· 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function Lt(t,e,n,s){G.value="channel",W.value=null,Ge.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n,erCenterRevisitSlot:s};const i=s===0?"复诊合计":et(s);Je.value=`业务订单 · ${t.name} · ${i}`,qe.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与部门表 / 排行榜复诊同口径)· 仅二中心复诊口径 · ${i} · 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function Xa(t){if(!t||t.admin_id<=0||!N.value||Number(t.revisit_count??0)<=0)return;const{start_date:e,end_date:n}=N.value;Lt({admin_id:t.admin_id,name:t.name},e,n,0)}function Ka(t,e){if(!t||t.admin_id<=0||!N.value||ae(t,e)<=0)return;const{start_date:n,end_date:s}=N.value;Lt({admin_id:t.admin_id,name:t.name},n,s,e)}function Qa(){K.value=1,he()}function en(t){K.value=t,he()}function tn(t){ot.value=t,K.value=1,he()}function be(t){return t.dept_id<=0&&t.dept_name==="未归属中心"}function an(t,e){e.dept_id<=0||be(e)||Number(e.revisit_count??0)<=0||ea(t,e,0)}function nn(t,e,n){e.dept_id<=0||be(e)||ae(e,n)<=0||ea(t,e,n)}function Qt(t){const e=Mt.value;!e||Number(t.order_count)<=0||Lt({admin_id:t.admin_id,name:t.name},e.start,e.end,e.revisitSlot)}async function ea(t,e,n){const s=n===0?"复诊合计":et(n);It.value=`${e.dept_name} · ${s} · ${t.start_date} ~ ${t.end_date}`,Mt.value={start:t.start_date,end:t.end_date,revisitSlot:n},Fe.value="",Se.value=[],ft.value=!0,Ne.value=!0;try{const i={start_date:t.start_date,end_date:t.end_date,dept_id:e.dept_id,revisit_slot:n};R.value.length>0&&(i.dept_ids=R.value.join(",")),x.value&&(i.channel_code=x.value);const h=await il(i);Se.value=Array.isArray(h==null?void 0:h.rows)?h.rows:[],Fe.value=typeof(h==null?void 0:h.note)=="string"?h.note:""}catch(i){if(_e.isCancel(i))return;const h=i;Ee.error((h==null?void 0:h.msg)||(h==null?void 0:h.message)||"加载复诊拆解失败"),Se.value=[],Fe.value=""}finally{Ne.value=!1}}function ta(t){const e=[`区间:${t.start_date} ~ ${t.end_date}`];return x.value&&e.push(`渠道:${t.channel_name||x.value}`),R.value.length>0&&e.push(`已选展示部门 ${R.value.length} 个`),e.join(" · ")}async function ln(t){Tt.value=ta(t),Ve.value="",xe.value=[],vt.value=!0,je.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date};R.value.length>0&&(e.dept_ids=R.value.join(",")),x.value&&(e.channel_code=x.value);const n=await dl(e);xe.value=Array.isArray(n==null?void 0:n.rows)?n.rows:[],Ve.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(_e.isCancel(e))return;const n=e;Ee.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载未归属拆解失败"),xe.value=[],Ve.value=""}finally{je.value=!1}}function on(t,e,n){n.dept_id<=0||Number(n.lead_count)<=0||(t.stopPropagation(),sn(e,n))}async function zt(){const t=Et.value;if(!t)return;const{tb:e,row:n}=t;pe.value=!0;try{const s={start_date:e.start_date,end_date:e.end_date,dept_id:n.dept_id,page:Ue.value,page_size:tt.value};R.value.length>0&&(s.dept_ids=R.value.join(",")),x.value&&(s.channel_code=x.value);const i=await ul(s);De.value=Array.isArray(i==null?void 0:i.lists)?i.lists:[],Ye.value=Number((i==null?void 0:i.count)??0),Be.value=typeof(i==null?void 0:i.note)=="string"?i.note:""}catch(s){if(_e.isCancel(s))return;const i=s;Ee.error((i==null?void 0:i.msg)||(i==null?void 0:i.message)||"加载进线明细失败"),De.value=[],Ye.value=0,Be.value=""}finally{pe.value=!1}}async function sn(t,e){Et.value={tb:t,row:e},Ot.value=`${e.dept_name} · ${ta(t)}`,Be.value="",De.value=[],Ye.value=0,Ue.value=1,tt.value=20,yt.value=!0,await zt()}function rn(t){Ue.value=t,zt()}function dn(t){tt.value=t,Ue.value=1,zt()}function un(t){return(ve.value-1)*ze.value+t+1}function aa(t){return be(t)?!0:t.dept_id>0}async function rt(){const t=bt.value;if(t){me.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date,page:ve.value,page_size:ze.value};t.mode==="dept"?e.dept_id=t.dept_id:e.assistant_id=t.assistant_id,R.value.length>0&&(e.dept_ids=R.value.join(",")),x.value&&(e.channel_code=x.value);const n=await cl(e);de.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],Le.value=Number((n==null?void 0:n.count)??0),Ce.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(_e.isCancel(e))return;const n=e;Ee.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载挂号明细失败"),de.value=[],Le.value=0,Ce.value=""}finally{me.value=!1}}}function cn(t){if(!t||t.admin_id<=0||!N.value||Number(t.appointment_count??0)<=0)return;const e=N.value;bt.value={mode:"assistant",assistant_id:t.admin_id,name:t.name,start_date:e.start_date,end_date:e.end_date},ht.value=`${t.name} · 医助 · ${e.start_date} ~ ${e.end_date}`,Ce.value="",de.value=[],Le.value=0,ve.value=1,ze.value=20,at.value=!0,rt()}function _n(t,e){!aa(e)||Number(e.appointment_booked_count??0)<=0||(bt.value={mode:"dept",dept_id:e.dept_id,dept_name:e.dept_name,start_date:t.start_date,end_date:t.end_date},ht.value=`${e.dept_name} · ${t.start_date} ~ ${t.end_date}`,Ce.value="",de.value=[],Le.value=0,ve.value=1,ze.value=20,at.value=!0,rt())}function pn(t){ve.value=t,rt()}function mn(t){ze.value=t,ve.value=1,rt()}function vn(t,e){if(be(e)){ln(t);return}if(!(e.dept_id<=0)){if(Ya(e.dept_id)){R.value=[e.dept_id],Te();return}Zt(t,e)}}function fn(t){if(!t||t.admin_id<=0||!N.value)return;const{start_date:e,end_date:n}=N.value;Za(t,e,n)}function na(t){const e=t.channel_name?` · ${t.channel_name}`:"";return`${t.label}${e}`}function yn(t){const e=t.rows.filter(g=>g.dept_id>0),n=e.map(g=>g.dept_name.length>10?`${g.dept_name.slice(0,10)}…`:g.dept_name),s=["#64748b","#38bdf8","#6366f1"],i=[{name:"进线",type:"bar",data:e.map(g=>g.lead_count),yAxisIndex:0,barMaxWidth:16},{name:"接诊",type:"bar",data:e.map(g=>g.consult_count),yAxisIndex:0,barMaxWidth:16},{name:"成交单",type:"bar",data:e.map(g=>g.deal_order_count),yAxisIndex:0,barMaxWidth:16},{name:"合计业绩",type:"bar",data:e.map(g=>g.performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#d97706"}}];t.channel_name&&i.push({name:`${t.channel_name}业绩`,type:"bar",data:e.map(g=>g.completed_performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#0d9488"}});const h=e.length>10;return{color:[...s,"#d97706","#0d9488"],tooltip:{trigger:"axis",axisPointer:{type:"cross"}},legend:{top:8,type:"scroll",textStyle:{fontSize:11}},grid:{left:52,right:52,top:48,bottom:h?56:28,containLabel:!1},dataZoom:h?[{type:"slider",bottom:4,start:0,end:Math.min(100,Math.ceil(12/Math.max(e.length,1)*100))}]:[],xAxis:{type:"category",data:n,axisLabel:{rotate:n.length>8?28:0,fontSize:10}},yAxis:[{type:"value",name:"数量",splitLine:{lineStyle:{type:"dashed",opacity:.55}}},{type:"value",name:"金额",splitLine:{show:!1}}],series:i}}function hn(t,e){const n=[...t.rows].sort((s,i)=>Number(i.fee_amount)-Number(s.fee_amount)).slice(0,15);return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${Number(s).toLocaleString("zh-CN")} 元`},grid:{left:8,right:20,top:12,bottom:8,containLabel:!0},xAxis:{type:"value",splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:n.map(s=>s.name.length>8?`${s.name.slice(0,8)}…`:s.name).reverse(),axisLabel:{fontSize:11}},series:[{name:"诊金",type:"bar",data:n.map(s=>Number(s.fee_amount??0)).reverse(),barMaxWidth:20,itemStyle:{borderRadius:[0,6,6,0]}}]}}function la(t){return t.rows.some(e=>Number(e.fee_amount)>0)}function bn(t,e){const s=[...t.rows].filter(i=>Number(i.fee_amount)>0).sort((i,h)=>Number(h.fee_amount)-Number(i.fee_amount)).slice(0,10).map(i=>({name:i.name.length>6?`${i.name.slice(0,6)}…`:i.name,value:Number(i.fee_amount)}));return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5"],tooltip:{trigger:"item",formatter:"{b}: {c} 元 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:9}},series:[{name:"诊金",type:"pie",radius:["38%","64%"],center:["50%","42%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} -{d}%`,fontSize:10}}]}}function oa(t){return Number(t.total.lead_count)+Number(t.total.consult_count)+Number(t.total.deal_order_count)>0}function gn(t){const e=Number(t.total.lead_count??0),n=Number(t.total.consult_count??0),s=Number(t.total.deal_order_count??0);return{tooltip:{trigger:"item",formatter:"{b}: {c}"},color:["#2563eb","#38bdf8","#0d9488"],series:[{type:"funnel",left:"8%",width:"84%",minSize:"12%",sort:"none",gap:6,label:{show:!0,position:"inside",formatter:`{b} -{c}`,fontSize:11},data:[{value:e,name:"进线"},{value:n,name:"接诊"},{value:s,name:"成交单"}]}]}}function sa(t){return t.rows.some(e=>e.dept_id>0&&Number(e.performance_amount)>0)}function wn(t){const e=t.rows.filter(i=>i.dept_id>0&&Number(i.performance_amount)>0).sort((i,h)=>Number(h.performance_amount)-Number(i.performance_amount));if(!e.length)return{series:[{type:"pie",data:[]}]};const s=e.slice(0,10).map(i=>({name:i.dept_name.length>8?`${i.dept_name.slice(0,8)}…`:i.dept_name,value:Number(i.performance_amount)}));if(e.length>10){const i=e.slice(10).reduce((h,g)=>h+Number(g.performance_amount),0);i>0&&s.push({name:"其它",value:i})}return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}
{c} 元({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:10}},series:[{type:"pie",radius:["36%","62%"],center:["50%","44%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} -{d}%`,fontSize:10}}]}}function $t(t){return{perf:"渠道业绩",deal:"渠道成交",aov:"渠道客单"}[t]??t}function D(t){return t==null||t===""?"0":Number(t).toLocaleString("en-US")}function I(t){return t==null||t===""?"0.0":Number(t).toLocaleString("en-US",{minimumFractionDigits:1,maximumFractionDigits:1})}function se(t){if(t==null||t==="")return"0";const e=Number(t);return Number.isFinite(e)?Math.round(e).toLocaleString("zh-CN"):"0"}function ia(t){return t==null||t===""?"—":Number(t).toLocaleString("en-US",{minimumFractionDigits:1,maximumFractionDigits:1})}function ra(t){return t==null||t===""?"—":Number(t).toFixed(1)}function da(t){if(t==null||t==="")return"";const e=Number(t);return e>=1?"roi-good":e>=.8?"roi-mid":"roi-bad"}function kn(t){return t===null?"—":(t*100).toFixed(2)+"%"}function jn(t){return t===null?"":t>=1?"tp-good":t>=.8?"tp-mid":"tp-bad"}function xn(t){return t>=1e4?(t/1e4).toFixed(1)+"万":String(t)}function dt(t){const e=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),s=String(t.getDate()).padStart(2,"0");return`${e}-${n}-${s}`}return fl(async()=>{ue.value=We(),await Promise.all([Va(),Fa()]),Te(),Ma()}),(t,e)=>{const n=Tn,s=In,i=Pn,h=Mn,g=En,j=Fn,Y=Vn,M=Bn,p=Wn,P=Hn,$=Jn,Q=Un,T=qn,Ie=Yn,J=Zn,ge=Gn,Me=Xn,Oe=Kn,we=Qn,F=On;return o(),u("div",hl,[e[140]||(e[140]=a("header",{class:"yeji-masthead"},[a("div",{class:"yeji-masthead__inner"},[a("h1",{class:"yeji-masthead__title"},"业绩看板"),a("p",{class:"yeji-masthead__desc"},"渠道 · 部门 · 日期维度的业绩分析")])],-1)),d(M,{class:"yeji-panel filter-card",shadow:"never"},{default:_(()=>[a("div",bl,[a("div",gl,[a("div",wl,[e[10]||(e[10]=a("span",{class:"lbl"},"渠道来源",-1)),d(i,{modelValue:x.value,"onUpdate:modelValue":e[0]||(e[0]=l=>x.value=l),filterable:"",placeholder:"渠道筛选",class:"filter-select filter-select--channel",loading:_t.value,onChange:Te},{default:_(()=>[d(n,{label:"全部",value:""}),(o(!0),u(w,null,E(Qe.value,l=>(o(),k(s,{key:l.group_name,label:l.group_name},{default:_(()=>[(o(!0),u(w,null,E(l.channels,b=>(o(),k(n,{key:b.channel_code,label:b.channel_name,value:b.channel_code},{default:_(()=>[a("div",kl,[a("span",jl,r(b.channel_name),1),a("span",xl,r(b.customer_count>0?b.customer_count:""),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","loading"])]),a("div",Nl,[e[11]||(e[11]=a("span",{class:"lbl"},"展示部门",-1)),X((o(),u("div",Sl,[d(h,{modelValue:R.value,"onUpdate:modelValue":e[1]||(e[1]=l=>R.value=l),data:ba.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":"",filterable:"","check-strictly":"","render-after-expand":!1,"default-expand-all":!0,placeholder:"默认:所有「中心」部门",class:"filter-dept-tree-select","node-key":"id",props:ya},null,8,["modelValue","data"])])),[[F,ct.value]])]),a("div",Dl,[e[12]||(e[12]=a("span",{class:"lbl"},"日期范围",-1)),d(g,{modelValue:U.value,"onUpdate:modelValue":e[2]||(e[2]=l=>U.value=l),type:"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始","end-placeholder":"结束",clearable:!0,shortcuts:Wt,class:"filter-date-picker"},null,8,["modelValue"])]),a("div",Cl,[d(Y,{type:"primary",class:"filter-btn filter-btn--query",loading:te.value,onClick:Te},{default:_(()=>[d(j,{class:"filter-btn__icon"},{default:_(()=>[d(C(tl))]),_:1}),e[13]||(e[13]=c(" 查询 ",-1))]),_:1},8,["loading"]),d(Y,{class:"filter-btn filter-btn--reset",disabled:te.value,onClick:Ba},{default:_(()=>[d(j,{class:"filter-btn__icon"},{default:_(()=>[d(C(al))]),_:1}),e[14]||(e[14]=c(" 重置 ",-1))]),_:1},8,["disabled"])])]),a("div",Ll,[e[15]||(e[15]=a("span",{class:"filter-quick__title"},"快捷日期",-1)),a("div",zl,[(o(),u(w,null,E(Wt,l=>a("button",{key:l.text,type:"button",class:"date-pill",onClick:b=>Ea(l)},r(l.text),9,$l)),64))])])])]),_:1}),d(M,{class:"yeji-panel yeji-main-tabs-card",shadow:"never"},{default:_(()=>[e[115]||(e[115]=a("div",{class:"yeji-table-tabs-head"},[a("span",{class:"yeji-table-tabs-head__title"},"表格统计"),a("span",{class:"yeji-table-tabs-head__hint"},"列较多时可横向滚动浏览;「部门 / 排名」列在滚动时保持固定。")],-1)),ja.value?(o(),k(Ie,{key:0,modelValue:ue.value,"onUpdate:modelValue":e[3]||(e[3]=l=>ue.value=l),class:"yeji-view-tabs"},{default:_(()=>[H.value?(o(),k(Q,{key:0,label:"医生统计",name:"doctor",lazy:""},{default:_(()=>[H.value?(o(),k(M,{key:0,class:"yeji-panel doctor-daily-card doctor-daily-card--nested",shadow:"never"},{header:_(()=>[a("div",Al,[a("div",Rl,[e[16]||(e[16]=a("span",{class:"doctor-daily-card__title"},"医生明细",-1)),nt.value?(o(),u("span",Pl,r(nt.value),1)):v("",!0)]),a("div",Tl,[d(Y,{type:"primary",size:"small",loading:Ae.value,onClick:Nt},{default:_(()=>[...e[17]||(e[17]=[c(" 刷新 ",-1)])]),_:1},8,["loading"])])])]),default:_(()=>[X((o(),k(P,{data:V.value,size:"small",border:"",stripe:"",class:"doctor-daily-table","show-summary":"","summary-method":Aa},{default:_(()=>[d(p,{prop:"doctor_name",label:"医生","min-width":"100",fixed:""}),d(p,{prop:"system_prescription_count",label:"系统开方","min-width":"88",align:"right"}),d(p,{prop:"manual_prescription_count",label:"手动开方","min-width":"88",align:"right"}),d(p,{prop:"deal_amount",label:"成交金额","min-width":"110",align:"right"},{default:_(({row:l})=>[c("¥ "+r(Bt(l.deal_amount)),1)]),_:1}),d(p,{prop:"deal_order_count",label:"接诊诊单","min-width":"88",align:"right"}),d(p,{prop:"appointment_completed",label:"挂号完成","min-width":"88",align:"right"}),d(p,{prop:"appointment_missed",label:"过号","min-width":"72",align:"right"}),d(p,{prop:"appointment_cancelled",label:"取消","min-width":"72",align:"right"})]),_:1},8,["data"])),[[F,Ae.value]])]),_:1})):(o(),k($,{key:1,description:"当前账号无医生统计权限"}))]),_:1})):v("",!0),ne.value?(o(),k(Q,{key:1,label:"医助排行榜",name:"leaderboard",lazy:""},{default:_(()=>[N.value||re.value?X((o(),u("div",Il,[N.value?(o(),u(w,{key:0},[a("p",Ml,[c(r(N.value.range_note)+" ",1),a("span",Ol,r(N.value.start_date)+" ~ "+r(N.value.end_date),1)]),a("div",El,[(o(!0),u(w,null,E(N.value.leaderboards,l=>(o(),u(w,{key:l.dept_id},[l.rows.length>0?(o(),u("div",Vl,[a("div",Fl,[c(r(l.dept_name)+" · 医助排行榜 ",1),N.value.channel_name?(o(),u("span",Bl," ("+r(N.value.channel_name)+") ",1)):v("",!0)]),a("div",Yl,[a("table",Ul,[a("thead",null,[a("tr",null,[e[19]||(e[19]=a("th",{class:"col-rank"},"排名",-1)),e[20]||(e[20]=a("th",{class:"col-abbr"},"部门",-1)),e[21]||(e[21]=a("th",{class:"col-name"},"姓名",-1)),e[22]||(e[22]=a("th",{class:"col-consult"},"接诊单数",-1)),e[23]||(e[23]=a("th",{class:"col-deal"},"接诊诊单",-1)),e[24]||(e[24]=a("th",{class:"col-assign"},"被指派数",-1)),e[25]||(e[25]=a("th",{class:"col-appointment"},"预约诊单",-1)),l.er_center_subtree?(o(),u(w,{key:0},[e[18]||(e[18]=a("th",{class:"col-revisit"},"复诊合计",-1)),(o(!0),u(w,null,E(Pt(l),b=>(o(),u("th",{key:"lbh-"+l.dept_id+"-"+b,class:"col-revisit-slot"},r(et(b)),1))),128))],64)):v("",!0),e[26]||(e[26]=a("th",null,"诊金",-1)),e[27]||(e[27]=a("th",null,[c("接诊率"),a("br"),a("span",{class:"th-sub"},"(元/进线)")],-1))])]),a("tbody",null,[(o(!0),u(w,null,E(l.rows,b=>(o(),u("tr",{key:b.admin_id,class:"yeji-row--action",onClick:m=>fn(b)},[a("td",Wl,r(b.rank),1),a("td",Jl,r(b.dept_abbr),1),a("td",ql,r(b.name),1),a("td",Gl,r(se(b.consult_count)),1),a("td",Zl,r(se(b.deal_order_count)),1),a("td",Xl,r(se(b.assign_count??0)),1),a("td",{class:"col-appointment",onClick:Z(m=>cn(b),["stop"])},[Number(b.appointment_count??0)>0?(o(),u("span",Ql,r(se(b.appointment_count??0)),1)):(o(),u(w,{key:1},[c(r(se(b.appointment_count??0)),1)],64))],8,Kl),l.er_center_subtree?(o(),u(w,{key:0},[a("td",{class:"col-revisit",onClick:Z(m=>Xa(b),["stop"])},[Number(b.revisit_count??0)>0?(o(),u("span",to,r(se(b.revisit_count??0)),1)):(o(),u(w,{key:1},[c(r(se(b.revisit_count??0)),1)],64))],8,eo),(o(!0),u(w,null,E(Pt(l),m=>(o(),u("td",{key:"lbc-"+b.admin_id+"-"+m,class:"col-revisit-slot",onClick:Z(O=>Ka(b,m),["stop"])},[ae(b,m)>0?(o(),u("span",no,r(se(ae(b,m))),1)):(o(),u(w,{key:1},[c(r(se(ae(b,m))),1)],64))],8,ao))),128))],64)):v("",!0),a("td",null,r(I(b.fee_amount)),1),a("td",null,r(I(b.consult_rate)),1)],8,Hl))),128))])])]),a("div",lo,[e[28]||(e[28]=a("span",null,"诊金单位:元 · 诊金/接诊诊单/复诊均按「订单创建人 = 该医助」归属,与部门「合计业绩 / 接诊诊单 / 复诊」同口径 · 被指派数与部门业绩表同口径 · 接诊率 = 诊金 ÷ 进线(元/进线)",-1)),l.er_center_subtree?(o(),u("span",oo," · 复诊列为二中心口径(同一诊单业务单序列第 2 笔起),点击数字查看对应业务订单 ")):v("",!0),e[29]||(e[29]=a("span",null," · 预约诊单:预约日期在统计区间内,状态含已预约/已完成/已过号(不含已取消),医助归属与接诊单数一致(按挂号 assistant_id 优先,否则诊单 assistant_id);各科组展示全部医助。 ",-1))])])):v("",!0)],64))),128))]),!re.value&&Oa.value===0?(o(),u("div",so,[d($,{description:"当前筛选下暂无医助排行数据"})])):v("",!0)],64)):v("",!0)])),[[F,re.value]]):re.value?v("",!0):(o(),k($,{key:1,class:"yeji-charts-empty",description:"当前筛选下暂无医助排行数据"}))]),_:1})):v("",!0),$e.value?(o(),k(Q,{key:2,label:"甄养堂互联网医院诊金",name:"zyyt",lazy:""},{default:_(()=>[X((o(),u("div",io,[!te.value&&ie.value.length===0?(o(),u("div",ro,[d($,{description:"暂无数据"})])):v("",!0),(o(!0),u(w,null,E(ie.value,(l,b)=>(o(),u("div",{key:b,class:"yeji-table"},[a("div",uo,r(na(l)),1),a("div",co,[a("table",_o,[a("thead",null,[a("tr",null,[e[107]||(e[107]=a("th",{class:"col-dept"},"部门",-1)),a("th",null,[e[36]||(e[36]=a("span",null,"进线数据",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",po,[e[34]||(e[34]=c(" add_external_contact 事件数,按接待企微成员归属部门;定渠道时须客户带对应企微标签。",-1)),e[35]||(e[35]=a("br",null,null,-1)),l.channel_name?(o(),u(w,{key:0},[e[30]||(e[30]=a("b",null,"二中心及其组织下级",-1)),e[31]||(e[31]=c("(与部门 ErCenter 子树一致)在选定渠道下进线计 ",-1)),e[32]||(e[32]=a("b",null,"0",-1)),e[33]||(e[33]=c("。 ",-1))],64)):v("",!0)])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:2},1024)]),a("th",null,[e[52]||(e[52]=a("span",null,"被指派数",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",mo,[e[44]||(e[44]=a("b",null,"tcm_diagnosis_assign_log",-1)),e[45]||(e[45]=c(" 行数(成功指派:",-1)),e[46]||(e[46]=a("b",null,"to_assistant_id > 0",-1)),e[47]||(e[47]=c("),**仅按 ",-1)),e[48]||(e[48]=a("b",null,"related_po_create_time",-1)),e[49]||(e[49]=c("** 落在所选区间内(与日志表快照一致;诊单手动指派已写入该字段)。按",-1)),e[50]||(e[50]=a("b",null,"被指派医助",-1)),e[51]||(e[51]=c("归属展示部门。",-1)),l.channel_name?(o(),u(w,{key:0},[c(" 选定渠道时收窄与「"+r(l.channel_name)+"」业绩同口径(标签诊单或 channels EXISTS)。",1),e[37]||(e[37]=a("br",null,null,-1)),e[38]||(e[38]=a("b",null,"二中心及其组织下级",-1)),e[39]||(e[39]=c("在选定渠道下本列计 ",-1)),e[40]||(e[40]=a("b",null,"0",-1)),e[41]||(e[41]=c("。 ",-1))],64)):(o(),u(w,{key:1},[e[42]||(e[42]=a("br",null,null,-1)),e[43]||(e[43]=c("未选渠道时不限客户来源,与「合计业绩」列渠道无关。",-1))],64))])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:2},1024)]),a("th",null,[e[54]||(e[54]=a("span",null,"复诊合计",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[53]||(e[53]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 仅"),a("b",null,"名称含「二中心」"),c("的部门及其组织下级:候选订单为有诊单医助、且 "),a("b",null,"fulfillment_status"),c(" 非 4/9/10("),a("b",null,"NULL 计入"),c(")的业务单,按患者 "),a("b",null,"create_time"),c(" 排序,"),a("b",null,"第 1 笔不计"),c(";第 2 笔起计入合计,分列复诊2、复诊三…。"),a("b",null,"归属"),c("按订单创建人的人事部门,与"),a("b",null,"合计业绩"),c("列同口径。非二中心子树部门为 0。 ")],-1)])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:1})]),(o(!0),u(w,null,E(mt.value,m=>(o(),u("th",{key:"yjv-h-"+m},[a("span",null,r(et(m)),1),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",vo,[e[55]||(e[55]=c(" 该列统计区间内患者第 ",-1)),a("b",null,r(m),1),e[56]||(e[56]=c(" 笔业务单条数(第 1 笔初诊单列不计);归属与合计列相同。 ",-1))])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:2},1024)]))),128)),a("th",null,[e[58]||(e[58]=a("span",null,"合计业绩",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[57]||(e[57]=[a("div",{style:{"max-width":"300px","line-height":"1.7","font-size":"12px"}},[c(" 按订单"),a("b",null,"创建时间"),c("统计(剔除履约已取消/拒收/退款 4·9·10),金额与"),a("b",null,"接诊诊单"),c("列一致:仅按"),a("b",null,"订单创建人"),c("的人事部门落在本展示行(含下级)计入,多行命中时取最深的展示部门。与"),a("b",null,"医助排行榜诊金"),c("同口径。"),a("br"),a("b",null,"不受渠道筛选影响"),c("。与侧栏按部门打开的业务订单列表对齐。"),a("br"),c(" 点击金额可查看对应业务订单明细(侧栏默认「合计业绩」全量列表)。 ")],-1)])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:1})]),l.channel_name?(o(),u("th",fo,[a("span",yo,r($t("perf")),1),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",ho,[c(" 「"+r(l.channel_name)+"」渠道业绩(与卡片标题渠道一致)。与「处方订单列表」业绩",1),e[59]||(e[59]=a("b",null,"同口径",-1)),e[60]||(e[60]=c(":按订单 ",-1)),e[61]||(e[61]=a("b",null,"create_time",-1)),e[62]||(e[62]=c(" 归日,剔除履约状态 4(已取消)/9(拒收)/10(退款)。",-1)),e[63]||(e[63]=a("br",null,null,-1)),e[64]||(e[64]=c(" 渠道判定用 EXISTS:该患者有任一挂号 ",-1)),e[65]||(e[65]=a("b",null,"channels 命中字典 + status=3",-1)),e[66]||(e[66]=c("(不限挂号时点)。",-1)),e[67]||(e[67]=a("br",null,null,-1)),e[68]||(e[68]=c(" 点击金额可查看该部门本渠道订单明细(侧栏「渠道筛选」列表)。 ",-1))])]),default:_(()=>[d(j,{class:"col-info","aria-label":"说明"},{default:_(()=>[d(C(B))]),_:1})]),_:2},1024)])):v("",!0),a("th",null,[e[70]||(e[70]=a("span",null,"预约诊单",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[69]||(e[69]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 已预约 / 已完成 / 已过号(不含已取消),按"),a("b",null,"预约日期"),c("落在区间内统计;部门归属医助优先,否则接诊医生;与"),a("b",null,"医助排行榜 · 预约诊单"),c("及明细弹窗同口径。"),a("br"),c(" 点击数字可查看每条挂号记录。 ")],-1)])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:1})]),a("th",null,[e[72]||(e[72]=a("span",null,"已完成挂号",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[71]||(e[71]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 仅"),a("b",null,"已完成"),c("(status=3),与 admin「医生预约 / 已完成」列表计数条件一致(appointment_date、诊单未软删);部门归属医助优先,否则接诊医生。 ")],-1)])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:1})]),a("th",null,[e[74]||(e[74]=a("span",null,"接诊诊单",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[73]||(e[73]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[a("b",null,"业务订单条数"),c("(计业绩):订单 "),a("b",null,"create_time"),c(" 落入区间、"),a("b",null,"fulfillment_status ∉ {4,9,10}"),c(";与列表筛选 "),a("b",null,"assistant_dept_id"),c(" 时一致——"),a("b",null,"创建人"),c("人事部门优先,无创建人则诊单 "),a("b",null,"医助"),c(";落在该部门子树即计入(表格多行命中时取最深的展示部门)。与侧栏勾选「与表格业绩对齐」时的集合可能略有差异。选定渠道时本列仍为全量。 ")],-1)])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:1})]),l.channel_name?(o(),u("th",bo,[a("span",go,r($t("deal")),1),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",wo,[c(" 「"+r(l.channel_name)+"」渠道成交单数;与渠道业绩同源:区间内 ",1),e[75]||(e[75]=a("b",null,"计业绩的业务订单",-1)),e[76]||(e[76]=c(" 条数(剔除 4/9/10),按订单 ",-1)),e[77]||(e[77]=a("b",null,"create_time",-1)),e[78]||(e[78]=c(" 归日;渠道判定同业绩列。 ",-1))])]),default:_(()=>[d(j,{class:"col-info","aria-label":"说明"},{default:_(()=>[d(C(B))]),_:1})]),_:2},1024)])):v("",!0),l.channel_name?(o(),u("th",ko,[a("span",jo,r($t("aov")),1),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",xo," 「"+r(l.channel_name)+"」渠道客单价 ≈ 渠道业绩 ÷ 渠道成交单。 ",1)]),default:_(()=>[d(j,{class:"col-info","aria-label":"说明"},{default:_(()=>[d(C(B))]),_:1})]),_:2},1024)])):v("",!0),a("th",null,[e[104]||(e[104]=a("span",null,"ROI",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",No,[l.channel_name?(o(),u(w,{key:0},[e[79]||(e[79]=c(" 有渠道时:",-1)),e[80]||(e[80]=a("b",null,"合计行 ROI",-1)),e[81]||(e[81]=c(" = ",-1)),a("b",null,r(l.channel_name)+"业绩合计",1),e[82]||(e[82]=c("(与上表该渠道业绩列合计一致,",-1)),e[83]||(e[83]=a("b",null,"不含二中心及其组织下级",-1)),e[84]||(e[84]=c(")÷ ",-1)),e[85]||(e[85]=a("b",null,"投放成本合计",-1)),e[86]||(e[86]=c("。",-1)),e[87]||(e[87]=a("br",null,null,-1)),e[88]||(e[88]=c(" 部门行 ROI = 该部门 ",-1)),a("b",null,r(l.channel_name)+"业绩",1),e[89]||(e[89]=c(" ÷ 该部门 ",-1)),e[90]||(e[90]=a("b",null,"投放成本",-1)),e[91]||(e[91]=c(";",-1)),e[92]||(e[92]=a("b",null,"二中心子树",-1)),e[93]||(e[93]=c("部门该渠道业绩与进线为 0、投放成本分摊进线计 0,故无 ROI。与「合计业绩」列无关。 ",-1))],64)):(o(),u(w,{key:1},[e[94]||(e[94]=a("b",null,"合计行 ROI",-1)),e[95]||(e[95]=c(" = 全表业绩合计(",-1)),e[96]||(e[96]=a("b",null,"不含二中心子树",-1)),e[97]||(e[97]=c("各部门行业绩)÷ ",-1)),e[98]||(e[98]=a("b",null,"投放成本合计",-1)),e[99]||(e[99]=c(";",-1)),e[100]||(e[100]=a("br",null,null,-1)),e[101]||(e[101]=c(" 部门行 = 该部门「合计业绩」口径业绩 ÷ 该部门均摊投放成本;",-1)),e[102]||(e[102]=a("b",null,"二中心子树",-1)),e[103]||(e[103]=c("部门不参与成本分摊(进线占比计 0),故无 ROI。 ",-1))],64))])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:2},1024)]),a("th",null,[e[106]||(e[106]=a("span",null,"投放成本",-1)),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[105]||(e[105]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 区间与渠道与账务表一致后得到"),a("b",null,"总投放成本"),c(";"),a("b",null,"单进线成本"),c(" = 总成本 ÷ 各展示部门"),a("b",null,"进线合计"),c(";"),a("br"),c(" 各部门行投放成本 = 单进线成本 × 该部门进线(四舍五入尾差并入进线最多的部门)。"),a("b",null,"二中心及其组织下级"),c("进线在分摊中计 "),a("b",null,"0"),c("(与 ROI 分子扣除范围一致)。 ")],-1)])]),default:_(()=>[d(j,{class:"col-info"},{default:_(()=>[d(C(B))]),_:1})]),_:1})])])]),a("tbody",null,[(o(!0),u(w,null,E(l.rows,m=>(o(),u("tr",{key:`${b}-${m.dept_id}-${m.dept_name}`,class:ut(["yeji-row--action",{"yeji-row--unassigned":be(m),"yeji-row--idle":m.dept_id<=0&&!be(m)}]),onClick:O=>vn(l,m)},[a("td",Do,r(m.dept_name),1),a("td",{onClick:O=>on(O,l,m)},[m.dept_id>0&&Number(m.lead_count)>0?(o(),u("span",Lo,r(D(m.lead_count)),1)):(o(),u(w,{key:1},[c(r(D(m.lead_count)),1)],64))],8,Co),a("td",null,r(D(m.assign_count??0)),1),a("td",{onClick:Z(O=>an(l,m),["stop"])},[m.dept_id>0&&Number(m.revisit_count??0)>0?(o(),u("span",$o,r(D(m.revisit_count??0)),1)):(o(),u(w,{key:1},[c(r(D(m.revisit_count??0)),1)],64))],8,zo),(o(!0),u(w,null,E(mt.value,O=>(o(),u("td",{key:"yjv-"+b+"-"+m.dept_id+"-"+O,onClick:Z(ua=>nn(l,m,O),["stop"])},[m.dept_id>0&&ae(m,O)>0?(o(),u("span",Ro,r(D(ae(m,O))),1)):(o(),u(w,{key:1},[c(r(D(ae(m,O))),1)],64))],8,Ao))),128)),a("td",null,[Dt(l,m,"total")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:Z(O=>Xt(l,m,"total"),["stop"])},r(I(m.performance_amount)),9,Po)):(o(),u(w,{key:1},[c(r(I(m.performance_amount)),1)],64))]),l.channel_name?(o(),u("td",To,[Dt(l,m,"channel")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:Z(O=>Xt(l,m,"channel"),["stop"])},r(I(m.completed_performance_amount)),9,Io)):(o(),u(w,{key:1},[c(r(I(m.completed_performance_amount)),1)],64))])):v("",!0),a("td",{onClick:Z(O=>_n(l,m),["stop"])},[aa(m)&&Number(m.appointment_booked_count??0)>0?(o(),u("span",Oo,r(D(m.appointment_booked_count??0)),1)):(o(),u(w,{key:1},[c(r(D(m.appointment_booked_count??0)),1)],64))],8,Mo),a("td",null,r(D(m.consult_count)),1),a("td",null,r(D(m.deal_order_count)),1),l.channel_name?(o(),u("td",Eo,r(D(m.channel_consult_count)),1)):v("",!0),l.channel_name?(o(),u("td",Vo,r(ia(m.channel_avg_price)),1)):v("",!0),a("td",{class:ut(da(m.roi))},r(ra(m.roi)),3),a("td",null,r(I(m.cost_amount)),1)],10,So))),128)),a("tr",Fo,[e[108]||(e[108]=a("td",{class:"col-dept"},"合计",-1)),a("td",null,r(D(l.total.lead_count)),1),a("td",null,r(D(l.total.assign_count??0)),1),a("td",null,r(D(l.total.revisit_count??0)),1),(o(!0),u(w,null,E(mt.value,m=>(o(),u("td",{key:"yjvt-"+b+"-"+m},r(D(ae(l.total,m))),1))),128)),a("td",null,[Ct(l,"total")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:Z(m=>Kt(l,"total"),["stop"])},r(I(l.total.performance_amount)),9,Bo)):(o(),u(w,{key:1},[c(r(I(l.total.performance_amount)),1)],64))]),l.channel_name?(o(),u("td",Yo,[Ct(l,"channel")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:Z(m=>Kt(l,"channel"),["stop"])},r(I(l.total.completed_performance_amount)),9,Uo)):(o(),u(w,{key:1},[c(r(I(l.total.completed_performance_amount)),1)],64))])):v("",!0),a("td",null,r(D(l.total.appointment_booked_count??0)),1),a("td",null,r(D(l.total.consult_count)),1),a("td",null,r(D(l.total.deal_order_count)),1),l.channel_name?(o(),u("td",Ho,r(D(l.total.channel_consult_count)),1)):v("",!0),l.channel_name?(o(),u("td",Wo,r(ia(l.total.channel_avg_price)),1)):v("",!0),a("td",{class:ut(da(l.total.roi))},r(ra(l.total.roi)),3),a("td",null,r(I(l.total.cost_amount)),1)])])])]),a("div",Jo,[a("span",null,"区间:"+r(l.start_date)+" ~ "+r(l.end_date),1),l.channel_name?(o(),u("span",qo," · 渠道:"+r(l.channel_name),1)):v("",!0),l.total.cost_per_lead!=null&&l.total.cost_per_lead>0?(o(),u("span",Go," · 单进线成本:"+r(I(l.total.cost_per_lead))+" 元 ",1)):v("",!0)])]))),128))])),[[F,te.value]])]),_:1})):v("",!0),He.value?(o(),k(Q,{key:3,label:"目标看板(卡片)",name:"zyyt_matrix",lazy:""},{default:_(()=>[X((o(),u("div",Zo,[Pe.value?(o(),u(w,{key:0},[a("h2",Xo,r(Pe.value.title),1),a("div",Ko,[(o(!0),u(w,null,E(Pe.value.sections,l=>(o(),u("div",{key:"tm-"+l.dept_id,class:"tp-matrix-card",role:"listitem"},[a("div",Qo,[a("div",es,[l.parent_dept_name?(o(),u("span",ts,r(l.parent_dept_name),1)):v("",!0),a("span",as,r(l.dept_name)+"目标",1)]),a("span",ns,r(xn(l.target_amount)),1)]),a("table",ls,[a("tbody",null,[a("tr",null,[e[109]||(e[109]=a("td",{class:"tp-matrix-card__lbl"},"昨日诊金",-1)),a("td",os,r(D(l.yesterday_amount)),1)]),l.douyin_amount!==null?(o(),u("tr",ss,[e[110]||(e[110]=a("td",{class:"tp-matrix-card__lbl"},"抖音总诊金",-1)),a("td",is,r(D(l.douyin_amount)),1)])):v("",!0),l.tuifen_amount!==null?(o(),u("tr",rs,[e[111]||(e[111]=a("td",{class:"tp-matrix-card__lbl"},"推粉总诊金",-1)),a("td",ds,r(D(l.tuifen_amount)),1)])):v("",!0),a("tr",null,[e[112]||(e[112]=a("td",{class:"tp-matrix-card__lbl"},"总诊金",-1)),a("td",us,r(D(l.total_amount)),1)]),a("tr",null,[e[113]||(e[113]=a("td",{class:"tp-matrix-card__lbl"},"目标进度",-1)),a("td",cs,r(I(l.target_progress)),1)]),a("tr",null,[e[114]||(e[114]=a("td",{class:"tp-matrix-card__lbl"},"完成进度",-1)),a("td",{class:ut(["tp-matrix-card__num tp-matrix-card__num--hot",jn(l.completion_rate)])},r(kn(l.completion_rate)),3)])])])]))),128))])],64)):st.value?v("",!0):(o(),k($,{key:1,class:"tp-matrix-empty",description:"暂无目标数据,请先配置当月部门目标或为部门设置诊金目标后刷新页面"}))])),[[F,st.value]])]),_:1})):v("",!0)]),_:1},8,["modelValue"])):(o(),k($,{key:1,description:"当前账号无表格统计 Tab 权限"}))]),_:1}),d(M,{class:"yeji-panel yeji-charts-only-card",shadow:"never"},{default:_(()=>[e[125]||(e[125]=a("div",{class:"yeji-charts-only-head"},"统计图",-1)),X((o(),u("div",_s,[Na.value?(o(),u(w,{key:0},[H.value&&(gt.value||wt.value||kt.value||jt.value||xt.value)?(o(),u("section",ps,[a("h3",ms,[e[116]||(e[116]=c(" 医生统计 ",-1)),nt.value?(o(),u("span",vs,r(nt.value),1)):v("",!0)]),d(ge,{gutter:16},{default:_(()=>[d(J,{xs:24,lg:9},{default:_(()=>[a("div",fs,[e[117]||(e[117]=a("div",{class:"yeji-chart-panel__label"},"成交金额 TOP(条形)",-1)),gt.value?(o(),k(C(ee),{key:0,class:"yeji-echart",option:La.value,autoresize:""},null,8,["option"])):(o(),k($,{key:1,description:"暂无成交金额数据","image-size":72}))])]),_:1}),d(J,{xs:24,lg:8},{default:_(()=>[a("div",ys,[e[118]||(e[118]=a("div",{class:"yeji-chart-panel__label"},"开方构成(堆叠柱)",-1)),wt.value?(o(),k(C(ee),{key:0,class:"yeji-echart yeji-echart--short",option:za.value,autoresize:""},null,8,["option"])):(o(),k($,{key:1,description:"暂无开方数据","image-size":72}))])]),_:1}),d(J,{xs:24,lg:7},{default:_(()=>[a("div",hs,[e[119]||(e[119]=a("div",{class:"yeji-chart-panel__label"},"挂号结果(环形 · 表尾合计)",-1)),kt.value?(o(),k(C(ee),{key:0,class:"yeji-echart yeji-echart--short",option:Sa.value,autoresize:""},null,8,["option"])):(o(),k($,{key:1,description:"暂无挂号汇总","image-size":72}))])]),_:1})]),_:1}),d(ge,{gutter:16,class:"yeji-chart-subrow"},{default:_(()=>[d(J,{xs:24,lg:12},{default:_(()=>[a("div",bs,[e[120]||(e[120]=a("div",{class:"yeji-chart-panel__label"},"接诊诊单 × 金额(散点)",-1)),jt.value?(o(),k(C(ee),{key:0,class:"yeji-echart yeji-echart--compact",option:Da.value,autoresize:""},null,8,["option"])):(o(),k($,{key:1,description:"至少两名医生同时有接诊诊单与金额时可展示","image-size":72}))])]),_:1}),d(J,{xs:24,lg:12},{default:_(()=>[a("div",gs,[e[121]||(e[121]=a("div",{class:"yeji-chart-panel__label"},"TOP 医生雷达(相对最高值归一)",-1)),xt.value?(o(),k(C(ee),{key:0,class:"yeji-echart yeji-echart--compact",option:Ca.value,autoresize:""},null,8,["option"])):(o(),k($,{key:1,description:"至少两名医生有数据时可展示","image-size":72}))])]),_:1})]),_:1})])):v("",!0),(o(!0),u(w,null,E(ie.value,(l,b)=>(o(),u(w,{key:"dept-chart-"+b},[Ft(l)?(o(),u("section",ws,[a("h3",ks,r(na(l)),1),d(C(ee),{class:"yeji-echart yeji-echart--tall",option:yn(l),autoresize:""},null,8,["option"]),oa(l)||sa(l)?(o(),k(ge,{key:0,gutter:16,class:"yeji-chart-subrow"},{default:_(()=>[oa(l)?(o(),k(J,{key:0,xs:24,md:12},{default:_(()=>[a("div",js,[e[122]||(e[122]=a("div",{class:"yeji-chart-panel__label"}," 进线 → 接诊 → 成交(汇总漏斗) ",-1)),d(C(ee),{class:"yeji-echart yeji-echart--compact",option:gn(l),autoresize:""},null,8,["option"])])]),_:2},1024)):v("",!0),sa(l)?(o(),k(J,{key:1,xs:24,md:12},{default:_(()=>[a("div",xs,[e[123]||(e[123]=a("div",{class:"yeji-chart-panel__label"}," 部门合计业绩占比(TOP10 + 其它) ",-1)),d(C(ee),{class:"yeji-echart yeji-echart--compact",option:wn(l),autoresize:""},null,8,["option"])])]),_:2},1024)):v("",!0)]),_:2},1024)):v("",!0)])):v("",!0)],64))),128)),ne.value&&N.value?(o(!0),u(w,{key:1},E(Vt.value,l=>(o(),u("section",{key:"lb-chart-"+l.dept_id,class:"yeji-chart-block"},[a("h3",Ns,[c(r(l.dept_name)+" · 医助 ",1),N.value.channel_name?(o(),u("span",Ss," ("+r(N.value.channel_name)+") ",1)):v("",!0),a("span",Ds,r(N.value.start_date)+"~"+r(N.value.end_date),1)]),d(ge,{gutter:16},{default:_(()=>[d(J,{xs:24,lg:la(l)?14:24},{default:_(()=>[d(C(ee),{class:"yeji-echart",option:hn(l,N.value),autoresize:""},null,8,["option"])]),_:2},1032,["lg"]),la(l)?(o(),k(J,{key:0,xs:24,lg:10},{default:_(()=>[a("div",Cs,[e[124]||(e[124]=a("div",{class:"yeji-chart-panel__label"},"诊金占比",-1)),d(C(ee),{class:"yeji-echart yeji-echart--compact",option:bn(l,N.value),autoresize:""},null,8,["option"])])]),_:2},1024)):v("",!0)]),_:2},1024)]))),128)):v("",!0)],64)):!te.value&&(!H.value||!Ae.value)&&(!ne.value||!re.value)?(o(),k($,{key:1,class:"yeji-charts-empty",description:"当前筛选下暂无图表数据,请调整条件后查询"})):v("",!0)])),[[F,te.value||H.value&&Ae.value||ne.value&&re.value]])]),_:1}),d(Oe,{modelValue:le.value,"onUpdate:modelValue":e[5]||(e[5]=l=>le.value=l),direction:"rtl",size:"min(1120px, 98vw)","destroy-on-close":"",class:"yeji-order-drawer","show-close":!0},{header:_(()=>[a("div",Ls,[a("h3",zs,r(Je.value),1),a("p",$s,r(qe.value),1)])]),default:_(()=>[a("div",As,[a("section",Rs,[a("div",Ps,[e[126]||(e[126]=a("span",{class:"yeji-order-drawer__stat-label"},"符合条件的订单",-1)),a("span",Ts,r(lt.value.toLocaleString("zh-CN"))+" 笔",1)]),a("div",Is,[e[127]||(e[127]=a("span",{class:"yeji-order-drawer__stat-label"},[c(" 约诊 "),a("span",{class:"yeji-order-drawer__stat-note"},"(已完成挂号;日期按挂号 appointment_date;医助=挂号或诊单,与看板接诊一致)")],-1)),a("span",Ms,r(Ut.value===null?"—":Ut.value.toLocaleString("zh-CN"))+" 次",1)]),Ht.value&&W.value?(o(),u(w,{key:0},[a("div",Os,[a("span",Es,[e[128]||(e[128]=c(" 合计业绩 ",-1)),a("span",Vs,"(与看板「合计业绩」列同口径,不限渠道;"+r(W.value.totalOrderCount.toLocaleString("zh-CN"))+" 笔)",1)]),a("span",Fs," ¥"+r(it(W.value.totalAmount)),1)]),a("div",Bs,[a("span",Ys,[c(r(St.value)+"业绩 ",1),a("span",Us,"(与看板「"+r(St.value)+"业绩」同口径;"+r(W.value.channelOrderCount.toLocaleString("zh-CN"))+" 笔)",1)]),a("span",Hs," ¥"+r(it(Pa.value)),1)])],64)):(o(),u("div",Ws,[e[129]||(e[129]=a("span",{class:"yeji-order-drawer__stat-label"},[c(" 业务订单金额合计 "),a("span",{class:"yeji-order-drawer__stat-note"},"(不含履约 4·9·10,与上方业绩口径一致)")],-1)),a("span",Js," ¥"+r(it(Yt.value)),1)])),ye.value.length>0?(o(),u("div",qs,[e[130]||(e[130]=a("span",{class:"yeji-order-drawer__stat-label"},"本页小计",-1)),a("span",Gs,"¥"+r(it(Ra.value)),1)])):v("",!0)]),Ht.value?(o(),k(Ie,{key:0,modelValue:G.value,"onUpdate:modelValue":e[4]||(e[4]=l=>G.value=l),class:"yeji-order-drawer__list-tabs",onTabChange:Qa},{default:_(()=>[d(Q,{label:"合计业绩(全量订单)",name:"total"}),d(Q,{label:`渠道筛选(${St.value})`,name:"channel"},null,8,["label"])]),_:1},8,["modelValue"])):v("",!0),X((o(),u("div",Zs,[ye.value.length>0||fe.value?(o(),k(P,{key:0,data:ye.value,size:"small",stripe:"",border:"","max-height":"58vh",class:"yeji-order-drawer__table","empty-text":fe.value?"加载中…":"暂无数据"},{default:_(()=>[d(p,{type:"index",label:"#",width:"46",index:Ha}),d(p,{prop:"order_no",label:"订单号","min-width":"152","show-overflow-tooltip":""}),d(p,{label:"关联挂号","min-width":"218"},{default:_(({row:l})=>[l.linked_appointment?(o(),u("div",Xs,[a("div",Ks,[e[131]||(e[131]=a("span",{class:"yeji-order-appt-k"},"日期",-1)),c(" "+r(Wa(l.linked_appointment)),1)]),a("div",Qs,[e[132]||(e[132]=a("span",{class:"yeji-order-appt-k"},"状态",-1)),c(" "+r(l.linked_appointment.status_desc||"—")+" ",1),l.linked_appointment.doctor_name?(o(),u("span",ei," · "+r(l.linked_appointment.doctor_name),1)):v("",!0)]),a("div",ti,[e[133]||(e[133]=a("span",{class:"yeji-order-appt-k"},"类型",-1)),c(" "+r(l.linked_appointment.appointment_type_desc||"—"),1)]),a("div",ai,[e[135]||(e[135]=a("span",{class:"yeji-order-appt-k"},"渠道",-1)),a("span",ni,[c(r(l.linked_appointment.channel_source_desc||l.linked_appointment.channel_source||"—")+" ",1),qt(l.linked_appointment)!==""?(o(),u("span",li," (字典 value "+r(qt(l.linked_appointment))+" ) ",1)):v("",!0)]),d(T,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[134]||(e[134]=[a("div",{style:{"max-width":"280px","line-height":"1.65","font-size":"12px"}},[c(" 「字典 value」= 系统字典 "),a("b",null,"channels"),c(" 的 value,与业绩表里按渠道收窄时所用"),a("b",null,"挂号 channels"),c("一致;便于和进线列所选渠道对照,"),a("b",null,"不是"),c("企微 add_external_contact 单上的独立编号。 ")],-1)])]),default:_(()=>[d(j,{class:"yeji-order-appt-info","aria-label":"说明"},{default:_(()=>[d(C(B))]),_:1})]),_:1})])])):(o(),u("span",oi,"—"))]),_:1}),d(p,{label:"金额",width:"108",align:"right"},{default:_(({row:l})=>[a("span",si,"¥"+r(l.amount??"—"),1)]),_:1}),d(p,{prop:"recipient_name",label:"收货人",width:"96","show-overflow-tooltip":""}),d(p,{label:"履约",width:"104","show-overflow-tooltip":""},{default:_(({row:l})=>[c(r(Ua(l.fulfillment_status)),1)]),_:1}),d(p,{label:"创建时间","min-width":"148"},{default:_(({row:l})=>[c(r(Ja(l.create_time)),1)]),_:1}),d(p,{prop:"doctor_name",label:"开方人",width:"88","show-overflow-tooltip":""}),d(p,{prop:"assistant_name",label:"诊单医助",width:"88","show-overflow-tooltip":""}),d(p,{prop:"creator_name",label:"创建人",width:"88","show-overflow-tooltip":""})]),_:1},8,["data","empty-text"])):v("",!0),!fe.value&&ye.value.length===0?(o(),k($,{key:1,description:"暂无业务订单"})):v("",!0),a("div",ii,[d(Me,{"current-page":K.value,"page-size":ot.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:lt.value,"page-sizes":[10,15,20,50],disabled:fe.value,"hide-on-single-page":!1,onCurrentChange:en,onSizeChange:tn},null,8,["current-page","page-size","total","disabled"])])])),[[F,fe.value]])])]),_:1},8,["modelValue"]),d(we,{modelValue:vt.value,"onUpdate:modelValue":e[6]||(e[6]=l=>vt.value=l),width:"min(680px, 94vw)","destroy-on-close":"",class:"yeji-unassigned-dialog"},{header:_(()=>[a("div",ri,[e[136]||(e[136]=a("span",{class:"yeji-unassigned-dialog__title"},"「未归属中心」业绩拆解",-1)),a("p",di,r(Tt.value),1)])]),default:_(()=>[Ve.value?(o(),u("p",ui,r(Ve.value),1)):v("",!0),X((o(),u("div",ci,[xe.value.length>0||je.value?(o(),k(P,{key:0,data:xe.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":je.value?"加载中…":"暂无数据"},{default:_(()=>[d(p,{prop:"name",label:"诊单医助","min-width":"120","show-overflow-tooltip":""}),d(p,{label:"账号",width:"88",align:"right"},{default:_(({row:l})=>[c(r(l.admin_id>0?l.admin_id:"—"),1)]),_:1}),d(p,{label:"订单数",width:"88",align:"right"},{default:_(({row:l})=>[c(r(D(l.order_count)),1)]),_:1}),d(p,{label:"业绩金额","min-width":"112",align:"right"},{default:_(({row:l})=>[c(r(I(l.amount)),1)]),_:1})]),_:1},8,["data","empty-text"])):v("",!0),!je.value&&xe.value.length===0?(o(),k($,{key:1,description:"暂无拆解数据"})):v("",!0)])),[[F,je.value]])]),_:1},8,["modelValue"]),d(we,{modelValue:yt.value,"onUpdate:modelValue":e[7]||(e[7]=l=>yt.value=l),width:"min(920px, 96vw)","destroy-on-close":"",class:"yeji-leadlines-dialog"},{header:_(()=>[a("div",_i,[e[137]||(e[137]=a("span",{class:"yeji-unassigned-dialog__title"},"进线数据明细",-1)),a("p",pi,r(Ot.value),1)])]),default:_(()=>[Be.value?(o(),u("p",mi,r(Be.value),1)):v("",!0),X((o(),u("div",vi,[De.value.length>0||pe.value?(o(),k(P,{key:0,data:De.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":pe.value?"加载中…":"暂无数据"},{default:_(()=>[d(p,{prop:"event_time_text",label:"进线时间","min-width":"156","show-overflow-tooltip":""}),d(p,{prop:"reception_admin_name",label:"接待",width:"88","show-overflow-tooltip":""}),d(p,{prop:"external_contact_name",label:"客户","min-width":"100","show-overflow-tooltip":""}),d(p,{prop:"external_userid",label:"外部联系人ID","min-width":"140","show-overflow-tooltip":""}),d(p,{prop:"user_id",label:"企微成员ID","min-width":"120","show-overflow-tooltip":""}),d(p,{prop:"state",label:"渠道参数",width:"96","show-overflow-tooltip":""})]),_:1},8,["data","empty-text"])):v("",!0),!pe.value&&De.value.length===0?(o(),k($,{key:1,description:"暂无进线明细"})):v("",!0),Ye.value>0?(o(),u("div",fi,[d(Me,{"current-page":Ue.value,"page-size":tt.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:Ye.value,"page-sizes":[10,20,50,100],disabled:pe.value,"hide-on-single-page":!1,onCurrentChange:rn,onSizeChange:dn},null,8,["current-page","page-size","total","disabled"])])):v("",!0)])),[[F,pe.value]])]),_:1},8,["modelValue"]),d(we,{modelValue:at.value,"onUpdate:modelValue":e[8]||(e[8]=l=>at.value=l),width:"min(960px, 96vw)","destroy-on-close":"",class:"yeji-leadlines-dialog"},{header:_(()=>[a("div",yi,[e[138]||(e[138]=a("span",{class:"yeji-unassigned-dialog__title"},"预约诊单 · 挂号明细",-1)),a("p",hi,r(ht.value),1)])]),default:_(()=>[Ce.value?(o(),u("p",bi,r(Ce.value),1)):v("",!0),X((o(),u("div",gi,[de.value.length>0||me.value?(o(),k(P,{key:0,data:de.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":me.value?"加载中…":"暂无数据"},{default:_(()=>[d(p,{type:"index",label:"#",width:"46",index:un}),d(p,{prop:"appointment_date",label:"预约日期",width:"108"}),d(p,{prop:"appointment_time",label:"时段","min-width":"96","show-overflow-tooltip":""}),d(p,{prop:"status_desc",label:"状态",width:"84"}),d(p,{prop:"appointment_type_desc",label:"类型",width:"92"}),d(p,{prop:"patient_name",label:"患者","min-width":"92","show-overflow-tooltip":""}),d(p,{prop:"patient_phone",label:"手机","min-width":"116","show-overflow-tooltip":""}),d(p,{prop:"doctor_name",label:"接诊医生",width:"92","show-overflow-tooltip":""}),d(p,{prop:"assistant_name",label:"医助",width:"88","show-overflow-tooltip":""}),d(p,{label:"诊单ID",width:"84",align:"right"},{default:_(({row:l})=>[c(r(D(l.diagnosis_id??0)),1)]),_:1}),ka.value?(o(),k(p,{key:0,prop:"channel_source",label:"渠道来源",width:"96","show-overflow-tooltip":""})):v("",!0)]),_:1},8,["data","empty-text"])):v("",!0),!me.value&&de.value.length===0?(o(),k($,{key:1,description:"暂无挂号记录"})):v("",!0),Le.value>0?(o(),u("div",wi,[d(Me,{"current-page":ve.value,"page-size":ze.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:Le.value,"page-sizes":[10,20,50,100],disabled:me.value,"hide-on-single-page":!1,onCurrentChange:pn,onSizeChange:mn},null,8,["current-page","page-size","total","disabled"])])):v("",!0)])),[[F,me.value]])]),_:1},8,["modelValue"]),d(we,{modelValue:ft.value,"onUpdate:modelValue":e[9]||(e[9]=l=>ft.value=l),width:"min(560px, 94vw)","destroy-on-close":"",class:"yeji-unassigned-dialog"},{header:_(()=>[a("div",ki,[e[139]||(e[139]=a("span",{class:"yeji-unassigned-dialog__title"},"复诊 · 医助拆解",-1)),a("p",ji,r(It.value),1)])]),default:_(()=>[Fe.value?(o(),u("p",xi,r(Fe.value),1)):v("",!0),X((o(),u("div",Ni,[Se.value.length>0||Ne.value?(o(),k(P,{key:0,data:Se.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":Ne.value?"加载中…":"暂无数据"},{default:_(()=>[d(p,{prop:"name",label:"医助","min-width":"120","show-overflow-tooltip":""}),d(p,{label:"业务订单",width:"108",align:"right"},{default:_(({row:l})=>[Number(l.order_count)>0?(o(),u("span",{key:0,class:"yeji-lead-cell--link",role:"button",tabindex:"0",onClick:b=>Qt(l),onKeydown:el(Z(b=>Qt(l),["prevent"]),["enter"])},r(D(l.order_count))+" 笔",41,Si)):(o(),u(w,{key:1},[c(r(D(l.order_count)),1)],64))]),_:1})]),_:1},8,["data","empty-text"])):v("",!0),!Ne.value&&Se.value.length===0?(o(),k($,{key:1,description:"暂无拆解数据"})):v("",!0)])),[[F,Ne.value]])]),_:1},8,["modelValue"])])}}}),kr=yl($i,[["__scopeId","data-v-effad763"]]);export{kr as default}; diff --git a/server/public/admin/assets/yeji-68hw5EWU.css b/server/public/admin/assets/yeji-68hw5EWU.css deleted file mode 100644 index d8dd5092..00000000 --- a/server/public/admin/assets/yeji-68hw5EWU.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.yeji-page[data-v-effad763]{min-width:0;--yj-brand: #6366f1;--yj-brand-soft: #eef2ff;--yj-teal: #0ea5e9;--yj-teal-soft: #f0f9ff;--yj-accent: #f43f5e;--yj-accent-soft: #fff1f2;--yj-ink: #1e293b;--yj-ink-secondary: #475569;--yj-muted: #64748b;--yj-line: #e2e8f0;--yj-line-strong: #cbd5e1;--yj-surface: #ffffff;--yj-surface-muted: #f8fafc;--yj-page: #f1f5f9;--yj-shadow-sm: 0 1px 3px rgba(0,0,0,.06);--yj-shadow-md: 0 4px 16px rgba(0,0,0,.06);--yj-radius: 16px;--yj-radius-sm: 10px;--yj-font: "Inter", var(--el-font-family), system-ui, sans-serif;--yj-dept-col-bg: #eef2ff;--yj-dept-col-bg-hover: #e0e7ff;--yj-dept-col-head-start: #e0e7ff;--yj-dept-col-head-end: #e8ecff;--yj-dept-col-border: #c7d2fe;--yj-dept-col-head-ink: #3730a3;min-height:100%;padding:24px;font-family:var(--yj-font);color:var(--yj-ink);background:var(--yj-page)}.yeji-masthead[data-v-effad763]{margin-bottom:24px}.yeji-masthead__inner[data-v-effad763]{display:flex;align-items:center;gap:16px;padding:28px 32px;background:linear-gradient(135deg,#1e293b,#334155);border-radius:var(--yj-radius);box-shadow:var(--yj-shadow-md)}.yeji-masthead__title[data-v-effad763]{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:-.03em;color:#fff;line-height:1.2}.yeji-masthead__desc[data-v-effad763]{margin:6px 0 0;font-size:.875rem;line-height:1.5;color:#94a3b8}.yeji-panel[data-v-effad763]{margin-bottom:20px;border-radius:var(--yj-radius);border:1px solid var(--yj-line);background:var(--yj-surface);box-shadow:var(--yj-shadow-sm)}.yeji-panel[data-v-effad763] .el-card__body{padding:0}.filter-card[data-v-effad763]{overflow:hidden;border-radius:var(--yj-radius)}.yeji-main-tabs-card[data-v-effad763]{margin-bottom:20px;box-shadow:var(--yj-shadow-md)}.yeji-main-tabs-card[data-v-effad763] .el-card__body{padding:0 0 18px}.yeji-charts-only-card[data-v-effad763]{margin-bottom:20px;box-shadow:var(--yj-shadow-md)}.yeji-charts-only-card[data-v-effad763] .el-card__body{padding:0}.yeji-charts-only-card .yeji-charts-stack[data-v-effad763]{padding:16px 20px 4px}.yeji-charts-only-head[data-v-effad763]{padding:16px 20px 12px;font-size:15px;font-weight:700;color:var(--yj-ink);border-bottom:1px solid var(--yj-line)}.yeji-table-tabs-head[data-v-effad763]{padding:14px 20px 10px;background:var(--yj-surface-muted);border-bottom:1px solid var(--yj-line)}.yeji-table-tabs-head__title[data-v-effad763]{display:block;font-size:15px;font-weight:700;color:var(--yj-ink);line-height:1.3}.yeji-table-tabs-head__hint[data-v-effad763]{display:block;margin-top:6px;font-size:12px;font-weight:500;color:var(--yj-muted);line-height:1.45}.yeji-tab-pane-stack[data-v-effad763]{min-height:100px}.yeji-zyyt-intro[data-v-effad763]{margin:0 20px 14px;padding-top:4px;font-size:.8125rem;line-height:1.65;color:#64748b}.yeji-view-tabs[data-v-effad763] .el-tabs__header{margin:0;padding:0 20px;background:var(--yj-surface-muted);border-bottom:1px solid var(--yj-line)}.yeji-view-tabs[data-v-effad763] .el-tabs__nav-wrap:after{display:none}.yeji-view-tabs[data-v-effad763] .el-tabs__nav{border:none}.yeji-view-tabs[data-v-effad763] .el-tabs__item{font-weight:600;font-size:13px;height:44px;line-height:44px;padding:0 20px;color:var(--yj-muted);border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.yeji-view-tabs[data-v-effad763] .el-tabs__item:hover{color:var(--yj-ink)}.yeji-view-tabs[data-v-effad763] .el-tabs__item.is-active{color:var(--yj-brand);border-bottom-color:var(--yj-brand);font-weight:700}.yeji-view-tabs[data-v-effad763] .el-tabs__active-bar{display:none}.yeji-view-tabs[data-v-effad763] .el-tabs__content{padding:20px;overflow:visible}.yeji-view-tabs[data-v-effad763] .el-tab-pane{overflow:visible}.yeji-charts-intro[data-v-effad763]{margin:0 0 16px;padding:12px 16px;font-size:12px;line-height:1.6;color:var(--yj-muted);background:var(--yj-surface-muted);border-radius:var(--yj-radius-sm);border:1px solid var(--yj-line)}.yeji-charts-stack[data-v-effad763]{display:flex;flex-direction:column;gap:20px;min-height:120px}.yeji-charts-empty[data-v-effad763]{padding:48px 16px}.yeji-chart-block[data-v-effad763]{padding:20px;background:var(--yj-surface);border-radius:var(--yj-radius-sm);border:1px solid var(--yj-line)}.yeji-chart-block__title[data-v-effad763]{margin:0 0 16px;font-size:1rem;font-weight:700;color:var(--yj-ink);display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px}.yeji-chart-block__sub[data-v-effad763]{font-size:12px;font-weight:600;color:var(--yj-teal)}.yeji-chart-block__sub--muted[data-v-effad763]{font-size:11px;font-weight:500;color:var(--yj-muted)}.yeji-chart-subrow[data-v-effad763]{margin-top:4px}.yeji-chart-panel[data-v-effad763]{border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);padding:14px;background:var(--yj-surface);height:100%;transition:box-shadow .2s}.yeji-chart-panel[data-v-effad763]:hover{box-shadow:var(--yj-shadow-sm)}.yeji-chart-panel__label[data-v-effad763]{font-size:12px;font-weight:700;letter-spacing:.03em;color:var(--yj-muted);margin-bottom:10px}.yeji-echart[data-v-effad763]{width:100%;height:320px;min-height:240px}.yeji-echart--short[data-v-effad763]{height:280px;min-height:220px}.yeji-echart--tall[data-v-effad763]{height:400px;min-height:300px}.yeji-echart--compact[data-v-effad763]{height:288px;min-height:232px}.doctor-daily-card--nested[data-v-effad763]{margin-bottom:20px}.doctor-daily-card[data-v-effad763]{box-shadow:var(--yj-shadow-sm)}.doctor-daily-card[data-v-effad763] .el-card__header{padding:16px 22px;background:var(--yj-surface-muted);border-bottom:1px solid var(--yj-line)}.doctor-daily-card[data-v-effad763] .el-card__body{padding:18px 22px 22px}.doctor-daily-card__head[data-v-effad763]{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.doctor-daily-card__title[data-v-effad763]{font-weight:700;font-size:1.0625rem;color:var(--yj-ink)}.doctor-daily-card__title-block[data-v-effad763]{display:flex;flex-direction:column;gap:6px}.doctor-daily-card__range[data-v-effad763]{font-size:12px;font-weight:600;color:var(--yj-teal)}.doctor-daily-card__tools[data-v-effad763]{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.doctor-daily-card__lbl[data-v-effad763]{font-size:12px;color:var(--el-text-color-secondary)}.doctor-daily-card__picker[data-v-effad763]{width:150px}.doctor-daily-card__hint[data-v-effad763]{margin:0 0 16px;padding:14px 16px;font-size:12px;line-height:1.65;color:var(--yj-ink-secondary);background:var(--yj-brand-soft);border-radius:var(--yj-radius-sm);border:1px solid rgba(37,99,235,.12)}.doctor-daily-table[data-v-effad763]{width:100%;border-radius:var(--yj-radius-sm);overflow:hidden}.doctor-daily-table[data-v-effad763] .el-table__header th{background:var(--yj-surface-muted)!important;color:var(--yj-ink-secondary)!important;font-weight:600;font-size:12px}.doctor-daily-table[data-v-effad763] .el-table__footer-wrapper td{font-weight:700;background:var(--yj-accent-soft)!important;font-size:13px}.filter-surface[data-v-effad763]{padding:20px;background:var(--yj-surface)}.filter-row--top[data-v-effad763]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 20px}.filter-field[data-v-effad763]{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.filter-field .lbl[data-v-effad763]{font-size:12px;font-weight:600;color:var(--yj-muted);letter-spacing:.02em}.filter-field--wide[data-v-effad763]{flex:1 1 280px;min-width:240px}.filter-field--date-top[data-v-effad763]{flex:1 1 320px;min-width:260px}.filter-select[data-v-effad763]{width:100%}.filter-select--channel[data-v-effad763]{min-width:220px;max-width:320px}.filter-select--dept[data-v-effad763]{min-width:280px}.filter-dept-tree-wrap[data-v-effad763]{min-height:32px}.filter-dept-tree-select[data-v-effad763]{width:100%}.filter-date-picker[data-v-effad763]{width:100%;max-width:320px}.filter-hint[data-v-effad763]{display:none}.filter-quick[data-v-effad763]{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.filter-quick__title[data-v-effad763]{flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--yj-muted)}.date-pills[data-v-effad763]{display:flex;flex-wrap:wrap;gap:8px}.date-pill[data-v-effad763]{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;border:1px solid var(--yj-line);background:var(--yj-surface);color:var(--yj-ink-secondary);font-size:12px;font-weight:600;font-family:inherit;padding:7px 14px;border-radius:6px;cursor:pointer;line-height:1.4;transition:all .15s ease}.date-pill[data-v-effad763]:hover{border-color:var(--yj-brand);color:var(--yj-brand);background:var(--yj-brand-soft)}.date-pill[data-v-effad763]:focus-visible{outline:2px solid var(--yj-brand);outline-offset:2px}.filter-actions[data-v-effad763]{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.filter-btn[data-v-effad763]{padding:8px 20px;font-weight:600;border-radius:var(--yj-radius-sm)}.filter-btn__icon[data-v-effad763]{margin-right:4px;font-size:15px;vertical-align:-2px}.filter-btn--query[data-v-effad763]{background:var(--yj-brand);color:#fff;border:none}.filter-btn--query[data-v-effad763]:hover{opacity:.9;color:#fff}.filter-btn--reset[data-v-effad763]{border:1px solid var(--yj-line);background:var(--yj-surface)}.filter-btn--reset[data-v-effad763]:hover{border-color:var(--yj-brand);color:var(--yj-brand)}.filter-btn--reset[data-v-effad763]:disabled{opacity:.5}.channel-opt-row[data-v-effad763]{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding-right:4px}.opt-name[data-v-effad763]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.opt-count[data-v-effad763]{flex-shrink:0;font-size:12px;color:var(--yj-muted)}.filter-alert[data-v-effad763]{margin-bottom:12px}.tables-wrap[data-v-effad763]{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.leaderboards-wrap[data-v-effad763]{margin-top:22px;min-height:48px}.leaderboard-hint[data-v-effad763]{margin:0 0 16px;padding:14px 16px;font-size:13px;color:var(--yj-ink-secondary);line-height:1.6;background:var(--yj-surface);border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);box-shadow:var(--yj-shadow-sm)}.leaderboard-hint .muted[data-v-effad763]{display:block;margin-top:8px;color:var(--yj-muted);font-size:12px}.tp-good[data-v-effad763]{color:#15803d!important;font-weight:700}.tp-mid[data-v-effad763]{color:#c2410c!important;font-weight:700}.tp-bad[data-v-effad763]{color:#b91c1c!important;font-weight:700}.tp-matrix-wrap[data-v-effad763]{min-height:120px;padding:8px 4px 16px}.tp-matrix__title[data-v-effad763]{margin:0 0 18px;text-align:center;font-size:16px;font-weight:700;color:var(--yj-ink);letter-spacing:.02em}.tp-matrix[data-v-effad763]{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;align-items:stretch}@media(max-width:1600px){.tp-matrix[data-v-effad763]{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.tp-matrix[data-v-effad763]{grid-template-columns:repeat(2,minmax(0,1fr))}}.tp-matrix-card[data-v-effad763]{display:flex;flex-direction:column;min-width:0;border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);background:var(--yj-surface);box-shadow:var(--yj-shadow-sm);font-size:12px;overflow:hidden}.tp-matrix-card__head[data-v-effad763]{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 12px;background:var(--yj-brand-soft);border-bottom:1px solid var(--yj-line)}.tp-matrix-card__titles[data-v-effad763]{display:flex;flex-direction:column;gap:2px;min-width:0}.tp-matrix-card__parent[data-v-effad763]{font-size:11px;font-weight:600;color:var(--yj-muted);line-height:1.2}.tp-matrix-card__name[data-v-effad763]{font-weight:700;font-size:12px;color:var(--yj-ink);line-height:1.35}.tp-matrix-card__target[data-v-effad763]{flex-shrink:0;font-size:13px;font-weight:700;color:var(--yj-accent);font-variant-numeric:tabular-nums}.tp-matrix-card__table[data-v-effad763]{width:100%;border-collapse:collapse}.tp-matrix-card__lbl[data-v-effad763]{padding:7px 10px;color:var(--yj-muted);font-size:11px;border-bottom:1px solid var(--yj-line);white-space:nowrap}.tp-matrix-card__num[data-v-effad763]{padding:7px 10px;font-weight:600;text-align:right;border-bottom:1px solid var(--yj-line);color:var(--yj-ink);font-variant-numeric:tabular-nums}.tp-matrix-card__num--hot[data-v-effad763]{color:var(--yj-accent);font-weight:700}.tp-matrix-card tr:last-child td[data-v-effad763]{border-bottom:none}.tp-matrix-empty[data-v-effad763]{padding:32px 16px}.leaderboard-sub[data-v-effad763]{font-size:13px;font-weight:500;opacity:.95}.leaderboard-table .th-sub[data-v-effad763]{display:block;font-size:11px;font-weight:500;opacity:.85}.leaderboard-table .col-rank[data-v-effad763]{width:52px;font-weight:600}.leaderboard-table .col-abbr[data-v-effad763]{min-width:56px}.leaderboard-table .col-name[data-v-effad763]{min-width:72px;font-weight:500}.leaderboard-table .col-consult[data-v-effad763],.leaderboard-table .col-deal[data-v-effad763],.leaderboard-table .col-assign[data-v-effad763]{width:84px;text-align:right;font-variant-numeric:tabular-nums}.leaderboard-table .col-appointment[data-v-effad763]{width:88px;text-align:right;font-variant-numeric:tabular-nums}.leaderboard-empty[data-v-effad763]{grid-column:1/-1}.yeji-table__foot--left[data-v-effad763]{text-align:left}.empty-tip[data-v-effad763]{grid-column:1/-1;background:var(--yj-surface);border-radius:var(--yj-radius-sm);padding:36px 16px;border:1px dashed var(--yj-line-strong)}.yeji-th-label[data-v-effad763]{display:inline-block;line-height:1.25;vertical-align:middle;max-width:6.5rem}.yeji-table[data-v-effad763]{background:var(--yj-surface);border-radius:var(--yj-radius);overflow:hidden;box-shadow:var(--yj-shadow-sm);border:1px solid var(--yj-line)}.yeji-table__scroll[data-v-effad763]{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;outline:none}.yeji-table__scroll[data-v-effad763]::-webkit-scrollbar{height:10px}.yeji-table__scroll[data-v-effad763]::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--yj-muted) 50%,transparent);border-radius:999px}.yeji-table__scroll[data-v-effad763]::-webkit-scrollbar-track{background:var(--yj-surface-muted)}.yeji-table__scroll[data-v-effad763]:focus-visible{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--yj-brand) 40%,transparent)}.yeji-table__header[data-v-effad763]{background:var(--yj-surface-muted);color:var(--yj-ink);font-weight:700;font-size:14px;text-align:center;padding:14px 16px;border-bottom:1px solid var(--yj-line)}.yeji-table__body[data-v-effad763]{width:100%;border-collapse:collapse;text-align:center;font-size:13px;color:var(--yj-ink)}.yeji-table__body thead th.col-dept[data-v-effad763],.yeji-table__body thead th.col-abbr[data-v-effad763]{min-width:88px;background:linear-gradient(180deg,var(--yj-dept-col-head-start) 0%,var(--yj-dept-col-head-end) 100%);color:var(--yj-dept-col-head-ink);font-weight:700;border-right:2px solid var(--yj-dept-col-border);box-shadow:inset 0 1px #ffffff59}.yeji-table__body thead th.col-abbr[data-v-effad763]{min-width:56px}.yeji-table__body tbody td.col-dept[data-v-effad763],.yeji-table__body tbody td.col-abbr[data-v-effad763]{background:var(--yj-dept-col-bg);color:var(--yj-ink);font-weight:600;border-right:2px solid var(--yj-dept-col-border);text-align:center}.yeji-table__body tbody tr.yeji-row--action:not(.yeji-row--idle):hover td.col-dept[data-v-effad763],.yeji-table__body tbody tr.yeji-row--action:not(.yeji-row--idle):hover td.col-abbr[data-v-effad763]{background:var(--yj-dept-col-bg-hover)}.yeji-table__body .total-row td.col-dept[data-v-effad763]{background:color-mix(in srgb,var(--yj-accent-soft) 55%,var(--yj-dept-col-bg) 45%);color:var(--yj-ink);font-weight:700;border-right:2px solid color-mix(in srgb,var(--yj-dept-col-border) 55%,var(--yj-line) 45%)}.yeji-table__body thead th[data-v-effad763]{background:#f1f5f9;color:var(--yj-ink-secondary);font-weight:600;padding:10px 8px;border:1px solid var(--yj-line);font-variant-numeric:tabular-nums;font-size:12px}.yeji-table__body thead th .col-info[data-v-effad763]{margin-left:4px;color:var(--yj-muted);cursor:help;vertical-align:-2px;font-size:14px;transition:color .15s}.yeji-table__body thead th .col-info[data-v-effad763]:hover{color:var(--yj-brand)}.yeji-table__body tbody td[data-v-effad763]{padding:10px 8px;border:1px solid var(--yj-line);white-space:nowrap;font-variant-numeric:tabular-nums}.yeji-table__body tbody tr.yeji-row--action[data-v-effad763]{cursor:pointer;transition:background .18s ease}.yeji-table__body tbody tr.yeji-row--action[data-v-effad763]:hover{background:var(--yj-brand-soft)}.yeji-table__body tbody tr.yeji-row--action.yeji-row--unassigned[data-v-effad763]{cursor:pointer}.yeji-table__body tbody tr.yeji-row--action.yeji-row--idle[data-v-effad763]{cursor:default}.yeji-table__body tbody tr.yeji-row--action.yeji-row--idle[data-v-effad763]:hover{background:transparent}.yeji-table__body .col-completed[data-v-effad763]{color:#0f766e;font-weight:600;background:var(--yj-teal-soft)}.yeji-table__body .total-row[data-v-effad763]{font-weight:700;background:var(--yj-accent-soft);color:var(--yj-ink)}.yeji-table__body .total-row td[data-v-effad763]{border-color:#d9770633}.yeji-table__body .roi-good[data-v-effad763]{color:#15803d;font-weight:600}.yeji-table__body .roi-mid[data-v-effad763]{color:#c2410c;font-weight:600}.yeji-table__body .roi-bad[data-v-effad763]{color:#b91c1c;font-weight:600}.yeji-table__body.yeji-table__body--data[data-v-effad763]{min-width:max(100%,1180px);width:-moz-max-content;width:max-content}.yeji-table__body.yeji-table__body--data thead th.col-dept[data-v-effad763],.yeji-table__body.yeji-table__body--data tbody td.col-dept[data-v-effad763]{position:sticky;left:0;z-index:3}.yeji-table__body.yeji-table__body--data thead th.col-dept[data-v-effad763]{z-index:6;text-align:left;padding-left:12px;padding-right:10px;box-shadow:8px 0 20px -12px #0f172a59}.yeji-table__body.yeji-table__body--data tbody td.col-dept[data-v-effad763]{box-shadow:8px 0 20px -12px #0f172a47;white-space:normal;max-width:300px;line-height:1.35;text-align:left;padding-left:12px;padding-right:10px;word-break:break-word}.yeji-table__body.yeji-table__body--data .total-row td.col-dept[data-v-effad763]{box-shadow:8px 0 20px -12px #0f172a47}.yeji-table__body.yeji-table__body--data thead th[data-v-effad763]:not(.col-dept){min-width:88px}.yeji-table__body.yeji-table__body--data thead th.col-narrow-head[data-v-effad763]{min-width:76px;max-width:112px;padding:8px 6px;vertical-align:middle;line-height:1.2}.yeji-table__body.yeji-table__body--leaderboard[data-v-effad763]{min-width:max(100%,780px);width:-moz-max-content;width:max-content}.yeji-table__body.yeji-table__body--leaderboard thead th.col-rank[data-v-effad763],.yeji-table__body.yeji-table__body--leaderboard tbody td.col-rank[data-v-effad763]{position:sticky;left:0;z-index:3}.yeji-table__body.yeji-table__body--leaderboard thead th.col-rank[data-v-effad763]{z-index:6;background:linear-gradient(180deg,var(--yj-dept-col-head-start) 0%,var(--yj-dept-col-head-end) 100%)!important;box-shadow:8px 0 20px -12px #0f172a4d}.yeji-table__body.yeji-table__body--leaderboard tbody td.col-rank[data-v-effad763]{background:var(--yj-surface);box-shadow:8px 0 20px -12px #0f172a38}.yeji-table__body.yeji-table__body--leaderboard tbody tr.yeji-row--action:hover td.col-rank[data-v-effad763]{background:var(--yj-brand-soft)}.yeji-table__foot[data-v-effad763]{padding:11px 14px;font-size:12px;color:var(--yj-muted);background:var(--yj-surface-muted);border-top:1px solid var(--yj-line);text-align:right;line-height:1.5}.yeji-order-drawer__hint[data-v-effad763]{margin:0 0 12px;font-size:13px;color:var(--yj-muted);line-height:1.5}.yeji-order-drawer__header[data-v-effad763]{padding-right:8px}.yeji-order-drawer__heading[data-v-effad763]{margin:0;font-size:18px;font-weight:700;color:var(--yj-ink);line-height:1.35;letter-spacing:-.01em}.yeji-order-drawer__sub[data-v-effad763]{margin:6px 0 0;font-size:13px;color:var(--yj-muted);line-height:1.55}.yeji-order-drawer__shell[data-v-effad763]{display:flex;flex-direction:column;gap:16px;min-height:200px}.yeji-order-drawer__stats[data-v-effad763]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.yeji-order-drawer__stat-card[data-v-effad763]{border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);padding:14px 16px;background:var(--yj-surface);display:flex;flex-direction:column;gap:8px;transition:border-color .2s ease,box-shadow .2s ease}.yeji-order-drawer__stat-card[data-v-effad763]:hover{border-color:#2563eb38;box-shadow:var(--yj-shadow-sm)}.yeji-order-drawer__stat-card--accent[data-v-effad763]{border-color:#dc26262e;background:linear-gradient(180deg,#fef2f2 0%,var(--el-fill-color-blank) 100%)}.yeji-order-drawer__stat-card--muted[data-v-effad763]{background:#f8fafc}.yeji-order-drawer__stat-card--total[data-v-effad763]{border-color:#d9770638;background:linear-gradient(180deg,#fffbeb 0%,var(--el-fill-color-blank) 100%)}.yeji-order-drawer__list-tabs[data-v-effad763] .el-tabs__header{margin:0;padding:0;border-bottom:1px solid var(--yj-line)}.yeji-order-drawer__list-tabs[data-v-effad763] .el-tabs__content{display:none}.yeji-order-drawer__list-tabs[data-v-effad763] .el-tabs__nav-wrap:after{display:none}.yeji-order-drawer__stat-label[data-v-effad763]{font-size:12px;color:var(--yj-muted);line-height:1.45}.yeji-order-drawer__stat-note[data-v-effad763]{display:block;margin-top:2px;font-size:11px;font-weight:400;color:var(--el-text-color-placeholder)}.yeji-order-drawer__stat-value[data-v-effad763]{font-size:18px;font-weight:700;color:var(--yj-ink);font-variant-numeric:tabular-nums}.yeji-order-drawer__stat-value--money[data-v-effad763]{font-size:21px;color:#b91c1c}.yeji-order-drawer__body[data-v-effad763]{flex:1;min-height:120px}.yeji-order-drawer__pager[data-v-effad763]{margin-top:4px;padding-top:10px;border-top:1px solid var(--yj-line);display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.yeji-order-appt-lines[data-v-effad763]{line-height:1.45;font-size:12px;color:var(--yj-ink, #0f172a)}.yeji-order-appt-line[data-v-effad763]{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px;margin-bottom:2px}.yeji-order-appt-line[data-v-effad763]:last-child{margin-bottom:0}.yeji-order-appt-line.yeji-order-appt-line--channel[data-v-effad763]{align-items:flex-start}.yeji-order-appt-line.yeji-order-appt-line--channel .yeji-order-appt-channel-text[data-v-effad763]{flex:1;min-width:0}.yeji-order-appt-info[data-v-effad763]{font-size:14px;color:var(--yj-muted, #94a3b8);cursor:help;flex-shrink:0;margin-top:1px}.yeji-order-appt-k[data-v-effad763]{flex:0 0 auto;font-size:11px;font-weight:600;color:var(--yj-muted, #64748b)}.yeji-order-appt-sub[data-v-effad763]{font-size:11px;color:var(--yj-muted, #64748b)}.yeji-order-appt-empty[data-v-effad763]{font-size:12px;color:var(--yj-muted, #94a3b8)}.yeji-order-amt[data-v-effad763]{color:#b91c1c;font-weight:600;font-variant-numeric:tabular-nums}[data-v-effad763] .yeji-order-drawer.el-drawer{--el-drawer-padding-primary: 18px}[data-v-effad763] .yeji-order-drawer .el-drawer__header{margin-bottom:10px;padding-bottom:12px;border-bottom:1px solid var(--yj-line, #e2e8f0)}[data-v-effad763] .yeji-order-drawer .el-pagination{flex-wrap:wrap;justify-content:flex-end}.yeji-unassigned-dialog__head[data-v-effad763]{line-height:1.35}.yeji-unassigned-dialog__title[data-v-effad763]{display:block;font-size:16px;font-weight:700;color:var(--yj-ink, #0f172a)}.yeji-unassigned-dialog__sub[data-v-effad763]{margin:6px 0 0;font-size:12px;color:var(--yj-ink-secondary, #64748b);font-weight:400}.yeji-unassigned-dialog__note[data-v-effad763]{margin:0 0 12px;padding:10px 12px;font-size:12px;line-height:1.65;color:var(--yj-ink-secondary, #64748b);background:var(--yj-accent-soft, #fff7ed);border-radius:8px;border:1px solid color-mix(in srgb,var(--yj-line, #e2e8f0) 80%,transparent)}.yeji-unassigned-dialog__body[data-v-effad763]{min-height:120px}.yeji-lead-cell--link[data-v-effad763]{color:var(--yj-brand, #2563eb);font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}tbody tr.yeji-row--action:hover .yeji-lead-cell--link[data-v-effad763],tbody tr.total-row:hover .yeji-lead-cell--link[data-v-effad763]{color:color-mix(in srgb,var(--yj-brand, #2563eb) 88%,#000)}.yeji-leadlines-dialog__pager[data-v-effad763]{margin-top:14px;display:flex;justify-content:flex-end}@media(prefers-reduced-motion:reduce){.date-pill[data-v-effad763],.filter-btn[data-v-effad763],.yeji-table__body tbody tr.yeji-row--action[data-v-effad763],.yeji-order-drawer__stat-card[data-v-effad763]{transition:none}} diff --git a/server/public/admin/assets/yeji-BVbYWtU4.css b/server/public/admin/assets/yeji-BVbYWtU4.css new file mode 100644 index 00000000..9ba4ba0e --- /dev/null +++ b/server/public/admin/assets/yeji-BVbYWtU4.css @@ -0,0 +1 @@ +@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.yeji-page[data-v-fe25bcf1]{min-width:0;--yj-brand: #6366f1;--yj-brand-soft: #eef2ff;--yj-teal: #0ea5e9;--yj-teal-soft: #f0f9ff;--yj-accent: #f43f5e;--yj-accent-soft: #fff1f2;--yj-ink: #1e293b;--yj-ink-secondary: #475569;--yj-muted: #64748b;--yj-line: #e2e8f0;--yj-line-strong: #cbd5e1;--yj-surface: #ffffff;--yj-surface-muted: #f8fafc;--yj-page: #f1f5f9;--yj-shadow-sm: 0 1px 3px rgba(0,0,0,.06);--yj-shadow-md: 0 4px 16px rgba(0,0,0,.06);--yj-radius: 16px;--yj-radius-sm: 10px;--yj-font: "Inter", var(--el-font-family), system-ui, sans-serif;--yj-dept-col-bg: #eef2ff;--yj-dept-col-bg-hover: #e0e7ff;--yj-dept-col-head-start: #e0e7ff;--yj-dept-col-head-end: #e8ecff;--yj-dept-col-border: #c7d2fe;--yj-dept-col-head-ink: #3730a3;min-height:100%;padding:24px;font-family:var(--yj-font);color:var(--yj-ink);background:var(--yj-page)}.yeji-masthead[data-v-fe25bcf1]{margin-bottom:24px}.yeji-masthead__inner[data-v-fe25bcf1]{display:flex;align-items:center;gap:16px;padding:28px 32px;background:linear-gradient(135deg,#1e293b,#334155);border-radius:var(--yj-radius);box-shadow:var(--yj-shadow-md)}.yeji-masthead__title[data-v-fe25bcf1]{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:-.03em;color:#fff;line-height:1.2}.yeji-masthead__desc[data-v-fe25bcf1]{margin:6px 0 0;font-size:.875rem;line-height:1.5;color:#94a3b8}.yeji-panel[data-v-fe25bcf1]{margin-bottom:20px;border-radius:var(--yj-radius);border:1px solid var(--yj-line);background:var(--yj-surface);box-shadow:var(--yj-shadow-sm)}.yeji-panel[data-v-fe25bcf1] .el-card__body{padding:0}.filter-card[data-v-fe25bcf1]{overflow:hidden;border-radius:var(--yj-radius)}.yeji-main-tabs-card[data-v-fe25bcf1]{margin-bottom:20px;box-shadow:var(--yj-shadow-md)}.yeji-main-tabs-card[data-v-fe25bcf1] .el-card__body{padding:0 0 18px}.yeji-charts-only-card[data-v-fe25bcf1]{margin-bottom:20px;box-shadow:var(--yj-shadow-md)}.yeji-charts-only-card[data-v-fe25bcf1] .el-card__body{padding:0}.yeji-charts-only-card .yeji-charts-stack[data-v-fe25bcf1]{padding:16px 20px 4px}.yeji-charts-only-head[data-v-fe25bcf1]{padding:16px 20px 12px;font-size:15px;font-weight:700;color:var(--yj-ink);border-bottom:1px solid var(--yj-line)}.yeji-table-tabs-head[data-v-fe25bcf1]{padding:14px 20px 10px;background:var(--yj-surface-muted);border-bottom:1px solid var(--yj-line)}.yeji-table-tabs-head__title[data-v-fe25bcf1]{display:block;font-size:15px;font-weight:700;color:var(--yj-ink);line-height:1.3}.yeji-table-tabs-head__hint[data-v-fe25bcf1]{display:block;margin-top:6px;font-size:12px;font-weight:500;color:var(--yj-muted);line-height:1.45}.yeji-tab-pane-stack[data-v-fe25bcf1]{min-height:100px}.yeji-zyyt-intro[data-v-fe25bcf1]{margin:0 20px 14px;padding-top:4px;font-size:.8125rem;line-height:1.65;color:#64748b}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__header{margin:0;padding:0 20px;background:var(--yj-surface-muted);border-bottom:1px solid var(--yj-line)}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__nav-wrap:after{display:none}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__nav{border:none}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__item{font-weight:600;font-size:13px;height:44px;line-height:44px;padding:0 20px;color:var(--yj-muted);border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__item:hover{color:var(--yj-ink)}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__item.is-active{color:var(--yj-brand);border-bottom-color:var(--yj-brand);font-weight:700}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__active-bar{display:none}.yeji-view-tabs[data-v-fe25bcf1] .el-tabs__content{padding:20px;overflow:visible}.yeji-view-tabs[data-v-fe25bcf1] .el-tab-pane{overflow:visible}.yeji-charts-intro[data-v-fe25bcf1]{margin:0 0 16px;padding:12px 16px;font-size:12px;line-height:1.6;color:var(--yj-muted);background:var(--yj-surface-muted);border-radius:var(--yj-radius-sm);border:1px solid var(--yj-line)}.yeji-charts-stack[data-v-fe25bcf1]{display:flex;flex-direction:column;gap:20px;min-height:120px}.yeji-charts-empty[data-v-fe25bcf1]{padding:48px 16px}.yeji-chart-block[data-v-fe25bcf1]{padding:20px;background:var(--yj-surface);border-radius:var(--yj-radius-sm);border:1px solid var(--yj-line)}.yeji-chart-block__title[data-v-fe25bcf1]{margin:0 0 16px;font-size:1rem;font-weight:700;color:var(--yj-ink);display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px}.yeji-chart-block__sub[data-v-fe25bcf1]{font-size:12px;font-weight:600;color:var(--yj-teal)}.yeji-chart-block__sub--muted[data-v-fe25bcf1]{font-size:11px;font-weight:500;color:var(--yj-muted)}.yeji-chart-subrow[data-v-fe25bcf1]{margin-top:4px}.yeji-chart-panel[data-v-fe25bcf1]{border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);padding:14px;background:var(--yj-surface);height:100%;transition:box-shadow .2s}.yeji-chart-panel[data-v-fe25bcf1]:hover{box-shadow:var(--yj-shadow-sm)}.yeji-chart-panel__label[data-v-fe25bcf1]{font-size:12px;font-weight:700;letter-spacing:.03em;color:var(--yj-muted);margin-bottom:10px}.yeji-echart[data-v-fe25bcf1]{width:100%;height:320px;min-height:240px}.yeji-echart--short[data-v-fe25bcf1]{height:280px;min-height:220px}.yeji-echart--tall[data-v-fe25bcf1]{height:400px;min-height:300px}.yeji-echart--compact[data-v-fe25bcf1]{height:288px;min-height:232px}.doctor-daily-card--nested[data-v-fe25bcf1]{margin-bottom:20px}.doctor-daily-card[data-v-fe25bcf1]{box-shadow:var(--yj-shadow-sm)}.doctor-daily-card[data-v-fe25bcf1] .el-card__header{padding:16px 22px;background:var(--yj-surface-muted);border-bottom:1px solid var(--yj-line)}.doctor-daily-card[data-v-fe25bcf1] .el-card__body{padding:18px 22px 22px}.doctor-daily-card__head[data-v-fe25bcf1]{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.doctor-daily-card__title[data-v-fe25bcf1]{font-weight:700;font-size:1.0625rem;color:var(--yj-ink)}.doctor-daily-card__title-block[data-v-fe25bcf1]{display:flex;flex-direction:column;gap:6px}.doctor-daily-card__range[data-v-fe25bcf1]{font-size:12px;font-weight:600;color:var(--yj-teal)}.doctor-daily-card__tools[data-v-fe25bcf1]{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.doctor-daily-card__lbl[data-v-fe25bcf1]{font-size:12px;color:var(--el-text-color-secondary)}.doctor-daily-card__picker[data-v-fe25bcf1]{width:150px}.doctor-daily-card__hint[data-v-fe25bcf1]{margin:0 0 16px;padding:14px 16px;font-size:12px;line-height:1.65;color:var(--yj-ink-secondary);background:var(--yj-brand-soft);border-radius:var(--yj-radius-sm);border:1px solid rgba(37,99,235,.12)}.doctor-daily-table[data-v-fe25bcf1]{width:100%;border-radius:var(--yj-radius-sm);overflow:hidden}.doctor-daily-table[data-v-fe25bcf1] .el-table__header th{background:var(--yj-surface-muted)!important;color:var(--yj-ink-secondary)!important;font-weight:600;font-size:12px}.doctor-daily-table[data-v-fe25bcf1] .el-table__footer-wrapper td{font-weight:700;background:var(--yj-accent-soft)!important;font-size:13px}.filter-surface[data-v-fe25bcf1]{padding:20px;background:var(--yj-surface)}.filter-row--top[data-v-fe25bcf1]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 20px}.filter-field[data-v-fe25bcf1]{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.filter-field .lbl[data-v-fe25bcf1]{font-size:12px;font-weight:600;color:var(--yj-muted);letter-spacing:.02em}.filter-field--wide[data-v-fe25bcf1]{flex:1 1 280px;min-width:240px}.filter-field--date-top[data-v-fe25bcf1]{flex:1 1 320px;min-width:260px}.filter-select[data-v-fe25bcf1]{width:100%}.filter-select--channel[data-v-fe25bcf1]{min-width:220px;max-width:320px}.filter-select--dept[data-v-fe25bcf1]{min-width:280px}.filter-dept-tree-wrap[data-v-fe25bcf1]{min-height:32px}.filter-dept-tree-select[data-v-fe25bcf1]{width:100%}.filter-date-picker[data-v-fe25bcf1]{width:100%;max-width:320px}.filter-hint[data-v-fe25bcf1]{display:none}.filter-quick[data-v-fe25bcf1]{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.filter-quick__title[data-v-fe25bcf1]{flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--yj-muted)}.date-pills[data-v-fe25bcf1]{display:flex;flex-wrap:wrap;gap:8px}.date-pill[data-v-fe25bcf1]{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;border:1px solid var(--yj-line);background:var(--yj-surface);color:var(--yj-ink-secondary);font-size:12px;font-weight:600;font-family:inherit;padding:7px 14px;border-radius:6px;cursor:pointer;line-height:1.4;transition:all .15s ease}.date-pill[data-v-fe25bcf1]:hover{border-color:var(--yj-brand);color:var(--yj-brand);background:var(--yj-brand-soft)}.date-pill[data-v-fe25bcf1]:focus-visible{outline:2px solid var(--yj-brand);outline-offset:2px}.filter-actions[data-v-fe25bcf1]{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.filter-btn[data-v-fe25bcf1]{padding:8px 20px;font-weight:600;border-radius:var(--yj-radius-sm)}.filter-btn__icon[data-v-fe25bcf1]{margin-right:4px;font-size:15px;vertical-align:-2px}.filter-btn--query[data-v-fe25bcf1]{background:var(--yj-brand);color:#fff;border:none}.filter-btn--query[data-v-fe25bcf1]:hover{opacity:.9;color:#fff}.filter-btn--reset[data-v-fe25bcf1]{border:1px solid var(--yj-line);background:var(--yj-surface)}.filter-btn--reset[data-v-fe25bcf1]:hover{border-color:var(--yj-brand);color:var(--yj-brand)}.filter-btn--reset[data-v-fe25bcf1]:disabled{opacity:.5}.channel-opt-row[data-v-fe25bcf1]{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding-right:4px}.opt-name[data-v-fe25bcf1]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.opt-count[data-v-fe25bcf1]{flex-shrink:0;font-size:12px;color:var(--yj-muted)}.filter-alert[data-v-fe25bcf1]{margin-bottom:12px}.tables-wrap[data-v-fe25bcf1]{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.leaderboards-wrap[data-v-fe25bcf1]{margin-top:22px;min-height:48px}.leaderboard-hint[data-v-fe25bcf1]{margin:0 0 16px;padding:14px 16px;font-size:13px;color:var(--yj-ink-secondary);line-height:1.6;background:var(--yj-surface);border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);box-shadow:var(--yj-shadow-sm)}.leaderboard-hint .muted[data-v-fe25bcf1]{display:block;margin-top:8px;color:var(--yj-muted);font-size:12px}.tp-good[data-v-fe25bcf1]{color:#15803d!important;font-weight:700}.tp-mid[data-v-fe25bcf1]{color:#c2410c!important;font-weight:700}.tp-bad[data-v-fe25bcf1]{color:#b91c1c!important;font-weight:700}.tp-matrix-wrap[data-v-fe25bcf1]{min-height:120px;padding:8px 4px 16px}.tp-matrix__title[data-v-fe25bcf1]{margin:0 0 18px;text-align:center;font-size:16px;font-weight:700;color:var(--yj-ink);letter-spacing:.02em}.tp-matrix[data-v-fe25bcf1]{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;align-items:stretch}@media(max-width:1600px){.tp-matrix[data-v-fe25bcf1]{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.tp-matrix[data-v-fe25bcf1]{grid-template-columns:repeat(2,minmax(0,1fr))}}.tp-matrix-card[data-v-fe25bcf1]{display:flex;flex-direction:column;min-width:0;border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);background:var(--yj-surface);box-shadow:var(--yj-shadow-sm);font-size:12px;overflow:hidden}.tp-matrix-card__head[data-v-fe25bcf1]{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 12px;background:var(--yj-brand-soft);border-bottom:1px solid var(--yj-line)}.tp-matrix-card__titles[data-v-fe25bcf1]{display:flex;flex-direction:column;gap:2px;min-width:0}.tp-matrix-card__parent[data-v-fe25bcf1]{font-size:11px;font-weight:600;color:var(--yj-muted);line-height:1.2}.tp-matrix-card__name[data-v-fe25bcf1]{font-weight:700;font-size:12px;color:var(--yj-ink);line-height:1.35}.tp-matrix-card__target[data-v-fe25bcf1]{flex-shrink:0;font-size:13px;font-weight:700;color:var(--yj-accent);font-variant-numeric:tabular-nums}.tp-matrix-card__table[data-v-fe25bcf1]{width:100%;border-collapse:collapse}.tp-matrix-card__lbl[data-v-fe25bcf1]{padding:7px 10px;color:var(--yj-muted);font-size:11px;border-bottom:1px solid var(--yj-line);white-space:nowrap}.tp-matrix-card__num[data-v-fe25bcf1]{padding:7px 10px;font-weight:600;text-align:right;border-bottom:1px solid var(--yj-line);color:var(--yj-ink);font-variant-numeric:tabular-nums}.tp-matrix-card__num--hot[data-v-fe25bcf1]{color:var(--yj-accent);font-weight:700}.tp-matrix-card tr:last-child td[data-v-fe25bcf1]{border-bottom:none}.tp-matrix-empty[data-v-fe25bcf1]{padding:32px 16px}.leaderboard-sub[data-v-fe25bcf1]{font-size:13px;font-weight:500;opacity:.95}.leaderboard-table .th-sub[data-v-fe25bcf1]{display:block;font-size:11px;font-weight:500;opacity:.85}.leaderboard-table .col-rank[data-v-fe25bcf1]{width:52px;font-weight:600}.leaderboard-table .col-abbr[data-v-fe25bcf1]{min-width:56px}.leaderboard-table .col-name[data-v-fe25bcf1]{min-width:72px;font-weight:500}.leaderboard-table .col-consult[data-v-fe25bcf1],.leaderboard-table .col-deal[data-v-fe25bcf1],.leaderboard-table .col-assign[data-v-fe25bcf1]{width:84px;text-align:right;font-variant-numeric:tabular-nums}.leaderboard-table .col-appointment[data-v-fe25bcf1]{width:88px;text-align:right;font-variant-numeric:tabular-nums}.leaderboard-empty[data-v-fe25bcf1]{grid-column:1/-1}.yeji-table__foot--left[data-v-fe25bcf1]{text-align:left}.empty-tip[data-v-fe25bcf1]{grid-column:1/-1;background:var(--yj-surface);border-radius:var(--yj-radius-sm);padding:36px 16px;border:1px dashed var(--yj-line-strong)}.yeji-th-label[data-v-fe25bcf1]{display:inline-block;line-height:1.25;vertical-align:middle;max-width:6.5rem}.yeji-table[data-v-fe25bcf1]{background:var(--yj-surface);border-radius:var(--yj-radius);overflow:hidden;box-shadow:var(--yj-shadow-sm);border:1px solid var(--yj-line)}.yeji-table__scroll[data-v-fe25bcf1]{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;outline:none}.yeji-table__scroll[data-v-fe25bcf1]::-webkit-scrollbar{height:10px}.yeji-table__scroll[data-v-fe25bcf1]::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--yj-muted) 50%,transparent);border-radius:999px}.yeji-table__scroll[data-v-fe25bcf1]::-webkit-scrollbar-track{background:var(--yj-surface-muted)}.yeji-table__scroll[data-v-fe25bcf1]:focus-visible{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--yj-brand) 40%,transparent)}.yeji-table__header[data-v-fe25bcf1]{background:var(--yj-surface-muted);color:var(--yj-ink);font-weight:700;font-size:14px;text-align:center;padding:14px 16px;border-bottom:1px solid var(--yj-line)}.yeji-table__body[data-v-fe25bcf1]{width:100%;border-collapse:collapse;text-align:center;font-size:13px;color:var(--yj-ink)}.yeji-table__body thead th.col-dept[data-v-fe25bcf1],.yeji-table__body thead th.col-abbr[data-v-fe25bcf1]{min-width:88px;background:linear-gradient(180deg,var(--yj-dept-col-head-start) 0%,var(--yj-dept-col-head-end) 100%);color:var(--yj-dept-col-head-ink);font-weight:700;border-right:2px solid var(--yj-dept-col-border);box-shadow:inset 0 1px #ffffff59}.yeji-table__body thead th.col-abbr[data-v-fe25bcf1]{min-width:56px}.yeji-table__body tbody td.col-dept[data-v-fe25bcf1],.yeji-table__body tbody td.col-abbr[data-v-fe25bcf1]{background:var(--yj-dept-col-bg);color:var(--yj-ink);font-weight:600;border-right:2px solid var(--yj-dept-col-border);text-align:center}.yeji-table__body tbody tr.yeji-row--action:not(.yeji-row--idle):hover td.col-dept[data-v-fe25bcf1],.yeji-table__body tbody tr.yeji-row--action:not(.yeji-row--idle):hover td.col-abbr[data-v-fe25bcf1]{background:var(--yj-dept-col-bg-hover)}.yeji-table__body .total-row td.col-dept[data-v-fe25bcf1]{background:color-mix(in srgb,var(--yj-accent-soft) 55%,var(--yj-dept-col-bg) 45%);color:var(--yj-ink);font-weight:700;border-right:2px solid color-mix(in srgb,var(--yj-dept-col-border) 55%,var(--yj-line) 45%)}.yeji-table__body thead th[data-v-fe25bcf1]{background:#f1f5f9;color:var(--yj-ink-secondary);font-weight:600;padding:10px 8px;border:1px solid var(--yj-line);font-variant-numeric:tabular-nums;font-size:12px}.yeji-table__body thead th .col-info[data-v-fe25bcf1]{margin-left:4px;color:var(--yj-muted);cursor:help;vertical-align:-2px;font-size:14px;transition:color .15s}.yeji-table__body thead th .col-info[data-v-fe25bcf1]:hover{color:var(--yj-brand)}.yeji-table__body tbody td[data-v-fe25bcf1]{padding:10px 8px;border:1px solid var(--yj-line);white-space:nowrap;font-variant-numeric:tabular-nums}.yeji-table__body tbody tr.yeji-row--action[data-v-fe25bcf1]{cursor:pointer;transition:background .18s ease}.yeji-table__body tbody tr.yeji-row--action[data-v-fe25bcf1]:hover{background:var(--yj-brand-soft)}.yeji-table__body tbody tr.yeji-row--action.yeji-row--unassigned[data-v-fe25bcf1]{cursor:pointer}.yeji-table__body tbody tr.yeji-row--action.yeji-row--idle[data-v-fe25bcf1]{cursor:default}.yeji-table__body tbody tr.yeji-row--action.yeji-row--idle[data-v-fe25bcf1]:hover{background:transparent}.yeji-table__body .col-completed[data-v-fe25bcf1]{color:#0f766e;font-weight:600;background:var(--yj-teal-soft)}.yeji-table__body .total-row[data-v-fe25bcf1]{font-weight:700;background:var(--yj-accent-soft);color:var(--yj-ink)}.yeji-table__body .total-row td[data-v-fe25bcf1]{border-color:#d9770633}.yeji-table__body .roi-good[data-v-fe25bcf1]{color:#15803d;font-weight:600}.yeji-table__body .roi-mid[data-v-fe25bcf1]{color:#c2410c;font-weight:600}.yeji-table__body .roi-bad[data-v-fe25bcf1]{color:#b91c1c;font-weight:600}.yeji-table__body.yeji-table__body--data[data-v-fe25bcf1]{min-width:max(100%,1180px);width:-moz-max-content;width:max-content}.yeji-table__body.yeji-table__body--data thead th.col-dept[data-v-fe25bcf1],.yeji-table__body.yeji-table__body--data tbody td.col-dept[data-v-fe25bcf1]{position:sticky;left:0;z-index:3}.yeji-table__body.yeji-table__body--data thead th.col-dept[data-v-fe25bcf1]{z-index:6;text-align:left;padding-left:12px;padding-right:10px;box-shadow:8px 0 20px -12px #0f172a59}.yeji-table__body.yeji-table__body--data tbody td.col-dept[data-v-fe25bcf1]{box-shadow:8px 0 20px -12px #0f172a47;white-space:normal;max-width:300px;line-height:1.35;text-align:left;padding-left:12px;padding-right:10px;word-break:break-word}.yeji-table__body.yeji-table__body--data .total-row td.col-dept[data-v-fe25bcf1]{box-shadow:8px 0 20px -12px #0f172a47}.yeji-table__body.yeji-table__body--data thead th[data-v-fe25bcf1]:not(.col-dept){min-width:88px}.yeji-table__body.yeji-table__body--data thead th.col-narrow-head[data-v-fe25bcf1]{min-width:76px;max-width:112px;padding:8px 6px;vertical-align:middle;line-height:1.2}.yeji-table__body.yeji-table__body--leaderboard[data-v-fe25bcf1]{min-width:max(100%,780px);width:-moz-max-content;width:max-content}.yeji-table__body.yeji-table__body--leaderboard thead th.col-rank[data-v-fe25bcf1],.yeji-table__body.yeji-table__body--leaderboard tbody td.col-rank[data-v-fe25bcf1]{position:sticky;left:0;z-index:3}.yeji-table__body.yeji-table__body--leaderboard thead th.col-rank[data-v-fe25bcf1]{z-index:6;background:linear-gradient(180deg,var(--yj-dept-col-head-start) 0%,var(--yj-dept-col-head-end) 100%)!important;box-shadow:8px 0 20px -12px #0f172a4d}.yeji-table__body.yeji-table__body--leaderboard tbody td.col-rank[data-v-fe25bcf1]{background:var(--yj-surface);box-shadow:8px 0 20px -12px #0f172a38}.yeji-table__body.yeji-table__body--leaderboard tbody tr.yeji-row--action:hover td.col-rank[data-v-fe25bcf1]{background:var(--yj-brand-soft)}.yeji-table__foot[data-v-fe25bcf1]{padding:11px 14px;font-size:12px;color:var(--yj-muted);background:var(--yj-surface-muted);border-top:1px solid var(--yj-line);text-align:right;line-height:1.5}.yeji-order-drawer__hint[data-v-fe25bcf1]{margin:0 0 12px;font-size:13px;color:var(--yj-muted);line-height:1.5}.yeji-order-drawer__header[data-v-fe25bcf1]{padding-right:8px}.yeji-order-drawer__heading[data-v-fe25bcf1]{margin:0;font-size:18px;font-weight:700;color:var(--yj-ink);line-height:1.35;letter-spacing:-.01em}.yeji-order-drawer__sub[data-v-fe25bcf1]{margin:6px 0 0;font-size:13px;color:var(--yj-muted);line-height:1.55}.yeji-order-drawer__shell[data-v-fe25bcf1]{display:flex;flex-direction:column;gap:16px;min-height:200px}.yeji-order-drawer__stats[data-v-fe25bcf1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.yeji-order-drawer__stat-card[data-v-fe25bcf1]{border:1px solid var(--yj-line);border-radius:var(--yj-radius-sm);padding:14px 16px;background:var(--yj-surface);display:flex;flex-direction:column;gap:8px;transition:border-color .2s ease,box-shadow .2s ease}.yeji-order-drawer__stat-card[data-v-fe25bcf1]:hover{border-color:#2563eb38;box-shadow:var(--yj-shadow-sm)}.yeji-order-drawer__stat-card--accent[data-v-fe25bcf1]{border-color:#dc26262e;background:linear-gradient(180deg,#fef2f2 0%,var(--el-fill-color-blank) 100%)}.yeji-order-drawer__stat-card--muted[data-v-fe25bcf1]{background:#f8fafc}.yeji-order-drawer__stat-card--total[data-v-fe25bcf1]{border-color:#d9770638;background:linear-gradient(180deg,#fffbeb 0%,var(--el-fill-color-blank) 100%)}.yeji-order-drawer__list-tabs[data-v-fe25bcf1] .el-tabs__header{margin:0;padding:0;border-bottom:1px solid var(--yj-line)}.yeji-order-drawer__list-tabs[data-v-fe25bcf1] .el-tabs__content{display:none}.yeji-order-drawer__list-tabs[data-v-fe25bcf1] .el-tabs__nav-wrap:after{display:none}.yeji-order-drawer__stat-label[data-v-fe25bcf1]{font-size:12px;color:var(--yj-muted);line-height:1.45}.yeji-order-drawer__stat-note[data-v-fe25bcf1]{display:block;margin-top:2px;font-size:11px;font-weight:400;color:var(--el-text-color-placeholder)}.yeji-order-drawer__stat-value[data-v-fe25bcf1]{font-size:18px;font-weight:700;color:var(--yj-ink);font-variant-numeric:tabular-nums}.yeji-order-drawer__stat-value--money[data-v-fe25bcf1]{font-size:21px;color:#b91c1c}.yeji-order-drawer__body[data-v-fe25bcf1]{flex:1;min-height:120px}.yeji-order-drawer__pager[data-v-fe25bcf1]{margin-top:4px;padding-top:10px;border-top:1px solid var(--yj-line);display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.yeji-order-appt-lines[data-v-fe25bcf1]{line-height:1.45;font-size:12px;color:var(--yj-ink, #0f172a)}.yeji-order-appt-line[data-v-fe25bcf1]{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px;margin-bottom:2px}.yeji-order-appt-line[data-v-fe25bcf1]:last-child{margin-bottom:0}.yeji-order-appt-line.yeji-order-appt-line--channel[data-v-fe25bcf1]{align-items:flex-start}.yeji-order-appt-line.yeji-order-appt-line--channel .yeji-order-appt-channel-text[data-v-fe25bcf1]{flex:1;min-width:0}.yeji-order-appt-info[data-v-fe25bcf1]{font-size:14px;color:var(--yj-muted, #94a3b8);cursor:help;flex-shrink:0;margin-top:1px}.yeji-order-appt-k[data-v-fe25bcf1]{flex:0 0 auto;font-size:11px;font-weight:600;color:var(--yj-muted, #64748b)}.yeji-order-appt-sub[data-v-fe25bcf1]{font-size:11px;color:var(--yj-muted, #64748b)}.yeji-order-appt-empty[data-v-fe25bcf1]{font-size:12px;color:var(--yj-muted, #94a3b8)}.yeji-order-amt[data-v-fe25bcf1]{color:#b91c1c;font-weight:600;font-variant-numeric:tabular-nums}[data-v-fe25bcf1] .yeji-order-drawer.el-drawer{--el-drawer-padding-primary: 18px}[data-v-fe25bcf1] .yeji-order-drawer .el-drawer__header{margin-bottom:10px;padding-bottom:12px;border-bottom:1px solid var(--yj-line, #e2e8f0)}[data-v-fe25bcf1] .yeji-order-drawer .el-pagination{flex-wrap:wrap;justify-content:flex-end}.yeji-unassigned-dialog__head[data-v-fe25bcf1]{line-height:1.35}.yeji-unassigned-dialog__title[data-v-fe25bcf1]{display:block;font-size:16px;font-weight:700;color:var(--yj-ink, #0f172a)}.yeji-unassigned-dialog__sub[data-v-fe25bcf1]{margin:6px 0 0;font-size:12px;color:var(--yj-ink-secondary, #64748b);font-weight:400}.yeji-unassigned-dialog__note[data-v-fe25bcf1]{margin:0 0 12px;padding:10px 12px;font-size:12px;line-height:1.65;color:var(--yj-ink-secondary, #64748b);background:var(--yj-accent-soft, #fff7ed);border-radius:8px;border:1px solid color-mix(in srgb,var(--yj-line, #e2e8f0) 80%,transparent)}.yeji-unassigned-dialog__body[data-v-fe25bcf1]{min-height:120px}.yeji-lead-cell--link[data-v-fe25bcf1]{color:var(--yj-brand, #2563eb);font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}tbody tr.yeji-row--action:hover .yeji-lead-cell--link[data-v-fe25bcf1],tbody tr.total-row:hover .yeji-lead-cell--link[data-v-fe25bcf1]{color:color-mix(in srgb,var(--yj-brand, #2563eb) 88%,#000)}.yeji-leadlines-dialog__head[data-v-fe25bcf1]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.yeji-leadlines-dialog__head-main[data-v-fe25bcf1]{flex:1;min-width:0}.yeji-leadlines-dialog__pager[data-v-fe25bcf1]{margin-top:14px;display:flex;justify-content:flex-end}@media(prefers-reduced-motion:reduce){.date-pill[data-v-fe25bcf1],.filter-btn[data-v-fe25bcf1],.yeji-table__body tbody tr.yeji-row--action[data-v-fe25bcf1],.yeji-order-drawer__stat-card[data-v-fe25bcf1]{transition:none}} diff --git a/server/public/admin/assets/yeji-Wv5859YQ.js b/server/public/admin/assets/yeji-Wv5859YQ.js new file mode 100644 index 00000000..0f2f229b --- /dev/null +++ b/server/public/admin/assets/yeji-Wv5859YQ.js @@ -0,0 +1,7 @@ +import{P as Yn,Q as Un,ag as Hn,W as Wn,L as qn,a2 as Jn,i as Gn,d as Xn,J as Zn,m as Kn,l as Qn,M as el,N as tl,R as al,r as nl,a4 as ll,a5 as ol,X as sl,e as il,V as rl,E as ie}from"./element-plus-DFTWCWyi.js";import{s as X,w as dl}from"./@vue/runtime-dom-DDAG46FW.js";import{a as re}from"./axios-C80V62Fs.js";import{N as ul,x as cl,i as Y}from"./@element-plus/icons-vue-HOEUG8sr.js";import{H as ee}from"./vue-echarts-BNtg2q_G.js";import{h as _l,y as Ke,i as pl,j as ml,k as vl,l as fl,m as Mt,n as yl,o as bl,p as hl}from"./stats-CxdEJGSN.js";import{d as gl}from"./finance-CuL8jhJS.js";import{l as ga}from"./tcm-DzAQc_oE.js";import{h as wl}from"./perm-CLhA0PJe.js";import{f as kl,w as jl,b as xl,ak as o,I as c,J as a,a as r,aN as _,F as k,ap as F,G as j,aP as Z,O as u,H as v,A as N}from"./@vue/runtime-core-C6bnekPw.js";import{Q as i,o as ct}from"./@vue/shared-mAAVTE9n.js";import{y as C,n as f}from"./@vue/reactivity-DiY1c2vO.js";import{_ as Sl}from"./index--WnM67ZH.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Nl={class:"yeji-page"},Dl={class:"filter-surface"},Cl={class:"filter-row filter-row--top"},Ll={class:"filter-field"},zl={class:"channel-opt-row"},$l={class:"opt-name"},Al={class:"opt-count"},Rl={class:"filter-field filter-field--wide"},Pl={class:"filter-select filter-select--dept filter-dept-tree-wrap"},Tl={class:"filter-field filter-field--date-top"},Il={class:"filter-actions"},Ml={class:"filter-quick"},Ol={class:"date-pills",role:"group","aria-label":"快捷日期"},El=["onClick"],Fl={class:"doctor-daily-card__head"},Vl={class:"doctor-daily-card__title-block"},Bl={key:0,class:"doctor-daily-card__range"},Yl={class:"doctor-daily-card__tools"},Ul={key:0,class:"leaderboards-wrap"},Hl={class:"leaderboard-hint"},Wl={class:"muted"},ql={class:"tables-wrap"},Jl={key:0,class:"yeji-table leaderboard-table"},Gl={class:"yeji-table__header"},Xl={key:0,class:"leaderboard-sub"},Zl={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"排行榜,可横向滚动"},Kl={class:"yeji-table__body yeji-table__body--leaderboard"},Ql=["onClick"],eo={class:"col-rank"},to={class:"col-abbr"},ao={class:"col-name"},no={class:"col-consult"},lo={class:"col-deal"},oo={class:"col-assign"},so=["onClick"],io={key:0,class:"yeji-lead-cell--link"},ro=["onClick"],uo={key:0,class:"yeji-lead-cell--link"},co=["onClick"],_o={key:0,class:"yeji-lead-cell--link"},po={class:"yeji-table__foot yeji-table__foot--left"},mo={key:0},vo={key:0,class:"empty-tip leaderboard-empty"},fo={class:"tables-wrap"},yo={key:0,class:"empty-tip"},bo={class:"yeji-table__header"},ho={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"业绩数据表,可横向滚动"},go={class:"yeji-table__body yeji-table__body--data"},wo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},ko={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},jo={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},xo={key:0,class:"col-completed col-narrow-head"},So={class:"yeji-th-label"},No={style:{"max-width":"340px","line-height":"1.7","font-size":"12px"}},Do={key:1,class:"col-completed col-narrow-head"},Co={class:"yeji-th-label"},Lo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},zo={key:2,class:"col-completed col-narrow-head"},$o={class:"yeji-th-label"},Ao={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},Ro={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},Po=["onClick"],To={class:"col-dept"},Io=["onClick"],Mo={key:0,class:"yeji-lead-cell--link"},Oo=["onClick"],Eo={key:0,class:"yeji-lead-cell--link"},Fo=["onClick"],Vo={key:0,class:"yeji-lead-cell--link"},Bo=["onClick"],Yo={key:0,class:"col-completed"},Uo=["onClick"],Ho=["onClick"],Wo={key:0,class:"yeji-lead-cell--link"},qo={key:1,class:"col-completed"},Jo={key:2,class:"col-completed"},Go={class:"total-row"},Xo=["onClick"],Zo={key:0,class:"col-completed"},Ko=["onClick"],Qo={key:1,class:"col-completed"},es={key:2,class:"col-completed"},ts={class:"yeji-table__foot"},as={key:0},ns={key:1},ls={class:"tp-matrix-wrap"},os={class:"tp-matrix__title"},ss={class:"tp-matrix",role:"list"},is={class:"tp-matrix-card__head"},rs={class:"tp-matrix-card__titles"},ds={key:0,class:"tp-matrix-card__parent"},us={class:"tp-matrix-card__name"},cs={class:"tp-matrix-card__target"},_s={class:"tp-matrix-card__table"},ps={class:"tp-matrix-card__num"},ms={key:0},vs={class:"tp-matrix-card__num"},fs={key:1},ys={class:"tp-matrix-card__num"},bs={class:"tp-matrix-card__num tp-matrix-card__num--hot"},hs={class:"tp-matrix-card__num"},gs={class:"yeji-charts-stack"},ws={key:0,class:"yeji-chart-block"},ks={class:"yeji-chart-block__title"},js={key:0,class:"yeji-chart-block__sub"},xs={class:"yeji-chart-panel"},Ss={class:"yeji-chart-panel"},Ns={class:"yeji-chart-panel"},Ds={class:"yeji-chart-panel"},Cs={class:"yeji-chart-panel"},Ls={key:0,class:"yeji-chart-block"},zs={class:"yeji-chart-block__title"},$s={class:"yeji-chart-panel"},As={class:"yeji-chart-panel"},Rs={class:"yeji-chart-block__title"},Ps={key:0,class:"yeji-chart-block__sub"},Ts={class:"yeji-chart-block__sub yeji-chart-block__sub--muted"},Is={class:"yeji-chart-panel"},Ms={class:"yeji-order-drawer__header"},Os={class:"yeji-order-drawer__heading"},Es={class:"yeji-order-drawer__sub"},Fs={class:"yeji-order-drawer__shell"},Vs={class:"yeji-order-drawer__stats",role:"region","aria-label":"订单汇总"},Bs={class:"yeji-order-drawer__stat-card"},Ys={class:"yeji-order-drawer__stat-value"},Us={class:"yeji-order-drawer__stat-card"},Hs={class:"yeji-order-drawer__stat-value"},Ws={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--total"},qs={class:"yeji-order-drawer__stat-label"},Js={class:"yeji-order-drawer__stat-note"},Gs={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},Xs={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},Zs={class:"yeji-order-drawer__stat-label"},Ks={class:"yeji-order-drawer__stat-note"},Qs={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},ei={key:1,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},ti={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},ai={key:2,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--muted"},ni={class:"yeji-order-drawer__stat-value"},li={class:"yeji-order-drawer__body"},oi={key:0,class:"yeji-order-appt-lines"},si={class:"yeji-order-appt-line"},ii={class:"yeji-order-appt-line"},ri={key:0,class:"yeji-order-appt-sub"},di={class:"yeji-order-appt-line"},ui={class:"yeji-order-appt-line yeji-order-appt-line--channel"},ci={class:"yeji-order-appt-channel-text"},_i={key:0,class:"yeji-order-appt-sub"},pi={key:1,class:"yeji-order-appt-empty"},mi={class:"yeji-order-amt"},vi={class:"yeji-order-drawer__pager"},fi={class:"yeji-unassigned-dialog__head"},yi={class:"yeji-unassigned-dialog__sub"},bi={key:0,class:"yeji-unassigned-dialog__note"},hi={class:"yeji-unassigned-dialog__body"},gi={class:"yeji-unassigned-dialog__head yeji-leadlines-dialog__head"},wi={class:"yeji-leadlines-dialog__head-main"},ki={class:"yeji-unassigned-dialog__sub"},ji={key:0,class:"yeji-unassigned-dialog__note"},xi={class:"yeji-unassigned-dialog__body"},Si={key:2,class:"yeji-leadlines-dialog__pager"},Ni={class:"yeji-unassigned-dialog__head"},Di={class:"yeji-unassigned-dialog__sub"},Ci={key:0,class:"yeji-unassigned-dialog__note"},Li={class:"yeji-unassigned-dialog__body"},zi={key:2,class:"yeji-leadlines-dialog__pager"},$i={class:"yeji-unassigned-dialog__head"},Ai={class:"yeji-unassigned-dialog__sub"},Ri={key:0,class:"yeji-unassigned-dialog__note"},Pi={class:"yeji-unassigned-dialog__body"},Ti=["onClick","onKeydown"],wa=30,Ii="stats.yejiStats/tabDoctor",Mi="stats.yejiStats/tabLeaderboard",Oi="stats.yejiStats/tabZyyt",Ei="stats.yejiStats/tabTargetMatrix",Fi=kl({__name:"yeji",setup(Vi){function Qe(t){return t.some(e=>wl([e]))}const ka={value:"id",label:"name",children:"children"};function ja(t){if(!t.length)return[];const e=new Map;for(const b of t)e.set(b.id,{...b,children:[]});const n=[];for(const b of t){const h=e.get(b.id),w=Number(b.pid);w>0&&e.has(w)?e.get(w).children.push(h):n.push(h)}const s=b=>{var h;(h=b.children)!=null&&h.length?b.children.forEach(s):delete b.children};n.forEach(s);const d=b=>{var h;b.sort((w,T)=>{const O=w.name.includes("中心")?-1:1,p=T.name.includes("中心")?-1:1;return O!==p?O-p:w.id-T.id});for(const w of b)(h=w.children)!=null&&h.length&&d(w.children)};return d(n),n}const te=f(!1),je=f([]),_t=f(!1),xa=N(()=>ja(je.value)),R=f([]),et=f([]),pt=f(!1),x=f(""),U=f(null),de=f([]);function mt(t,e){if(!t||typeof t!="object")return e;for(const n of Object.keys(t)){const s=parseInt(n,10);!Number.isNaN(s)&&s>=2&&(e=Math.max(e,s))}return e}function Sa(t){var n;let e=0;for(const s of t){for(const d of s.rows)e=mt(d.revisit_slots,e);e=mt((n=s.total)==null?void 0:n.revisit_slots,e)}return e}const vt=N(()=>{const t=Math.min(Sa(de.value),wa);return t<2?[]:Array.from({length:t-1},(e,n)=>n+2)});function Na(t){if(!t.er_center_subtree)return 0;let e=0;for(const n of t.rows)e=mt(n.revisit_slots,e);return e}function Ot(t){const e=Math.min(Na(t),wa);return e<2?[]:Array.from({length:e-1},(n,s)=>s+2)}function tt(t){if(t===2)return"复诊2";const e=["三","四","五","六","七","八","九","十"];return t>=3&&t<=10?`复诊${e[t-3]}`:`复诊${t}`}function ae(t,e){const n=t==null?void 0:t.revisit_slots;if(!n||typeof n!="object")return 0;const s=n[e]??n[String(e)],d=Number(s);return Number.isFinite(d)?d:0}const S=f(null),ue=f(!1),ft=f(!1),xe=f(!1),Et=f(""),Ve=f(""),Se=f([]),yt=f(!1),Ne=f(!1),Ft=f(""),Be=f(""),De=f([]),Vt=f(null),bt=f(!1),ce=f(!1),Ye=f(!1),Bt=f(""),Ue=f(""),Ce=f([]),Le=f(0),He=f(1),at=f(20),ht=f(null),nt=f(!1),ve=f(!1),gt=f(""),ze=f(""),_e=f([]),$e=f(0),fe=f(1),Ae=f(20),wt=f(null),Da=N(()=>_e.value.some(t=>String(t.channel_source??"")!=="")),pe=f("zyyt"),H=N(()=>Qe([Ii,"stats.doctorDailyStats/overview"])),ne=N(()=>Qe([Mi,"stats.yejiStats/leaderboard"])),Re=N(()=>Qe([Oi,"stats.yejiStats/multi","stats.yejiStats/overview"])),We=N(()=>Qe([Ei,"stats.yejiStats/targetMatrix","stats.yejiStats/multi"])),Ca=N(()=>H.value||ne.value||Re.value||We.value);function qe(){return Re.value?"zyyt":H.value?"doctor":ne.value?"leaderboard":We.value?"zyyt_matrix":"zyyt"}jl(pe,t=>{(t==="doctor"&&!H.value||t==="leaderboard"&&!ne.value||t==="zyyt"&&!Re.value||t==="zyyt_matrix"&&!We.value)&&(pe.value=qe())});const Yt=N(()=>{var t;return(((t=S.value)==null?void 0:t.leaderboards)??[]).filter(e=>e.rows.length>0)});function Ut(t){return t.rows.some(e=>e.dept_id>0&&(Number(e.lead_count)>0||Number(e.consult_count)>0||Number(e.deal_order_count)>0||Number(e.performance_amount)>0||Number(e.completed_performance_amount)>0))}const Pe=f(!1),V=f([]),me=f({}),Te=f(null),lt=N(()=>{const t=Te.value;return!(t!=null&&t.start)||!(t!=null&&t.end)?"":t.start===t.end?`区间 ${t.start}`:`区间 ${t.start} ~ ${t.end}`}),kt=N(()=>V.value.some(t=>Number(t.deal_amount??0)>0)),jt=N(()=>V.value.some(t=>Number(t.system_prescription_count??0)>0||Number(t.manual_prescription_count??0)>0)),La=N(()=>H.value?kt.value||jt.value||xt.value||St.value||Nt.value:!1),za=N(()=>{if(La.value)return!0;if(Re.value){for(const t of de.value)if(Ut(t))return!0}return!!(ne.value&&Yt.value.length>0)}),xt=N(()=>{const t=me.value;return Number(t.appointment_completed??0)+Number(t.appointment_missed??0)+Number(t.appointment_cancelled??0)>0}),$a=N(()=>{const t=me.value,e=[{value:Number(t.appointment_completed??0),name:"挂号完成"},{value:Number(t.appointment_missed??0),name:"过号"},{value:Number(t.appointment_cancelled??0),name:"取消"}].filter(n=>n.value>0);return{color:["#0d9488","#d97706","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}: {c} ({d}%)"},legend:{bottom:0,type:"scroll",textStyle:{fontSize:10}},series:[{name:"挂号",type:"pie",radius:["42%","68%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} +{c}`,fontSize:11},data:e}]}}),St=N(()=>V.value.filter(t=>Number(t.deal_order_count??0)>0&&Number(t.deal_amount??0)>0).length>=2),Aa=N(()=>{const t=V.value.filter(s=>Number(s.deal_order_count??0)>0&&Number(s.deal_amount??0)>0),e=Math.max(...t.map(s=>Number(s.deal_amount)),1),n=t.map(s=>{const d=Number(s.deal_amount);return{name:String(s.doctor_name||"—"),value:[Number(s.deal_order_count),d],symbolSize:12+Math.sqrt(d/e)*26}});return{color:["#2563eb"],tooltip:{trigger:"item",formatter:s=>{var b;const d=(b=s.data)==null?void 0:b.value;return Array.isArray(d)?`${s.data.name}
接诊诊单:${d[0]}
金额:${Number(d[1]).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`:""}},grid:{left:48,right:24,top:28,bottom:32,containLabel:!0},xAxis:{type:"value",name:"接诊诊单",nameLocation:"middle",nameGap:28,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},yAxis:{type:"value",name:"成交金额",nameLocation:"middle",nameGap:40,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},series:[{type:"scatter",data:n}]}}),Nt=N(()=>V.value.filter(e=>Number(e.deal_amount??0)+Number(e.deal_order_count??0)+Number(e.system_prescription_count??0)+Number(e.manual_prescription_count??0)>0).length>=2),Ra=N(()=>{const t=[...V.value].filter(p=>Number(p.deal_amount??0)+Number(p.deal_order_count??0)+Number(p.system_prescription_count??0)+Number(p.manual_prescription_count??0)>0).sort((p,P)=>Number(P.deal_amount)-Number(p.deal_amount)).slice(0,5);if(t.length<2)return{radar:{indicator:[]},series:[{type:"radar",data:[]}]};const e=p=>{const P=String(p.doctor_name||"—");return P.length>7?`${P.slice(0,7)}…`:P},n=p=>Number(p.system_prescription_count??0)+Number(p.manual_prescription_count??0),s=p=>{const P=Number(p.avg_deal_amount);if(Number.isFinite(P)&&P>0)return P;const $=Number(p.deal_order_count);return $>0?Number(p.deal_amount)/$:0},d=Math.max(...t.map(p=>Number(p.deal_amount)),1e-9),b=Math.max(...t.map(p=>Number(p.deal_order_count)),1e-9),h=Math.max(...t.map(n),1e-9),w=Math.max(...t.map(p=>Number(p.appointment_completed??0)),1e-9),T=Math.max(...t.map(s),1e-9),O=t.map(p=>({name:e(p),value:[Number(p.deal_amount)/d*100,Number(p.deal_order_count)/b*100,n(p)/h*100,Number(p.appointment_completed??0)/w*100,s(p)/T*100]}));return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b"],tooltip:{trigger:"item"},legend:{bottom:0,type:"scroll",textStyle:{fontSize:10}},radar:{indicator:[{name:"成交金额",max:100},{name:"接诊诊单",max:100},{name:"开方量",max:100},{name:"挂号完成",max:100},{name:"客单价",max:100}],radius:"58%",center:["50%","48%"],splitNumber:4,axisName:{fontSize:10,color:"#64748b"}},series:[{type:"radar",data:O,emphasis:{lineStyle:{width:3}}}]}}),Pa=N(()=>{const t=[...V.value].filter(s=>Number(s.deal_amount??0)>0).sort((s,d)=>Number(d.deal_amount)-Number(s.deal_amount)).slice(0,20),e=t.map(s=>{const d=String(s.doctor_name||"—");return d.length>10?`${d.slice(0,10)}…`:d}),n=t.map(s=>Number(s.deal_amount??0));return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${s.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`},grid:{left:8,right:16,top:28,bottom:8,containLabel:!0},xAxis:{type:"value",axisLabel:{fontSize:11},splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:[...e].reverse(),axisLabel:{fontSize:11}},series:[{name:"成交金额",type:"bar",data:[...n].reverse(),barMaxWidth:22,itemStyle:{borderRadius:[0,6,6,0]}}]}}),Ta=N(()=>{const t=[...V.value].filter(n=>Number(n.system_prescription_count??0)+Number(n.manual_prescription_count??0)>0).sort((n,s)=>Number(s.system_prescription_count??0)+Number(s.manual_prescription_count??0)-(Number(n.system_prescription_count??0)+Number(n.manual_prescription_count??0))).slice(0,14),e=t.map(n=>{const s=String(n.doctor_name||"—");return s.length>6?`${s.slice(0,6)}…`:s});return{tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},legend:{top:0,textStyle:{fontSize:11}},grid:{left:44,right:16,top:32,bottom:e.length>10?72:28},xAxis:{type:"category",data:e,axisLabel:{rotate:e.length>8?32:0,fontSize:10}},yAxis:{type:"value",splitLine:{lineStyle:{type:"dashed",opacity:.6}}},series:[{name:"系统开方",type:"bar",stack:"rx",barMaxWidth:18,data:t.map(n=>Number(n.system_prescription_count??0)),itemStyle:{color:"#2563eb"}},{name:"手动开方",type:"bar",stack:"rx",barMaxWidth:18,data:t.map(n=>Number(n.manual_prescription_count??0)),itemStyle:{color:"#d97706"}}]}});function Ia(){var e,n;const t={};if(x.value&&(t.channel_code=x.value),(e=U.value)!=null&&e[0]&&((n=U.value)!=null&&n[1]))t.start_date=U.value[0],t.end_date=U.value[1];else{const s=ut(new Date);t.start_date=s,t.end_date=s}return t}function Ht(t){return Number(t??0).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function Ma(t){const e=me.value,n=[];return t.columns.forEach((s,d)=>{if(d===0){n[d]="合计";return}switch(s.property){case"system_prescription_count":n[d]=String(e.system_prescription_count??0);break;case"manual_prescription_count":n[d]=String(e.manual_prescription_count??0);break;case"deal_amount":n[d]=`¥ ${Ht(e.deal_amount)}`;break;case"deal_order_count":n[d]=String(e.deal_order_count??0);break;case"appointment_completed":n[d]=String(e.appointment_completed??0);break;case"appointment_missed":n[d]=String(e.appointment_missed??0);break;case"appointment_cancelled":n[d]=String(e.appointment_cancelled??0);break;default:n[d]=""}}),n}async function Dt(){if(!H.value){V.value=[],me.value={},Te.value=null;return}Pe.value=!0;try{const t=await _l(Ia());V.value=(t==null?void 0:t.rows)??[],me.value=(t==null?void 0:t.total)??{},t!=null&&t.start_date&&(t!=null&&t.end_date)&&(Te.value={start:t.start_date,end:t.end_date})}catch(t){if(re.isCancel(t))return;V.value=[],me.value={},Te.value=null}finally{Pe.value=!1}}const le=f(!1),ye=f(!1),Je=f(""),Ge=f(""),be=f([]),ot=f(0),K=f(1),st=f(15),G=f("channel"),W=f(null),Xe=f(null),oe=f(null),Wt=N(()=>{const t=oe.value;if(!t)return null;const e=t.stats_order_amount_performance??t.stats_order_amount_not_cancelled;if(e==null||e==="")return null;const n=Number(e);return Number.isFinite(n)?n:null}),qt=N(()=>{const t=oe.value;if(!t||t.stats_yeji_consult_count===void 0||t.stats_yeji_consult_count===null)return null;const e=Number(t.stats_yeji_consult_count);return Number.isFinite(e)?e:null}),Oa=N(()=>be.value.reduce((t,e)=>t+Number(e.amount??0),0)),Jt=N(()=>!!x.value&&le.value),Ct=N(()=>{var e;const t=x.value;if(!t)return"";for(const n of et.value){const s=(e=n.channels)==null?void 0:e.find(d=>d.channel_code===t);if(s!=null&&s.channel_name)return String(s.channel_name)}return t}),Ea=N(()=>{const t=W.value;return t&&G.value==="total"?Number.isFinite(t.channelAmount)?t.channelAmount:null:Wt.value}),Ie=f(null),it=f(!1);function Fa(){const t=new Date;return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`}function Va(t){const[e,n]=t.split("-").map(Number);return new Date(e,n,0).getDate()}async function Ba(){var t,e,n,s;if(!We.value){Ie.value=null;return}it.value=!0,Ie.value=null;try{let d=function(y,L=0){const z=[];for(const A of y??[])z.push({node:A,depth:L}),z.push(...d(A.children??[],L+1));return z},b=function(y){const L=je.value.find(J=>Number(J.id)===y);if(!L)return"";const z=Number(L.pid);if(!z)return"";const A=je.value.find(J=>Number(J.id)===z);return A!=null&&A.name?String(A.name):""},h=function(y){const L=[],z=[y];for(;z.length;){const A=z.shift();for(const J of je.value)Number(J.pid)===A&&(L.push(J.id),z.push(J.id))}return L},w=function(y,L){const z=new Map;for(const A of(y==null?void 0:y.rows)??[])z.set(Number(A.dept_id),Number(A[L]??0));return z};const T=Fa(),O=await gl({year_month:T}),p=(O==null?void 0:O.rows)??[];if(!p.length)return;const $=d(p).filter(y=>y.depth>=1&&Number(y.node.target_amount)>0).map(y=>y.node);if(!$.length)return;const Q=new Set,I=$.map(y=>{const L=Number(y.dept_id),z=h(L),A=z.length?z:[L];return A.forEach(J=>Q.add(J)),{dept_id:L,dept_name:String(y.dept_name),target_amount:Number(y.target_amount),totalIds:A}});if(!Q.size)return;const Oe=et.value.flatMap(y=>y.channels),q=(t=Oe.find(y=>y.channel_name.includes("自媒体1")))==null?void 0:t.channel_code,we=(e=Oe.find(y=>y.channel_name.includes("自媒体3")))==null?void 0:e.channel_code,Ee=(n=Oe.find(y=>y.channel_name.includes("自媒体4")))==null?void 0:n.channel_code,Fe=Array.from(Q).join(","),[ke,B,l,g]=await Promise.all([Ke({dept_ids:Fe}),q?Ke({dept_ids:Fe,channel_code:q}):Promise.resolve(null),we?Ke({dept_ids:Fe,channel_code:we}):Promise.resolve(null),Ee?Ke({dept_ids:Fe,channel_code:Ee}):Promise.resolve(null)]),m=y=>{var L;return((y==null?void 0:y.tables)??[]).find(z=>String(z.label).includes("月"))??((L=y==null?void 0:y.tables)==null?void 0:L[0])},E=y=>{var L,z;return((y==null?void 0:y.tables)??[]).find(A=>String(A.label).includes("昨"))??((z=y==null?void 0:y.tables)==null?void 0:z[((L=y==null?void 0:y.tables)==null?void 0:L.length)-1])},va=w(m(ke),"performance_amount"),Pn=w(E(ke),"performance_amount"),fa=B?w(m(B),"completed_performance_amount"):null,ya=l?w(m(l),"completed_performance_amount"):null,ba=g?w(m(g),"completed_performance_amount"):null,Ze=(y,L)=>L.reduce((z,A)=>z+(y.get(A)??0),0),Tt=new Date,Tn=Va(T),In=Tt.getDate(),Mn=I.map(y=>{const L=Ze(va,y.totalIds),z=Ze(Pn,y.totalIds),A=fa?Ze(fa,y.totalIds):null,J=ya?Ze(ya,y.totalIds):null,ha=ba?Ze(ba,y.totalIds):null,It=J!==null||ha!==null?(J??0)+(ha??0):null,Vn=Math.round(y.target_amount*(In/Tn)*100)/100,Bn=y.target_amount>0?L/y.target_amount:null;return{dept_id:y.dept_id,dept_name:y.dept_name,parent_dept_name:b(y.dept_id),target_amount:y.target_amount,total_amount:L,yesterday_amount:z,douyin_amount:A&&A>0?A:null,tuifen_amount:It&&It>0?It:null,target_progress:Vn,completion_rate:Bn}}),On=((s=p[0])==null?void 0:s.dept_name)??"",En=Tt.getMonth()+1,Fn=Tt.getDate();Ie.value={title:`${On}诊金-${En}.${Fn}`,sections:Mn}}catch{}finally{it.value=!1}}const Ya=N(()=>{var e;const t=(e=S.value)==null?void 0:e.leaderboards;return t?t.filter(n=>n.rows.length>0).length:0}),Gt=[{text:"昨天",value:()=>{const t=new Date;return t.setDate(t.getDate()-1),[t,t]}},{text:"最近七天",value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-6),[e,t]}},{text:"本月",value:()=>{const t=new Date;return[new Date(t.getFullYear(),t.getMonth(),1),t]}},{text:"今日",value:()=>{const t=new Date;return[t,t]}},{text:"本周",value:()=>{const t=new Date,e=new Date,n=e.getDay()||7;return e.setDate(e.getDate()-(n-1)),[e,t]}},{text:"上月",value:()=>{const t=new Date,e=new Date(t.getFullYear(),t.getMonth()-1,1),n=new Date(t.getFullYear(),t.getMonth(),0);return[e,n]}}];function Ua(t){const e=t.value();U.value=[ut(e[0]),ut(e[1])],Me()}async function Ha(){_t.value=!0;try{const t=await pl();je.value=(t||[]).sort((e,n)=>{const s=e.name.includes("中心")?-1:1,d=n.name.includes("中心")?-1:1;return s!==d?s-d:e.id-n.id})}catch{}finally{_t.value=!1}}async function Wa(){pt.value=!0;try{const t=await ml(),e=(t==null?void 0:t.groups)||[];et.value=e}catch{}finally{pt.value=!1}}async function Xt(t){if(!ne.value){S.value=null;return}ue.value=!0;try{const e={start_date:t.start,end_date:t.end};R.value.length>0&&(e.dept_ids=R.value.join(",")),x.value&&(e.channel_code=x.value);const n=await yl(e);S.value={start_date:n.start_date,end_date:n.end_date,channel_code:n.channel_code||"",channel_name:n.channel_name||"",channel_filter_note:n.channel_filter_note||"",range_note:n.range_note||"",leaderboards:n.leaderboards||[]}}catch(e){if(re.isCancel(e))return;S.value=null}finally{ue.value=!1}}async function Me(){if(te.value=!0,S.value=null,!Re.value){de.value=[],te.value=!1,H.value?Dt():(V.value=[],me.value={},Te.value=null);return}try{const t={};if(R.value.length>0&&(t.dept_ids=R.value.join(",")),x.value&&(t.channel_code=x.value),U.value&&U.value[0]&&U.value[1]){const[s,d]=U.value,b={...t,start_date:s,end_date:d},h=await vl(b);de.value=[{label:s===d?s:`${s} ~ ${d}`,start_date:h.start_date,end_date:h.end_date,channel_code:h.channel_code||"",channel_name:h.channel_name||"",channel_group:h.channel_group||"",channel_filter_note:h.channel_filter_note||"",rows:h.rows||[],total:h.total}],await Xt({start:h.start_date,end:h.end_date});return}const e=await Ke(t);de.value=((e==null?void 0:e.tables)||[]).map(s=>({label:s.label,start_date:s.start_date,end_date:s.end_date,channel_code:s.channel_code||"",channel_name:s.channel_name||"",channel_group:s.channel_group||"",channel_filter_note:s.channel_filter_note||"",rows:s.rows||[],total:s.total}));const n=ut(new Date);await Xt({start:n,end:n})}catch(t){if(re.isCancel(t))return;const e=t;ie.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{te.value=!1,H.value?Dt():(V.value=[],me.value={},Te.value=null)}}function qa(){R.value=[],U.value=null,x.value="",Me()}function Ja(t){return t<=0?!1:je.value.some(e=>Number(e.pid)===t)}function Ga(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function rt(t){return t==null||!Number.isFinite(Number(t))?"—":Number(t).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function Xa(t){return(K.value-1)*st.value+t+1}function Za(t){const e=(t==null?void 0:t.appointment_date)!=null&&String(t.appointment_date)!==""?String(t.appointment_date):"",n=(t==null?void 0:t.period)!=null&&String(t.period)!==""?String(t.period):"",s=(t==null?void 0:t.appointment_time)!=null&&String(t.appointment_time)!==""?String(t.appointment_time):"",d=[n,s].filter(Boolean).join(" ");return e&&d?`${e} ${d}`:e||d||"—"}function Zt(t){if(!t)return"";const e=t.channel_dict_value;if(e!=null&&e!==""){const d=Number(e);if(Number.isFinite(d))return String(Math.trunc(d))}const n=t.channel_source;if(n==null)return"";const s=String(n).trim();return s===""||!/^\d+$/.test(s)?"":String(parseInt(s,10))}function Ka(t){if(t==null||t==="")return"—";const e=Number(t);if(Number.isFinite(e)&&e>=1e9&&e<1e15){const s=e<1e12?e*1e3:e,d=new Date(s);if(!Number.isNaN(d.getTime())){const b=d.getFullYear(),h=String(d.getMonth()+1).padStart(2,"0"),w=String(d.getDate()).padStart(2,"0"),T=String(d.getHours()).padStart(2,"0"),O=String(d.getMinutes()).padStart(2,"0");return`${b}-${h}-${w} ${T}:${O}`}}const n=String(t);return n.length>=16?n.slice(0,16):n}function Kt(){const t=Xe.value;if(!t)return null;const e={start_time:`${t.start} 00:00:00`,end_time:`${t.end} 23:59:59`,exclude_fulfillment_cancelled:1,yeji_order_drawer:1};return t.mode==="dept"?(e.assistant_dept_id=t.deptId,R.value.length>0&&(e.dept_ids=R.value.join(",")),t.yejiTableRowDeptIds&&t.yejiTableRowDeptIds.length>0&&(e.yeji_table_row_dept_ids=t.yejiTableRowDeptIds.join(","))):(e.assistant_id=t.assistantId,t.erCenterRevisitSlot!==void 0&&(e.yeji_er_center_revisit_only=1,e.yeji_er_center_revisit_slot=t.erCenterRevisitSlot)),x.value&&le.value&&G.value==="channel"&&(e.channel_code=x.value),e}async function Qa(){const t=Kt();if(!t||!x.value)return;const e={...t,channel_code:x.value,page_no:1,page_size:1};try{const n=await ga(e),s=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null;s&&s.stats_yeji_drawer_total_performance_amount!=null&&(W.value={totalAmount:Number(s.stats_yeji_drawer_total_performance_amount),totalOrderCount:Number(s.stats_yeji_drawer_total_performance_order_count??0),channelAmount:Number(s.stats_order_amount_performance??0),channelOrderCount:Number((n==null?void 0:n.count)??0)})}catch{}}async function he(){const t=Kt();if(t){x.value&&G.value==="total"&&(W.value=null),ye.value=!0;try{const e={...t,page_no:K.value,page_size:st.value},n=await ga(e);be.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],ot.value=Number((n==null?void 0:n.count)??0),oe.value=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null,x.value&&G.value==="channel"&&oe.value&&oe.value.stats_yeji_drawer_total_performance_amount!=null&&(W.value={totalAmount:Number(oe.value.stats_yeji_drawer_total_performance_amount),totalOrderCount:Number(oe.value.stats_yeji_drawer_total_performance_order_count??0),channelAmount:Number(oe.value.stats_order_amount_performance??0),channelOrderCount:Number((n==null?void 0:n.count)??0)}),x.value&&le.value&&G.value==="total"&&await Qa()}catch(e){if(re.isCancel(e))return;const n=e;ie.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载业务订单失败"),be.value=[],ot.value=0,oe.value=null}finally{ye.value=!1}}}function Qt(t,e,n){const s=!!(x.value&&t.channel_name);G.value=s?(n==null?void 0:n.listTab)??"channel":"channel",W.value=null,Xe.value={mode:"dept",deptId:e.dept_id,deptName:e.dept_name,start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(d=>d.dept_id).filter(d=>typeof d=="number"&&d>0)},Je.value=`业务订单 · ${e.dept_name}`,Ge.value=`创建时间:${t.start_date} ~ ${t.end_date} · 与「合计业绩 / 接诊诊单」同口径:订单创建人人事部门 ∈ 本部门子树 · 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function en(t,e,n){const s=!!(x.value&&t.channel_name);G.value=s?n:"channel",W.value=null,Xe.value={mode:"dept",deptId:e,deptName:"当前展示合计",start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(d=>d.dept_id).filter(d=>typeof d=="number"&&d>0)},Je.value="业务订单 · 当前展示合计",Ge.value=`创建时间:${t.start_date} ~ ${t.end_date} · 已选展示部门 1 个根节点(含其下全部展示行)· 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function Lt(t,e,n){return!(ge(e)||e.dept_id<=0||n==="channel"&&!t.channel_name)}function zt(t,e){return!(R.value.length!==1||e==="channel"&&!t.channel_name)}function ea(t,e,n){if(!Lt(t,e,n))return;Qt(t,e,{listTab:n==="total"?"total":"channel"})}function ta(t,e){if(!zt(t,e))return;const n=R.value[0];if(!n)return;en(t,n,e==="total"?"total":"channel")}function tn(t,e,n){G.value="channel",W.value=null,Xe.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n},Je.value=`业务订单 · ${t.name}`,Ge.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与排行榜诊金同口径)· 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function $t(t,e,n,s){G.value="channel",W.value=null,Xe.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n,erCenterRevisitSlot:s};const d=s===0?"复诊合计":tt(s);Je.value=`业务订单 · ${t.name} · ${d}`,Ge.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与部门表 / 排行榜复诊同口径)· 仅二中心复诊口径 · ${d} · 不含履约 4/9/10`,K.value=1,le.value=!0,he()}function an(t){if(!t||t.admin_id<=0||!S.value||Number(t.revisit_count??0)<=0)return;const{start_date:e,end_date:n}=S.value;$t({admin_id:t.admin_id,name:t.name},e,n,0)}function nn(t,e){if(!t||t.admin_id<=0||!S.value||ae(t,e)<=0)return;const{start_date:n,end_date:s}=S.value;$t({admin_id:t.admin_id,name:t.name},n,s,e)}function ln(){K.value=1,he()}function on(t){K.value=t,he()}function sn(t){st.value=t,K.value=1,he()}function ge(t){return t.dept_id<=0&&t.dept_name==="未归属中心"}function rn(t,e){e.dept_id<=0||ge(e)||Number(e.revisit_count??0)<=0||na(t,e,0)}function dn(t,e,n){e.dept_id<=0||ge(e)||ae(e,n)<=0||na(t,e,n)}function aa(t){const e=Vt.value;!e||Number(t.order_count)<=0||$t({admin_id:t.admin_id,name:t.name},e.start,e.end,e.revisitSlot)}async function na(t,e,n){const s=n===0?"复诊合计":tt(n);Ft.value=`${e.dept_name} · ${s} · ${t.start_date} ~ ${t.end_date}`,Vt.value={start:t.start_date,end:t.end_date,revisitSlot:n},Be.value="",De.value=[],yt.value=!0,Ne.value=!0;try{const d={start_date:t.start_date,end_date:t.end_date,dept_id:e.dept_id,revisit_slot:n};R.value.length>0&&(d.dept_ids=R.value.join(",")),x.value&&(d.channel_code=x.value);const b=await fl(d);De.value=Array.isArray(b==null?void 0:b.rows)?b.rows:[],Be.value=typeof(b==null?void 0:b.note)=="string"?b.note:""}catch(d){if(re.isCancel(d))return;const b=d;ie.error((b==null?void 0:b.msg)||(b==null?void 0:b.message)||"加载复诊拆解失败"),De.value=[],Be.value=""}finally{Ne.value=!1}}function la(t){const e=[`区间:${t.start_date} ~ ${t.end_date}`];return x.value&&e.push(`渠道:${t.channel_name||x.value}`),R.value.length>0&&e.push(`已选展示部门 ${R.value.length} 个`),e.join(" · ")}async function un(t){Et.value=la(t),Ve.value="",Se.value=[],ft.value=!0,xe.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date};R.value.length>0&&(e.dept_ids=R.value.join(",")),x.value&&(e.channel_code=x.value);const n=await bl(e);Se.value=Array.isArray(n==null?void 0:n.rows)?n.rows:[],Ve.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(re.isCancel(e))return;const n=e;ie.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载未归属拆解失败"),Se.value=[],Ve.value=""}finally{xe.value=!1}}function cn(t,e,n){n.dept_id<=0||Number(n.lead_count)<=0||(t.stopPropagation(),vn(e,n))}const oa=[{key:"event_time_text",label:"进线时间"},{key:"reception_admin_name",label:"接待"},{key:"external_contact_name",label:"客户"},{key:"external_userid",label:"外部联系人ID"},{key:"user_id",label:"企微成员ID"},{key:"state",label:"渠道参数"}];function At(t,e,n){const{tb:s,row:d}=t,b={start_date:s.start_date,end_date:s.end_date,dept_id:d.dept_id,page:e,page_size:n};return R.value.length>0&&(b.dept_ids=R.value.join(",")),x.value&&(b.channel_code=x.value),b}function sa(t){const e=t==null?"":String(t);return/[",\n\r]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function _n(t){const e=oa.map(s=>sa(s.label)).join(","),n=t.map(s=>oa.map(d=>sa(s[d.key])).join(",")).join(` +`);return`\uFEFF${e} +${n}`}function pn(t,e){const n=new Blob([e],{type:"text/csv;charset=utf-8;"}),s=URL.createObjectURL(n),d=document.createElement("a");d.href=s,d.download=t,d.click(),URL.revokeObjectURL(s)}function mn(t){const{tb:e,row:n}=t;return`进线数据明细_${(n.dept_name||`dept${n.dept_id}`).replace(/[\\/:*?"<>|]/g,"_")}_${e.start_date}_${e.end_date}.csv`}async function Rt(){const t=ht.value;if(t){ce.value=!0;try{const e=await Mt(At(t,He.value,at.value));Ce.value=Array.isArray(e==null?void 0:e.lists)?e.lists:[],Le.value=Number((e==null?void 0:e.count)??0),Ue.value=typeof(e==null?void 0:e.note)=="string"?e.note:""}catch(e){if(re.isCancel(e))return;const n=e;ie.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载进线明细失败"),Ce.value=[],Le.value=0,Ue.value=""}finally{ce.value=!1}}}async function vn(t,e){ht.value={tb:t,row:e},Bt.value=`${e.dept_name} · ${la(t)}`,Ue.value="",Ce.value=[],Le.value=0,He.value=1,at.value=20,bt.value=!0,await Rt()}function fn(t){He.value=t,Rt()}function yn(t){at.value=t,He.value=1,Rt()}async function bn(){const t=ht.value;if(!(!t||Ye.value)){Ye.value=!0;try{const n=await Mt(At(t,1,100)),s=Number((n==null?void 0:n.count)??0);if(s<=0){ie.warning("暂无进线明细可导出");return}const d=Array.isArray(n==null?void 0:n.lists)?[...n.lists]:[],b=Math.ceil(s/100);for(let h=2;h<=b;h++){const w=await Mt(At(t,h,100)),T=Array.isArray(w==null?void 0:w.lists)?w.lists:[];d.push(...T)}pn(mn(t),_n(d)),ie.success(`已导出 ${d.length} 条进线明细`)}catch(e){if(re.isCancel(e))return;const n=e;ie.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"导出进线明细失败")}finally{Ye.value=!1}}}function hn(t){return(fe.value-1)*Ae.value+t+1}function ia(t){return ge(t)?!0:t.dept_id>0}async function dt(){const t=wt.value;if(t){ve.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date,page:fe.value,page_size:Ae.value};t.mode==="dept"?e.dept_id=t.dept_id:e.assistant_id=t.assistant_id,R.value.length>0&&(e.dept_ids=R.value.join(",")),x.value&&(e.channel_code=x.value);const n=await hl(e);_e.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],$e.value=Number((n==null?void 0:n.count)??0),ze.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(re.isCancel(e))return;const n=e;ie.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载挂号明细失败"),_e.value=[],$e.value=0,ze.value=""}finally{ve.value=!1}}}function gn(t){if(!t||t.admin_id<=0||!S.value||Number(t.appointment_count??0)<=0)return;const e=S.value;wt.value={mode:"assistant",assistant_id:t.admin_id,name:t.name,start_date:e.start_date,end_date:e.end_date},gt.value=`${t.name} · 医助 · ${e.start_date} ~ ${e.end_date}`,ze.value="",_e.value=[],$e.value=0,fe.value=1,Ae.value=20,nt.value=!0,dt()}function wn(t,e){!ia(e)||Number(e.appointment_booked_count??0)<=0||(wt.value={mode:"dept",dept_id:e.dept_id,dept_name:e.dept_name,start_date:t.start_date,end_date:t.end_date},gt.value=`${e.dept_name} · ${t.start_date} ~ ${t.end_date}`,ze.value="",_e.value=[],$e.value=0,fe.value=1,Ae.value=20,nt.value=!0,dt())}function kn(t){fe.value=t,dt()}function jn(t){Ae.value=t,fe.value=1,dt()}function xn(t,e){if(ge(e)){un(t);return}if(!(e.dept_id<=0)){if(Ja(e.dept_id)){R.value=[e.dept_id],Me();return}Qt(t,e)}}function Sn(t){if(!t||t.admin_id<=0||!S.value)return;const{start_date:e,end_date:n}=S.value;tn(t,e,n)}function ra(t){const e=t.channel_name?` · ${t.channel_name}`:"";return`${t.label}${e}`}function Nn(t){const e=t.rows.filter(h=>h.dept_id>0),n=e.map(h=>h.dept_name.length>10?`${h.dept_name.slice(0,10)}…`:h.dept_name),s=["#64748b","#38bdf8","#6366f1"],d=[{name:"进线",type:"bar",data:e.map(h=>h.lead_count),yAxisIndex:0,barMaxWidth:16},{name:"接诊",type:"bar",data:e.map(h=>h.consult_count),yAxisIndex:0,barMaxWidth:16},{name:"成交单",type:"bar",data:e.map(h=>h.deal_order_count),yAxisIndex:0,barMaxWidth:16},{name:"合计业绩",type:"bar",data:e.map(h=>h.performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#d97706"}}];t.channel_name&&d.push({name:`${t.channel_name}业绩`,type:"bar",data:e.map(h=>h.completed_performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#0d9488"}});const b=e.length>10;return{color:[...s,"#d97706","#0d9488"],tooltip:{trigger:"axis",axisPointer:{type:"cross"}},legend:{top:8,type:"scroll",textStyle:{fontSize:11}},grid:{left:52,right:52,top:48,bottom:b?56:28,containLabel:!1},dataZoom:b?[{type:"slider",bottom:4,start:0,end:Math.min(100,Math.ceil(12/Math.max(e.length,1)*100))}]:[],xAxis:{type:"category",data:n,axisLabel:{rotate:n.length>8?28:0,fontSize:10}},yAxis:[{type:"value",name:"数量",splitLine:{lineStyle:{type:"dashed",opacity:.55}}},{type:"value",name:"金额",splitLine:{show:!1}}],series:d}}function Dn(t,e){const n=[...t.rows].sort((s,d)=>Number(d.fee_amount)-Number(s.fee_amount)).slice(0,15);return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${Number(s).toLocaleString("zh-CN")} 元`},grid:{left:8,right:20,top:12,bottom:8,containLabel:!0},xAxis:{type:"value",splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:n.map(s=>s.name.length>8?`${s.name.slice(0,8)}…`:s.name).reverse(),axisLabel:{fontSize:11}},series:[{name:"诊金",type:"bar",data:n.map(s=>Number(s.fee_amount??0)).reverse(),barMaxWidth:20,itemStyle:{borderRadius:[0,6,6,0]}}]}}function da(t){return t.rows.some(e=>Number(e.fee_amount)>0)}function Cn(t,e){const s=[...t.rows].filter(d=>Number(d.fee_amount)>0).sort((d,b)=>Number(b.fee_amount)-Number(d.fee_amount)).slice(0,10).map(d=>({name:d.name.length>6?`${d.name.slice(0,6)}…`:d.name,value:Number(d.fee_amount)}));return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5"],tooltip:{trigger:"item",formatter:"{b}: {c} 元 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:9}},series:[{name:"诊金",type:"pie",radius:["38%","64%"],center:["50%","42%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} +{d}%`,fontSize:10}}]}}function ua(t){return Number(t.total.lead_count)+Number(t.total.consult_count)+Number(t.total.deal_order_count)>0}function Ln(t){const e=Number(t.total.lead_count??0),n=Number(t.total.consult_count??0),s=Number(t.total.deal_order_count??0);return{tooltip:{trigger:"item",formatter:"{b}: {c}"},color:["#2563eb","#38bdf8","#0d9488"],series:[{type:"funnel",left:"8%",width:"84%",minSize:"12%",sort:"none",gap:6,label:{show:!0,position:"inside",formatter:`{b} +{c}`,fontSize:11},data:[{value:e,name:"进线"},{value:n,name:"接诊"},{value:s,name:"成交单"}]}]}}function ca(t){return t.rows.some(e=>e.dept_id>0&&Number(e.performance_amount)>0)}function zn(t){const e=t.rows.filter(d=>d.dept_id>0&&Number(d.performance_amount)>0).sort((d,b)=>Number(b.performance_amount)-Number(d.performance_amount));if(!e.length)return{series:[{type:"pie",data:[]}]};const s=e.slice(0,10).map(d=>({name:d.dept_name.length>8?`${d.dept_name.slice(0,8)}…`:d.dept_name,value:Number(d.performance_amount)}));if(e.length>10){const d=e.slice(10).reduce((b,h)=>b+Number(h.performance_amount),0);d>0&&s.push({name:"其它",value:d})}return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}
{c} 元({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:10}},series:[{type:"pie",radius:["36%","62%"],center:["50%","44%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b} +{d}%`,fontSize:10}}]}}function Pt(t){return{perf:"渠道业绩",deal:"渠道成交",aov:"渠道客单"}[t]??t}function D(t){return t==null||t===""?"0":Number(t).toLocaleString("en-US")}function M(t){return t==null||t===""?"0.0":Number(t).toLocaleString("en-US",{minimumFractionDigits:1,maximumFractionDigits:1})}function se(t){if(t==null||t==="")return"0";const e=Number(t);return Number.isFinite(e)?Math.round(e).toLocaleString("zh-CN"):"0"}function _a(t){return t==null||t===""?"—":Number(t).toLocaleString("en-US",{minimumFractionDigits:1,maximumFractionDigits:1})}function pa(t){return t==null||t===""?"—":Number(t).toFixed(1)}function ma(t){if(t==null||t==="")return"";const e=Number(t);return e>=1?"roi-good":e>=.8?"roi-mid":"roi-bad"}function $n(t){return t===null?"—":(t*100).toFixed(2)+"%"}function An(t){return t===null?"":t>=1?"tp-good":t>=.8?"tp-mid":"tp-bad"}function Rn(t){return t>=1e4?(t/1e4).toFixed(1)+"万":String(t)}function ut(t){const e=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),s=String(t.getDate()).padStart(2,"0");return`${e}-${n}-${s}`}return xl(async()=>{pe.value=qe(),await Promise.all([Ha(),Wa()]),Me(),Ba()}),(t,e)=>{const n=Un,s=Hn,d=Yn,b=Wn,h=Jn,w=Xn,T=Gn,O=Zn,p=tl,P=el,$=al,Q=Qn,I=nl,Oe=Kn,q=ol,we=ll,Ee=sl,Fe=il,ke=rl,B=qn;return o(),c("div",Nl,[e[141]||(e[141]=a("header",{class:"yeji-masthead"},[a("div",{class:"yeji-masthead__inner"},[a("h1",{class:"yeji-masthead__title"},"业绩看板"),a("p",{class:"yeji-masthead__desc"},"渠道 · 部门 · 日期维度的业绩分析")])],-1)),r(O,{class:"yeji-panel filter-card",shadow:"never"},{default:_(()=>[a("div",Dl,[a("div",Cl,[a("div",Ll,[e[10]||(e[10]=a("span",{class:"lbl"},"渠道来源",-1)),r(d,{modelValue:x.value,"onUpdate:modelValue":e[0]||(e[0]=l=>x.value=l),filterable:"",placeholder:"渠道筛选",class:"filter-select filter-select--channel",loading:pt.value,onChange:Me},{default:_(()=>[r(n,{label:"全部",value:""}),(o(!0),c(k,null,F(et.value,l=>(o(),j(s,{key:l.group_name,label:l.group_name},{default:_(()=>[(o(!0),c(k,null,F(l.channels,g=>(o(),j(n,{key:g.channel_code,label:g.channel_name,value:g.channel_code},{default:_(()=>[a("div",zl,[a("span",$l,i(g.channel_name),1),a("span",Al,i(g.customer_count>0?g.customer_count:""),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","loading"])]),a("div",Rl,[e[11]||(e[11]=a("span",{class:"lbl"},"展示部门",-1)),Z((o(),c("div",Pl,[r(b,{modelValue:R.value,"onUpdate:modelValue":e[1]||(e[1]=l=>R.value=l),data:xa.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":"",filterable:"","check-strictly":"","render-after-expand":!1,"default-expand-all":!0,placeholder:"默认:所有「中心」部门",class:"filter-dept-tree-select","node-key":"id",props:ka},null,8,["modelValue","data"])])),[[B,_t.value]])]),a("div",Tl,[e[12]||(e[12]=a("span",{class:"lbl"},"日期范围",-1)),r(h,{modelValue:U.value,"onUpdate:modelValue":e[2]||(e[2]=l=>U.value=l),type:"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始","end-placeholder":"结束",clearable:!0,shortcuts:Gt,class:"filter-date-picker"},null,8,["modelValue"])]),a("div",Il,[r(T,{type:"primary",class:"filter-btn filter-btn--query",loading:te.value,onClick:Me},{default:_(()=>[r(w,{class:"filter-btn__icon"},{default:_(()=>[r(C(ul))]),_:1}),e[13]||(e[13]=u(" 查询 ",-1))]),_:1},8,["loading"]),r(T,{class:"filter-btn filter-btn--reset",disabled:te.value,onClick:qa},{default:_(()=>[r(w,{class:"filter-btn__icon"},{default:_(()=>[r(C(cl))]),_:1}),e[14]||(e[14]=u(" 重置 ",-1))]),_:1},8,["disabled"])])]),a("div",Ml,[e[15]||(e[15]=a("span",{class:"filter-quick__title"},"快捷日期",-1)),a("div",Ol,[(o(),c(k,null,F(Gt,l=>a("button",{key:l.text,type:"button",class:"date-pill",onClick:g=>Ua(l)},i(l.text),9,El)),64))])])])]),_:1}),r(O,{class:"yeji-panel yeji-main-tabs-card",shadow:"never"},{default:_(()=>[e[115]||(e[115]=a("div",{class:"yeji-table-tabs-head"},[a("span",{class:"yeji-table-tabs-head__title"},"表格统计"),a("span",{class:"yeji-table-tabs-head__hint"},"列较多时可横向滚动浏览;「部门 / 排名」列在滚动时保持固定。")],-1)),Ca.value?(o(),j(Oe,{key:0,modelValue:pe.value,"onUpdate:modelValue":e[3]||(e[3]=l=>pe.value=l),class:"yeji-view-tabs"},{default:_(()=>[H.value?(o(),j(Q,{key:0,label:"医生统计",name:"doctor",lazy:""},{default:_(()=>[H.value?(o(),j(O,{key:0,class:"yeji-panel doctor-daily-card doctor-daily-card--nested",shadow:"never"},{header:_(()=>[a("div",Fl,[a("div",Vl,[e[16]||(e[16]=a("span",{class:"doctor-daily-card__title"},"医生明细",-1)),lt.value?(o(),c("span",Bl,i(lt.value),1)):v("",!0)]),a("div",Yl,[r(T,{type:"primary",size:"small",loading:Pe.value,onClick:Dt},{default:_(()=>[...e[17]||(e[17]=[u(" 刷新 ",-1)])]),_:1},8,["loading"])])])]),default:_(()=>[Z((o(),j(P,{data:V.value,size:"small",border:"",stripe:"",class:"doctor-daily-table","show-summary":"","summary-method":Ma},{default:_(()=>[r(p,{prop:"doctor_name",label:"医生","min-width":"100",fixed:""}),r(p,{prop:"system_prescription_count",label:"系统开方","min-width":"88",align:"right"}),r(p,{prop:"manual_prescription_count",label:"手动开方","min-width":"88",align:"right"}),r(p,{prop:"deal_amount",label:"成交金额","min-width":"110",align:"right"},{default:_(({row:l})=>[u("¥ "+i(Ht(l.deal_amount)),1)]),_:1}),r(p,{prop:"deal_order_count",label:"接诊诊单","min-width":"88",align:"right"}),r(p,{prop:"appointment_completed",label:"挂号完成","min-width":"88",align:"right"}),r(p,{prop:"appointment_missed",label:"过号","min-width":"72",align:"right"}),r(p,{prop:"appointment_cancelled",label:"取消","min-width":"72",align:"right"})]),_:1},8,["data"])),[[B,Pe.value]])]),_:1})):(o(),j($,{key:1,description:"当前账号无医生统计权限"}))]),_:1})):v("",!0),ne.value?(o(),j(Q,{key:1,label:"医助排行榜",name:"leaderboard",lazy:""},{default:_(()=>[S.value||ue.value?Z((o(),c("div",Ul,[S.value?(o(),c(k,{key:0},[a("p",Hl,[u(i(S.value.range_note)+" ",1),a("span",Wl,i(S.value.start_date)+" ~ "+i(S.value.end_date),1)]),a("div",ql,[(o(!0),c(k,null,F(S.value.leaderboards,l=>(o(),c(k,{key:l.dept_id},[l.rows.length>0?(o(),c("div",Jl,[a("div",Gl,[u(i(l.dept_name)+" · 医助排行榜 ",1),S.value.channel_name?(o(),c("span",Xl," ("+i(S.value.channel_name)+") ",1)):v("",!0)]),a("div",Zl,[a("table",Kl,[a("thead",null,[a("tr",null,[e[19]||(e[19]=a("th",{class:"col-rank"},"排名",-1)),e[20]||(e[20]=a("th",{class:"col-abbr"},"部门",-1)),e[21]||(e[21]=a("th",{class:"col-name"},"姓名",-1)),e[22]||(e[22]=a("th",{class:"col-consult"},"接诊单数",-1)),e[23]||(e[23]=a("th",{class:"col-deal"},"接诊诊单",-1)),e[24]||(e[24]=a("th",{class:"col-assign"},"被指派数",-1)),e[25]||(e[25]=a("th",{class:"col-appointment"},"预约诊单",-1)),l.er_center_subtree?(o(),c(k,{key:0},[e[18]||(e[18]=a("th",{class:"col-revisit"},"复诊合计",-1)),(o(!0),c(k,null,F(Ot(l),g=>(o(),c("th",{key:"lbh-"+l.dept_id+"-"+g,class:"col-revisit-slot"},i(tt(g)),1))),128))],64)):v("",!0),e[26]||(e[26]=a("th",null,"诊金",-1)),e[27]||(e[27]=a("th",null,[u("接诊率"),a("br"),a("span",{class:"th-sub"},"(元/进线)")],-1))])]),a("tbody",null,[(o(!0),c(k,null,F(l.rows,g=>(o(),c("tr",{key:g.admin_id,class:"yeji-row--action",onClick:m=>Sn(g)},[a("td",eo,i(g.rank),1),a("td",to,i(g.dept_abbr),1),a("td",ao,i(g.name),1),a("td",no,i(se(g.consult_count)),1),a("td",lo,i(se(g.deal_order_count)),1),a("td",oo,i(se(g.assign_count??0)),1),a("td",{class:"col-appointment",onClick:X(m=>gn(g),["stop"])},[Number(g.appointment_count??0)>0?(o(),c("span",io,i(se(g.appointment_count??0)),1)):(o(),c(k,{key:1},[u(i(se(g.appointment_count??0)),1)],64))],8,so),l.er_center_subtree?(o(),c(k,{key:0},[a("td",{class:"col-revisit",onClick:X(m=>an(g),["stop"])},[Number(g.revisit_count??0)>0?(o(),c("span",uo,i(se(g.revisit_count??0)),1)):(o(),c(k,{key:1},[u(i(se(g.revisit_count??0)),1)],64))],8,ro),(o(!0),c(k,null,F(Ot(l),m=>(o(),c("td",{key:"lbc-"+g.admin_id+"-"+m,class:"col-revisit-slot",onClick:X(E=>nn(g,m),["stop"])},[ae(g,m)>0?(o(),c("span",_o,i(se(ae(g,m))),1)):(o(),c(k,{key:1},[u(i(se(ae(g,m))),1)],64))],8,co))),128))],64)):v("",!0),a("td",null,i(M(g.fee_amount)),1),a("td",null,i(M(g.consult_rate)),1)],8,Ql))),128))])])]),a("div",po,[e[28]||(e[28]=a("span",null,"诊金单位:元 · 诊金/接诊诊单/复诊均按「订单创建人 = 该医助」归属,与部门「合计业绩 / 接诊诊单 / 复诊」同口径 · 被指派数与部门业绩表同口径 · 接诊率 = 诊金 ÷ 进线(元/进线)",-1)),l.er_center_subtree?(o(),c("span",mo," · 复诊列为二中心口径(同一诊单业务单序列第 2 笔起),点击数字查看对应业务订单 ")):v("",!0),e[29]||(e[29]=a("span",null," · 预约诊单:预约日期在统计区间内,状态含已预约/已完成/已过号(不含已取消),医助归属与接诊单数一致(按挂号 assistant_id 优先,否则诊单 assistant_id);各科组展示全部医助。 ",-1))])])):v("",!0)],64))),128))]),!ue.value&&Ya.value===0?(o(),c("div",vo,[r($,{description:"当前筛选下暂无医助排行数据"})])):v("",!0)],64)):v("",!0)])),[[B,ue.value]]):ue.value?v("",!0):(o(),j($,{key:1,class:"yeji-charts-empty",description:"当前筛选下暂无医助排行数据"}))]),_:1})):v("",!0),Re.value?(o(),j(Q,{key:2,label:"甄养堂互联网医院诊金",name:"zyyt",lazy:""},{default:_(()=>[Z((o(),c("div",fo,[!te.value&&de.value.length===0?(o(),c("div",yo,[r($,{description:"暂无数据"})])):v("",!0),(o(!0),c(k,null,F(de.value,(l,g)=>(o(),c("div",{key:g,class:"yeji-table"},[a("div",bo,i(ra(l)),1),a("div",ho,[a("table",go,[a("thead",null,[a("tr",null,[e[107]||(e[107]=a("th",{class:"col-dept"},"部门",-1)),a("th",null,[e[36]||(e[36]=a("span",null,"进线数据",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",wo,[e[34]||(e[34]=u(" add_external_contact 事件数,按接待企微成员归属部门;定渠道时须客户带对应企微标签。",-1)),e[35]||(e[35]=a("br",null,null,-1)),l.channel_name?(o(),c(k,{key:0},[e[30]||(e[30]=a("b",null,"二中心及其组织下级",-1)),e[31]||(e[31]=u("(与部门 ErCenter 子树一致)在选定渠道下进线计 ",-1)),e[32]||(e[32]=a("b",null,"0",-1)),e[33]||(e[33]=u("。 ",-1))],64)):v("",!0)])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:2},1024)]),a("th",null,[e[52]||(e[52]=a("span",null,"被指派数",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",ko,[e[44]||(e[44]=a("b",null,"tcm_diagnosis_assign_log",-1)),e[45]||(e[45]=u(" 行数(成功指派:",-1)),e[46]||(e[46]=a("b",null,"to_assistant_id > 0",-1)),e[47]||(e[47]=u("),**仅按 ",-1)),e[48]||(e[48]=a("b",null,"related_po_create_time",-1)),e[49]||(e[49]=u("** 落在所选区间内(与日志表快照一致;诊单手动指派已写入该字段)。按",-1)),e[50]||(e[50]=a("b",null,"被指派医助",-1)),e[51]||(e[51]=u("归属展示部门。",-1)),l.channel_name?(o(),c(k,{key:0},[u(" 选定渠道时收窄与「"+i(l.channel_name)+"」业绩同口径(标签诊单或 channels EXISTS)。",1),e[37]||(e[37]=a("br",null,null,-1)),e[38]||(e[38]=a("b",null,"二中心及其组织下级",-1)),e[39]||(e[39]=u("在选定渠道下本列计 ",-1)),e[40]||(e[40]=a("b",null,"0",-1)),e[41]||(e[41]=u("。 ",-1))],64)):(o(),c(k,{key:1},[e[42]||(e[42]=a("br",null,null,-1)),e[43]||(e[43]=u("未选渠道时不限客户来源,与「合计业绩」列渠道无关。",-1))],64))])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:2},1024)]),a("th",null,[e[54]||(e[54]=a("span",null,"复诊合计",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[53]||(e[53]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[u(" 仅"),a("b",null,"名称含「二中心」"),u("的部门及其组织下级:候选订单为有诊单医助、且 "),a("b",null,"fulfillment_status"),u(" 非 4/9/10("),a("b",null,"NULL 计入"),u(")的业务单,按患者 "),a("b",null,"create_time"),u(" 排序,"),a("b",null,"第 1 笔不计"),u(";第 2 笔起计入合计,分列复诊2、复诊三…。"),a("b",null,"归属"),u("按订单创建人的人事部门,与"),a("b",null,"合计业绩"),u("列同口径。非二中心子树部门为 0。 ")],-1)])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:1})]),(o(!0),c(k,null,F(vt.value,m=>(o(),c("th",{key:"yjv-h-"+m},[a("span",null,i(tt(m)),1),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",jo,[e[55]||(e[55]=u(" 该列统计区间内患者第 ",-1)),a("b",null,i(m),1),e[56]||(e[56]=u(" 笔业务单条数(第 1 笔初诊单列不计);归属与合计列相同。 ",-1))])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:2},1024)]))),128)),a("th",null,[e[58]||(e[58]=a("span",null,"合计业绩",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[57]||(e[57]=[a("div",{style:{"max-width":"300px","line-height":"1.7","font-size":"12px"}},[u(" 按订单"),a("b",null,"创建时间"),u("统计(剔除履约已取消/拒收/退款 4·9·10),金额与"),a("b",null,"接诊诊单"),u("列一致:仅按"),a("b",null,"订单创建人"),u("的人事部门落在本展示行(含下级)计入,多行命中时取最深的展示部门。与"),a("b",null,"医助排行榜诊金"),u("同口径。"),a("br"),a("b",null,"不受渠道筛选影响"),u("。与侧栏按部门打开的业务订单列表对齐。"),a("br"),u(" 点击金额可查看对应业务订单明细(侧栏默认「合计业绩」全量列表)。 ")],-1)])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:1})]),l.channel_name?(o(),c("th",xo,[a("span",So,i(Pt("perf")),1),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",No,[u(" 「"+i(l.channel_name)+"」渠道业绩(与卡片标题渠道一致)。与「处方订单列表」业绩",1),e[59]||(e[59]=a("b",null,"同口径",-1)),e[60]||(e[60]=u(":按订单 ",-1)),e[61]||(e[61]=a("b",null,"create_time",-1)),e[62]||(e[62]=u(" 归日,剔除履约状态 4(已取消)/9(拒收)/10(退款)。",-1)),e[63]||(e[63]=a("br",null,null,-1)),e[64]||(e[64]=u(" 渠道判定用 EXISTS:该患者有任一挂号 ",-1)),e[65]||(e[65]=a("b",null,"channels 命中字典 + status=3",-1)),e[66]||(e[66]=u("(不限挂号时点)。",-1)),e[67]||(e[67]=a("br",null,null,-1)),e[68]||(e[68]=u(" 点击金额可查看该部门本渠道订单明细(侧栏「渠道筛选」列表)。 ",-1))])]),default:_(()=>[r(w,{class:"col-info","aria-label":"说明"},{default:_(()=>[r(C(Y))]),_:1})]),_:2},1024)])):v("",!0),a("th",null,[e[70]||(e[70]=a("span",null,"预约诊单",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[69]||(e[69]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[u(" 已预约 / 已完成 / 已过号(不含已取消),按"),a("b",null,"预约日期"),u("落在区间内统计;部门归属医助优先,否则接诊医生;与"),a("b",null,"医助排行榜 · 预约诊单"),u("及明细弹窗同口径。"),a("br"),u(" 点击数字可查看每条挂号记录。 ")],-1)])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:1})]),a("th",null,[e[72]||(e[72]=a("span",null,"已完成挂号",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[71]||(e[71]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[u(" 仅"),a("b",null,"已完成"),u("(status=3),与 admin「医生预约 / 已完成」列表计数条件一致(appointment_date、诊单未软删);部门归属医助优先,否则接诊医生。 ")],-1)])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:1})]),a("th",null,[e[74]||(e[74]=a("span",null,"接诊诊单",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[73]||(e[73]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[a("b",null,"业务订单条数"),u("(计业绩):订单 "),a("b",null,"create_time"),u(" 落入区间、"),a("b",null,"fulfillment_status ∉ {4,9,10}"),u(";与列表筛选 "),a("b",null,"assistant_dept_id"),u(" 时一致——"),a("b",null,"创建人"),u("人事部门优先,无创建人则诊单 "),a("b",null,"医助"),u(";落在该部门子树即计入(表格多行命中时取最深的展示部门)。与侧栏勾选「与表格业绩对齐」时的集合可能略有差异。选定渠道时本列仍为全量。 ")],-1)])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:1})]),l.channel_name?(o(),c("th",Do,[a("span",Co,i(Pt("deal")),1),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Lo,[u(" 「"+i(l.channel_name)+"」渠道成交单数;与渠道业绩同源:区间内 ",1),e[75]||(e[75]=a("b",null,"计业绩的业务订单",-1)),e[76]||(e[76]=u(" 条数(剔除 4/9/10),按订单 ",-1)),e[77]||(e[77]=a("b",null,"create_time",-1)),e[78]||(e[78]=u(" 归日;渠道判定同业绩列。 ",-1))])]),default:_(()=>[r(w,{class:"col-info","aria-label":"说明"},{default:_(()=>[r(C(Y))]),_:1})]),_:2},1024)])):v("",!0),l.channel_name?(o(),c("th",zo,[a("span",$o,i(Pt("aov")),1),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Ao," 「"+i(l.channel_name)+"」渠道客单价 ≈ 渠道业绩 ÷ 渠道成交单。 ",1)]),default:_(()=>[r(w,{class:"col-info","aria-label":"说明"},{default:_(()=>[r(C(Y))]),_:1})]),_:2},1024)])):v("",!0),a("th",null,[e[104]||(e[104]=a("span",null,"ROI",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Ro,[l.channel_name?(o(),c(k,{key:0},[e[79]||(e[79]=u(" 有渠道时:",-1)),e[80]||(e[80]=a("b",null,"合计行 ROI",-1)),e[81]||(e[81]=u(" = ",-1)),a("b",null,i(l.channel_name)+"业绩合计",1),e[82]||(e[82]=u("(与上表该渠道业绩列合计一致,",-1)),e[83]||(e[83]=a("b",null,"不含二中心及其组织下级",-1)),e[84]||(e[84]=u(")÷ ",-1)),e[85]||(e[85]=a("b",null,"投放成本合计",-1)),e[86]||(e[86]=u("。",-1)),e[87]||(e[87]=a("br",null,null,-1)),e[88]||(e[88]=u(" 部门行 ROI = 该部门 ",-1)),a("b",null,i(l.channel_name)+"业绩",1),e[89]||(e[89]=u(" ÷ 该部门 ",-1)),e[90]||(e[90]=a("b",null,"投放成本",-1)),e[91]||(e[91]=u(";",-1)),e[92]||(e[92]=a("b",null,"二中心子树",-1)),e[93]||(e[93]=u("部门该渠道业绩与进线为 0、投放成本分摊进线计 0,故无 ROI。与「合计业绩」列无关。 ",-1))],64)):(o(),c(k,{key:1},[e[94]||(e[94]=a("b",null,"合计行 ROI",-1)),e[95]||(e[95]=u(" = 全表业绩合计(",-1)),e[96]||(e[96]=a("b",null,"不含二中心子树",-1)),e[97]||(e[97]=u("各部门行业绩)÷ ",-1)),e[98]||(e[98]=a("b",null,"投放成本合计",-1)),e[99]||(e[99]=u(";",-1)),e[100]||(e[100]=a("br",null,null,-1)),e[101]||(e[101]=u(" 部门行 = 该部门「合计业绩」口径业绩 ÷ 该部门均摊投放成本;",-1)),e[102]||(e[102]=a("b",null,"二中心子树",-1)),e[103]||(e[103]=u("部门不参与成本分摊(进线占比计 0),故无 ROI。 ",-1))],64))])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:2},1024)]),a("th",null,[e[106]||(e[106]=a("span",null,"投放成本",-1)),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[105]||(e[105]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[u(" 区间与渠道与账务表一致后得到"),a("b",null,"总投放成本"),u(";"),a("b",null,"单进线成本"),u(" = 总成本 ÷ 各展示部门"),a("b",null,"进线合计"),u(";"),a("br"),u(" 各部门行投放成本 = 单进线成本 × 该部门进线(四舍五入尾差并入进线最多的部门)。"),a("b",null,"二中心及其组织下级"),u("进线在分摊中计 "),a("b",null,"0"),u("(与 ROI 分子扣除范围一致)。 ")],-1)])]),default:_(()=>[r(w,{class:"col-info"},{default:_(()=>[r(C(Y))]),_:1})]),_:1})])])]),a("tbody",null,[(o(!0),c(k,null,F(l.rows,m=>(o(),c("tr",{key:`${g}-${m.dept_id}-${m.dept_name}`,class:ct(["yeji-row--action",{"yeji-row--unassigned":ge(m),"yeji-row--idle":m.dept_id<=0&&!ge(m)}]),onClick:E=>xn(l,m)},[a("td",To,i(m.dept_name),1),a("td",{onClick:E=>cn(E,l,m)},[m.dept_id>0&&Number(m.lead_count)>0?(o(),c("span",Mo,i(D(m.lead_count)),1)):(o(),c(k,{key:1},[u(i(D(m.lead_count)),1)],64))],8,Io),a("td",null,i(D(m.assign_count??0)),1),a("td",{onClick:X(E=>rn(l,m),["stop"])},[m.dept_id>0&&Number(m.revisit_count??0)>0?(o(),c("span",Eo,i(D(m.revisit_count??0)),1)):(o(),c(k,{key:1},[u(i(D(m.revisit_count??0)),1)],64))],8,Oo),(o(!0),c(k,null,F(vt.value,E=>(o(),c("td",{key:"yjv-"+g+"-"+m.dept_id+"-"+E,onClick:X(va=>dn(l,m,E),["stop"])},[m.dept_id>0&&ae(m,E)>0?(o(),c("span",Vo,i(D(ae(m,E))),1)):(o(),c(k,{key:1},[u(i(D(ae(m,E))),1)],64))],8,Fo))),128)),a("td",null,[Lt(l,m,"total")?(o(),c("span",{key:0,class:"yeji-lead-cell--link",onClick:X(E=>ea(l,m,"total"),["stop"])},i(M(m.performance_amount)),9,Bo)):(o(),c(k,{key:1},[u(i(M(m.performance_amount)),1)],64))]),l.channel_name?(o(),c("td",Yo,[Lt(l,m,"channel")?(o(),c("span",{key:0,class:"yeji-lead-cell--link",onClick:X(E=>ea(l,m,"channel"),["stop"])},i(M(m.completed_performance_amount)),9,Uo)):(o(),c(k,{key:1},[u(i(M(m.completed_performance_amount)),1)],64))])):v("",!0),a("td",{onClick:X(E=>wn(l,m),["stop"])},[ia(m)&&Number(m.appointment_booked_count??0)>0?(o(),c("span",Wo,i(D(m.appointment_booked_count??0)),1)):(o(),c(k,{key:1},[u(i(D(m.appointment_booked_count??0)),1)],64))],8,Ho),a("td",null,i(D(m.consult_count)),1),a("td",null,i(D(m.deal_order_count)),1),l.channel_name?(o(),c("td",qo,i(D(m.channel_consult_count)),1)):v("",!0),l.channel_name?(o(),c("td",Jo,i(_a(m.channel_avg_price)),1)):v("",!0),a("td",{class:ct(ma(m.roi))},i(pa(m.roi)),3),a("td",null,i(M(m.cost_amount)),1)],10,Po))),128)),a("tr",Go,[e[108]||(e[108]=a("td",{class:"col-dept"},"合计",-1)),a("td",null,i(D(l.total.lead_count)),1),a("td",null,i(D(l.total.assign_count??0)),1),a("td",null,i(D(l.total.revisit_count??0)),1),(o(!0),c(k,null,F(vt.value,m=>(o(),c("td",{key:"yjvt-"+g+"-"+m},i(D(ae(l.total,m))),1))),128)),a("td",null,[zt(l,"total")?(o(),c("span",{key:0,class:"yeji-lead-cell--link",onClick:X(m=>ta(l,"total"),["stop"])},i(M(l.total.performance_amount)),9,Xo)):(o(),c(k,{key:1},[u(i(M(l.total.performance_amount)),1)],64))]),l.channel_name?(o(),c("td",Zo,[zt(l,"channel")?(o(),c("span",{key:0,class:"yeji-lead-cell--link",onClick:X(m=>ta(l,"channel"),["stop"])},i(M(l.total.completed_performance_amount)),9,Ko)):(o(),c(k,{key:1},[u(i(M(l.total.completed_performance_amount)),1)],64))])):v("",!0),a("td",null,i(D(l.total.appointment_booked_count??0)),1),a("td",null,i(D(l.total.consult_count)),1),a("td",null,i(D(l.total.deal_order_count)),1),l.channel_name?(o(),c("td",Qo,i(D(l.total.channel_consult_count)),1)):v("",!0),l.channel_name?(o(),c("td",es,i(_a(l.total.channel_avg_price)),1)):v("",!0),a("td",{class:ct(ma(l.total.roi))},i(pa(l.total.roi)),3),a("td",null,i(M(l.total.cost_amount)),1)])])])]),a("div",ts,[a("span",null,"区间:"+i(l.start_date)+" ~ "+i(l.end_date),1),l.channel_name?(o(),c("span",as," · 渠道:"+i(l.channel_name),1)):v("",!0),l.total.cost_per_lead!=null&&l.total.cost_per_lead>0?(o(),c("span",ns," · 单进线成本:"+i(M(l.total.cost_per_lead))+" 元 ",1)):v("",!0)])]))),128))])),[[B,te.value]])]),_:1})):v("",!0),We.value?(o(),j(Q,{key:3,label:"目标看板(卡片)",name:"zyyt_matrix",lazy:""},{default:_(()=>[Z((o(),c("div",ls,[Ie.value?(o(),c(k,{key:0},[a("h2",os,i(Ie.value.title),1),a("div",ss,[(o(!0),c(k,null,F(Ie.value.sections,l=>(o(),c("div",{key:"tm-"+l.dept_id,class:"tp-matrix-card",role:"listitem"},[a("div",is,[a("div",rs,[l.parent_dept_name?(o(),c("span",ds,i(l.parent_dept_name),1)):v("",!0),a("span",us,i(l.dept_name)+"目标",1)]),a("span",cs,i(Rn(l.target_amount)),1)]),a("table",_s,[a("tbody",null,[a("tr",null,[e[109]||(e[109]=a("td",{class:"tp-matrix-card__lbl"},"昨日诊金",-1)),a("td",ps,i(D(l.yesterday_amount)),1)]),l.douyin_amount!==null?(o(),c("tr",ms,[e[110]||(e[110]=a("td",{class:"tp-matrix-card__lbl"},"抖音总诊金",-1)),a("td",vs,i(D(l.douyin_amount)),1)])):v("",!0),l.tuifen_amount!==null?(o(),c("tr",fs,[e[111]||(e[111]=a("td",{class:"tp-matrix-card__lbl"},"推粉总诊金",-1)),a("td",ys,i(D(l.tuifen_amount)),1)])):v("",!0),a("tr",null,[e[112]||(e[112]=a("td",{class:"tp-matrix-card__lbl"},"总诊金",-1)),a("td",bs,i(D(l.total_amount)),1)]),a("tr",null,[e[113]||(e[113]=a("td",{class:"tp-matrix-card__lbl"},"目标进度",-1)),a("td",hs,i(M(l.target_progress)),1)]),a("tr",null,[e[114]||(e[114]=a("td",{class:"tp-matrix-card__lbl"},"完成进度",-1)),a("td",{class:ct(["tp-matrix-card__num tp-matrix-card__num--hot",An(l.completion_rate)])},i($n(l.completion_rate)),3)])])])]))),128))])],64)):it.value?v("",!0):(o(),j($,{key:1,class:"tp-matrix-empty",description:"暂无目标数据,请先配置当月部门目标或为部门设置诊金目标后刷新页面"}))])),[[B,it.value]])]),_:1})):v("",!0)]),_:1},8,["modelValue"])):(o(),j($,{key:1,description:"当前账号无表格统计 Tab 权限"}))]),_:1}),r(O,{class:"yeji-panel yeji-charts-only-card",shadow:"never"},{default:_(()=>[e[125]||(e[125]=a("div",{class:"yeji-charts-only-head"},"统计图",-1)),Z((o(),c("div",gs,[za.value?(o(),c(k,{key:0},[H.value&&(kt.value||jt.value||xt.value||St.value||Nt.value)?(o(),c("section",ws,[a("h3",ks,[e[116]||(e[116]=u(" 医生统计 ",-1)),lt.value?(o(),c("span",js,i(lt.value),1)):v("",!0)]),r(we,{gutter:16},{default:_(()=>[r(q,{xs:24,lg:9},{default:_(()=>[a("div",xs,[e[117]||(e[117]=a("div",{class:"yeji-chart-panel__label"},"成交金额 TOP(条形)",-1)),kt.value?(o(),j(C(ee),{key:0,class:"yeji-echart",option:Pa.value,autoresize:""},null,8,["option"])):(o(),j($,{key:1,description:"暂无成交金额数据","image-size":72}))])]),_:1}),r(q,{xs:24,lg:8},{default:_(()=>[a("div",Ss,[e[118]||(e[118]=a("div",{class:"yeji-chart-panel__label"},"开方构成(堆叠柱)",-1)),jt.value?(o(),j(C(ee),{key:0,class:"yeji-echart yeji-echart--short",option:Ta.value,autoresize:""},null,8,["option"])):(o(),j($,{key:1,description:"暂无开方数据","image-size":72}))])]),_:1}),r(q,{xs:24,lg:7},{default:_(()=>[a("div",Ns,[e[119]||(e[119]=a("div",{class:"yeji-chart-panel__label"},"挂号结果(环形 · 表尾合计)",-1)),xt.value?(o(),j(C(ee),{key:0,class:"yeji-echart yeji-echart--short",option:$a.value,autoresize:""},null,8,["option"])):(o(),j($,{key:1,description:"暂无挂号汇总","image-size":72}))])]),_:1})]),_:1}),r(we,{gutter:16,class:"yeji-chart-subrow"},{default:_(()=>[r(q,{xs:24,lg:12},{default:_(()=>[a("div",Ds,[e[120]||(e[120]=a("div",{class:"yeji-chart-panel__label"},"接诊诊单 × 金额(散点)",-1)),St.value?(o(),j(C(ee),{key:0,class:"yeji-echart yeji-echart--compact",option:Aa.value,autoresize:""},null,8,["option"])):(o(),j($,{key:1,description:"至少两名医生同时有接诊诊单与金额时可展示","image-size":72}))])]),_:1}),r(q,{xs:24,lg:12},{default:_(()=>[a("div",Cs,[e[121]||(e[121]=a("div",{class:"yeji-chart-panel__label"},"TOP 医生雷达(相对最高值归一)",-1)),Nt.value?(o(),j(C(ee),{key:0,class:"yeji-echart yeji-echart--compact",option:Ra.value,autoresize:""},null,8,["option"])):(o(),j($,{key:1,description:"至少两名医生有数据时可展示","image-size":72}))])]),_:1})]),_:1})])):v("",!0),(o(!0),c(k,null,F(de.value,(l,g)=>(o(),c(k,{key:"dept-chart-"+g},[Ut(l)?(o(),c("section",Ls,[a("h3",zs,i(ra(l)),1),r(C(ee),{class:"yeji-echart yeji-echart--tall",option:Nn(l),autoresize:""},null,8,["option"]),ua(l)||ca(l)?(o(),j(we,{key:0,gutter:16,class:"yeji-chart-subrow"},{default:_(()=>[ua(l)?(o(),j(q,{key:0,xs:24,md:12},{default:_(()=>[a("div",$s,[e[122]||(e[122]=a("div",{class:"yeji-chart-panel__label"}," 进线 → 接诊 → 成交(汇总漏斗) ",-1)),r(C(ee),{class:"yeji-echart yeji-echart--compact",option:Ln(l),autoresize:""},null,8,["option"])])]),_:2},1024)):v("",!0),ca(l)?(o(),j(q,{key:1,xs:24,md:12},{default:_(()=>[a("div",As,[e[123]||(e[123]=a("div",{class:"yeji-chart-panel__label"}," 部门合计业绩占比(TOP10 + 其它) ",-1)),r(C(ee),{class:"yeji-echart yeji-echart--compact",option:zn(l),autoresize:""},null,8,["option"])])]),_:2},1024)):v("",!0)]),_:2},1024)):v("",!0)])):v("",!0)],64))),128)),ne.value&&S.value?(o(!0),c(k,{key:1},F(Yt.value,l=>(o(),c("section",{key:"lb-chart-"+l.dept_id,class:"yeji-chart-block"},[a("h3",Rs,[u(i(l.dept_name)+" · 医助 ",1),S.value.channel_name?(o(),c("span",Ps," ("+i(S.value.channel_name)+") ",1)):v("",!0),a("span",Ts,i(S.value.start_date)+"~"+i(S.value.end_date),1)]),r(we,{gutter:16},{default:_(()=>[r(q,{xs:24,lg:da(l)?14:24},{default:_(()=>[r(C(ee),{class:"yeji-echart",option:Dn(l,S.value),autoresize:""},null,8,["option"])]),_:2},1032,["lg"]),da(l)?(o(),j(q,{key:0,xs:24,lg:10},{default:_(()=>[a("div",Is,[e[124]||(e[124]=a("div",{class:"yeji-chart-panel__label"},"诊金占比",-1)),r(C(ee),{class:"yeji-echart yeji-echart--compact",option:Cn(l,S.value),autoresize:""},null,8,["option"])])]),_:2},1024)):v("",!0)]),_:2},1024)]))),128)):v("",!0)],64)):!te.value&&(!H.value||!Pe.value)&&(!ne.value||!ue.value)?(o(),j($,{key:1,class:"yeji-charts-empty",description:"当前筛选下暂无图表数据,请调整条件后查询"})):v("",!0)])),[[B,te.value||H.value&&Pe.value||ne.value&&ue.value]])]),_:1}),r(Fe,{modelValue:le.value,"onUpdate:modelValue":e[5]||(e[5]=l=>le.value=l),direction:"rtl",size:"min(1120px, 98vw)","destroy-on-close":"",class:"yeji-order-drawer","show-close":!0},{header:_(()=>[a("div",Ms,[a("h3",Os,i(Je.value),1),a("p",Es,i(Ge.value),1)])]),default:_(()=>[a("div",Fs,[a("section",Vs,[a("div",Bs,[e[126]||(e[126]=a("span",{class:"yeji-order-drawer__stat-label"},"符合条件的订单",-1)),a("span",Ys,i(ot.value.toLocaleString("zh-CN"))+" 笔",1)]),a("div",Us,[e[127]||(e[127]=a("span",{class:"yeji-order-drawer__stat-label"},[u(" 约诊 "),a("span",{class:"yeji-order-drawer__stat-note"},"(已完成挂号;日期按挂号 appointment_date;医助=挂号或诊单,与看板接诊一致)")],-1)),a("span",Hs,i(qt.value===null?"—":qt.value.toLocaleString("zh-CN"))+" 次",1)]),Jt.value&&W.value?(o(),c(k,{key:0},[a("div",Ws,[a("span",qs,[e[128]||(e[128]=u(" 合计业绩 ",-1)),a("span",Js,"(与看板「合计业绩」列同口径,不限渠道;"+i(W.value.totalOrderCount.toLocaleString("zh-CN"))+" 笔)",1)]),a("span",Gs," ¥"+i(rt(W.value.totalAmount)),1)]),a("div",Xs,[a("span",Zs,[u(i(Ct.value)+"业绩 ",1),a("span",Ks,"(与看板「"+i(Ct.value)+"业绩」同口径;"+i(W.value.channelOrderCount.toLocaleString("zh-CN"))+" 笔)",1)]),a("span",Qs," ¥"+i(rt(Ea.value)),1)])],64)):(o(),c("div",ei,[e[129]||(e[129]=a("span",{class:"yeji-order-drawer__stat-label"},[u(" 业务订单金额合计 "),a("span",{class:"yeji-order-drawer__stat-note"},"(不含履约 4·9·10,与上方业绩口径一致)")],-1)),a("span",ti," ¥"+i(rt(Wt.value)),1)])),be.value.length>0?(o(),c("div",ai,[e[130]||(e[130]=a("span",{class:"yeji-order-drawer__stat-label"},"本页小计",-1)),a("span",ni,"¥"+i(rt(Oa.value)),1)])):v("",!0)]),Jt.value?(o(),j(Oe,{key:0,modelValue:G.value,"onUpdate:modelValue":e[4]||(e[4]=l=>G.value=l),class:"yeji-order-drawer__list-tabs",onTabChange:ln},{default:_(()=>[r(Q,{label:"合计业绩(全量订单)",name:"total"}),r(Q,{label:`渠道筛选(${Ct.value})`,name:"channel"},null,8,["label"])]),_:1},8,["modelValue"])):v("",!0),Z((o(),c("div",li,[be.value.length>0||ye.value?(o(),j(P,{key:0,data:be.value,size:"small",stripe:"",border:"","max-height":"58vh",class:"yeji-order-drawer__table","empty-text":ye.value?"加载中…":"暂无数据"},{default:_(()=>[r(p,{type:"index",label:"#",width:"46",index:Xa}),r(p,{prop:"order_no",label:"订单号","min-width":"152","show-overflow-tooltip":""}),r(p,{label:"关联挂号","min-width":"218"},{default:_(({row:l})=>[l.linked_appointment?(o(),c("div",oi,[a("div",si,[e[131]||(e[131]=a("span",{class:"yeji-order-appt-k"},"日期",-1)),u(" "+i(Za(l.linked_appointment)),1)]),a("div",ii,[e[132]||(e[132]=a("span",{class:"yeji-order-appt-k"},"状态",-1)),u(" "+i(l.linked_appointment.status_desc||"—")+" ",1),l.linked_appointment.doctor_name?(o(),c("span",ri," · "+i(l.linked_appointment.doctor_name),1)):v("",!0)]),a("div",di,[e[133]||(e[133]=a("span",{class:"yeji-order-appt-k"},"类型",-1)),u(" "+i(l.linked_appointment.appointment_type_desc||"—"),1)]),a("div",ui,[e[135]||(e[135]=a("span",{class:"yeji-order-appt-k"},"渠道",-1)),a("span",ci,[u(i(l.linked_appointment.channel_source_desc||l.linked_appointment.channel_source||"—")+" ",1),Zt(l.linked_appointment)!==""?(o(),c("span",_i," (字典 value "+i(Zt(l.linked_appointment))+" ) ",1)):v("",!0)]),r(I,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[134]||(e[134]=[a("div",{style:{"max-width":"280px","line-height":"1.65","font-size":"12px"}},[u(" 「字典 value」= 系统字典 "),a("b",null,"channels"),u(" 的 value,与业绩表里按渠道收窄时所用"),a("b",null,"挂号 channels"),u("一致;便于和进线列所选渠道对照,"),a("b",null,"不是"),u("企微 add_external_contact 单上的独立编号。 ")],-1)])]),default:_(()=>[r(w,{class:"yeji-order-appt-info","aria-label":"说明"},{default:_(()=>[r(C(Y))]),_:1})]),_:1})])])):(o(),c("span",pi,"—"))]),_:1}),r(p,{label:"金额",width:"108",align:"right"},{default:_(({row:l})=>[a("span",mi,"¥"+i(l.amount??"—"),1)]),_:1}),r(p,{prop:"recipient_name",label:"收货人",width:"96","show-overflow-tooltip":""}),r(p,{label:"履约",width:"104","show-overflow-tooltip":""},{default:_(({row:l})=>[u(i(Ga(l.fulfillment_status)),1)]),_:1}),r(p,{label:"创建时间","min-width":"148"},{default:_(({row:l})=>[u(i(Ka(l.create_time)),1)]),_:1}),r(p,{prop:"doctor_name",label:"开方人",width:"88","show-overflow-tooltip":""}),r(p,{prop:"assistant_name",label:"诊单医助",width:"88","show-overflow-tooltip":""}),r(p,{prop:"creator_name",label:"创建人",width:"88","show-overflow-tooltip":""})]),_:1},8,["data","empty-text"])):v("",!0),!ye.value&&be.value.length===0?(o(),j($,{key:1,description:"暂无业务订单"})):v("",!0),a("div",vi,[r(Ee,{"current-page":K.value,"page-size":st.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:ot.value,"page-sizes":[10,15,20,50],disabled:ye.value,"hide-on-single-page":!1,onCurrentChange:on,onSizeChange:sn},null,8,["current-page","page-size","total","disabled"])])])),[[B,ye.value]])])]),_:1},8,["modelValue"]),r(ke,{modelValue:ft.value,"onUpdate:modelValue":e[6]||(e[6]=l=>ft.value=l),width:"min(680px, 94vw)","destroy-on-close":"",class:"yeji-unassigned-dialog"},{header:_(()=>[a("div",fi,[e[136]||(e[136]=a("span",{class:"yeji-unassigned-dialog__title"},"「未归属中心」业绩拆解",-1)),a("p",yi,i(Et.value),1)])]),default:_(()=>[Ve.value?(o(),c("p",bi,i(Ve.value),1)):v("",!0),Z((o(),c("div",hi,[Se.value.length>0||xe.value?(o(),j(P,{key:0,data:Se.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":xe.value?"加载中…":"暂无数据"},{default:_(()=>[r(p,{prop:"name",label:"诊单医助","min-width":"120","show-overflow-tooltip":""}),r(p,{label:"账号",width:"88",align:"right"},{default:_(({row:l})=>[u(i(l.admin_id>0?l.admin_id:"—"),1)]),_:1}),r(p,{label:"订单数",width:"88",align:"right"},{default:_(({row:l})=>[u(i(D(l.order_count)),1)]),_:1}),r(p,{label:"业绩金额","min-width":"112",align:"right"},{default:_(({row:l})=>[u(i(M(l.amount)),1)]),_:1})]),_:1},8,["data","empty-text"])):v("",!0),!xe.value&&Se.value.length===0?(o(),j($,{key:1,description:"暂无拆解数据"})):v("",!0)])),[[B,xe.value]])]),_:1},8,["modelValue"]),r(ke,{modelValue:bt.value,"onUpdate:modelValue":e[7]||(e[7]=l=>bt.value=l),width:"min(920px, 96vw)","destroy-on-close":"",class:"yeji-leadlines-dialog"},{header:_(()=>[a("div",gi,[a("div",wi,[e[137]||(e[137]=a("span",{class:"yeji-unassigned-dialog__title"},"进线数据明细",-1)),a("p",ki,i(Bt.value),1)]),r(T,{size:"small",loading:Ye.value,disabled:ce.value||Ye.value||Le.value<=0,onClick:bn},{default:_(()=>[...e[138]||(e[138]=[u(" 导出 ",-1)])]),_:1},8,["loading","disabled"])])]),default:_(()=>[Ue.value?(o(),c("p",ji,i(Ue.value),1)):v("",!0),Z((o(),c("div",xi,[Ce.value.length>0||ce.value?(o(),j(P,{key:0,data:Ce.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":ce.value?"加载中…":"暂无数据"},{default:_(()=>[r(p,{prop:"event_time_text",label:"进线时间","min-width":"156","show-overflow-tooltip":""}),r(p,{prop:"reception_admin_name",label:"接待",width:"88","show-overflow-tooltip":""}),r(p,{prop:"external_contact_name",label:"客户","min-width":"100","show-overflow-tooltip":""}),r(p,{prop:"external_userid",label:"外部联系人ID","min-width":"140","show-overflow-tooltip":""}),r(p,{prop:"user_id",label:"企微成员ID","min-width":"120","show-overflow-tooltip":""}),r(p,{prop:"state",label:"渠道参数",width:"96","show-overflow-tooltip":""})]),_:1},8,["data","empty-text"])):v("",!0),!ce.value&&Ce.value.length===0?(o(),j($,{key:1,description:"暂无进线明细"})):v("",!0),Le.value>0?(o(),c("div",Si,[r(Ee,{"current-page":He.value,"page-size":at.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:Le.value,"page-sizes":[10,20,50,100],disabled:ce.value,"hide-on-single-page":!1,onCurrentChange:fn,onSizeChange:yn},null,8,["current-page","page-size","total","disabled"])])):v("",!0)])),[[B,ce.value]])]),_:1},8,["modelValue"]),r(ke,{modelValue:nt.value,"onUpdate:modelValue":e[8]||(e[8]=l=>nt.value=l),width:"min(960px, 96vw)","destroy-on-close":"",class:"yeji-leadlines-dialog"},{header:_(()=>[a("div",Ni,[e[139]||(e[139]=a("span",{class:"yeji-unassigned-dialog__title"},"预约诊单 · 挂号明细",-1)),a("p",Di,i(gt.value),1)])]),default:_(()=>[ze.value?(o(),c("p",Ci,i(ze.value),1)):v("",!0),Z((o(),c("div",Li,[_e.value.length>0||ve.value?(o(),j(P,{key:0,data:_e.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":ve.value?"加载中…":"暂无数据"},{default:_(()=>[r(p,{type:"index",label:"#",width:"46",index:hn}),r(p,{prop:"appointment_date",label:"预约日期",width:"108"}),r(p,{prop:"appointment_time",label:"时段","min-width":"96","show-overflow-tooltip":""}),r(p,{prop:"status_desc",label:"状态",width:"84"}),r(p,{prop:"appointment_type_desc",label:"类型",width:"92"}),r(p,{prop:"patient_name",label:"患者","min-width":"92","show-overflow-tooltip":""}),r(p,{prop:"patient_phone",label:"手机","min-width":"116","show-overflow-tooltip":""}),r(p,{prop:"doctor_name",label:"接诊医生",width:"92","show-overflow-tooltip":""}),r(p,{prop:"assistant_name",label:"医助",width:"88","show-overflow-tooltip":""}),r(p,{label:"诊单ID",width:"84",align:"right"},{default:_(({row:l})=>[u(i(D(l.diagnosis_id??0)),1)]),_:1}),Da.value?(o(),j(p,{key:0,prop:"channel_source",label:"渠道来源",width:"96","show-overflow-tooltip":""})):v("",!0)]),_:1},8,["data","empty-text"])):v("",!0),!ve.value&&_e.value.length===0?(o(),j($,{key:1,description:"暂无挂号记录"})):v("",!0),$e.value>0?(o(),c("div",zi,[r(Ee,{"current-page":fe.value,"page-size":Ae.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:$e.value,"page-sizes":[10,20,50,100],disabled:ve.value,"hide-on-single-page":!1,onCurrentChange:kn,onSizeChange:jn},null,8,["current-page","page-size","total","disabled"])])):v("",!0)])),[[B,ve.value]])]),_:1},8,["modelValue"]),r(ke,{modelValue:yt.value,"onUpdate:modelValue":e[9]||(e[9]=l=>yt.value=l),width:"min(560px, 94vw)","destroy-on-close":"",class:"yeji-unassigned-dialog"},{header:_(()=>[a("div",$i,[e[140]||(e[140]=a("span",{class:"yeji-unassigned-dialog__title"},"复诊 · 医助拆解",-1)),a("p",Ai,i(Ft.value),1)])]),default:_(()=>[Be.value?(o(),c("p",Ri,i(Be.value),1)):v("",!0),Z((o(),c("div",Pi,[De.value.length>0||Ne.value?(o(),j(P,{key:0,data:De.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":Ne.value?"加载中…":"暂无数据"},{default:_(()=>[r(p,{prop:"name",label:"医助","min-width":"120","show-overflow-tooltip":""}),r(p,{label:"业务订单",width:"108",align:"right"},{default:_(({row:l})=>[Number(l.order_count)>0?(o(),c("span",{key:0,class:"yeji-lead-cell--link",role:"button",tabindex:"0",onClick:g=>aa(l),onKeydown:dl(X(g=>aa(l),["prevent"]),["enter"])},i(D(l.order_count))+" 笔",41,Ti)):(o(),c(k,{key:1},[u(i(D(l.order_count)),1)],64))]),_:1})]),_:1},8,["data","empty-text"])):v("",!0),!Ne.value&&De.value.length===0?(o(),j($,{key:1,description:"暂无拆解数据"})):v("",!0)])),[[B,Ne.value]])]),_:1},8,["modelValue"])])}}}),$r=Sl(Fi,[["__scopeId","data-v-fe25bcf1"]]);export{$r as default}; diff --git a/server/public/admin/assets/yeji-edit-DxTLAHjt.js b/server/public/admin/assets/yeji-edit-D6URky3V.js similarity index 87% rename from server/public/admin/assets/yeji-edit-DxTLAHjt.js rename to server/public/admin/assets/yeji-edit-D6URky3V.js index fbe6a64c..cc51a291 100644 --- a/server/public/admin/assets/yeji-edit-DxTLAHjt.js +++ b/server/public/admin/assets/yeji-edit-D6URky3V.js @@ -1 +1 @@ -import{_ as o}from"./yeji-edit.vue_vue_type_script_setup_true_lang-jHpHbOvC.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./self_input_stats-DMYot1WP.js";import"./index-Nt5zMHcc.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BQY2-_X1.js";import"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";export{o as default}; +import{_ as o}from"./yeji-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js";import"./element-plus-DFTWCWyi.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/runtime-core-C6bnekPw.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./self_input_stats-C4Lr_Fd7.js";import"./index--WnM67ZH.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-SocYjCJ1.js";import"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";export{o as default}; diff --git a/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-jHpHbOvC.js b/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js similarity index 98% rename from server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-jHpHbOvC.js rename to server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js index 3debbae3..692efcbf 100644 --- a/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-jHpHbOvC.js +++ b/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-BYyDqDi7.js @@ -1 +1 @@ -import{D as C,B as D,a2 as Y,a4 as S,a5 as q,h as B,C as F}from"./element-plus-DFTWCWyi.js";import{f as I,h as A}from"./self_input_stats-DMYot1WP.js";import{_ as L}from"./index-BQY2-_X1.js";import{_ as M}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{f as O,ak as z,I as P,a as o,aN as n,A as T}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as f,n as $,r as G}from"./@vue/reactivity-DiY1c2vO.js";const H={class:"edit-popup"},h=O({__name:"yeji-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(s,{expose:V,emit:w}){const i=w,c=f(),_=f(),m=$("add"),b=T(()=>m.value==="edit"?"编辑业绩":"新增业绩"),e=G({id:"",yeji_date:"",media_source:"",add_fans_count:0,total_open_count:0,unreplied_count:0,paid_appointment_count:0,free_appointment_count:0,interview_count:0,order_amount:0,completed_order_count:0,remark:""}),g={yeji_date:[{required:!0,message:"请选择业绩日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],add_fans_count:[{required:!0,message:"请填写加粉数",trigger:["blur","change"]}]},v=()=>{e.id="",e.yeji_date="",e.media_source="",e.add_fans_count=0,e.total_open_count=0,e.unreplied_count=0,e.paid_appointment_count=0,e.free_appointment_count=0,e.interview_count=0,e.order_amount=0,e.completed_order_count=0,e.remark=""},y=async()=>{var u,t;await((u=c.value)==null?void 0:u.validate()),m.value==="edit"?await I(e):await A(e),(t=_.value)==null||t.close(),i("success")},k=(u="add")=>{var t;m.value=u,v(),(t=_.value)==null||t.open()},j=u=>{e.id=u.id??"",e.yeji_date=u.yeji_date??"",e.media_source=u.media_source??"",e.add_fans_count=Number(u.add_fans_count??0),e.total_open_count=Number(u.total_open_count??0),e.unreplied_count=Number(u.unreplied_count??0),e.paid_appointment_count=Number(u.paid_appointment_count??0),e.free_appointment_count=Number(u.free_appointment_count??0),e.interview_count=Number(u.interview_count??0),e.order_amount=Number(u.order_amount??0),e.completed_order_count=Number(u.completed_order_count??0),e.remark=u.remark??""},N=()=>{i("close")};return V({open:k,setFormData:j}),(u,t)=>{const U=Y,d=D,r=B,p=q,x=S,E=F,R=C;return z(),P("div",H,[o(L,{ref_key:"popupRef",ref:_,title:l(b),async:!0,width:"640px",onConfirm:y,onClose:N},{default:n(()=>[o(R,{ref_key:"formRef",ref:c,model:l(e),"label-width":"110px",rules:g},{default:n(()=>[o(d,{label:"业绩日期",prop:"yeji_date"},{default:n(()=>[o(U,{modelValue:l(e).yeji_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).yeji_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(m)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(d,{label:"自媒体来源",prop:"media_source"},{default:n(()=>[o(M,{modelValue:l(e).media_source,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_source=a),options:s.mediaSourceOptions,loading:s.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:l(m)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),o(x,{gutter:16},{default:n(()=>[o(p,{span:12},{default:n(()=>[o(d,{label:"加粉数",prop:"add_fans_count"},{default:n(()=>[o(r,{modelValue:l(e).add_fans_count,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).add_fans_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"总开口",prop:"total_open_count"},{default:n(()=>[o(r,{modelValue:l(e).total_open_count,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).total_open_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"未回复",prop:"unreplied_count"},{default:n(()=>[o(r,{modelValue:l(e).unreplied_count,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).unreplied_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"付费挂号",prop:"paid_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).paid_appointment_count,"onUpdate:modelValue":t[5]||(t[5]=a=>l(e).paid_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"免费挂号",prop:"free_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).free_appointment_count,"onUpdate:modelValue":t[6]||(t[6]=a=>l(e).free_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"面诊",prop:"interview_count"},{default:n(()=>[o(r,{modelValue:l(e).interview_count,"onUpdate:modelValue":t[7]||(t[7]=a=>l(e).interview_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"订单金额",prop:"order_amount"},{default:n(()=>[o(r,{modelValue:l(e).order_amount,"onUpdate:modelValue":t[8]||(t[8]=a=>l(e).order_amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"接诊诊单",prop:"completed_order_count"},{default:n(()=>[o(r,{modelValue:l(e).completed_order_count,"onUpdate:modelValue":t[9]||(t[9]=a=>l(e).completed_order_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(d,{label:"备注",prop:"remark"},{default:n(()=>[o(E,{modelValue:l(e).remark,"onUpdate:modelValue":t[10]||(t[10]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{h as _}; +import{D as C,B as D,a2 as Y,a4 as S,a5 as q,h as B,C as F}from"./element-plus-DFTWCWyi.js";import{f as I,h as A}from"./self_input_stats-C4Lr_Fd7.js";import{_ as L}from"./index-SocYjCJ1.js";import{_ as M}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-DJgSExR7.js";import{f as O,ak as z,I as P,a as o,aN as n,A as T}from"./@vue/runtime-core-C6bnekPw.js";import{y as l,q as f,n as $,r as G}from"./@vue/reactivity-DiY1c2vO.js";const H={class:"edit-popup"},h=O({__name:"yeji-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(s,{expose:V,emit:w}){const i=w,c=f(),_=f(),m=$("add"),b=T(()=>m.value==="edit"?"编辑业绩":"新增业绩"),e=G({id:"",yeji_date:"",media_source:"",add_fans_count:0,total_open_count:0,unreplied_count:0,paid_appointment_count:0,free_appointment_count:0,interview_count:0,order_amount:0,completed_order_count:0,remark:""}),g={yeji_date:[{required:!0,message:"请选择业绩日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],add_fans_count:[{required:!0,message:"请填写加粉数",trigger:["blur","change"]}]},v=()=>{e.id="",e.yeji_date="",e.media_source="",e.add_fans_count=0,e.total_open_count=0,e.unreplied_count=0,e.paid_appointment_count=0,e.free_appointment_count=0,e.interview_count=0,e.order_amount=0,e.completed_order_count=0,e.remark=""},y=async()=>{var u,t;await((u=c.value)==null?void 0:u.validate()),m.value==="edit"?await I(e):await A(e),(t=_.value)==null||t.close(),i("success")},k=(u="add")=>{var t;m.value=u,v(),(t=_.value)==null||t.open()},j=u=>{e.id=u.id??"",e.yeji_date=u.yeji_date??"",e.media_source=u.media_source??"",e.add_fans_count=Number(u.add_fans_count??0),e.total_open_count=Number(u.total_open_count??0),e.unreplied_count=Number(u.unreplied_count??0),e.paid_appointment_count=Number(u.paid_appointment_count??0),e.free_appointment_count=Number(u.free_appointment_count??0),e.interview_count=Number(u.interview_count??0),e.order_amount=Number(u.order_amount??0),e.completed_order_count=Number(u.completed_order_count??0),e.remark=u.remark??""},N=()=>{i("close")};return V({open:k,setFormData:j}),(u,t)=>{const U=Y,d=D,r=B,p=q,x=S,E=F,R=C;return z(),P("div",H,[o(L,{ref_key:"popupRef",ref:_,title:l(b),async:!0,width:"640px",onConfirm:y,onClose:N},{default:n(()=>[o(R,{ref_key:"formRef",ref:c,model:l(e),"label-width":"110px",rules:g},{default:n(()=>[o(d,{label:"业绩日期",prop:"yeji_date"},{default:n(()=>[o(U,{modelValue:l(e).yeji_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).yeji_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(m)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(d,{label:"自媒体来源",prop:"media_source"},{default:n(()=>[o(M,{modelValue:l(e).media_source,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_source=a),options:s.mediaSourceOptions,loading:s.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:l(m)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),o(x,{gutter:16},{default:n(()=>[o(p,{span:12},{default:n(()=>[o(d,{label:"加粉数",prop:"add_fans_count"},{default:n(()=>[o(r,{modelValue:l(e).add_fans_count,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).add_fans_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"总开口",prop:"total_open_count"},{default:n(()=>[o(r,{modelValue:l(e).total_open_count,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).total_open_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"未回复",prop:"unreplied_count"},{default:n(()=>[o(r,{modelValue:l(e).unreplied_count,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).unreplied_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"付费挂号",prop:"paid_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).paid_appointment_count,"onUpdate:modelValue":t[5]||(t[5]=a=>l(e).paid_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"免费挂号",prop:"free_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).free_appointment_count,"onUpdate:modelValue":t[6]||(t[6]=a=>l(e).free_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"面诊",prop:"interview_count"},{default:n(()=>[o(r,{modelValue:l(e).interview_count,"onUpdate:modelValue":t[7]||(t[7]=a=>l(e).interview_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"订单金额",prop:"order_amount"},{default:n(()=>[o(r,{modelValue:l(e).order_amount,"onUpdate:modelValue":t[8]||(t[8]=a=>l(e).order_amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"接诊诊单",prop:"completed_order_count"},{default:n(()=>[o(r,{modelValue:l(e).completed_order_count,"onUpdate:modelValue":t[9]||(t[9]=a=>l(e).completed_order_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(d,{label:"备注",prop:"remark"},{default:n(()=>[o(E,{modelValue:l(e).remark,"onUpdate:modelValue":t[10]||(t[10]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{h as _}; diff --git a/server/public/admin/index.html b/server/public/admin/index.html index 0f7c55e3..a46fe644 100755 --- a/server/public/admin/index.html +++ b/server/public/admin/index.html @@ -60,7 +60,7 @@ document.head.appendChild(link); })(); - +