主方服法:{{ rxUsageText }}
+主服法:{{ rxUsageText }}
服法:{{ rxUsageText }}
-辅方服法:{{ rxAuxUsageText }}
+辅服法:{{ rxAuxUsageText }}
医嘱:{{ rxAdviceText }}
备注:{{ rxRemarkText }}
@@ -2688,9 +2748,39 @@ function openDiagnosisPatientDetailFromOrder() {
/** 诊间医助角色(与 DiagnosisLists 等一致) */
const TCM_ASSISTANT_ROLE_ID = 2
+/** 下单角色(与 server/config/project.php prescription_order_placer_role_ids 一致) */
+const ORDER_PLACER_ROLE_ID = 6
+/** 拥有以下角色时可按任意审核人筛选(与 prescription_order_placer_exempt_role_ids 一致) */
+const ORDER_PLACER_EXEMPT_ROLE_IDS = [3, 8]
/** 与 server/config/project.php prescription_audit_roles 默认一致,可处方审核的角色 */
const PRESCRIPTION_AUDIT_ROLE_IDS = [0, 3, 6]
+/** 「下单」角色:下单人筛选仅允许查本人审核过的订单 */
+const isOrderPlacerAuditFilterRestricted = computed(() => {
+ const u = userStore.userInfo
+ if (!u || Number(u.root) === 1) return false
+ const ids = Array.isArray(u.role_ids) ? u.role_ids.map((n: unknown) => Number(n)) : []
+ if (!ids.includes(ORDER_PLACER_ROLE_ID)) return false
+ return !ORDER_PLACER_EXEMPT_ROLE_IDS.some((rid) => ids.includes(rid))
+})
+
+/** 超管 / 经理 / 管理员:可按任意下单人筛选 */
+const canSearchAnyAuditAdmin = computed(() => {
+ const u = userStore.userInfo
+ if (!u) return false
+ if (Number(u.root) === 1) return true
+ const ids = Array.isArray(u.role_ids) ? u.role_ids.map((n: unknown) => Number(n)) : []
+ return ORDER_PLACER_EXEMPT_ROLE_IDS.some((rid) => ids.includes(rid))
+})
+
+/** 是否展示「下单人」筛选(下单角色 + 经理/管理员/超管) */
+const showAuditAdminFilter = computed(
+ () => isOrderPlacerAuditFilterRestricted.value || canSearchAnyAuditAdmin.value
+)
+
+/** 下单人下拉(lists extend.audit_admin_options,下单角色用户) */
+const auditAdminOptions = ref
{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) {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) 订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收与尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同。 订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收与尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同。 0){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) 0){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)提成结算业绩
提成结算业绩
{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,W as mt}from"./element-plus-lurTijPg.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-BtuN-JX0.js";import{at as gt}from"./tcm-CXOqniC5.js";import{u as kt}from"./order-B1ArS_5w.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"},Wt={class:"wb-kpi-value wb-kpi-value--sm"},Ft={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),W=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=W.value,h=new Date,b=new Date;return e===0?(b.setHours(0,0,0,0),`${F(b)} 至 ${F(h)}`):(b.setDate(b.getDate()-(e||7)),`${F(b)} 至 ${F(h)}`)});function F(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:W.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:W.value,"onUpdate:modelValue":e[1]||(e[1]=o=>W.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",Wt,"¥"+n(_.today_amount??"0.00"),1)])]),_:1}),a(m,{xs:24,sm:8},{default:r(()=>{var o;return[t("div",Ft,[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-CYuc-l1C.js b/server/public/admin/assets/index-vPaa1ou7.js
similarity index 95%
rename from server/public/admin/assets/index-CYuc-l1C.js
rename to server/public/admin/assets/index-vPaa1ou7.js
index ec2b4900..d2982b73 100644
--- a/server/public/admin/assets/index-CYuc-l1C.js
+++ b/server/public/admin/assets/index-vPaa1ou7.js
@@ -1 +1 @@
-import{_ as B}from"./index-WTllon6u.js";import{D as k,B as y,G as D,I,C as N,J as R,i as G}from"./element-plus-lurTijPg.js";import{r as f}from"./index-BFUnjLFW.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-BPG2h_SV.js";import{D as k,B as y,G as D,I,C as N,J as R,i as G}from"./element-plus-lurTijPg.js";import{r as f}from"./index-BtuN-JX0.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-DE2hw7am.js b/server/public/admin/assets/index-w_3WDwt4.js
similarity index 97%
rename from server/public/admin/assets/index-DE2hw7am.js
rename to server/public/admin/assets/index-w_3WDwt4.js
index 7ae89214..ada72a96 100644
--- a/server/public/admin/assets/index-DE2hw7am.js
+++ b/server/public/admin/assets/index-w_3WDwt4.js
@@ -1 +1 @@
-import{D as T,B as Y,G as z,F as A,R as G,i as H,J as I,W as L,E as q}from"./element-plus-lurTijPg.js";import{H as J}from"./vue-echarts-BNtg2q_G.js";import{q as U}from"./stats-COEirfSi.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 W,ap as K,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-BFUnjLFW.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(W,null,K(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,R as G,i as H,J as I,W as L,E as q}from"./element-plus-lurTijPg.js";import{H as J}from"./vue-echarts-BNtg2q_G.js";import{q as U}from"./stats-BADNieER.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 W,ap as K,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-BtuN-JX0.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(W,null,K(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.vue_vue_type_script_setup_true_lang-K5J564DC.js b/server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-DqVMNrQ9.js
similarity index 96%
rename from server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-K5J564DC.js
rename to server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-DqVMNrQ9.js
index 18fb6dc8..466c4982 100644
--- a/server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-K5J564DC.js
+++ b/server/public/admin/assets/index.vue_vue_type_script_setup_true_lang-DqVMNrQ9.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-lurTijPg.js";import{_ as O}from"./index-BxS92JVe.js";import{i as f}from"./index-BFUnjLFW.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-lurTijPg.js";import{_ as O}from"./index-Db1NE_K4.js";import{i as f}from"./index-BtuN-JX0.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-BYcnHtZK.js b/server/public/admin/assets/index.vue_vue_type_style_index_0_lang-CroANRvv.js
similarity index 96%
rename from server/public/admin/assets/index.vue_vue_type_style_index_0_lang-BYcnHtZK.js
rename to server/public/admin/assets/index.vue_vue_type_style_index_0_lang-CroANRvv.js
index c2bfaef3..faa56e3e 100644
--- a/server/public/admin/assets/index.vue_vue_type_style_index_0_lang-BYcnHtZK.js
+++ b/server/public/admin/assets/index.vue_vue_type_style_index_0_lang-CroANRvv.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-C170hwS0.js";import{n as f}from"./index-BFUnjLFW.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-DnWXwaVg.js";import{n as f}from"./index-BtuN-JX0.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-COcnRX1U.js b/server/public/admin/assets/index_h5-DMDNvYdS.js
similarity index 94%
rename from server/public/admin/assets/index_h5-COcnRX1U.js
rename to server/public/admin/assets/index_h5-DMDNvYdS.js
index ab4f9e77..1f85be7a 100644
--- a/server/public/admin/assets/index_h5-COcnRX1U.js
+++ b/server/public/admin/assets/index_h5-DMDNvYdS.js
@@ -1,2 +1,2 @@
-const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-B2Gq7mEa.js","assets/element-plus-lurTijPg.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-Cy3x75Vy.js","assets/index-BFUnjLFW.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-cWYbZtDX.css","assets/perm-CJJhXl65.js","assets/DailyMatrix-BHuAWKao.js","assets/picker-C170hwS0.js","assets/index-BxS92JVe.js","assets/index-B3imPWFk.css","assets/index-BtsZldaS.js","assets/index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js","assets/index-CovX5DnH.js","assets/index-D0f1Mn00.css","assets/index-BNAGRG93.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-BkhkKLmC.js","assets/index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-ZqPYlotr.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-BOMtPRQZ.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DzJJzaM1.js","assets/RecordingPlaybackBlock-DYJipyZI.js","assets/RecordingVideoPlayer-BIj4v6nv.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-B6HXWOUi.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-DlhE5I9o.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-DsATAQst.js","assets/doctor-doxmoseM.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-9OkFWBf6.js","assets/patient-DV343GH9.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-DHSj_BWd.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-CTjLDnjc.js","assets/index-DyOCxSh0.js","assets/medicine-DAGybju-.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-C8wzRiqa.js","assets/appointment-bw4LL2pc.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-DHFmfFhs.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,W 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-lurTijPg.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-Cy3x75Vy.js";import{i as Fa}from"./order-2z2zsrbA.js";import{m as Wa}from"./doctor-doxmoseM.js";import{u as Oa,m as lt,i as f,_ as Ua}from"./index-BFUnjLFW.js";import{g as it}from"./weapp-Sqrwq9WR.js";import{u as Ma}from"./usePaging-VsbTxSU0.js";import{h as V}from"./perm-CJJhXl65.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-B2Gq7mEa.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-C8wzRiqa.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-CTjLDnjc.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-bw4LL2pc.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-DHFmfFhs.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-BNBfIMNO.js","assets/element-plus-lurTijPg.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-CXOqniC5.js","assets/index-BtuN-JX0.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-cWYbZtDX.css","assets/perm-Bc23IvuR.js","assets/DailyMatrix-DiVi6p8z.js","assets/picker-DnWXwaVg.js","assets/index-Db1NE_K4.js","assets/index-B3imPWFk.css","assets/index-akOrsdaO.js","assets/index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js","assets/index-DgLVdwR7.js","assets/index-D0f1Mn00.css","assets/index-Dr40NMPX.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-lcDB9k8z.js","assets/index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-Jm9DnVII.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-AmWwwWJ0.css","assets/CaseRecordList-B67yApyD.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Brdixp4H.js","assets/RecordingPlaybackBlock-CJE8gJQ0.js","assets/RecordingVideoPlayer-dzefIsF8.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DzZ009qh.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-iP0aWigy.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-Cd7Re2xm.js","assets/doctor-DBKAZw5L.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DwDL2VQu.js","assets/patient-oa1S9q0Z.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-XHtDxZ7y.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-DOBQJNpa.js","assets/index-XB9oQvDV.js","assets/medicine-DuX2VuoS.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-Dw7J6PtU.js","assets/appointment-BbRqDsTr.js","assets/appointment-B5q1nzzB.css","assets/AssistantWatchCallDialog-CWFd4eQ3.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,W 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-lurTijPg.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-CXOqniC5.js";import{i as Fa}from"./order-B1ArS_5w.js";import{m as Wa}from"./doctor-DBKAZw5L.js";import{u as Oa,m as lt,i as f,_ as Ua}from"./index-BtuN-JX0.js";import{g as it}from"./weapp-CwiAErq4.js";import{u as Ma}from"./usePaging-VsbTxSU0.js";import{h as V}from"./perm-Bc23IvuR.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-BNBfIMNO.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-Dw7J6PtU.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-DOBQJNpa.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-BbRqDsTr.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-CWFd4eQ3.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-C3QGM4_T.js b/server/public/admin/assets/information-Czlo7wRE.js
similarity index 94%
rename from server/public/admin/assets/information-C3QGM4_T.js
rename to server/public/admin/assets/information-Czlo7wRE.js
index 04d850cc..0dbfa7c0 100644
--- a/server/public/admin/assets/information-C3QGM4_T.js
+++ b/server/public/admin/assets/information-Czlo7wRE.js
@@ -1 +1 @@
-import{_ as C}from"./index-WTllon6u.js";import{J as q,B as k,C as U,D as y,i as O}from"./element-plus-lurTijPg.js";import{_ as P}from"./picker-C170hwS0.js";import{a as M,b as B}from"./website-DXa_lB41.js";import{e as E}from"./index-BFUnjLFW.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-BxS92JVe.js";import"./index-BtsZldaS.js";import"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import"./index-CovX5DnH.js";import"./index-BNAGRG93.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-BkhkKLmC.js";import"./index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-BPG2h_SV.js";import{J as q,B as k,C as U,D as y,i as O}from"./element-plus-lurTijPg.js";import{_ as P}from"./picker-DnWXwaVg.js";import{a as M,b as B}from"./website-CpY7HhIY.js";import{e as E}from"./index-BtuN-JX0.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-Db1NE_K4.js";import"./index-akOrsdaO.js";import"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import"./index-DgLVdwR7.js";import"./index-Dr40NMPX.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-lcDB9k8z.js";import"./index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-DYEBlKlP.js b/server/public/admin/assets/journal-DDvH0VVw.js
similarity index 96%
rename from server/public/admin/assets/journal-DYEBlKlP.js
rename to server/public/admin/assets/journal-DDvH0VVw.js
index f7480f3d..d1fa92c2 100644
--- a/server/public/admin/assets/journal-DYEBlKlP.js
+++ b/server/public/admin/assets/journal-DDvH0VVw.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-lurTijPg.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{_ as R}from"./index.vue_vue_type_script_setup_true_lang-K5J564DC.js";import{_ as S}from"./index.vue_vue_type_script_setup_true_lang-BL8k8rcl.js";import{w as u}from"./@vue/runtime-dom-DDAG46FW.js";import{E as b}from"./index-BFUnjLFW.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-BxS92JVe.js";import"./jspdf-BsthCvR5.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-lurTijPg.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{_ as R}from"./index.vue_vue_type_script_setup_true_lang-DqVMNrQ9.js";import{_ as S}from"./index.vue_vue_type_script_setup_true_lang-BL8k8rcl.js";import{w as u}from"./@vue/runtime-dom-DDAG46FW.js";import{E as b}from"./index-BtuN-JX0.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-Db1NE_K4.js";import"./jspdf-BsthCvR5.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-BtJl_HsX.js b/server/public/admin/assets/keyword_reply-DnFa-z7c.js
similarity index 94%
rename from server/public/admin/assets/keyword_reply-BtJl_HsX.js
rename to server/public/admin/assets/keyword_reply-DnFa-z7c.js
index 36511f63..f33f7cce 100644
--- a/server/public/admin/assets/keyword_reply-BtJl_HsX.js
+++ b/server/public/admin/assets/keyword_reply-DnFa-z7c.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-lurTijPg.js";import{_ as M}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{c as j,i as q}from"./index-BFUnjLFW.js";import{d as z,o as F,e as G}from"./wx_oa-oBRKAopZ.js";import{u as H}from"./usePaging-VsbTxSU0.js";import{_ as I}from"./edit.vue_vue_type_script_setup_true_lang-D6czqure.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-BxS92JVe.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-lurTijPg.js";import{_ as M}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{c as j,i as q}from"./index-BtuN-JX0.js";import{d as z,o as F,e as G}from"./wx_oa-CG6F0js_.js";import{u as H}from"./usePaging-VsbTxSU0.js";import{_ as I}from"./edit.vue_vue_type_script_setup_true_lang-P61wCgs0.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-Db1NE_K4.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-B0z3kTAx.js b/server/public/admin/assets/link-DkDHTY6r.js
similarity index 86%
rename from server/public/admin/assets/link-B0z3kTAx.js
rename to server/public/admin/assets/link-DkDHTY6r.js
index fac64ce6..de5c96f8 100644
--- a/server/public/admin/assets/link-B0z3kTAx.js
+++ b/server/public/admin/assets/link-DkDHTY6r.js
@@ -1 +1 @@
-import{J as a}from"./element-plus-lurTijPg.js";import{_ as n}from"./picker-DmbPKi7C.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-BFUnjLFW.js";import"./jspdf-BsthCvR5.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-BxS92JVe.js";import"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import"./article-CSzK-64I.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-lurTijPg.js";import{_ as n}from"./picker-CSczr2Cc.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-BtuN-JX0.js";import"./jspdf-BsthCvR5.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-Db1NE_K4.js";import"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import"./article-CJ8KWr7T.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-BdZ9fTx7.js b/server/public/admin/assets/list-DGfIXFAa.js
similarity index 94%
rename from server/public/admin/assets/list-BdZ9fTx7.js
rename to server/public/admin/assets/list-DGfIXFAa.js
index 8d28c687..25df2617 100644
--- a/server/public/admin/assets/list-BdZ9fTx7.js
+++ b/server/public/admin/assets/list-DGfIXFAa.js
@@ -1,2 +1,2 @@
-const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-B2Gq7mEa.js","assets/element-plus-lurTijPg.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-Cy3x75Vy.js","assets/index-BFUnjLFW.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-cWYbZtDX.css","assets/perm-CJJhXl65.js","assets/DailyMatrix-BHuAWKao.js","assets/picker-C170hwS0.js","assets/index-BxS92JVe.js","assets/index-B3imPWFk.css","assets/index-BtsZldaS.js","assets/index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js","assets/index-CovX5DnH.js","assets/index-D0f1Mn00.css","assets/index-BNAGRG93.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-BkhkKLmC.js","assets/index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-ZqPYlotr.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-BOMtPRQZ.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DzJJzaM1.js","assets/RecordingPlaybackBlock-DYJipyZI.js","assets/RecordingVideoPlayer-BIj4v6nv.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-B6HXWOUi.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-DlhE5I9o.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-DsATAQst.js","assets/doctor-doxmoseM.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-9OkFWBf6.js","assets/patient-DV343GH9.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-DHSj_BWd.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-CTjLDnjc.js","assets/index-DyOCxSh0.js","assets/medicine-DAGybju-.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-D7BOPFET.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,X 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-lurTijPg.js";import{_ as de}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{_ as re}from"./index.vue_vue_type_script_setup_true_lang-BL8k8rcl.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-doxmoseM.js";import{L as fe,Y as ge,Z as ve}from"./tcm-Cy3x75Vy.js";import{u as ye,i as v,_ as be}from"./index-BFUnjLFW.js";import{i as ke,f as De}from"./diabetes-discovery-display-B_wmGXQJ.js";import{g as Ce}from"./weapp-Sqrwq9WR.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-B2Gq7mEa.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-CTjLDnjc.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-D7BOPFET.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-BNBfIMNO.js","assets/element-plus-lurTijPg.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-CXOqniC5.js","assets/index-BtuN-JX0.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-cWYbZtDX.css","assets/perm-Bc23IvuR.js","assets/DailyMatrix-DiVi6p8z.js","assets/picker-DnWXwaVg.js","assets/index-Db1NE_K4.js","assets/index-B3imPWFk.css","assets/index-akOrsdaO.js","assets/index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js","assets/index-DgLVdwR7.js","assets/index-D0f1Mn00.css","assets/index-Dr40NMPX.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-lcDB9k8z.js","assets/index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-Jm9DnVII.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-AmWwwWJ0.css","assets/CaseRecordList-B67yApyD.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Brdixp4H.js","assets/RecordingPlaybackBlock-CJE8gJQ0.js","assets/RecordingVideoPlayer-dzefIsF8.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DzZ009qh.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-iP0aWigy.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-Cd7Re2xm.js","assets/doctor-DBKAZw5L.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DwDL2VQu.js","assets/patient-oa1S9q0Z.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-XHtDxZ7y.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-DOBQJNpa.js","assets/index-XB9oQvDV.js","assets/medicine-DuX2VuoS.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-CltLL4_y.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,X 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-lurTijPg.js";import{_ as de}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{_ as re}from"./index.vue_vue_type_script_setup_true_lang-BL8k8rcl.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-DBKAZw5L.js";import{L as fe,Y as ge,Z as ve}from"./tcm-CXOqniC5.js";import{u as ye,i as v,_ as be}from"./index-BtuN-JX0.js";import{i as ke,f as De}from"./diabetes-discovery-display-B_wmGXQJ.js";import{g as Ce}from"./weapp-CwiAErq4.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-BNBfIMNO.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-DOBQJNpa.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-CltLL4_y.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/list-BIBHk0Mu.js b/server/public/admin/assets/list-DyfsKmsb.js
similarity index 97%
rename from server/public/admin/assets/list-BIBHk0Mu.js
rename to server/public/admin/assets/list-DyfsKmsb.js
index f9745daa..57fd717a 100644
--- a/server/public/admin/assets/list-BIBHk0Mu.js
+++ b/server/public/admin/assets/list-DyfsKmsb.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-lurTijPg.js";import{_ as xe}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{u as Ne,c as Se,i as b,_ as Le}from"./index-BFUnjLFW.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-Cy3x75Vy.js";import{u as Oe}from"./usePaging-VsbTxSU0.js";import{M as Ae}from"./index-DyOCxSh0.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-DAGybju-.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;oNumber(F)).filter(F=>!Number.isNaN(F)):[],_.internal_cost=s.internal_cost!=null&&s.internal_cost!==""?Number(s.internal_cost):void 0,await Sl(_.diagnosis_id,_.id),Rt(()=>{var F;(F=Se.value)==null||F.clearValidate()})}catch(e){A.msgError((e==null?void 0:e.message)||"加载异常"),ve.value=!1}finally{Qt.value=!1}}async function Tl(){if(!(!Se.value||L.value!==2)){await Se.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 cs(t),A.msgSuccess("保存成功"),ve.value=!1,K()}catch{}finally{Jt.value=!1}}}const Fe=x(!1),ta=x("prescription"),mt=x(0),je=x(null),Ve=x(""),ft=x(!1),Ol=w(()=>ta.value==="prescription"?"处方业务审核":"关联支付单审核");function qa(t,e){ta.value=e,mt.value=t.id,je.value=t,Ve.value="",Fe.value=!0}async function Ma(t){if(t==="reject"&&!Ve.value.trim()){A.msgError("驳回或阻止时必须填写明确的审核意见");return}ft.value=!0;try{const e={id:mt.value,action:t,remark:Ve.value.trim()};if(ta.value==="prescription"?await vi(e):await gi(e),A.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),Fe.value=!1,K(),X.value&&mt.value)try{const s=await ee({id:mt.value}),o=(s==null?void 0:s.data)??s??null;o&&(c.value=o)}catch{}}catch{}finally{ft.value=!1}}async function Rl(t){try{await Xe.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await yi({id:t.id}),A.msgSuccess("撤回成功"),K()}catch{}}const Ba=x(0),vt=x(!1),Ne=x(!1),z=x(null);function Ha(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,s=Number(t.proces_cost)||0,o=Number(t.lis_cost)||0;return(e+s+o).toFixed(2)}function El(t,e){const s=parseFloat(Ha(t))||0,o=Number(e)||0;return o<=0?"—":(s/o*100).toFixed(2)}function Dl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((s,o)=>s+(Number(o.quantity)||0),0).toFixed(0)}async function $l(){if(!_.id){A.msgError("请先保存订单");return}Ne.value=!0;try{const t=await _s({id:_.id,dose_count:_.dose_count||1,medication_days:_.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(z.value=e,vt.value=!0,A.msgSuccess("预下单测试成功"))}catch{}finally{Ne.value=!1}}async function Ul(){var t;if(!((t=c.value)!=null&&t.id)){A.msgError("订单数据不存在");return}Ne.value=!0;try{const e=await _s({id:c.value.id,dose_count:c.value.dose_count||1,medication_days:c.value.medication_days||void 0}),s=(e==null?void 0:e.data)??e;s&&s.success&&(z.value=s,vt.value=!0)}catch{}finally{Ne.value=!1}}async function zl(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:"取消"}),Ba.value=t.id;const s=await bi({id:t.id}),o=(s==null?void 0:s.data)??s,d=(o==null?void 0:o.recipel_order_no)!=null?String(o.recipel_order_no):"";if(A.msgSuccess(d?`上传成功,甘草处方单号:${d}`:"上传成功"),K(),X.value&&Number((e=c.value)==null?void 0:e.id)===t.id)try{const f=await ee({id:t.id}),k=(f==null?void 0:f.data)??f??null;k&&(c.value=k)}catch{}}catch{}finally{Ba.value=0}}Di(async()=>{await Ts(),await Os(),await Ps(),K()});const Ie=x(!1),gt=x(!1),Le=x(0),Z=xe({express_company:"auto",tracking_number:""});function Fl(t){Le.value=t.id,Z.express_company=String(t.express_company||"auto")||"auto",Z.tracking_number=String(t.tracking_number||""),Ie.value=!0}async function Ga(){var t;if(!Z.tracking_number.trim()){A.msgError("请填写快递单号");return}gt.value=!0;try{const e=await ee({id:Le.value}),s=(e==null?void 0:e.data)??e;if(!s){A.msgError("加载订单数据失败");return}if(await cs({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()}),A.msgSuccess("快递单号已保存"),Ie.value=!1,K(),X.value&&((t=c.value)==null?void 0:t.id)===Le.value)try{const o=await ee({id:Le.value}),d=(o==null?void 0:o.data)??o??null;d&&(c.value=d)}catch{}if(Ut({fulfillment_status:Number(s.fulfillment_status)}))try{await Xe.confirm(`快递单号「${Z.tracking_number}」已保存,是否立即确认发货?`,"确认发货",{type:"success",confirmButtonText:"确认发货",cancelButtonText:"稍后再说"}),aa({id:Le.value,tracking_number:Z.tracking_number,express_company:Z.express_company})}catch{}}catch{}finally{gt.value=!1}}const qe=x(!1),yt=x(!1),bt=x(0),Y=xe({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 Wa(){var t;if(!Y.tracking_number.trim()){A.msgError("请先填写快递单号再确认发货");return}yt.value=!0;try{if(await xi({id:bt.value,ship_mode:Y.ship_mode==="direct"?"direct":"gancao",express_company:Y.express_company||"auto",tracking_number:Y.tracking_number.trim()}),A.msgSuccess("确认发货成功,订单已进入「已发货」状态"),qe.value=!1,K(),X.value&&((t=c.value)==null?void 0:t.id)===bt.value)try{const e=await ee({id:bt.value}),s=(e==null?void 0:e.data)??e??null;s&&(c.value=s)}catch{}}catch{}finally{yt.value=!1}}const jl=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],Me=x(!1),sa=x(0),xt=x(3),la=x(!1);async function Il(){var e;const t=sa.value;if(t){la.value=!0;try{if(await ki({id:t,fulfillment_status:xt.value}),A.msgSuccess("订单状态已更新"),Me.value=!1,K(),X.value&&((e=c.value)==null?void 0:e.id)===t)try{const s=await ee({id:t}),o=(s==null?void 0:s.data)??s??null;o&&(c.value=o)}catch{}}catch{}finally{la.value=!1}}}const Be=x(!1),kt=x(!1),He=x(0),ht=x(),na=x(!1),wt=x([]),O=xe({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),Ll={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}],order_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],pay_amount:[{required:!0,message:"请输入支付金额",trigger:"blur"},{validator:(t,e,s)=>{const o=Number(e);!Number.isFinite(o)||o<=0?s(new Error("金额须大于 0")):s()},trigger:"blur"}],link_pay_order_ids:[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(t,e,s)=>{!Array.isArray(e)||e.length===0?s(new Error("请至少选择一个支付单")):s()}}]};async function ql(t,e=[]){var s;if(!t){wt.value=[];return}try{na.value=!0;const o=await pa({diagnosis_id:t}),d=(o==null?void 0:o.lists)??((s=o==null?void 0:o.data)==null?void 0:s.lists)??[],f=Array.isArray(d)?d.filter(k=>!e.includes(k.id)):[];wt.value=f}catch{wt.value=[]}finally{na.value=!1}}function Ka(t){var o,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||((o=c.value)==null?void 0:o.diagnosis_id),s=t.pay_order_ids||((d=c.value)==null?void 0:d.pay_order_ids)||[];e&&ql(e,s)}async function Ml(){var t;if(ht.value){await ht.value.validate(),kt.value=!0;try{if(O.add_mode==="create")await hi({id:He.value,order_type:O.order_type,pay_amount:O.pay_amount,pay_remark:O.pay_remark||"",completion_request:O.completion_request}),A.msgSuccess("支付单已新增,请等待审核");else{const e=O.link_pay_order_ids;if(e.length===0){A.msgError("请至少选择一个支付单");return}await wi({id:He.value,pay_order_ids:e,completion_request:O.completion_request}),A.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}if(Be.value=!1,K(),X.value&&((t=c.value)==null?void 0:t.id)===He.value)try{const e=await ee({id:He.value}),s=(e==null?void 0:e.data)??e??null;s&&(c.value=s)}catch{}}catch{}finally{kt.value=!1}}}function Ya(t){sa.value=t.id,xt.value=3,Me.value=!0}async function Bl(t){var e;try{if(await Xe.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Si({id:t.id}),A.msgSuccess("处方审核已撤回"),K(),X.value&&((e=c.value)==null?void 0:e.id)===t.id)try{const s=await ee({id:t.id}),o=(s==null?void 0:s.data)??s??null;o&&(c.value=o)}catch{}}catch{}}async function Hl(t){var e;try{if(await Xe.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Vi({id:t.id}),A.msgSuccess("支付单审核已撤回"),K(),X.value&&((e=c.value)==null?void 0:e.id)===t.id)try{const s=await ee({id:t.id}),o=(s==null?void 0:s.data)??s??null;o&&(c.value=o)}catch{}}catch{}}const St=x(!1),Vt=x(!1),h=x(null),Qa=x(null),Ce=x(!1),Nt=w(()=>{var e;const t=(e=h.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),Gl=w(()=>{const t=h.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),o=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(o)||e<=0||s<=0||o<=0?null:e*s*o*d}),Ct=t=>String(t).padStart(2,"0"),Wl=w(()=>{const t=h.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),o=new Date(s);if(!isNaN(o.getTime()))return`${o.getFullYear()}-${Ct(o.getMonth()+1)}-${Ct(o.getDate())} ${Ct(o.getHours())}:${Ct(o.getMinutes())}`}return t.prescription_date||"—"}),Kl=w(()=>{const t=h.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const s=String(t.visit_no??"").trim();return s||"—"}),Yl=w(()=>{const t=h.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),Ja=w(()=>{const t=h.value;return t?String(t.order_no??"").trim():""}),Ql=w(()=>{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 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(","):"—"}),Xa=w(()=>{var e;const t=Number((e=h.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Jl=w(()=>{const e=Nt.value.reduce((s,o)=>s+(Number(o==null?void 0:o.dosage)||0),0);return Ge(e)}),Xl=t=>{const e=Number(t)||0;return Ge(e*Xa.value)},Zl=w(()=>{const t=h.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),en=w(()=>{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,s=t.dosage_amount!=null?Number(t.dosage_amount):10,o=t.dosage_unit||"g",d=t.usage_way||"温水送服",f=t.usage_time||"",k=[];if(k.push(`每天${e}次`),(t.prescription_type||"浓缩水丸")==="浓缩水丸"){const y=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;k.push(`一次${y}袋`),k.push(`每袋${s}${o}`)}else k.push(`一次${s}${o}`);return k.push(d),f&&k.push(f),k.join(", ")}),tn=w(()=>{const t=Gl.value;if(typeof t=="number"&&isFinite(t)&&t>0)return Ge(t);const e=h.value;if(!e)return"";const s=e.out_pellet||e.total_weight;if(s&&Number(s)>0)return Ge(Number(s));const o=Nt.value;if(!o.length)return"";const d=o.reduce((f,k)=>f+(Number(k==null?void 0:k.dosage)||0),0);return Ge(d*Xa.value)}),Za=w(()=>{const t=h.value;return t&&t.medical_advice||""}),es=w(()=>{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(" ")}),ts=w(()=>{const t=h.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),as=w(()=>{const t=tn.value;return t?`${t}克`:""});function Ge(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 an(t){return t?ss(t):"—"}function sn(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function ln(t){return t==null||t===""?"—":`${t}岁`}function nn(){ls(_)}async function ls(t){if(!t.prescription_id){A.msgWarning("该订单未关联处方");return}St.value=!0,Vt.value=!0,h.value=null;try{const e=await Ni({id:t.prescription_id}),s=(e==null?void 0:e.data)??e??null;if(s){const o=t.medication_days,d={...s};o!=null&&String(o).trim()!==""&&(d.medication_days=o),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){A.msgError((e==null?void 0:e.message)||"加载处方详情失败"),St.value=!1}finally{Vt.value=!1}}async function rn(t){const e=t.querySelectorAll('img[src^="http"]'),s=Array.from(e).map(async o=>{try{const d=await fetch(o.src,{mode:"cors"});if(!d.ok)return;const f=await d.blob(),k=await new Promise((y,$)=>{const Q=new FileReader;Q.onload=()=>y(Q.result),Q.onerror=$,Q.readAsDataURL(f)});o.src=k}catch{}});await Promise.allSettled(s)}async function ns(){await Rt();const t=Qa.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await rn(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),Pi(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 is(){var s;const t=(s=h.value)==null?void 0:s.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function on(){if(h.value){Ce.value=!0;try{const t=await ns(),e=document.createElement("a");e.download=`${is()}.png`,e.href=t.toDataURL("image/png"),e.click(),A.msgSuccess("图片已下载")}catch{A.msgError("下载图片失败")}finally{Ce.value=!1}}}async function un(){if(h.value){Ce.value=!0;try{const t=await ns(),e=t.toDataURL("image/jpeg",.95),s=new fn({orientation:"portrait",unit:"mm",format:"a4"}),o=210,d=297,f=o,k=t.height*f/t.width;if(k<=d)s.addImage(e,"JPEG",0,0,f,k);else{let y=k,$=0;for(;y>0;)s.addImage(e,"JPEG",0,$,f,k),y-=d,$-=d,y>0&&s.addPage()}s.save(`${is()}.pdf`),A.msgSuccess("PDF已下载")}catch{A.msgError("下载PDF失败")}finally{Ce.value=!1}}}return(t,e)=>{const s=vn,o=gn,d=bn,f=kn,k=hn,y=Sn,$=wn,Q=Vn,S=Nn,F=xn,re=Cn,ge=Tn,Pt=An,rs=Pn,ia=ei,We=On,le=Rn,oe=Dn,Ke=En,E=Un,pe=$n,V=Fn,Ye=zn,U=In,At=jn,ra=Ln,os=Mn,us=qn,oa=Bn,Pe=Hn,ce=Gn,ds=Wn,dn=Kn,pn=Qn,cn=Yn,_n=Jn,Ae=Zn,ua=Xn,ye=yn,q=$i("perms");return u(),m("div",Fi,[e[250]||(e[250]=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)),l(s,{class:"po-h5-surface po-h5-surface--chips !mb-3 !border-none shadow-none",shadow:"never"},{default:n(()=>[a("div",ji,[me.value?(u(),m("div",Ii,[e[86]||(e[86]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(u(),m(D,null,B(Fs,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=>Is(i.value)},[a("span",qi,r(i.label),1)],10,Li)),64))])):v("",!0),a("div",Mi,[e[87]||(e[87]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(u(),m(D,null,B(js,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=>Ls(i.value)},[a("span",Hi,r(i.label),1)],10,Bi)),64))]),a("div",Gi,[e[88]||(e[88]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(u(),m(D,null,B(Rs,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=>Es(i.value)},[a("span",Ki,r(i.label),1)],10,Wi)),64))]),a("div",Yi,[e[89]||(e[89]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(u(),m(D,null,B(Ds,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=>$s(i.value)},[a("span",Ji,r(i.label),1)],10,Qi)),64))]),a("div",Xi,[e[90]||(e[90]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(u(),m(D,null,B(Us,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=>zs(i.value)},[a("span",er,r(i.label),1)],10,Zi)),64))])])]),_:1}),l(s,{class:"po-h5-surface po-filter-card !mb-3 !border-none shadow-none",shadow:"never"},{default:n(()=>[T((u(),m("div",tr,[a("div",ar,[e[91]||(e[91]=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",sr,[a("div",null,[a("div",lr,[l(o,{size:16,class:"text-sky-500"},{default:n(()=>[l(R(ti))]),_:1}),p(" "+r(ne.value.orderHeading),1)]),a("div",nr,[a("div",ir," ¥"+r(ne.value.orderPerformanceStr),1),a("div",rr,[a("span",null,"合计 ¥"+r(ne.value.orderStr),1),a("span",or,"已取消 ¥"+r(ne.value.orderCancelledStr),1)])])]),a("div",ur,[l(o,{size:20},{default:n(()=>[l(R(ai))]),_:1})])]),a("p",dr,r(ne.value.periodLine),1)]),a("div",pr,[e[92]||(e[92]=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",cr,[a("div",null,[a("div",_r,[l(o,{size:16,class:"text-emerald-500"},{default:n(()=>[l(R(si))]),_:1}),p(" "+r(ne.value.payHeading),1)]),a("div",mr,[a("div",fr," ¥"+r(ne.value.payPerformanceStr),1),a("div",vr,[a("span",null,"合计 ¥"+r(ne.value.payStr),1),a("span",gr,"已取消 ¥"+r(ne.value.payCancelledStr),1)])])]),a("div",yr,[l(o,{size:20},{default:n(()=>[l(R(li))]),_:1})])]),a("p",br,r(ne.value.periodLine),1)])])),[[ye,R(J).loading]]),e[96]||(e[96]=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",xr,[l(o,null,{default:n(()=>[l(R(da))]),_:1}),e[93]||(e[93]=a("span",null,"筛选条件",-1)),Pa.value>0?(u(),g(d,{key:0,size:"small",type:"primary",effect:"dark",round:""},{default:n(()=>[p(r(Pa.value),1)]),_:1})):v("",!0)]),l(o,{class:I(["po-filter-toggle__arrow",{"is-open":!it.value}])},{default:n(()=>[l(R(ps))]),_:1},8,["class"])]),T(l(F,{class:"ls-form",model:b,inline:""},{default:n(()=>[l(f,{class:"w-[360px] min-w-[240px] max-w-full",label:"创建时间"},{default:n(()=>[l(ui,{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}),l(f,{class:"w-[260px]",label:"订单号"},{default:n(()=>[l(k,{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}),l(f,{class:"w-[140px]",label:"处方ID"},{default:n(()=>[l(k,{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}),l(f,{class:"w-[220px]",label:"患者"},{default:n(()=>[l(k,{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}),l(f,{class:"w-[220px]",label:"快递"},{default:n(()=>[l(k,{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}),ws.value?(u(),g(f,{key:0,class:"w-[200px]",label:"下单人"},{default:n(()=>[l($,{modelValue:b.audit_admin_id,"onUpdate:modelValue":e[7]||(e[7]=i=>b.audit_admin_id=i),clearable:"",filterable:"",placeholder:"全部下单人",class:"!w-full"},{default:n(()=>[(u(!0),m(D,null,B(ma.value,i=>(u(),g(y,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})):v("",!0),l(f,{class:"w-[200px]",label:"医生"},{default:n(()=>[l($,{modelValue:b.doctor_id,"onUpdate:modelValue":e[8]||(e[8]=i=>b.doctor_id=i),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:n(()=>[(u(!0),m(D,null,B(Et.value,i=>(u(),g(y,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(f,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:n(()=>[l(Q,{modelValue:b.assistant_dept_id,"onUpdate:modelValue":e[9]||(e[9]=i=>b.assistant_dept_id=i),data:tt.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:Ns,placeholder:"医助部门(选父级含子级)",onChange:Bs},null,8,["modelValue","data"])]),_:1}),l(f,{class:"w-[200px]",label:"医助"},{default:n(()=>[l($,{modelValue:b.assistant_id,"onUpdate:modelValue":e[10]||(e[10]=i=>b.assistant_id=i),clearable:"",filterable:"",placeholder:"诊单医助",class:"!w-full"},{default:n(()=>[(u(!0),m(D,null,B(ya.value,i=>(u(),g(y,{key:i.id,label:i.name,value:i.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(f,null,{default:n(()=>[l(S,{type:"primary",onClick:R(G)},{default:n(()=>[...e[94]||(e[94]=[p("查询",-1)])]),_:1},8,["onClick"]),l(S,{onClick:Hs},{default:n(()=>[...e[95]||(e[95]=[p("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),[[Tt,!it.value]])]),_:1}),T((u(),g(s,{class:"po-h5-surface po-table-card !mt-0 !border-none shadow-none",shadow:"never"},{default:n(()=>[a("div",kr,[a("div",hr,[a("div",wr,[e[97]||(e[97]=a("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),a("span",Sr,"共 "+r(R(J).count)+" 条",1)]),a("div",Vr,[a("div",{class:I(["po-focus-board__item is-pending-rx",{"is-active":te.value==="pendingRx"}]),onClick:e[11]||(e[11]=i=>at("pendingRx"))},[e[98]||(e[98]=a("span",{class:"po-focus-board__label"},"待处方审核",-1)),a("strong",Nr,r(st.value.pendingRx),1)],2),a("div",{class:I(["po-focus-board__item is-pending-pay",{"is-active":te.value==="pendingPay"}]),onClick:e[12]||(e[12]=i=>at("pendingPay"))},[e[99]||(e[99]=a("span",{class:"po-focus-board__label"},"待支付审核",-1)),a("strong",Cr,r(st.value.pendingPay),1)],2),a("div",{class:I(["po-focus-board__item is-pending-ship",{"is-active":te.value==="pendingShip"}]),onClick:e[13]||(e[13]=i=>at("pendingShip"))},[e[100]||(e[100]=a("span",{class:"po-focus-board__label"},"待发货",-1)),a("strong",Pr,r(st.value.pendingShip),1)],2),a("div",{class:I(["po-focus-board__item is-risk",{"is-active":te.value==="risk"}]),onClick:e[14]||(e[14]=i=>at("risk"))},[e[101]||(e[101]=a("span",{class:"po-focus-board__label"},"重点异常",-1)),a("strong",Ar,r(st.value.risk),1)],2)])])]),a("div",Tr,[!R(J).lists.length&&!R(J).loading?(u(),g(re,{key:0,description:"暂无订单","image-size":88})):v("",!0),(u(!0),m(D,null,B(R(J).lists,i=>(u(),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=>ja(i.id)},[a("div",Rr,[a("div",Er,[a("span",Dr,r(i.order_no||"—"),1)]),a("div",$r,[l(d,{size:"small",effect:"plain",type:String(i.gancao_reciperl_order_no||"").trim()?"success":"info"},{default:n(()=>[p(r(String(i.gancao_reciperl_order_no||"").trim()?"甘草":"自营"),1)]),_:2},1032,["type"]),a("span",Ur,"#"+r(i.id),1)])]),pt(i.recipient_phone,i.prescription_phone)?(u(),m("div",zr,[l(o,null,{default:n(()=>[l(R(ni))]),_:1}),e[102]||(e[102]=a("span",null,"收货手机与处方手机不一致",-1))])):v("",!0),a("div",Fr,[a("div",jr,[e[103]||(e[103]=a("span",{class:"po-card__label"},"收货人",-1)),a("span",Ir,r(i.recipient_name||"—"),1)]),a("div",Lr,[e[104]||(e[104]=a("span",{class:"po-card__label"},"金额",-1)),a("span",qr,"¥"+r(i.amount),1)])]),a("div",Mr,[a("div",Br,[e[105]||(e[105]=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",Hr,[e[106]||(e[106]=a("span",{class:"po-card__label"},"费用类别",-1)),a("span",Gr,r(nt(i.fee_type)),1)])]),a("div",Wr,[a("div",Kr,[e[107]||(e[107]=a("span",{class:"po-card__label"},"处方ID",-1)),a("span",Yr,r(i.prescription_id||"—"),1)]),a("div",Qr,[e[108]||(e[108]=a("span",{class:"po-card__label"},"诊单ID",-1)),a("span",Jr,r(i.diagnosis_id||"—"),1)])]),fa()&&i.internal_cost!=null&&i.internal_cost!==""?(u(),m("div",Xr,[a("div",Zr,[e[109]||(e[109]=a("span",{class:"po-card__label"},"内部成本",-1)),a("span",eo,"¥"+r(i.internal_cost),1)]),a("div",to,[e[110]||(e[110]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",ao,[Number(i.linked_pay_order_count)>0?(u(),m("span",so,r(i.linked_pay_order_count)+" 笔",1)):(u(),m("span",lo,"—"))])])])):(u(),m("div",no,[a("div",io,[e[111]||(e[111]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",ro,[Number(i.linked_pay_order_count)>0?(u(),m("span",oo,r(i.linked_pay_order_count)+" 笔",1)):(u(),m("span",uo,"—"))])]),a("div",po,[e[112]||(e[112]=a("span",{class:"po-card__label"},"创建时间",-1)),a("span",co,r(fe(i.create_time)),1)])])),a("div",_o,[l(d,{type:xa(i.prescription_audit_status),size:"small",class:I(Dt("rx",i))},{default:n(()=>[p(" 处方审: "+r(ba(i.prescription_audit_status)),1)]),_:2},1032,["type","class"]),l(d,{type:xa(i.payment_slip_audit_status),size:"small",class:I(Dt("pay",i))},{default:n(()=>[p(" 支付审: "+r(ba(i.payment_slip_audit_status)),1)]),_:2},1032,["type","class"]),l(d,{type:Ws(i.fulfillment_status),size:"small",class:I(Dt("fulfillment",i))},{default:n(()=>[p(r($t(i.fulfillment_status)),1)]),_:2},1032,["type","class"])]),a("div",mo,[i.doctor_name?(u(),m("span",fo,"医:"+r(i.doctor_name),1)):v("",!0),i.creator_name?(u(),m("span",vo,"建:"+r(i.creator_name),1)):v("",!0),fa()&&i.internal_cost!=null&&i.internal_cost!==""?v("",!0):(u(),m("span",go,r(fe(i.create_time)),1))]),a("div",{class:"po-card__actions",onClick:e[15]||(e[15]=Ot(()=>{},["stop"]))},[T((u(),g(S,{type:"primary",size:"small",onClick:P=>ja(i.id)},{default:n(()=>[p(r(Ss.value),1)]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/detail"]]]),Sa(i)?T((u(),g(S,{key:0,size:"small",onClick:P=>Al(i)},{default:n(()=>[...e[113]||(e[113]=[p("编辑",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/edit"]]]):v("",!0),Zs(i)?T((u(),g(S,{key:1,type:"success",size:"small",onClick:P=>Fl(i)},{default:n(()=>[...e[114]||(e[114]=[p("改单号",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),Ut(i)?T((u(),g(S,{key:2,type:"primary",size:"small",onClick:P=>aa(i)},{default:n(()=>[...e[115]||(e[115]=[p("发货",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),el(i)?(u(),g(rs,{key:3,trigger:"click",onCommand:P=>tl(P,i)},{dropdown:n(()=>[l(Pt,null,{default:n(()=>[zt(i)?(u(),g(ge,{key:0,command:"addPayOrder"},{default:n(()=>[...e[117]||(e[117]=[p("补齐支付单",-1)])]),_:1})):v("",!0),Ft(i)?(u(),g(ge,{key:1,command:"complete"},{default:n(()=>[...e[118]||(e[118]=[p("完成订单",-1)])]),_:1})):v("",!0),Na(i)?(u(),g(ge,{key:2,command:"submitGancao"},{default:n(()=>[...e[119]||(e[119]=[p("上传药方",-1)])]),_:1})):v("",!0),Va(i)?(u(),g(ge,{key:3,command:"withdraw",divided:""},{default:n(()=>[...e[120]||(e[120]=[a("span",{class:"text-red-500"},"撤回订单",-1)])]),_:1})):v("",!0)]),_:2},1024)]),default:n(()=>[l(S,{size:"small"},{default:n(()=>[e[116]||(e[116]=p(" 更多",-1)),l(o,{class:"el-icon--right"},{default:n(()=>[l(R(ps))]),_:1})]),_:1})]),_:2},1032,["onCommand"])):v("",!0)])],10,Or))),128))]),a("div",yo,[l(ia,{modelValue:R(J),"onUpdate:modelValue":e[16]||(e[16]=i=>zi(J)?J.value=i:null),onChange:R(K)},null,8,["modelValue","onChange"])])]),_:1})),[[ye,R(J).loading]]),l(oa,{modelValue:X.value,"onUpdate:modelValue":e[27]||(e[27]=i=>X.value=i),class:"po-detail-drawer po-detail-drawer--h5",size:"100%",direction:"btt","destroy-on-close":"","close-on-click-modal":!1},{header:n(()=>{var i,P;return[a("div",bo,[a("div",xo,[e[121]||(e[121]=a("span",{class:"po-detail-drawer-title shrink-0 text-gray-800 font-semibold text-lg"},"业务订单详情",-1)),(i=c.value)!=null&&i.order_no?(u(),g(d,{key:0,type:"primary",effect:"plain",round:"",class:"max-w-full !whitespace-normal break-all text-left leading-snug"},{default:n(()=>[p(r(c.value.order_no),1)]),_:1})):v("",!0),(P=c.value)!=null&&P.gancao_reciperl_order_no?(u(),g(d,{key:1,type:"success",effect:"plain",round:"",class:"max-w-full !whitespace-normal break-all text-left leading-snug"},{default:n(()=>[p("甘草 "+r(c.value.gancao_reciperl_order_no),1)]),_:1})):v("",!0)]),c.value?(u(),m("div",ko,[Ys(c.value)?T((u(),g(S,{key:0,type:"warning",size:"small",plain:"",onClick:e[17]||(e[17]=N=>qa(c.value,"prescription"))},{default:n(()=>[...e[122]||(e[122]=[p(" 处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Js(c.value)?T((u(),g(S,{key:1,type:"info",size:"small",plain:"",onClick:e[18]||(e[18]=N=>Bl(c.value))},{default:n(()=>[...e[123]||(e[123]=[p(" 撤回处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Qs(c.value)?T((u(),g(S,{key:2,type:"warning",size:"small",plain:"",onClick:e[19]||(e[19]=N=>qa(c.value,"payment"))},{default:n(()=>[...e[124]||(e[124]=[p(" 支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Xs(c.value)?T((u(),g(S,{key:3,type:"info",size:"small",plain:"",onClick:e[20]||(e[20]=N=>Hl(c.value))},{default:n(()=>[...e[125]||(e[125]=[p(" 撤回支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Ut(c.value)?T((u(),g(S,{key:4,type:"primary",size:"small",plain:"",onClick:e[21]||(e[21]=N=>aa(c.value))},{default:n(()=>[...e[126]||(e[126]=[p(" 确认发货 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),zt(c.value)?T((u(),g(S,{key:5,type:"success",size:"small",plain:"",onClick:e[22]||(e[22]=N=>Ka(c.value))},{default:n(()=>[...e[127]||(e[127]=[p(" 关联支付单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Ft(c.value)?T((u(),g(S,{key:6,type:"primary",size:"small",plain:"",onClick:e[23]||(e[23]=N=>Ya(c.value))},{default:n(()=>[...e[128]||(e[128]=[p(" 完成订单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/complete"]]]):v("",!0)])):v("",!0)])]}),default:n(()=>[It.value?(u(),g(We,{key:0,rows:12,animated:"",class:"px-6 py-4"})):c.value?(u(),m("div",ho,[Re.value?(u(),g(le,{key:0,type:"error",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:"业务订单收货手机与处方登记手机不一致"},{default:n(()=>[a("div",wo,[a("div",null,[e[129]||(e[129]=p(" 处方手机: ",-1)),a("span",So,r(sl.value),1)]),a("div",null,[e[130]||(e[130]=p(" 订单收货手机: ",-1)),a("span",Vo,r(ll.value),1)]),e[131]||(e[131]=a("div",{class:"text-gray-600 mt-1"},"请核对是否代收货或录入错误,避免物流与回访联系错人。",-1))])]),_:1})):v("",!0),a("div",No,[l(Ke,{class:"po-workflow-steps",direction:"vertical",active:rt.value,"finish-status":"success"},{default:n(()=>[l(oe,{title:"业务订单创建",description:fe(c.value.create_time)},null,8,["description"]),l(oe,{title:"处方单双审",status:ot.value},{description:n(()=>[ot.value==="error"?(u(),m("span",Co,"处方被驳回")):ot.value==="wait"?(u(),m("span",Po,"等待审核")):ot.value==="success"?(u(),m("span",Ao,"双审通过")):(u(),m("span",To,"进行中"))]),_:1},8,["status"]),l(oe,{title:"支付单审核",status:ut.value},{description:n(()=>[ut.value==="error"?(u(),m("span",Oo,"支付审核驳回")):ut.value==="wait"?(u(),m("span",Ro,"等待审核")):ut.value==="success"?(u(),m("span",Eo,"审核通过")):(u(),m("span",Do,"进行中"))]),_:1},8,["status"]),l(oe,{title:"发货与履约",status:ke.value},{description:n(()=>{var i,P,N;return[ke.value==="process"&&Number((i=c.value)==null?void 0:i.fulfillment_status)===7?(u(),m("span",$o,"进行中")):ke.value==="process"?(u(),m("span",Uo,"等待发货/补充单号")):ke.value==="wait"?(u(),m("span",zo,"待转入履约")):ke.value==="success"?(u(),m("span",Fo,r($t((P=c.value)==null?void 0:P.fulfillment_status)),1)):ke.value==="error"?(u(),m("span",jo,r($t((N=c.value)==null?void 0:N.fulfillment_status)),1)):v("",!0)]}),_:1},8,["status"]),l(oe,{title:"订单完成"})]),_:1},8,["active"])]),l(pe,{gutter:16,class:"mb-5"},{default:n(()=>[l(E,{xs:12,sm:6},{default:n(()=>[l(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:n(()=>[a("div",Io,[e[133]||(e[133]=a("div",{class:"stat-title text-gray-500 text-xs"},"总金额",-1)),jt(c.value)?T((u(),g(S,{key:0,type:"primary",size:"small",link:"",onClick:bl},{default:n(()=>[...e[132]||(e[132]=[p(" 修改 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/updateAmount"]]]):v("",!0)]),a("div",Lo,"¥"+r(c.value.amount),1)]),_:1})]),_:1}),l(E,{xs:12,sm:6},{default:n(()=>[l(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:n(()=>[e[134]||(e[134]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付总额",-1)),a("div",qo,"¥"+r(c.value.linked_pay_paid_total||0),1)]),_:1})]),_:1}),l(E,{xs:12,sm:6},{default:n(()=>[l(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:n(()=>[e[135]||(e[135]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"需代收",-1)),a("div",{class:I(["stat-value font-bold text-xl",Aa.value>0?"text-amber-600":"text-gray-500"])}," ¥"+r(de(Aa.value)),3)]),_:1})]),_:1}),l(E,{xs:12,sm:6},{default:n(()=>[l(s,{shadow:"never",class:"stat-card border border-gray-100 bg-gray-50/50"},{default:n(()=>[e[136]||(e[136]=a("div",{class:"stat-title text-gray-500 text-xs mb-1"},"已付笔数",-1)),a("div",Mo,r(Lt.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),a("div",Bo,[l(s,{shadow:"never",class:"po-panel po-panel-rx border-gray-100 h-full relative overflow-hidden"},{header:n(()=>[a("div",Wo,[a("div",Ko,[e[139]||(e[139]=a("span",{class:"po-panel-rx-header__title font-medium text-[15px] leading-snug"},"处方详情",-1)),a("span",Yo," ID: "+r(c.value.prescription_id||"—"),1)]),c.value.doctor_name?(u(),m("div",Qo,[e[140]||(e[140]=p(" 开方人:",-1)),a("span",Jo,r(c.value.doctor_name),1)])):v("",!0),a("div",Xo,[c.value.prescription_id&&C.value&&!String(c.value.prescription_detail_error||"").trim()?T((u(),g(S,{key:0,type:"default",size:"small",link:"",onClick:vl},{default:n(()=>[...e[141]||(e[141]=[p(" 改患者信息 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/patchPrescriptionPatient"]]]):v("",!0),c.value.prescription_id&&me.value?(u(),g(S,{key:1,type:"primary",size:"small",link:"",onClick:e[24]||(e[24]=i=>ls(c.value))},{default:n(()=>[...e[142]||(e[142]=[p(" 详细 ",-1)])]),_:1})):v("",!0),c.value.id&&me.value?(u(),g(S,{key:2,type:"warning",size:"small",link:"",loading:Ne.value,icon:R(da),onClick:Ul},{default:n(()=>[...e[143]||(e[143]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0)])])]),default:n(()=>[c.value.prescription_audit_status===1?(u(),m("div",Ho,[...e[137]||(e[137]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.prescription_audit_status===2?(u(),m("div",Go,[...e[138]||(e[138]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),String(c.value.prescription_detail_error||"").trim()?(u(),g(le,{key:2,title:c.value.prescription_detail_error,type:"warning",closable:!1,"show-icon":"",class:"mb-3"},null,8,["title"])):C.value?(u(),m(D,{key:3},[l(Ye,{column:1,border:"",size:"small",class:"po-desc bg-white"},{default:n(()=>[l(V,{label:"处方编号",span:2},{default:n(()=>[p(r(C.value.sn||"—"),1)]),_:1}),l(V,{label:"患者"},{default:n(()=>[p(r(C.value.patient_name||"—"),1)]),_:1}),l(V,{label:"性别 / 年龄"},{default:n(()=>[p(r(C.value.gender_desc||"—")+" · "+r(C.value.age??"—")+"岁 ",1)]),_:1}),l(V,{label:"手机"},{default:n(()=>[a("span",{class:I(Re.value?"rx-phone-mismatch text-red-600 font-bold":"")},r(C.value.phone||"—"),3),Re.value?(u(),g(d,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:n(()=>[...e[144]||(e[144]=[p(" 与订单手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),l(V,{label:"处方日期"},{default:n(()=>[p(r(C.value.prescription_date||"—"),1)]),_:1}),l(V,{label:"医师"},{default:n(()=>[p(r(C.value.doctor_name||"—"),1)]),_:1}),l(V,{label:"类型"},{default:n(()=>[p(r(C.value.prescription_type||"—"),1)]),_:1}),l(V,{label:"临床诊断",span:2},{default:n(()=>[p(r(C.value.clinical_diagnosis||"—"),1)]),_:1}),me.value?(u(),g(V,{key:0,label:"剂数 / 用法",span:2},{default:n(()=>[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),l(V,{label:"处方金额"},{default:n(()=>[a("span",Zo,"¥"+r(C.value.amount??"—"),1)]),_:1}),l(V,{label:"消费者审核"},{default:n(()=>[l(d,{type:ol(C.value.audit_status),size:"small"},{default:n(()=>[p(r(rl(C.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),l(V,{label:"用量"},{default:n(()=>[C.value.dosage_amount?(u(),m(D,{key:0},[p(r(C.value.dosage_amount)+r(C.value.dosage_unit||"g")+" ",1),C.value.prescription_type==="浓缩水丸"?(u(),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?(u(),m("span",eu," ("+r(C.value.need_decoction?"代煎":"不代煎")+") ",1)):v("",!0)],64)):(u(),m(D,{key:1},[p("—")],64))]),_:1}),l(V,{label:"服用方式"},{default:n(()=>[a("div",tu,[a("div",null,[e[145]||(e[145]=a("span",{class:"text-gray-500"},"每天次数:",-1)),p(" "+r(C.value.times_per_day?C.value.times_per_day+" 次":"—"),1)]),a("div",null,[e[146]||(e[146]=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[147]||(e[147]=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}),l(V,{label:"状态",span:2},{default:n(()=>[l(d,{type:Number(C.value.void_status)===1?"danger":"success",size:"small"},{default:n(()=>[p(r(Number(C.value.void_status)===1?"已作废":"正常"),1)]),_:1},8,["type"])]),_:1})]),_:1}),nl.value?(u(),m("div",au,[e[148]||(e[148]=a("div",{class:"text-xs font-medium text-gray-500 mb-2 px-1"},"药材明细",-1)),Ra.value.length?(u(),g(At,{key:0,data:Ra.value,size:"small",border:"",stripe:"","max-height":"260"},{default:n(()=>[l(U,{type:"index",label:"#",width:"48",align:"center"}),l(U,{prop:"name",label:"药名","min-width":"120","show-overflow-tooltip":""}),l(U,{prop:"dosage",label:"用量(g)",width:"96",align:"right"})]),_:1},8,["data"])):(u(),g(re,{key:1,description:"无处方药材明细","image-size":64}))])):v("",!0)],64)):(u(),g(re,{key:4,description:"无处方数据","image-size":72}))]),_:1}),a("div",su,[l(s,{shadow:"never",class:"po-panel border-gray-100"},{header:n(()=>[...e[149]||(e[149]=[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:n(()=>[he.value.length?(u(),g(At,{key:0,data:he.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:n(()=>[l(U,{prop:"id",label:"ID",width:"70"}),l(U,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),l(U,{label:"类型",width:"90"},{default:n(({row:i})=>[p(r(i.order_type_desc||nt(i.order_type)),1)]),_:1}),l(U,{label:"金额",width:"86",align:"right"},{default:n(({row:i})=>[a("span",lu,"¥"+r(i.amount),1)]),_:1}),l(U,{label:"状态",width:"100",align:"center"},{default:n(({row:i})=>[l(d,{type:Da(i.status),size:"small"},{default:n(()=>[p(r(i.status_desc||Ca(i.status)),1)]),_:2},1032,["type"]),i.is_exempt===1?(u(),g(d,{key:0,type:"warning",size:"small",class:"ml-1"},{default:n(()=>[...e[150]||(e[150]=[p("豁免",-1)])]),_:1})):v("",!0)]),_:1}),l(U,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),l(U,{label:"创建时间","min-width":"136"},{default:n(({row:i})=>[p(r($a(i.create_time)),1)]),_:1})]),_:1},8,["data"])):(u(),g(re,{key:1,description:"无未关联的收款单","image-size":60}))]),_:1}),l(s,{shadow:"never",class:"po-panel po-panel-pay border-gray-100 relative overflow-hidden"},{header:n(()=>[a("div",ru,[a("div",ou,[e[154]||(e[154]=a("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),c.value.creator_name?(u(),m("span",uu,[e[153]||(e[153]=p(" 创建人:",-1)),a("span",du,r(c.value.creator_name),1)])):v("",!0)])])]),default:n(()=>[c.value.payment_slip_audit_status===1?(u(),m("div",nu,[...e[151]||(e[151]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.payment_slip_audit_status===2?(u(),m("div",iu,[...e[152]||(e[152]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),Lt.value.length?(u(),g(At,{key:2,data:Lt.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:n(()=>[l(U,{prop:"id",label:"ID",width:"70"}),l(U,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),l(U,{label:"类型",width:"90"},{default:n(({row:i})=>[p(r(i.order_type_desc||nt(i.order_type)),1)]),_:1}),l(U,{label:"金额",width:"86",align:"right"},{default:n(({row:i})=>[a("span",pu,"¥"+r(i.amount),1)]),_:1}),l(U,{label:"状态",width:"100",align:"center"},{default:n(({row:i})=>[l(d,{type:Da(i.status),size:"small"},{default:n(()=>[p(r(i.status_desc||Ca(i.status)),1)]),_:2},1032,["type"]),i.is_exempt===1?(u(),g(d,{key:0,type:"warning",size:"small",class:"ml-1"},{default:n(()=>[...e[155]||(e[155]=[p("豁免",-1)])]),_:1})):v("",!0)]),_:1}),l(U,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),l(U,{label:"创建时间","min-width":"136"},{default:n(({row:i})=>[p(r($a(i.create_time)),1)]),_:1})]),_:1},8,["data"])):(u(),g(re,{key:3,description:"未关联收款单","image-size":60}))]),_:1})])]),l(s,{shadow:"never",class:"po-panel po-panel-biz border-gray-100 mb-4"},{header:n(()=>[...e[156]||(e[156]=[a("span",{class:"font-medium text-[15px]"},"履约与收货信息",-1)])]),default:n(()=>[l(Ye,{column:1,border:"",size:"small",class:"po-desc"},{default:n(()=>[l(V,{label:"诊单ID"},{default:n(()=>[a("div",cu,[a("div",_u,[e[157]||(e[157]=a("span",{class:"text-[11px] font-semibold uppercase tracking-[0.06em] text-slate-500"},"关联诊单",-1)),a("span",mu,r(c.value.diagnosis_id||"—"),1),e[158]||(e[158]=a("span",{class:"text-[12px] leading-snug text-slate-500"},"病历与体征以诊单为准,可全屏查看",-1))]),Number(c.value.diagnosis_id)>0?(u(),g(S,{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(ii),"aria-label":"打开关联诊单详情(患者与病历)",onClick:gs},{default:n(()=>[...e[159]||(e[159]=[p(" 查看诊单详情 ",-1)])]),_:1},8,["icon"])):v("",!0)])]),_:1}),l(V,{label:"创建时间"},{default:n(()=>[p(r(fe(c.value.create_time)),1)]),_:1}),l(V,{label:"收货人"},{default:n(()=>[p(r(c.value.recipient_name),1)]),_:1}),l(V,{label:"挂号关联",span:3},{default:n(()=>[W.value?(u(),m(D,{key:0},[a("div",fu,[a("span",null,[e[160]||(e[160]=p("预约 ",-1)),a("span",vu,"#"+r(W.value.id),1)]),a("span",gu,"时间:"+r(W.value.appointment_date)+" "+r(W.value.period)+" "+r(W.value.appointment_time),1),l(d,{size:"small",type:"info"},{default:n(()=>[p(r(W.value.appointment_type_desc),1)]),_:1}),l(d,{size:"small"},{default:n(()=>[p(r(W.value.status_desc),1)]),_:1}),W.value.doctor_name?(u(),m("span",yu,"接诊:"+r(W.value.doctor_name),1)):v("",!0),W.value.channel_source?(u(),m("span",bu,"渠道:"+r(W.value.channel_source),1)):v("",!0),Oa.value?(u(),g(d,{key:2,size:"small",effect:"plain"},{default:n(()=>[p(r(Oa.value),1)]),_:1})):v("",!0)]),String(W.value.remark||"").trim()?(u(),m("p",xu," 备注:"+r(W.value.remark),1)):v("",!0)],64)):(u(),m("span",ku,"暂无挂号预约记录(未绑定或诊单下无预约)"))]),_:1}),l(V,{label:"收货手机"},{default:n(()=>[a("span",{class:I(Re.value?"text-red-600 font-bold font-mono":"font-mono")},r(c.value.recipient_phone||"—"),3),Re.value?(u(),g(d,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-2 align-middle"},{default:n(()=>[...e[161]||(e[161]=[p(" 与处方手机不一致 ",-1)])]),_:1})):v("",!0)]),_:1}),l(V,{label:"收货地址",span:2},{default:n(()=>[p(r(il.value),1)]),_:1}),l(V,{label:"复诊"},{default:n(()=>[p(r(c.value.is_follow_up?"是":"否"),1)]),_:1}),l(V,{label:"用药疗程"},{default:n(()=>[p(r(c.value.medication_days?c.value.medication_days+" 天":"—"),1)]),_:1}),l(V,{label:"上次医护"},{default:n(()=>[p(r(c.value.prev_staff||"—"),1)]),_:1}),l(V,{label:"服务渠道"},{default:n(()=>[p(r(c.value.service_channel||"—"),1)]),_:1}),l(V,{label:"服务套餐"},{default:n(()=>[p(r(Gs(c.value.service_package)),1)]),_:1}),l(V,{label:"费用类别"},{default:n(()=>[p(r(nt(c.value.fee_type)),1)]),_:1}),c.value.internal_cost!=null&&c.value.internal_cost!==""?(u(),g(V,{key:0,label:"内部成本"},{default:n(()=>[p(" ¥"+r(c.value.internal_cost),1)]),_:1})):v("",!0),l(V,{label:"快递单号",span:c.value.internal_cost!=null&&c.value.internal_cost!==""?1:2},{default:n(()=>[p(r(c.value.tracking_number||"—"),1)]),_:1},8,["span"]),l(V,{label:"快递公司"},{default:n(()=>[p(r(ml(c.value.express_company)),1)]),_:1}),T((u(),g(V,{label:"备注",span:3},{default:n(()=>[p(r(c.value.remark_extra||"—"),1)]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),l(V,{label:"医助备注",span:3},{default:n(()=>[p(r(c.value.remark_assistant||"—"),1)]),_:1}),l(V,{label:"处方审核意见",span:3},{default:n(()=>[a("span",hu,r(c.value.prescription_audit_remark||"—"),1)]),_:1}),l(V,{label:"支付审核意见",span:3},{default:n(()=>[a("span",wu,r(c.value.payment_slip_audit_remark||"—"),1)]),_:1})]),_:1})]),_:1}),String(c.value.tracking_number||"").trim()?(u(),g(s,{key:1,shadow:"never",class:"po-panel po-panel-logistics border-gray-100"},{header:n(()=>[...e[162]||(e[162]=[a("span",{class:"font-medium text-[15px]"},"物流轨迹",-1)])]),default:n(()=>{var i,P,N,j,Qe,Je;return[e[168]||(e[168]=a("p",{class:"po-logistics-tip text-gray-400 text-xs mb-3 font-normal"}," 优先读库,无记录时走快递100。顺丰会校验单号+电话(快递100要求完整手机号更易通过);默认预填订单收货手机,若仍提示验证码错误请改成与顺丰面单一致的号码。 ",-1)),a("div",Su,[l(k,{modelValue:De.value,"onUpdate:modelValue":e[25]||(e[25]=ue=>De.value=ue),clearable:"",maxlength:"20",placeholder:"收件手机(建议11位,与面单一致)",class:"po-logistics-toolbar__phone",onKeyup:Ze(Wt,["enter"])},null,8,["modelValue"]),l($,{modelValue:Ee.value,"onUpdate:modelValue":e[26]||(e[26]=ue=>Ee.value=ue),placeholder:"承运商",class:"po-logistics-toolbar__carrier"},{default:n(()=>[l(y,{label:"自动识别",value:"auto"}),l(y,{label:"顺丰速运",value:"sf"}),l(y,{label:"京东快递",value:"jd"}),l(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),T((u(),g(S,{type:"primary",plain:"",size:"default",loading:ct.value,class:"po-logistics-toolbar__btn",onClick:Wt},{icon:n(()=>[l(o,null,{default:n(()=>[l(R(ri))]),_:1})]),default:n(()=>[e[163]||(e[163]=p(" 刷新轨迹 ",-1))]),_:1},8,["loading"])),[[q,["tcm.prescriptionOrder/logisticsTrace"]]]),a("div",Vu,[l(ra,{href:Gt.value.sf,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:n(()=>[...e[164]||(e[164]=[p("顺丰官网",-1)])]),_:1},8,["href"]),l(ra,{href:Gt.value.jd,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:n(()=>[...e[165]||(e[165]=[p("京东物流",-1)])]),_:1},8,["href"]),l(ra,{href:Gt.value.jt,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:n(()=>[...e[166]||(e[166]=[p("极兔",-1)])]),_:1},8,["href"])])]),String(((i=H.value)==null?void 0:i.hint)||"").trim()?(u(),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?(u(),m("div",Nu,[l(o,{class:"is-loading mr-1"},{default:n(()=>[l(R(oi))]),_:1}),e[167]||(e[167]=p("正在加载物流轨迹... ",-1))])):H.value?(u(),m("div",Cu,[(N=H.value)!=null&&N.state_text?(u(),m("div",Pu,[a("span",Au,"状态:"+r(H.value.state_text),1),(j=H.value)!=null&&j.carrier_label?(u(),g(d,{key:0,size:"small",type:"info"},{default:n(()=>[p(r(H.value.carrier_label),1)]),_:1})):v("",!0),(Qe=H.value)!=null&&Qe.source?(u(),m("span",Tu," ["+r(H.value.source==="database"?"数据库缓存":"API拉取")+"] ",1)):v("",!0),(Je=H.value)!=null&&Je.last_query_time?(u(),m("span",Ou," 更新时间:"+r(H.value.last_query_time),1)):v("",!0)])):v("",!0),Ua.value.length?(u(),g(us,{key:1,class:"mt-2 pl-2"},{default:n(()=>[(u(!0),m(D,null,B(Ua.value,(ue,be)=>(u(),g(os,{key:be,type:be===0?"primary":"info",hollow:be!==0,timestamp:ue.time,placement:"top"},{default:n(()=>[a("span",{class:I(be===0?"text-gray-800 font-medium":"text-gray-500")},r(ue.context),3)]),_:2},1032,["type","hollow","timestamp"]))),128))]),_:1})):(u(),g(re,{key:2,description:"暂无轨迹节点记录","image-size":64}))])):v("",!0)]}),_:1})):v("",!0),T((u(),g(s,{shadow:"never",class:"po-panel border-gray-100 mt-4"},{header:n(()=>[...e[169]||(e[169]=[a("span",{class:"font-medium text-[15px]"},"操作日志",-1)])]),default:n(()=>[we.value.length?(u(),g(us,{key:0,class:"mt-2 pl-2"},{default:n(()=>[(u(!0),m(D,null,B(we.value,(i,P)=>(u(),g(os,{key:i.id,type:P===0?"primary":"info",hollow:P!==0,timestamp:fe(i.create_time),placement:"top"},{default:n(()=>[a("div",Ru,[a("span",Eu,r(i.admin_name),1),l(d,{size:"small",type:"info"},{default:n(()=>[p(r(_l(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})):(u(),g(re,{key:1,description:"暂无操作日志","image-size":64}))]),_:1})),[[q,["tcm.prescriptionOrder/logs"]]])])):v("",!0)]),_:1},8,["modelValue"]),l(ce,{modelValue:$e.value,"onUpdate:modelValue":e[30]||(e[30]=i=>$e.value=i),title:"修改订单金额",width:"92%","destroy-on-close":"","close-on-click-modal":!1,onClosed:yl},{footer:n(()=>[l(S,{onClick:e[29]||(e[29]=i=>$e.value=!1)},{default:n(()=>[...e[171]||(e[171]=[p("取消",-1)])]),_:1}),l(S,{type:"primary",loading:Bt.value,onClick:Fa},{default:n(()=>[...e[172]||(e[172]=[p(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(F,{ref_key:"updateAmountFormRef",ref:_t,model:ie,rules:pl,"label-width":"84px",onSubmit:Ot(Fa,["prevent"])},{default:n(()=>[l(f,{label:"当前金额"},{default:n(()=>{var i;return[a("div",Du,"¥"+r(de((i=c.value)==null?void 0:i.amount)),1)]}),_:1}),l(f,{label:"新金额",prop:"amount"},{default:n(()=>[l(Pe,{modelValue:ie.amount,"onUpdate:modelValue":e[28]||(e[28]=i=>ie.amount=i),min:.01,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[170]||(e[170]=a("div",{class:"text-xs text-gray-400 pl-[84px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(ce,{modelValue:ve.value,"onUpdate:modelValue":e[51]||(e[51]=i=>ve.value=i),title:"编辑业务订单",width:"96%",top:"2vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog create-order-dialog--h5",onClosed:Nl},{footer:n(()=>[a("div",md,[a("div",fd,[a("span",vd,"第 "+r(L.value+1)+" / 3 步",1),L.value===2&&M.value>0?(u(),m("span",gd," 订单金额与关联支付单合计须 ≥ ¥"+r(de(M.value)),1)):v("",!0)]),a("div",yd,[l(S,{size:"large",onClick:e[50]||(e[50]=i=>ve.value=!1)},{default:n(()=>[...e[185]||(e[185]=[p("取消",-1)])]),_:1}),L.value>0?(u(),g(S,{key:0,size:"large",onClick:Cl},{default:n(()=>[...e[186]||(e[186]=[p("上一步",-1)])]),_:1})):v("",!0),L.value<2?(u(),g(S,{key:1,type:"primary",size:"large",onClick:Pl},{default:n(()=>[...e[187]||(e[187]=[p(" 下一步 ",-1)])]),_:1})):v("",!0),L.value===2?(u(),g(S,{key:2,type:"primary",size:"large",loading:Jt.value,onClick:Tl},{default:n(()=>[...e[188]||(e[188]=[p(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:n(()=>[T((u(),m("div",$u,[se.value?(u(),m("div",Uu,[a("div",zu,[e[173]||(e[173]=a("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),a("div",Fu,[a("span",ju,"#"+r(se.value.id),1),se.value.sn?(u(),m("span",Iu,r(se.value.sn),1)):v("",!0),a("span",Lu,r(se.value.patient_name||"—"),1)])]),l(ds,{content:Ia.value,placement:"bottom","show-after":300},{default:n(()=>[a("div",qu,r(Ia.value),1)]),_:1},8,["content"])])):v("",!0),l(Ke,{active:L.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:n(()=>[l(oe,{title:"患者与收货",description:"诊单与物流地址"}),l(oe,{title:"服务与支付单",description:"套餐与关联收款"}),l(oe,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),a("p",Mu,r(kl.value),1),l(F,{ref_key:"editFormRef",ref:Se,model:_,rules:Vl.value,"label-width":"108px",class:"create-order-form"},{default:n(()=>[T(a("div",Bu,[l(pe,{gutter:20},{default:n(()=>[l(E,{span:12},{default:n(()=>[l(f,{label:"收货人",prop:"recipient_name"},{default:n(()=>[l(k,{modelValue:_.recipient_name,"onUpdate:modelValue":e[31]||(e[31]=i=>_.recipient_name=i),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),l(E,{span:12},{default:n(()=>[l(f,{label:"收货手机",prop:"recipient_phone"},{default:n(()=>[l(k,{modelValue:_.recipient_phone,"onUpdate:modelValue":e[32]||(e[32]=i=>_.recipient_phone=i),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),l(E,{span:24},{default:n(()=>[l(f,{label:"省市区",prop:"region"},{default:n(()=>[l(dn,{modelValue:_.region,"onUpdate:modelValue":e[33]||(e[33]=i=>_.region=i),options:et.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),l(E,{span:24},{default:n(()=>[l(f,{label:"详细地址",prop:"shipping_address"},{default:n(()=>[l(k,{modelValue:_.shipping_address,"onUpdate:modelValue":e[34]||(e[34]=i=>_.shipping_address=i),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[Tt,L.value===0]]),T(a("div",Hu,[me.value?(u(),g(pe,{key:0,gutter:20,class:"mb-1"},{default:n(()=>[l(E,{span:24},{default:n(()=>[a("div",Gu,[e[176]||(e[176]=a("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),_.prescription_id?(u(),g(S,{key:0,type:"primary",size:"small",link:"",onClick:nn},{default:n(()=>[...e[174]||(e[174]=[p(" 详细 ",-1)])]),_:1})):v("",!0),_.id?(u(),g(S,{key:1,type:"warning",size:"small",link:"",loading:Ne.value,icon:R(da),onClick:$l},{default:n(()=>[...e[175]||(e[175]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),a("span",Wu,"ID: "+r(_.prescription_id||"—"),1)]),a("div",Ku,[La.value.length?(u(),m("div",Yu,[e[177]||(e[177]=a("div",{class:"text-gray-500"},"创建人所属部门",-1)),(u(!0),m(D,null,B(La.value,(i,P)=>(u(),m("div",{key:P,class:"pl-0 min-w-0"},[i.length?(u(),g(cn,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:n(()=>[(u(!0),m(D,null,B(i,(N,j)=>(u(),g(pn,{key:j},{default:n(()=>[a("span",Qu,r(N),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(u(),m("div",Ju,"创建人所属部门:—"))])]),_:1}),l(E,{xs:24,sm:8},{default:n(()=>[l(f,{label:"复诊"},{default:n(()=>[l(_n,{modelValue:_.is_follow_up,"onUpdate:modelValue":e[35]||(e[35]=i=>_.is_follow_up=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),l(E,{xs:24,sm:8},{default:n(()=>[l(f,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:n(()=>[a("div",Xu,[l(Pe,{modelValue:_.medication_days,"onUpdate:modelValue":e[36]||(e[36]=i=>_.medication_days=i),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[178]||(e[178]=a("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),l(E,{xs:24,sm:8},{default:n(()=>[l(f,{label:"上次医生"},{default:n(()=>[l(k,{modelValue:_.prev_staff,"onUpdate:modelValue":e[37]||(e[37]=i=>_.prev_staff=i),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),l(E,{span:12},{default:n(()=>[l(f,{label:Ea.value,prop:"dose_count"},{default:n(()=>[l(Pe,{modelValue:_.dose_count,"onUpdate:modelValue":e[38]||(e[38]=i=>_.dose_count=i),min:1,placeholder:Ea.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),l(E,{span:12},{default:n(()=>[l(f,{label:"剂量单位",prop:"dose_unit"},{default:n(()=>[l($,{modelValue:_.dose_unit,"onUpdate:modelValue":e[39]||(e[39]=i=>_.dose_unit=i),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(y,{label:"剂",value:"剂"}),l(y,{label:"丸",value:"丸"}),l(y,{label:"袋",value:"袋"}),l(y,{label:"盒",value:"盒"}),l(y,{label:"瓶",value:"瓶"}),l(y,{label:"膏",value:"膏"}),l(y,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),l(pe,{gutter:20},{default:n(()=>[l(E,{span:12},{default:n(()=>[l(f,{label:"服务渠道"},{default:n(()=>[l(k,{modelValue:_.service_channel,"onUpdate:modelValue":e[40]||(e[40]=i=>_.service_channel=i),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),l(E,{span:12},{default:n(()=>[l(f,{label:"服务套餐"},{default:n(()=>[l($,{modelValue:_.service_package,"onUpdate:modelValue":e[41]||(e[41]=i=>_.service_package=i),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:n(()=>[(u(!0),m(D,null,B(Te.value,i=>(u(),g(y,{key:i.value,label:i.name,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(E,{span:24},{default:n(()=>[l(f,{label:"物流设置"},{default:n(()=>[a("div",Zu,[l($,{modelValue:_.express_company,"onUpdate:modelValue":e[42]||(e[42]=i=>_.express_company=i),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(y,{label:"自动识别",value:"auto"}),l(y,{label:"顺丰速运",value:"sf"}),l(y,{label:"京东快递",value:"jd"}),l(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(k,{modelValue:_.tracking_number,"onUpdate:modelValue":e[43]||(e[43]=i=>_.tracking_number=i),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),l(E,{span:24},{default:n(()=>[l(f,{label:"关联支付单",prop:"pay_order_ids",required:M.value>0},{default:n(()=>[l($,{modelValue:_.pay_order_ids,"onUpdate:modelValue":e[44]||(e[44]=i=>_.pay_order_ids=i),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:M.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Xt.value},{default:n(()=>[(u(!0),m(D,null,B(ze.value,i=>(u(),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:n(()=>[a("div",ed,[a("div",td,[a("span",ad,r(i.order_no),1),a("span",sd,"¥"+r(i.amount),1)]),a("div",ld,[a("span",nd,[p(r(Zt(i.order_type)),1),i.remark?(u(),m(D,{key:0},[p(" · "+r(i.remark),1)],64)):v("",!0)]),a("span",id,r(String(i.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),a("div",rd,[M.value>0?(u(),m(D,{key:0},[a("span",od,"当前已开启关联支付门槛(¥"+r(de(M.value))+"),须至少选择一笔支付单。",1),e[179]||(e[179]=a("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[181]||(e[181]=p(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),l(ds,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:n(()=>[...e[180]||(e[180]=[a("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[Tt,L.value===1]]),T(a("div",ud,[a("div",{class:I(["create-order-deposit-bar",ea.value>=M.value?"is-ok":"is-warn"])},[a("div",dd,[e[182]||(e[182]=a("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),a("strong",null,"¥"+r(de(M.value)),1),a("span",pd,r(M.value>0?"须 ≥ 此值":"未设置"),1)]),e[184]||(e[184]=a("div",{class:"create-order-deposit-bar__sep"},null,-1)),a("div",cd,[e[183]||(e[183]=a("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),a("strong",null,"¥"+r(de(ea.value)),1),a("span",_d,r(ea.value>=M.value?"已达标":"未达标"),1)])],2),l(pe,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:n(()=>[l(E,{span:12},{default:n(()=>[l(f,{label:"费用类别",prop:"fee_type"},{default:n(()=>[l($,{modelValue:_.fee_type,"onUpdate:modelValue":e[45]||(e[45]=i=>_.fee_type=i),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(y,{label:"挂号费",value:1}),l(y,{label:"问诊费",value:2}),l(y,{label:"药品费用",value:3}),l(y,{label:"首付费用",value:4}),l(y,{label:"尾款费用",value:5}),l(y,{label:"其他费用",value:6}),l(y,{label:"全部费用",value:7}),l(y,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(E,{span:12},{default:n(()=>[l(f,{label:"总金额",prop:"amount"},{default:n(()=>[l(Pe,{modelValue:_.amount,"onUpdate:modelValue":e[46]||(e[46]=i=>_.amount=i),min:wl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),T((u(),g(E,{span:12},{default:n(()=>[l(f,{label:"内部成本"},{default:n(()=>[l(Pe,{modelValue:_.internal_cost,"onUpdate:modelValue":e[47]||(e[47]=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"]]]),l(E,{span:24},{default:n(()=>[T((u(),g(f,{label:"药房备注"},{default:n(()=>[l(k,{modelValue:_.remark_extra,"onUpdate:modelValue":e[48]||(e[48]=i=>_.remark_extra=i),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),l(f,{label:"医助备注"},{default:n(()=>[l(k,{modelValue:_.remark_assistant,"onUpdate:modelValue":e[49]||(e[49]=i=>_.remark_assistant=i),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[Tt,L.value===2]])]),_:1},8,["model","rules"])])),[[ye,Qt.value]])]),_:1},8,["modelValue"]),l(ce,{modelValue:Fe.value,"onUpdate:modelValue":e[56]||(e[56]=i=>Fe.value=i),title:Ol.value,width:"92%","destroy-on-close":"",class:"po-h5-dialog",onClosed:e[57]||(e[57]=i=>Ve.value="")},{footer:n(()=>[l(S,{onClick:e[53]||(e[53]=i=>Fe.value=!1)},{default:n(()=>[...e[190]||(e[190]=[p("取消",-1)])]),_:1}),l(S,{type:"primary",loading:ft.value,onClick:e[54]||(e[54]=i=>Ma("approve"))},{default:n(()=>[...e[191]||(e[191]=[p("同意通过",-1)])]),_:1},8,["loading"]),l(S,{type:"danger",loading:ft.value,onClick:e[55]||(e[55]=i=>Ma("reject"))},{default:n(()=>[...e[192]||(e[192]=[p("驳回阻止",-1)])]),_:1},8,["loading"])]),default:n(()=>[je.value&&je.value.completion_request===1?(u(),g(le,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:n(()=>[a("div",bd,[e[189]||(e[189]=a("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),a("div",xd," 申请人:"+r(je.value.completion_request_by_name||"—"),1),a("div",kd," 申请时间:"+r(fe(je.value.completion_request_time)),1)])]),_:1})):v("",!0),e[193]||(e[193]=a("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),l(k,{modelValue:Ve.value,"onUpdate:modelValue":e[52]||(e[52]=i=>Ve.value=i),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),l(ce,{modelValue:Ie.value,"onUpdate:modelValue":e[61]||(e[61]=i=>Ie.value=i),title:"修改快递单号",width:"92%","destroy-on-close":"",class:"po-h5-dialog","close-on-click-modal":!1},{footer:n(()=>[l(S,{onClick:e[60]||(e[60]=i=>Ie.value=!1)},{default:n(()=>[...e[195]||(e[195]=[p("取消",-1)])]),_:1}),l(S,{type:"primary",loading:gt.value,onClick:Ga},{default:n(()=>[...e[196]||(e[196]=[p("保存单号",-1)])]),_:1},8,["loading"])]),default:n(()=>[T((u(),g(F,{"label-width":"90px",class:"pr-2",onSubmit:Ot(Ga,["prevent"])},{default:n(()=>[l(f,{label:"承运商"},{default:n(()=>[l($,{modelValue:Z.express_company,"onUpdate:modelValue":e[58]||(e[58]=i=>Z.express_company=i),class:"w-full",placeholder:"选择承运商"},{default:n(()=>[l(y,{label:"自动识别",value:"auto"}),l(y,{label:"顺丰速运",value:"sf"}),l(y,{label:"京东快递",value:"jd"}),l(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(f,{label:"快递单号"},{default:n(()=>[l(k,{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[194]||(e[194]=a("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[ye,gt.value]])]),_:1},8,["modelValue"]),l(ce,{modelValue:qe.value,"onUpdate:modelValue":e[66]||(e[66]=i=>qe.value=i),title:"确认发货",width:"92%","destroy-on-close":"",class:"po-h5-dialog","close-on-click-modal":!1},{footer:n(()=>[l(S,{onClick:e[65]||(e[65]=i=>qe.value=!1)},{default:n(()=>[...e[199]||(e[199]=[p("取消",-1)])]),_:1}),l(S,{type:"primary",loading:yt.value,onClick:Wa},{default:n(()=>[...e[200]||(e[200]=[p(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(le,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),T((u(),g(F,{"label-width":"90px",class:"pr-2",onSubmit:Ot(Wa,["prevent"])},{default:n(()=>[l(f,{label:"发货方式"},{default:n(()=>[l(ua,{modelValue:Y.ship_mode,"onUpdate:modelValue":e[62]||(e[62]=i=>Y.ship_mode=i)},{default:n(()=>[l(Ae,{label:"gancao"},{default:n(()=>[...e[197]||(e[197]=[p("甘草药方发",-1)])]),_:1}),l(Ae,{label:"direct"},{default:n(()=>[...e[198]||(e[198]=[p("药房直发",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(f,{label:"承运商"},{default:n(()=>[l($,{modelValue:Y.express_company,"onUpdate:modelValue":e[63]||(e[63]=i=>Y.express_company=i),class:"w-full"},{default:n(()=>[l(y,{label:"自动识别",value:"auto"}),l(y,{label:"顺丰速运",value:"sf"}),l(y,{label:"京东快递",value:"jd"}),l(y,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(f,{label:"快递单号"},{default:n(()=>[l(k,{modelValue:Y.tracking_number,"onUpdate:modelValue":e[64]||(e[64]=i=>Y.tracking_number=i),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[ye,yt.value]])]),_:1},8,["modelValue"]),l(ce,{modelValue:Me.value,"onUpdate:modelValue":e[69]||(e[69]=i=>Me.value=i),title:"完成订单",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[70]||(e[70]=i=>sa.value=0)},{footer:n(()=>[l(S,{onClick:e[68]||(e[68]=i=>Me.value=!1)},{default:n(()=>[...e[201]||(e[201]=[p("取消",-1)])]),_:1}),l(S,{type:"primary",loading:la.value,onClick:Il},{default:n(()=>[...e[202]||(e[202]=[p(" 确定 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[e[203]||(e[203]=a("p",{class:"text-sm text-gray-600 mb-3"},"请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总。",-1)),l($,{modelValue:xt.value,"onUpdate:modelValue":e[67]||(e[67]=i=>xt.value=i),class:"w-full",placeholder:"请选择"},{default:n(()=>[(u(),m(D,null,B(jl,i=>l(y,{key:i.value,label:i.label,value:i.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),l(ce,{modelValue:Be.value,"onUpdate:modelValue":e[78]||(e[78]=i=>Be.value=i),title:"补齐支付单",width:"94%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[79]||(e[79]=i=>{var P;return(P=ht.value)==null?void 0:P.clearValidate()})},{footer:n(()=>[l(S,{onClick:e[77]||(e[77]=i=>Be.value=!1)},{default:n(()=>[...e[210]||(e[210]=[p("取消",-1)])]),_:1}),l(S,{type:"primary",loading:kt.value,onClick:Ml},{default:n(()=>[...e[211]||(e[211]=[p("确认新增",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(le,{title:"可以手动创建新支付单,或关联已存在但未绑定的支付单。",type:"info",closable:!1,"show-icon":"",class:"mb-4"}),T((u(),g(F,{ref_key:"addPayOrderFormRef",ref:ht,model:O,rules:Ll,"label-width":"90px",class:"pr-2"},{default:n(()=>[l(f,{label:"添加方式",prop:"add_mode"},{default:n(()=>[l(ua,{modelValue:O.add_mode,"onUpdate:modelValue":e[71]||(e[71]=i=>O.add_mode=i)},{default:n(()=>[l(Ae,{value:"create"},{default:n(()=>[...e[204]||(e[204]=[p("手动创建",-1)])]),_:1}),l(Ae,{value:"link"},{default:n(()=>[...e[205]||(e[205]=[p("关联已有",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),O.add_mode==="create"?(u(),m(D,{key:0},[l(f,{label:"费用类别",prop:"order_type"},{default:n(()=>[l($,{modelValue:O.order_type,"onUpdate:modelValue":e[72]||(e[72]=i=>O.order_type=i),class:"w-full"},{default:n(()=>[l(y,{label:"挂号费",value:1}),l(y,{label:"问诊费",value:2}),l(y,{label:"药品费用",value:3}),l(y,{label:"首付费用",value:4}),l(y,{label:"尾款费用",value:5}),l(y,{label:"其他费用",value:6}),l(y,{label:"全部费用",value:7}),l(y,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(f,{label:"支付金额",prop:"pay_amount"},{default:n(()=>[l(Pe,{modelValue:O.pay_amount,"onUpdate:modelValue":e[73]||(e[73]=i=>O.pay_amount=i),min:.01,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元)"},null,8,["modelValue"])]),_:1}),l(f,{label:"备注",prop:"pay_remark"},{default:n(()=>[l(k,{modelValue:O.pay_remark,"onUpdate:modelValue":e[74]||(e[74]=i=>O.pay_remark=i),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):(u(),g(f,{key:1,label:"选择支付单",prop:"link_pay_order_id"},{default:n(()=>[l($,{modelValue:O.link_pay_order_ids,"onUpdate:modelValue":e[75]||(e[75]=i=>O.link_pay_order_ids=i),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:na.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:n(()=>[(u(!0),m(D,null,B(wt.value,i=>(u(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Zt(i.order_type)}`,value:i.id},{default:n(()=>[a("div",hd,[a("span",wd,r(i.order_no),1),a("span",Sd,"¥"+r(i.amount),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[206]||(e[206]=a("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),l(f,{label:"完单申请"},{default:n(()=>[l(ua,{modelValue:O.completion_request,"onUpdate:modelValue":e[76]||(e[76]=i=>O.completion_request=i)},{default:n(()=>[l(Ae,{value:0},{default:n(()=>[...e[207]||(e[207]=[p("不申请",-1)])]),_:1}),l(Ae,{value:1},{default:n(()=>[...e[208]||(e[208]=[p("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[209]||(e[209]=a("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})]),_:1},8,["model"])),[[ye,kt.value]])]),_:1},8,["modelValue"]),l(ce,{modelValue:Ue.value,"onUpdate:modelValue":e[83]||(e[83]=i=>Ue.value=i),title:"修改处方患者信息",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:gl},{footer:n(()=>[l(S,{onClick:e[82]||(e[82]=i=>Ue.value=!1)},{default:n(()=>[...e[212]||(e[212]=[p("取消",-1)])]),_:1}),l(S,{type:"primary",loading:Kt.value,onClick:xl},{default:n(()=>[...e[213]||(e[213]=[p(" 保存 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(F,{ref_key:"patchRxPatientFormRef",ref:Yt,model:ae,rules:fl,"label-width":"96px"},{default:n(()=>[l(f,{label:"患者姓名",prop:"patient_name"},{default:n(()=>[l(k,{modelValue:ae.patient_name,"onUpdate:modelValue":e[80]||(e[80]=i=>ae.patient_name=i),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),l(f,{label:"手机",prop:"phone"},{default:n(()=>[l(k,{modelValue:ae.phone,"onUpdate:modelValue":e[81]||(e[81]=i=>ae.phone=i),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(oa,{modelValue:St.value,"onUpdate:modelValue":e[84]||(e[84]=i=>St.value=i),size:"100%",direction:"btt",class:"po-h5-drawer","close-on-click-modal":!1},{header:n(()=>[a("div",Vd,[e[216]||(e[216]=a("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),h.value&&!Vt.value?(u(),m("div",Nd,[l(S,{size:"small",loading:Ce.value,onClick:on},{default:n(()=>[...e[214]||(e[214]=[p(" 下载图片 ",-1)])]),_:1},8,["loading"]),l(S,{size:"small",loading:Ce.value,onClick:un},{default:n(()=>[...e[215]||(e[215]=[p(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:n(()=>[T((u(),m("div",Cd,[h.value?(u(),m("div",Pd,[Number(h.value.void_status)===1?(u(),g(d,{key:0,type:"danger",size:"small"},{default:n(()=>[...e[217]||(e[217]=[p("已作废",-1)])]),_:1})):Number(h.value.business_prescription_audit_rejected)===1?(u(),g(d,{key:1,type:"danger",size:"small"},{default:n(()=>[...e[218]||(e[218]=[p("业务订单已驳回",-1)])]),_:1})):Number(h.value.audit_status)===1?(u(),g(d,{key:2,type:"success",size:"small"},{default:n(()=>[...e[219]||(e[219]=[p("已通过",-1)])]),_:1})):Number(h.value.audit_status)===0?(u(),g(d,{key:3,type:"warning",size:"small"},{default:n(()=>[...e[220]||(e[220]=[p("待审核",-1)])]),_:1})):(u(),g(d,{key:4,type:"danger",size:"small"},{default:n(()=>[...e[221]||(e[221]=[p("已驳回",-1)])]),_:1}))])):v("",!0),h.value&&Number(h.value.void_status)===1?(u(),m("div",Ad," 作废人:"+r(h.value.void_by_name||"—")+",作废时间:"+r(an(h.value.void_time)),1)):h.value&&Number(h.value.business_prescription_audit_rejected)===1?(u(),m("div",Td,[e[222]||(e[222]=a("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),h.value.business_prescription_audit_remark?(u(),m("div",Od," 驳回意见:"+r(h.value.business_prescription_audit_remark),1)):v("",!0)])):h.value&&Number(h.value.audit_status)===2?(u(),m("div",Rd,[e[223]||(e[223]=a("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),h.value.audit_remark?(u(),m("div",Ed,"驳回意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0),h.value?(u(),m("div",{key:4,ref_key:"prescriptionSlipPrintRef",ref:Qa,class:"rx-paper"},[e[241]||(e[241]=a("div",{class:"rx-title"},"处方单",-1)),a("div",Dd,[e[228]||(e[228]=a("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),a("div",$d,[a("div",Ud,[e[224]||(e[224]=a("span",{class:"rx-meta-label"},"日期",-1)),a("span",zd,r(Wl.value),1)]),a("div",Fd,[e[225]||(e[225]=a("span",{class:"rx-meta-label"},"处方编号",-1)),a("span",jd,r(Kl.value),1)]),a("div",Id,[e[226]||(e[226]=a("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),a("span",Ld,r(Yl.value),1)]),Ja.value?(u(),m("div",qd,[e[227]||(e[227]=a("span",{class:"rx-meta-label"},"业务单号",-1)),a("span",Md,r(Ja.value),1)])):v("",!0)])]),a("div",Bd,[a("div",Hd,[a("div",Gd,[e[229]||(e[229]=a("span",{class:"rx-key"},"姓名",-1)),a("span",Wd,r(h.value.patient_name||"—"),1)]),a("div",Kd,[e[230]||(e[230]=a("span",{class:"rx-key"},"性别",-1)),a("span",Yd,r(sn(h.value.gender)),1)]),a("div",Qd,[e[231]||(e[231]=a("span",{class:"rx-key"},"年龄",-1)),a("span",Jd,r(ln(h.value.age)),1)]),a("div",Xd,[e[232]||(e[232]=a("span",{class:"rx-key"},"电话",-1)),a("span",Zd,r(h.value.phone||h.value.recipient_phone||"—"),1)])]),a("div",ep,[a("div",tp,[e[233]||(e[233]=a("span",{class:"rx-key"},"收件信息",-1)),a("span",ap,r(Ql.value),1)])]),a("div",sp,[a("div",lp,[e[234]||(e[234]=a("span",{class:"rx-key"},"临床诊断",-1)),a("span",np,r(h.value.clinical_diagnosis||"—"),1)])])]),a("div",ip,[e[235]||(e[235]=a("div",{class:"rx-watermark"},"药房联",-1)),e[236]||(e[236]=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",rp,[(u(!0),m(D,null,B(Nt.value,(i,P)=>(u(),m("div",{key:P,class:"rx-herb-cell"},[a("span",op,r(i.name)+" ("+r(i.dosage)+"克)",1),a("span",up,r(Xl(i.dosage))+"克",1)]))),128))])]),a("div",dp,[a("p",null,"服法:"+r(en.value),1),Za.value?(u(),m("p",pp,"医嘱:"+r(Za.value),1)):v("",!0),es.value?(u(),m("p",cp,"备注:"+r(es.value),1)):v("",!0),ts.value?(u(),m("p",_p," 药房备注:"+r(ts.value),1)):v("",!0),as.value?(u(),m("p",mp," 出丸:"+r(as.value),1)):v("",!0)]),a("div",fp,[a("div",vp,[a("div",gp,[e[237]||(e[237]=a("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),a("div",yp,[h.value.doctor_signature?(u(),m("img",{key:0,src:h.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,bp)):v("",!0)])]),a("div",xp,[e[238]||(e[238]=a("span",{class:"rx-bot-meta-key"},"类型:",-1)),a("span",kp,r(Zl.value),1)]),a("div",hp,[e[239]||(e[239]=a("span",{class:"rx-bot-meta-key"},"天数:",-1)),a("span",wp,r(c.value.medication_days!=null&&String(c.value.medication_days).trim()!==""?c.value.medication_days+" 天":"—"),1)]),a("div",Sp,[e[240]||(e[240]=a("span",{class:"rx-bot-meta-key"},"剂量:",-1)),a("span",Vp,r(Jl.value)+"克",1)])])]),e[242]||(e[242]=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)?(u(),m("div",Np,[h.value.audit_by_name?(u(),m("div",Cp,[p(" 审核人:"+r(h.value.audit_by_name)+" ",1),h.value.audit_time?(u(),m("span",Pp,r(ss(h.value.audit_time)),1)):v("",!0)])):v("",!0),h.value.audit_remark?(u(),m("div",Ap,"审核意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[ye,Vt.value]])]),_:1},8,["modelValue"]),l(oa,{modelValue:vt.value,"onUpdate:modelValue":e[85]||(e[85]=i=>vt.value=i),title:"甘草预下单测试结果",size:"100%",direction:"btt",class:"po-h5-drawer","destroy-on-close":""},{default:n(()=>{var i,P;return[z.value?(u(),m("div",Tp,[l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[a("div",Op,[e[244]||(e[244]=a("span",{class:"font-semibold"},"价格信息",-1)),l(d,{type:"success"},{default:n(()=>[...e[243]||(e[243]=[p("预下单成功",-1)])]),_:1})])]),default:n(()=>[l(Ye,{column:2,border:""},{default:n(()=>[l(V,{label:"药材成本"},{default:n(()=>{var N;return[a("span",Rp,"¥"+r(((N=z.value.fee)==null?void 0:N.m_cost)||"0.00"),1)]}),_:1}),l(V,{label:"制作费"},{default:n(()=>{var N;return[a("span",Ep,"¥"+r((((N=z.value.fee)==null?void 0:N.proces_cost)||0).toFixed(2)),1)]}),_:1}),l(V,{label:"物流费"},{default:n(()=>{var N;return[a("span",Dp,"¥"+r((((N=z.value.fee)==null?void 0:N.lis_cost)||0).toFixed(2)),1)]}),_:1}),l(V,{label:"总计"},{default:n(()=>[a("div",null,[a("span",$p," ¥"+r(Ha(z.value.fee)),1),T((u(),m("div",Up,[e[245]||(e[245]=p(" 占订单总金额: ",-1)),a("span",zp,r(El(z.value.fee,z.value.amount)),1),z.value.amount>0?(u(),m("span",Fp,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[q,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[...e[246]||(e[246]=[a("span",{class:"font-semibold"},"配送信息",-1)])]),default:n(()=>[l(Ye,{column:2,border:""},{default:n(()=>[l(V,{label:"调配中心"},{default:n(()=>{var N;return[p(r(((N=z.value.result)==null?void 0:N.ds_name)||"—"),1)]}),_:1}),l(V,{label:"调配中心ID"},{default:n(()=>{var N;return[p(r(((N=z.value.result)==null?void 0:N.ds_id)||"—"),1)]}),_:1}),l(V,{label:"服用天数范围",span:2},{default:n(()=>{var N,j,Qe,Je,ue,be;return[p(r(((j=(N=z.value.result)==null?void 0:N.take_days)==null?void 0:j.min)||"—")+" - "+r(((Je=(Qe=z.value.result)==null?void 0:Qe.take_days)==null?void 0:Je.max)||"—")+" 天 (默认: "+r(((be=(ue=z.value.result)==null?void 0:ue.take_days)==null?void 0:be.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(i=z.value.result)==null?void 0:i.rule_check)!=null&&P.length?(u(),g(s,{key:0,shadow:"never",class:"mb-4"},{header:n(()=>[...e[247]||(e[247]=[a("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:n(()=>[a("div",jp,r(z.value.result.rule_check.map(N=>N.msg).join(" ")),1)]),_:1})):v("",!0),l(s,{shadow:"never"},{header:n(()=>{var N,j;return[a("div",Ip,[e[248]||(e[248]=a("span",{class:"font-semibold"},"药材明细",-1)),a("span",Lp,"共 "+r(((j=(N=z.value.result)==null?void 0:N.m_list)==null?void 0:j.length)||0)+" 味药",1)])]}),default:n(()=>{var N;return[l(At,{data:((N=z.value.result)==null?void 0:N.m_list)||[],border:"",stripe:"","max-height":"400"},{default:n(()=>[l(U,{type:"index",label:"#",width:"50",align:"center"}),l(U,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),l(U,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:n(({row:j})=>[p(r(j.quantity)+r(j.unit),1)]),_:1}),l(U,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:n(({row:j})=>[p(" ¥"+r(Number(j.price).toFixed(4)),1)]),_:1}),l(U,{label:"小计",width:"100",align:"right"},{default:n(({row:j})=>[a("span",qp," ¥"+r((Number(j.price)*Number(j.quantity)).toFixed(2)),1)]),_:1}),l(U,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:n(({row:j})=>[l(d,{type:j.is_available===1?"success":"danger",size:"small"},{default:n(()=>[p(r(j.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),l(U,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),l(s,{shadow:"never",class:"mt-4"},{header:n(()=>[...e[249]||(e[249]=[a("span",{class:"font-semibold"},"订单信息",-1)])]),default:n(()=>[l(Ye,{column:2,border:""},{default:n(()=>[l(V,{label:"订单号",span:2},{default:n(()=>[p(r(z.value.order_no||"—"),1)]),_:1}),l(V,{label:"剂数"},{default:n(()=>[a("span",Mp,r(z.value.dose_count||"—")+"剂",1)]),_:1}),l(V,{label:"单剂量"},{default:n(()=>{var N;return[a("span",Bp,r(Dl((N=z.value.result)==null?void 0:N.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),l(R(vs),{ref_key:"diagnosisViewRef",ref:ca},null,512)])}}}),zc=Oi(Gp,[["__scopeId","data-v-561f0ce8"]]);export{zc as default};
diff --git a/server/public/admin/assets/order_list_h5-BzenGWV9.css b/server/public/admin/assets/order_list_h5-BzenGWV9.css
new file mode 100644
index 00000000..40e5143a
--- /dev/null
+++ b/server/public/admin/assets/order_list_h5-BzenGWV9.css
@@ -0,0 +1 @@
+@charset "UTF-8";.prescription-order-page[data-v-561f0ce8]{margin:0 auto}.po-page-title[data-v-561f0ce8]{margin:0 0 6px;font-size:20px;font-weight:600;color:var(--el-text-color-primary);letter-spacing:.02em}.po-page-desc[data-v-561f0ce8]{margin:0;font-size:13px;line-height:1.55;color:var(--el-text-color-secondary)}.po-filter-card[data-v-561f0ce8]{border-radius:8px}.po-filter-card[data-v-561f0ce8] .el-card__body{padding-bottom:12px}.po-list-stats[data-v-561f0ce8]{--po-stat-order-a: color-mix(in srgb, var(--el-color-primary) 12%, white);--po-stat-order-b: color-mix(in srgb, var(--el-color-primary) 5%, transparent);--po-stat-pay-a: color-mix(in srgb, #10b981 10%, white);--po-stat-pay-b: color-mix(in srgb, #10b981 4%, transparent)}.po-stat-surface[data-v-561f0ce8]{transition:box-shadow .2s ease,border-color .2s ease}.po-stat-surface[data-v-561f0ce8]:hover{box-shadow:0 10px 28px -12px #0f172a2e;border-color:color-mix(in srgb,var(--el-color-primary) 22%,var(--el-border-color))}.po-stat-surface--order[data-v-561f0ce8]{background:linear-gradient(135deg,var(--po-stat-order-a) 0%,#fff 48%,var(--po-stat-order-b) 100%)}.po-stat-surface--pay[data-v-561f0ce8]{background:linear-gradient(135deg,var(--po-stat-pay-a) 0%,#fff 48%,var(--po-stat-pay-b) 100%)}.po-stat-deco--o[data-v-561f0ce8]{background:radial-gradient(circle,color-mix(in srgb,var(--el-color-primary) 45%,transparent) 0%,transparent 70%)}.po-stat-deco--p[data-v-561f0ce8]{background:radial-gradient(circle,color-mix(in srgb,#10b981 40%,transparent) 0%,transparent 70%)}.stat-icon-wrap[data-v-561f0ce8]{box-shadow:inset 0 1px #ffffffb3}.po-table-card[data-v-561f0ce8]{border-radius:8px}.po-table-card[data-v-561f0ce8] .el-card__body{padding-top:16px}.po-table-toolbar[data-v-561f0ce8]{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.po-table-toolbar__title-wrap[data-v-561f0ce8]{display:flex;align-items:baseline;gap:10px}.po-table-title[data-v-561f0ce8]{font-size:16px;font-weight:600}.po-focus-board[data-v-561f0ce8]{display:grid;grid-template-columns:repeat(4,minmax(106px,1fr));gap:8px;width:min(100%,520px)}.po-focus-board__item[data-v-561f0ce8]{display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:8px;border:1px solid var(--el-border-color-lighter);background:#fff;padding:7px 10px;cursor:pointer;transition:all .18s ease}.po-focus-board__item[data-v-561f0ce8]:hover{transform:translateY(-1px);box-shadow:0 8px 20px -14px #0f172a61}.po-focus-board__item.is-active[data-v-561f0ce8]{box-shadow:0 0 0 2px color-mix(in srgb,var(--el-color-primary) 24%,transparent) inset;transform:translateY(-1px)}.po-focus-board__label[data-v-561f0ce8]{font-size:12px;color:var(--el-text-color-secondary)}.po-focus-board__value[data-v-561f0ce8]{font-size:18px;line-height:1;font-weight:700;color:var(--el-text-color-primary);font-variant-numeric:tabular-nums}.po-focus-board__item.is-pending-rx[data-v-561f0ce8]{border-color:color-mix(in srgb,var(--el-color-warning) 34%,#fff);background:color-mix(in srgb,var(--el-color-warning-light-9) 66%,#fff)}.po-focus-board__item.is-pending-pay[data-v-561f0ce8]{border-color:color-mix(in srgb,#2563eb 30%,#fff);background:color-mix(in srgb,#dbeafe 62%,#fff)}.po-focus-board__item.is-pending-ship[data-v-561f0ce8]{border-color:color-mix(in srgb,var(--el-color-primary) 30%,#fff);background:color-mix(in srgb,var(--el-color-primary-light-9) 64%,#fff)}.po-focus-board__item.is-risk[data-v-561f0ce8]{border-color:color-mix(in srgb,var(--el-color-danger) 34%,#fff);background:color-mix(in srgb,var(--el-color-danger-light-9) 66%,#fff)}@media(max-width:1024px){.po-focus-board[data-v-561f0ce8]{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}}.po-data-table[data-v-561f0ce8] th.el-table__cell{font-weight:600;background:var(--el-fill-color-light)!important}.po-order-no-cell[data-v-561f0ce8]{display:flex;flex-direction:column;gap:4px}.po-order-no-main[data-v-561f0ce8]{font-weight:600;color:var(--el-text-color-primary);line-height:1.35}.po-order-no-sub[data-v-561f0ce8]{display:inline-flex;align-items:center;gap:6px;font-size:12px}.po-status-tag[data-v-561f0ce8]{font-weight:600}.po-status-tag.is-focus[data-v-561f0ce8]{box-shadow:0 0 0 1px color-mix(in srgb,var(--el-color-warning) 24%,transparent) inset}.po-status-tag.is-risk[data-v-561f0ce8]{box-shadow:0 0 0 1px color-mix(in srgb,var(--el-color-danger) 30%,transparent) inset}.po-data-table[data-v-561f0ce8] .el-table__row.po-row-focus>td.el-table__cell{background:color-mix(in srgb,var(--el-color-warning-light-9) 38%,#fff)!important}.po-data-table[data-v-561f0ce8] .el-table__row.po-row-risk>td.el-table__cell{background:color-mix(in srgb,var(--el-color-danger-light-9) 42%,#fff)!important}.po-data-table[data-v-561f0ce8] .el-table__row.po-row-done>td.el-table__cell{background:color-mix(in srgb,var(--el-color-success-light-9) 24%,#fff)!important}.po-detail-drawer[data-v-561f0ce8] .el-drawer__header{margin-bottom:0;padding:16px 24px;border-bottom:1px solid var(--el-border-color-lighter)}.stat-card[data-v-561f0ce8]{border-radius:8px}.stat-title[data-v-561f0ce8]{font-weight:500}.po-panel[data-v-561f0ce8]{border-radius:8px;transition:all .3s}.po-panel[data-v-561f0ce8] .el-card__header{padding:14px 16px;background-color:var(--el-bg-color-page);border-bottom:1px solid var(--el-border-color-lighter)}.po-panel[data-v-561f0ce8] .el-card__body{padding:16px}.po-desc[data-v-561f0ce8] .el-descriptions__label{width:120px;color:var(--el-text-color-regular)}.po-audit-remark[data-v-561f0ce8]{color:var(--el-color-danger);font-weight:600;white-space:pre-wrap;word-break:break-word}.rx-wrap[data-v-561f0ce8]{min-height:160px;background:#f5f6f8;padding:12px;margin:-20px}.rx-statusbar[data-v-561f0ce8]{display:flex;align-items:center;gap:8px;padding:0 4px 8px}.rx-status[data-v-561f0ce8]{margin-bottom:10px;padding:8px 12px;border-radius:4px;font-size:13px;line-height:1.6}.rx-status-danger[data-v-561f0ce8]{background:#fef0f0;color:#b91c1c;border:1px solid #fecaca}.rx-paper[data-v-561f0ce8]{width:210mm;min-height:297mm;margin:0 auto;background:#fff;box-sizing:border-box;padding:8mm 10mm;color:#1f1f1f;font-size:13px;line-height:1.5;font-family:Microsoft YaHei,PingFang SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-shadow:0 0 0 1px #d6d6d6,0 6px 24px #0000000f;overflow:visible}.rx-notice[data-v-561f0ce8]{display:flex;flex-direction:column;align-items:stretch;gap:10px;background:#f3f4f6;border:1px solid #e5e7eb;padding:14px 12px;border-radius:2px;font-size:12px;color:#1f1f1f;margin-bottom:6px}.rx-notice .rx-notice-text[data-v-561f0ce8]{flex:none;width:100%;line-height:1.55;word-break:break-word}.rx-notice .rx-notice-meta[data-v-561f0ce8]{display:flex;flex-flow:row nowrap;align-items:center;gap:4px 14px;width:100%;box-sizing:border-box;margin-top:4px;padding:8px 2px 2px;border-top:1px solid #e5e7eb;font-size:10px;line-height:2.35;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.rx-notice .rx-notice-meta .rx-meta-item[data-v-561f0ce8]{display:inline-flex;flex:0 0 auto;align-items:baseline;gap:2px;min-width:0;padding:0;margin:0;background:transparent;border:none;border-radius:0;white-space:nowrap;line-height:2.35;height:20px}.rx-notice .rx-notice-meta .rx-meta-item[data-v-561f0ce8]:not(:first-child){border-left:1px solid #d1d5db;padding-left:14px;margin-left:2px;line-height:2.35}.rx-notice .rx-notice-meta .rx-meta-label[data-v-561f0ce8]{font-weight:600;color:#6b7280;line-height:1.35;flex-shrink:0}.rx-notice .rx-notice-meta .rx-meta-label[data-v-561f0ce8]:after{content:":";font-weight:500;color:#9ca3af}.rx-notice .rx-notice-meta .rx-meta-value[data-v-561f0ce8]{color:#111827;line-height:1.35;font-variant-numeric:tabular-nums}.rx-title[data-v-561f0ce8]{text-align:center;font-size:28px;font-weight:700;line-height:1.2;margin:10px 0 35px;letter-spacing:.08em}.rx-info[data-v-561f0ce8]{border:1px solid #c8c8c8;border-bottom:none}.rx-info-row[data-v-561f0ce8]{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #c8c8c8}.rx-info-row-full[data-v-561f0ce8]{grid-template-columns:1fr}.rx-info-cell[data-v-561f0ce8]{display:flex;align-items:center;gap:6px;padding:16px 10px;font-size:13px;border-right:1px solid #c8c8c8;min-height:32px}.rx-info-cell[data-v-561f0ce8]:last-child{border-right:none}.rx-info-cell .rx-key[data-v-561f0ce8]{color:#1f1f1f;flex-shrink:0}.rx-info-cell .rx-val[data-v-561f0ce8]{flex:1;min-width:0;word-break:break-all}.rx-rp[data-v-561f0ce8]{position:relative;border-left:1px solid #c8c8c8;border-right:1px solid #c8c8c8;padding:8px 10px 16px;overflow:hidden;box-sizing:border-box;width:100%}.rx-watermark[data-v-561f0ce8]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:88px;font-weight:700;color:#0000000f;transform:rotate(-22deg);letter-spacing:.18em;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:0}.rx-rp-head[data-v-561f0ce8]{display:grid;grid-template-columns:36px 1fr;align-items:end;-moz-column-gap:8px;column-gap:8px;border-bottom:1px solid #d4d4d4;margin-bottom:6px;position:relative;z-index:1;width:100%;box-sizing:border-box;padding:10px}.rx-rp-label[data-v-561f0ce8]{font-size:16px;font-weight:700;color:#1f1f1f;line-height:1;padding-bottom:15px}.rx-rp-cols-head[data-v-561f0ce8]{display:grid;grid-template-columns:1fr 1fr;-moz-column-gap:24px;column-gap:24px;width:100%;box-sizing:border-box;min-width:0}.rx-rp-col-head[data-v-561f0ce8]{display:grid;grid-template-columns:1fr 64px;-moz-column-gap:8px;column-gap:8px;font-size:13px;color:#1f1f1f;min-width:0;padding-bottom:15px}.rx-rp-col-head>span[data-v-561f0ce8]:last-child{text-align:right}.rx-herbs[data-v-561f0ce8]{padding-left:44px;display:grid;grid-template-columns:1fr 1fr;-moz-column-gap:24px;column-gap:24px;row-gap:6px;position:relative;z-index:1;width:100%;box-sizing:border-box}.rx-herb-cell[data-v-561f0ce8]{display:grid;grid-template-columns:1fr 64px;-moz-column-gap:8px;column-gap:8px;font-size:13px;line-height:2.5;min-width:0}.rx-herb-name[data-v-561f0ce8]{color:#1f1f1f;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rx-herb-total[data-v-561f0ce8]{color:#1f1f1f;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.rx-text[data-v-561f0ce8]{border:1px solid #c8c8c8;border-top:none;padding:10px 12px;font-size:13px;line-height:1.85}.rx-text p[data-v-561f0ce8]{margin:0}.rx-text .rx-text-warn[data-v-561f0ce8]{color:#d72424;font-weight:600}.rx-bottom[data-v-561f0ce8]{border:1px solid #c8c8c8;border-top:none}.rx-bot-row[data-v-561f0ce8]{display:grid;border-bottom:1px solid #c8c8c8}.rx-bot-row[data-v-561f0ce8]:last-child{border-bottom:none}.rx-bot-row-1[data-v-561f0ce8]{grid-template-columns:1.6fr .6fr .6fr .6fr .6fr 1.7fr .95fr 1.25fr;min-height:70px}.rx-bot-row-2[data-v-561f0ce8]{grid-template-columns:repeat(6,1fr)}.rx-hospital-row[data-v-561f0ce8]{display:flex;flex-direction:column;align-items:left;justify-content:left;gap:2px;padding:10px 12px;min-height:52px;text-align:left}.rx-hospital-line[data-v-561f0ce8]{font-size:12px;color:#374151;line-height:1.6}.rx-bot-cell[data-v-561f0ce8]{border-right:1px solid #c8c8c8;padding:6px 10px;font-size:12px;color:#1f1f1f;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;min-height:32px;box-sizing:border-box;line-height:2.5}.rx-bot-cell[data-v-561f0ce8]:last-child{border-right:none}.rx-bot-stack[data-v-561f0ce8]{flex-direction:column;align-items:flex-start;justify-content:flex-start}.rx-bot-label[data-v-561f0ce8]{font-size:13px;color:#1f1f1f;margin-bottom:4px}.rx-bot-label--doctor[data-v-561f0ce8]{flex-shrink:0;margin-bottom:0;margin-right:6px;line-height:1.2;align-self:center}.rx-bot-doctor[data-v-561f0ce8]{flex-direction:row;align-items:center;flex-wrap:nowrap}.rx-bot-doctor .rx-bot-doctor-body[data-v-561f0ce8]{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px;min-height:0}.rx-bot-doctor .rx-bot-doctor-name[data-v-561f0ce8]{font-size:13px;color:#1f1f1f;line-height:1.2;white-space:nowrap}.rx-bot-doctor .rx-bot-sign-img[data-v-561f0ce8]{flex-shrink:0;max-height:40px;max-width:110px;-o-object-fit:contain;object-fit:contain}.rx-bot-meta[data-v-561f0ce8]{flex-wrap:nowrap}.rx-bot-meta .rx-bot-meta-key[data-v-561f0ce8]{color:#1f1f1f;margin-right:6px;white-space:nowrap;flex-shrink:0;line-height:1.4}.rx-bot-meta .rx-bot-meta-val[data-v-561f0ce8]{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;line-height:2.5}.rx-fee[data-v-561f0ce8]{font-size:13px;line-height:1.4;padding:8px 10px}.rx-fee .rx-fee-key[data-v-561f0ce8]{color:#1f1f1f;margin-right:6px;white-space:nowrap}.rx-fee .rx-fee-val[data-v-561f0ce8]{font-variant-numeric:tabular-nums;white-space:nowrap}.rx-fee-total[data-v-561f0ce8]{font-weight:700;background:#fafafa}.rx-fee-total .rx-fee-val[data-v-561f0ce8]{font-weight:700}.rx-audit[data-v-561f0ce8]{margin:12px auto 0;max-width:210mm;padding:8px 12px;background:#fafafa;border:1px dashed #d4d4d4;color:#6b7280;font-size:12px;line-height:1.6;border-radius:4px}.audit-stamp[data-v-561f0ce8]{position:absolute;top:18px;right:-14px;width:72px;height:72px;border:3px solid currentColor;border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(20deg);opacity:.8;pointer-events:none;z-index:10;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:700;font-size:13px;letter-spacing:1px;box-shadow:inset 0 0 0 1px #ffffff80}.audit-stamp[data-v-561f0ce8]:after{content:"";position:absolute;top:4px;left:4px;right:4px;bottom:4px;border:1px double currentColor;border-radius:50%;opacity:.6}.audit-stamp .stamp-inner[data-v-561f0ce8]{text-align:center;line-height:1.1}.stamp-pass[data-v-561f0ce8]{color:var(--el-color-success)}.stamp-reject[data-v-561f0ce8]{color:var(--el-color-danger)}.create-order-dialog[data-v-561f0ce8] .el-dialog__header{padding:20px 24px 12px;margin-right:0}.create-order-dialog[data-v-561f0ce8] .el-dialog__title{font-size:18px;font-weight:600;letter-spacing:.02em}.create-order-dialog[data-v-561f0ce8] .el-dialog__body{padding:8px 24px 20px;max-height:calc(100vh - 200px);overflow:hidden}.create-order-dialog[data-v-561f0ce8] .el-dialog__footer{padding:16px 24px 20px;border-top:1px solid var(--el-border-color-lighter);background:var(--el-fill-color-blank)}.create-order-dialog__inner[data-v-561f0ce8]{display:flex;flex-direction:column;gap:0}.create-order-rx-card[data-v-561f0ce8]{border-radius:10px;border:1px solid var(--el-color-primary-light-5);background:linear-gradient(135deg,var(--el-color-primary-light-9) 0%,var(--el-fill-color-blank) 100%);padding:16px 18px;margin-bottom:20px;box-shadow:0 1px 2px #0000000a}.create-order-rx-card__head[data-v-561f0ce8]{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-bottom:10px}.create-order-rx-card__badge[data-v-561f0ce8]{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;color:#fff;background:var(--el-color-primary);letter-spacing:.04em}.create-order-rx-card__meta[data-v-561f0ce8]{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:14px;color:var(--el-text-color-regular)}.create-order-rx-card__id[data-v-561f0ce8]{font-weight:600;color:var(--el-text-color-primary)}.create-order-rx-card__sn[data-v-561f0ce8]{padding:2px 8px;border-radius:4px;background:var(--el-fill-color);font-size:13px;color:var(--el-text-color-secondary)}.create-order-rx-card__patient[data-v-561f0ce8]{font-weight:500;color:var(--el-text-color-primary)}.create-order-rx-card__herbs[data-v-561f0ce8]{font-size:13px;line-height:1.55;color:var(--el-text-color-secondary);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;cursor:default;padding-top:2px}.create-order-steps[data-v-561f0ce8]{margin-bottom:8px;padding:8px 12px 4px}.create-order-steps[data-v-561f0ce8] .el-step__title{font-size:14px;font-weight:500;line-height:1.4}.create-order-steps[data-v-561f0ce8] .el-step__description{font-size:12px;margin-top:4px;line-height:1.35;padding-right:6px}.create-order-steps[data-v-561f0ce8] .el-step__head{padding-right:8px}.create-order-steps[data-v-561f0ce8] .el-step.is-horizontal .el-step__line{top:14px}.create-order-step-lead[data-v-561f0ce8]{margin:0 0 20px;padding:12px 16px;font-size:13px;line-height:1.6;color:var(--el-text-color-secondary);background:var(--el-fill-color-light);border-radius:8px;border-left:3px solid var(--el-color-primary-light-5)}.create-order-step-panel[data-v-561f0ce8]{max-height:min(56vh,480px);overflow-y:auto;overflow-x:hidden;padding:4px 8px 12px 4px;margin-right:-4px}.create-order-step-panel__row-after-bar[data-v-561f0ce8]{margin-top:20px}.create-order-unit-suffix[data-v-561f0ce8]{flex-shrink:0;font-size:13px;color:var(--el-text-color-secondary);padding-left:4px}.create-order-footer[data-v-561f0ce8]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;width:100%}.create-order-footer__hint[data-v-561f0ce8]{flex:1;min-width:200px;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.5;color:var(--el-text-color-secondary)}.create-order-footer__step[data-v-561f0ce8]{color:var(--el-text-color-placeholder)}.create-order-footer__warn[data-v-561f0ce8]{color:var(--el-color-warning);font-weight:500}.create-order-footer__actions[data-v-561f0ce8]{flex-shrink:0;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.create-order-deposit-bar[data-v-561f0ce8]{display:flex;align-items:stretch;border-radius:10px;border:1px solid var(--el-border-color-lighter);overflow:hidden;font-size:13px;box-shadow:0 1px 2px #0000000a}.create-order-deposit-bar__cell[data-v-561f0ce8]{flex:1;padding:16px 20px;display:flex;flex-direction:column;gap:6px;background:var(--el-fill-color-light)}.create-order-deposit-bar__cell strong[data-v-561f0ce8]{font-size:20px;font-weight:600;color:var(--el-text-color-primary);letter-spacing:.02em}.create-order-deposit-bar__label[data-v-561f0ce8]{font-size:13px;color:var(--el-text-color-secondary)}.create-order-deposit-bar__sub[data-v-561f0ce8]{font-size:12px;color:var(--el-text-color-placeholder)}.create-order-deposit-bar__sep[data-v-561f0ce8]{width:1px;background:var(--el-border-color-lighter);flex-shrink:0}.create-order-deposit-bar.is-ok .create-order-deposit-bar__cell:last-child strong[data-v-561f0ce8]{color:var(--el-color-success)}.create-order-deposit-bar.is-warn .create-order-deposit-bar__cell:last-child strong[data-v-561f0ce8]{color:var(--el-color-danger)}.create-order-pay-hint[data-v-561f0ce8]{font-size:12px;line-height:1.55;margin-top:8px;color:var(--el-text-color-secondary)}.create-order-form[data-v-561f0ce8] .el-form-item{margin-bottom:20px}.create-order-form[data-v-561f0ce8] .el-form-item__label{font-size:14px;padding-right:12px}.create-order-form[data-v-561f0ce8] .el-input__inner,.create-order-form[data-v-561f0ce8] .el-textarea__inner{font-size:14px}.create-order-form-item--inline-num[data-v-561f0ce8] .el-form-item__content{line-height:normal}.po-diagnosis-creator-dept-breadcrumb[data-v-561f0ce8] .el-breadcrumb__item{display:inline-flex;float:none}.po-diagnosis-creator-dept-breadcrumb[data-v-561f0ce8] .el-breadcrumb__separator{margin:0 2px 0 4px}.prescription-order-h5.po-h5-app[data-v-561f0ce8]{--po-h5-ink: #0f172a;--po-h5-muted: #64748b;--po-h5-surface: rgba(255, 255, 255, .82);--po-h5-elevated: 0 14px 44px -18px rgba(15, 23, 42, .22), 0 4px 14px -6px rgba(15, 23, 42, .08);--po-h5-pill-idle: rgba(255, 255, 255, .72);box-sizing:border-box;min-height:100vh;min-height:100dvh;padding:max(10px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) max(28px,env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));background:radial-gradient(100% 70% at 0% 0%,color-mix(in srgb,var(--el-color-primary) 16%,transparent),transparent 55%),radial-gradient(80% 50% at 100% 8%,rgba(45,212,191,.11),transparent 52%),radial-gradient(60% 40% at 50% 100%,rgba(251,191,36,.06),transparent 45%),linear-gradient(180deg,#f1f5f9,#e2e8f0 55%,#f8fafc);font-size:15px;line-height:1.5;color:var(--po-h5-ink);-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain}.po-h5-hero[data-v-561f0ce8]{margin-bottom:14px;padding:4px 2px 2px}.po-h5-hero__title[data-v-561f0ce8]{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;color:var(--po-h5-ink)}.po-h5-hero__sub[data-v-561f0ce8]{margin:6px 0 0;font-size:.8125rem;line-height:1.45;color:var(--po-h5-muted);max-width:42ch}.prescription-order-h5.po-h5-app .po-h5-surface[data-v-561f0ce8]{border-radius:20px!important;border:1px solid rgba(255,255,255,.55)!important;background:var(--po-h5-surface)!important;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);box-shadow:var(--po-h5-elevated)!important}.prescription-order-h5.po-h5-app .po-h5-surface--list[data-v-561f0ce8] .el-card__body{padding-top:14px!important}.prescription-order-h5.po-h5-app .po-h5-list-head[data-v-561f0ce8]{margin-bottom:4px;padding-bottom:12px;border-bottom:1px solid rgba(15,23,42,.06)}.prescription-order-h5.po-h5-app[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>span:first-child{background:color-mix(in srgb,#fff 94%,var(--el-color-primary-light-9))!important;-webkit-backdrop-filter:none;backdrop-filter:none}.prescription-order-h5.po-h5-app .po-h5-surface--chips[data-v-561f0ce8]{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb,#fff 94%,var(--el-color-primary-light-9))!important}.prescription-order-h5.po-h5-app[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>div{border-radius:9999px!important;padding:10px 16px!important;font-size:13px!important;font-weight:600;border:1px solid rgba(15,23,42,.1)!important;background:#ffffffeb!important;color:#334155!important;box-shadow:0 1px 3px #0f172a0f;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.prescription-order-h5.po-h5-app[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>div span{color:inherit!important}.prescription-order-h5.po-h5-app[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>div.bg-primary{border-color:transparent!important;background:var(--el-color-primary)!important;color:#fff!important;box-shadow:0 10px 26px -14px color-mix(in srgb,var(--el-color-primary) 62%,transparent)!important}.prescription-order-h5.po-h5-app .po-filter-toggle[data-v-561f0ce8]{border-radius:16px!important;border:1px solid rgba(255,255,255,.55)!important;background:linear-gradient(140deg,color-mix(in srgb,#fff 78%,var(--el-color-primary-light-9)),color-mix(in srgb,var(--el-color-primary-light-9) 40%,#fff))!important;box-shadow:0 10px 28px -18px #0f172a38}.prescription-order-h5.po-h5-app .po-table-title[data-v-561f0ce8]{font-size:1.125rem!important;font-weight:700!important;letter-spacing:-.02em;color:var(--po-h5-ink)!important}.prescription-order-h5.po-h5-app .po-table-hint[data-v-561f0ce8]{font-size:13px!important;color:var(--po-h5-muted)!important}.prescription-order-h5.po-h5-app .po-focus-board__item[data-v-561f0ce8]{flex-direction:column;align-items:flex-start;justify-content:center;min-height:4.5rem;padding:12px 14px!important;border-radius:18px!important;border:none!important;box-shadow:0 10px 28px -18px #0f172a40;gap:6px}.prescription-order-h5.po-h5-app .po-focus-board__label[data-v-561f0ce8]{font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--po-h5-muted)}.prescription-order-h5.po-h5-app .po-focus-board__value[data-v-561f0ce8]{font-size:1.35rem}.prescription-order-h5.po-h5-app .po-focus-board__item.is-active[data-v-561f0ce8]{box-shadow:0 0 0 2px color-mix(in srgb,var(--el-color-primary) 35%,transparent) inset,0 12px 32px -16px #0f172a47}.prescription-order-h5.po-h5-app .po-card[data-v-561f0ce8]{border-radius:22px!important;border:1px solid rgba(255,255,255,.55)!important;background:color-mix(in srgb,#fff 92%,transparent)!important;backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);box-shadow:0 20px 44px -34px #0f172a73!important;padding:16px!important}.prescription-order-h5.po-h5-app .po-card__order-no-main[data-v-561f0ce8]{font-size:15px!important}.prescription-order-h5.po-h5-app .po-card__label[data-v-561f0ce8]{font-size:12px!important;color:var(--po-h5-muted)!important}.prescription-order-h5.po-h5-app .po-card__value[data-v-561f0ce8]{font-size:15px!important}.prescription-order-h5.po-h5-app .po-stat-surface[data-v-561f0ce8]{border-radius:18px!important;border:1px solid rgba(255,255,255,.45)!important;box-shadow:0 12px 36px -22px #0f172a47!important}.prescription-order-h5.po-h5-app .po-card__amount[data-v-561f0ce8]{font-size:1.05rem!important}@media(prefers-reduced-motion:reduce){.prescription-order-h5.po-h5-app .po-card[data-v-561f0ce8]:active{transform:none!important}.prescription-order-h5.po-h5-app[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>div{transition:none}}.prescription-order-h5[data-v-561f0ce8] .el-card .flex.flex-col.gap-3{gap:10px}.prescription-order-h5[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap{flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.prescription-order-h5[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap::-webkit-scrollbar{display:none}.prescription-order-h5[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>span:first-child{position:sticky;left:0;background:#fff;z-index:2;padding-right:4px}.prescription-order-h5[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>div{flex-shrink:0;padding:6px 12px!important;font-size:12px!important}.prescription-order-h5[data-v-561f0ce8] .el-card{border-radius:12px}.prescription-order-h5[data-v-561f0ce8] .el-card__body{padding:12px!important}.prescription-order-h5 .po-list-stats[data-v-561f0ce8]{grid-template-columns:1fr!important;gap:10px!important;margin-bottom:12px!important}.prescription-order-h5 .po-stat-surface[data-v-561f0ce8]{padding:12px 14px!important}.prescription-order-h5 .po-stat-surface .text-2xl[data-v-561f0ce8],.prescription-order-h5 .po-stat-surface .sm\:text-\[28px\][data-v-561f0ce8]{font-size:22px!important}.prescription-order-h5 .ls-form[data-v-561f0ce8]{display:flex;flex-direction:column;gap:10px}.prescription-order-h5[data-v-561f0ce8] .ls-form .el-form-item{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important}.prescription-order-h5[data-v-561f0ce8] .ls-form .el-form-item__label{width:72px!important;font-size:12px!important;color:#6b7280;padding-right:6px!important}.prescription-order-h5[data-v-561f0ce8] .ls-form .el-form-item__content{flex:1 1 0!important;min-width:0!important}.prescription-order-h5[data-v-561f0ce8] .ls-form .el-form-item:last-child .el-form-item__content{justify-content:flex-end;gap:8px}.prescription-order-h5 .po-table-toolbar[data-v-561f0ce8]{gap:10px;margin-bottom:10px}.prescription-order-h5 .po-table-title[data-v-561f0ce8]{font-size:15px}.prescription-order-h5 .po-focus-board[data-v-561f0ce8]{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.prescription-order-h5 .po-focus-board__item[data-v-561f0ce8]{padding:8px 10px}.prescription-order-h5 .po-focus-board__value[data-v-561f0ce8]{font-size:16px}.prescription-order-h5 .po-card-list[data-v-561f0ce8]{display:flex;flex-direction:column;gap:12px}.prescription-order-h5 .po-card[data-v-561f0ce8]{background:#fff;border-radius:12px;border:1px solid #edf0f4;padding:12px;box-shadow:0 2px 6px -3px #0f172a14;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer;overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5 .po-card[data-v-561f0ce8]:active{transform:scale(.995);box-shadow:0 4px 10px -4px #0f172a1f}.prescription-order-h5 .po-card[data-v-561f0ce8]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-card--focus[data-v-561f0ce8]{border-color:color-mix(in srgb,var(--el-color-warning) 40%,#fff);background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-warning-light-9) 50%,#fff),#fff 60%)}.prescription-order-h5 .po-card--risk[data-v-561f0ce8]{border-color:color-mix(in srgb,var(--el-color-danger) 44%,#fff);background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-danger-light-9) 55%,#fff),#fff 60%)}.prescription-order-h5 .po-card__head[data-v-561f0ce8]{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px dashed #edf0f4}.prescription-order-h5 .po-card__order-no-main[data-v-561f0ce8]{font-size:14px;font-weight:600;color:#0f172a;word-break:break-all;line-height:1.35}.prescription-order-h5 .po-card__tags[data-v-561f0ce8]{display:flex;align-items:center;gap:6px;flex-shrink:0}.prescription-order-h5 .po-card__id[data-v-561f0ce8]{font-size:11px;color:#9ca3af}.prescription-order-h5 .po-card__alert[data-v-561f0ce8]{display:flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--el-color-danger-light-9) 70%,#fff);color:#dc2626;font-size:12px;font-weight:600;border-radius:8px;padding:6px 10px;margin-bottom:8px}.prescription-order-h5 .po-card__row[data-v-561f0ce8]{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.prescription-order-h5 .po-card__field[data-v-561f0ce8]{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 0}.prescription-order-h5 .po-card__field--right[data-v-561f0ce8]{text-align:right;align-items:flex-end}.prescription-order-h5 .po-card__label[data-v-561f0ce8]{font-size:11px;color:#9ca3af;line-height:1.2}.prescription-order-h5 .po-card__value[data-v-561f0ce8]{font-size:13px;color:#111827;font-weight:500;word-break:break-all;line-height:1.35}.prescription-order-h5 .po-card__amount[data-v-561f0ce8]{color:#ef4444!important;font-size:15px!important;font-weight:700!important}.prescription-order-h5 .po-card__time[data-v-561f0ce8]{font-size:12px!important;color:#6b7280!important;font-weight:400!important}.prescription-order-h5 .po-card__tags-row[data-v-561f0ce8]{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed #edf0f4}.prescription-order-h5 .po-card__meta[data-v-561f0ce8]{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;font-size:11px;color:#6b7280}.prescription-order-h5 .po-card__meta-time[data-v-561f0ce8]{margin-left:auto}.prescription-order-h5 .po-card__actions[data-v-561f0ce8]{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #f1f3f6}.prescription-order-h5 .po-card__actions[data-v-561f0ce8] .el-button{margin-left:0;font-size:13px;padding:8px 14px;min-height:36px;border-radius:8px;touch-action:manipulation}.prescription-order-h5 .po-card__actions[data-v-561f0ce8] .el-button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .flex.justify-end.mt-4[data-v-561f0ce8]{justify-content:center!important}.prescription-order-h5[data-v-561f0ce8] .el-pagination{--el-pagination-button-height: 30px;--el-pagination-button-width: 30px;font-size:12px;flex-wrap:wrap;justify-content:center}.prescription-order-h5[data-v-561f0ce8] .el-pagination .el-pagination__sizes{display:none}.po-detail-drawer--h5[data-v-561f0ce8] .el-drawer__header{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:6px!important;padding:10px 10px 10px 14px!important;margin-bottom:0!important;border-bottom:1px solid #edf0f4}.po-detail-drawer--h5[data-v-561f0ce8] .el-drawer__header .po-detail-drawer-head{flex:1 1 auto;min-width:0;max-width:100%}.po-detail-drawer--h5[data-v-561f0ce8] .el-drawer__header .el-drawer__close-btn{flex-shrink:0;margin-top:2px}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-head{flex-direction:column;align-items:stretch!important;gap:10px}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-actions{margin-right:0!important;flex-wrap:wrap;gap:6px;width:100%}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-head .el-button{padding:6px 10px;font-size:12px}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-title{font-size:16px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body{padding:12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body .grid.grid-cols-1.md\:grid-cols-2,.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body .grid.grid-cols-1.lg\:grid-cols-2{grid-template-columns:1fr!important;gap:12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .stat-card .stat-value{font-size:16px!important}.po-detail-drawer--h5[data-v-561f0ce8] .stat-card .stat-title{font-size:11px!important}.po-detail-drawer--h5[data-v-561f0ce8] .stat-card .el-card__body{padding:10px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps.el-steps--vertical{padding-left:6px}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps .el-step__title{font-size:14px!important;font-weight:500;line-height:1.45!important;word-break:break-word}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps .el-step__description{font-size:12px!important;line-height:1.45!important;margin-top:4px!important;word-break:break-word;white-space:normal}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps .el-step__main{min-height:auto;padding-bottom:8px}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps .el-step:last-child .el-step__main{padding-bottom:0}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions{font-size:12px}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions__label{width:92px!important;font-size:12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions__cell{padding:8px 10px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-biz-diagnosis-id__btn{min-height:44px;padding:10px 18px!important;font-size:14px!important;font-weight:600}.po-detail-drawer--h5[data-v-561f0ce8] .po-biz-diagnosis-id__btn:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.po-detail-drawer--h5[data-v-561f0ce8] .audit-stamp{transform:scale(.72) rotate(-12deg)!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-table{font-size:12px}.po-h5-dialog[data-v-561f0ce8] .el-dialog__header{padding:12px 14px!important;margin-right:0!important}.po-h5-dialog[data-v-561f0ce8] .el-dialog__title{font-size:15px!important}.po-h5-dialog[data-v-561f0ce8] .el-dialog__body{padding:14px!important}.po-h5-dialog[data-v-561f0ce8] .el-dialog__footer{padding:10px 14px!important}.po-h5-dialog[data-v-561f0ce8] .el-form-item__label{font-size:12px!important}.po-h5-dialog[data-v-561f0ce8] .el-button{font-size:13px}.create-order-dialog--h5[data-v-561f0ce8] .el-dialog{margin:2vh auto!important;max-width:96vw}.create-order-dialog--h5[data-v-561f0ce8] .el-dialog__body{padding:10px 12px!important;max-height:82vh;overflow-y:auto}.create-order-dialog--h5[data-v-561f0ce8] .create-order-rx-card__head{flex-wrap:wrap;gap:6px}.create-order-dialog--h5[data-v-561f0ce8] .create-order-rx-card__meta{flex-wrap:wrap;font-size:12px}.create-order-dialog--h5[data-v-561f0ce8] .el-steps.is-simple{padding:0 4px!important}.create-order-dialog--h5[data-v-561f0ce8] .el-form--inline .el-form-item{width:100%;margin-right:0!important}.create-order-dialog--h5[data-v-561f0ce8] .el-col{flex:0 0 100%!important;max-width:100%!important}.po-h5-drawer[data-v-561f0ce8] .el-drawer__header{padding:10px 14px!important;margin-bottom:0!important;border-bottom:1px solid #edf0f4}.po-h5-drawer[data-v-561f0ce8] .el-drawer__title{font-size:15px}.po-h5-drawer[data-v-561f0ce8] .el-drawer__body{padding:12px!important;overflow-y:auto}.po-h5-drawer[data-v-561f0ce8] .el-table,.po-h5-drawer[data-v-561f0ce8] .el-descriptions{font-size:12px}.po-h5-drawer[data-v-561f0ce8] .el-descriptions__label{width:84px!important}.prescription-order-h5 .po-filter-toggle[data-v-561f0ce8]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;min-height:44px;background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-primary-light-9) 60%,#fff),#fff);border:1px solid color-mix(in srgb,var(--el-color-primary) 18%,#fff);border-radius:10px;margin-bottom:12px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5 .po-filter-toggle[data-v-561f0ce8]:active{transform:scale(.99);background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-primary-light-9) 80%,#fff),#fff)}.prescription-order-h5 .po-filter-toggle[data-v-561f0ce8]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-filter-toggle__label[data-v-561f0ce8]{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--el-color-primary)}.prescription-order-h5 .po-filter-toggle__arrow[data-v-561f0ce8]{color:var(--el-color-primary);transition:transform .25s ease}.prescription-order-h5 .po-filter-toggle__arrow.is-open[data-v-561f0ce8]{transform:rotate(180deg)}.prescription-order-h5[data-v-561f0ce8] .ls-form .el-form-item:last-child{width:100%}.prescription-order-h5[data-v-561f0ce8] .ls-form .el-form-item:last-child .el-form-item__content{display:flex;gap:8px;width:100%}.prescription-order-h5[data-v-561f0ce8] .ls-form .el-form-item:last-child .el-form-item__content>.el-button{flex:1 1 0;margin:0!important}.prescription-order-h5 .po-table-toolbar[data-v-561f0ce8]{flex-direction:column;align-items:stretch!important}.prescription-order-h5 .po-table-toolbar__title-wrap[data-v-561f0ce8]{justify-content:space-between}.prescription-order-h5[data-v-561f0ce8] .po-workflow-steps-wrap{padding:10px!important;margin-bottom:12px!important}.prescription-order-h5[data-v-561f0ce8] .po-workflow-steps .el-step__title{font-size:13px!important;line-height:1.4!important}.prescription-order-h5[data-v-561f0ce8] .po-workflow-steps .el-step__description{font-size:11px!important;padding-right:0!important;margin-top:4px!important}.prescription-order-h5[data-v-561f0ce8] .po-workflow-steps .el-step__head{width:auto!important}.prescription-order-h5[data-v-561f0ce8] .po-detail-body .el-row{margin-left:-4px!important;margin-right:-4px!important}.prescription-order-h5[data-v-561f0ce8] .po-detail-body .el-row .el-col{padding-left:4px!important;padding-right:4px!important;margin-bottom:8px}.prescription-order-h5[data-v-561f0ce8] .po-detail-drawer--h5 .el-drawer__close-btn{font-size:20px!important;padding:8px!important}.prescription-order-h5[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>div{min-height:36px;display:flex!important;align-items:center;gap:4px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5[data-v-561f0ce8] .el-card .flex.items-center.gap-2.flex-wrap>div:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-focus-board__item[data-v-561f0ce8]{min-height:56px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5 .po-focus-board__item[data-v-561f0ce8]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-card__amount[data-v-561f0ce8],.prescription-order-h5 .po-card__id[data-v-561f0ce8],.prescription-order-h5[data-v-561f0ce8] .tabular-nums{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.prescription-order-h5[data-v-561f0ce8] .el-dropdown-menu__item{min-height:40px;line-height:40px;font-size:13px}.prescription-order-h5[data-v-561f0ce8] .el-input__wrapper,.prescription-order-h5[data-v-561f0ce8] .el-select__wrapper,.prescription-order-h5[data-v-561f0ce8] .el-date-editor.el-input{min-height:36px}@media(prefers-reduced-motion:reduce){.prescription-order-h5[data-v-561f0ce8] *,.prescription-order-h5[data-v-561f0ce8] *:before,.prescription-order-h5[data-v-561f0ce8] *:after,.po-detail-drawer--h5[data-v-561f0ce8] *,.po-detail-drawer--h5[data-v-561f0ce8] *:before,.po-detail-drawer--h5[data-v-561f0ce8] *:after,.po-h5-dialog[data-v-561f0ce8] *,.po-h5-dialog[data-v-561f0ce8] *:before,.po-h5-dialog[data-v-561f0ce8] *:after,.po-h5-drawer[data-v-561f0ce8] *,.po-h5-drawer[data-v-561f0ce8] *:before,.po-h5-drawer[data-v-561f0ce8] *:after,.create-order-dialog--h5[data-v-561f0ce8] *,.create-order-dialog--h5[data-v-561f0ce8] *:before,.create-order-dialog--h5[data-v-561f0ce8] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.prescription-order-h5 .po-card[data-v-561f0ce8],.prescription-order-h5 .po-filter-toggle[data-v-561f0ce8],.prescription-order-h5 .po-focus-board__item[data-v-561f0ce8],.po-detail-drawer--h5 .po-card[data-v-561f0ce8],.po-detail-drawer--h5 .po-filter-toggle[data-v-561f0ce8],.po-detail-drawer--h5 .po-focus-board__item[data-v-561f0ce8],.po-h5-dialog .po-card[data-v-561f0ce8],.po-h5-dialog .po-filter-toggle[data-v-561f0ce8],.po-h5-dialog .po-focus-board__item[data-v-561f0ce8],.po-h5-drawer .po-card[data-v-561f0ce8],.po-h5-drawer .po-filter-toggle[data-v-561f0ce8],.po-h5-drawer .po-focus-board__item[data-v-561f0ce8],.create-order-dialog--h5 .po-card[data-v-561f0ce8],.create-order-dialog--h5 .po-filter-toggle[data-v-561f0ce8],.create-order-dialog--h5 .po-focus-board__item[data-v-561f0ce8]{transition:none!important}.prescription-order-h5 .po-card[data-v-561f0ce8]:active,.prescription-order-h5 .po-filter-toggle[data-v-561f0ce8]:active,.po-detail-drawer--h5 .po-card[data-v-561f0ce8]:active,.po-detail-drawer--h5 .po-filter-toggle[data-v-561f0ce8]:active,.po-h5-dialog .po-card[data-v-561f0ce8]:active,.po-h5-dialog .po-filter-toggle[data-v-561f0ce8]:active,.po-h5-drawer .po-card[data-v-561f0ce8]:active,.po-h5-drawer .po-filter-toggle[data-v-561f0ce8]:active,.create-order-dialog--h5 .po-card[data-v-561f0ce8]:active,.create-order-dialog--h5 .po-filter-toggle[data-v-561f0ce8]:active{transform:none!important}}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body{padding:10px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body .px-6,.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body .px-5,.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body .py-4,.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body .pb-6{padding-left:10px!important;padding-right:10px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-head{flex-direction:column;align-items:stretch!important;gap:8px;width:100%}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-head>.po-detail-drawer-head-main{flex-wrap:wrap;gap:6px;min-width:0}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-head-main .ml-2,.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-head-main .ml-3{margin-left:0!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;margin-right:0!important;width:100%}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-drawer-actions .el-button{margin-left:0!important;width:100%;min-height:36px;font-size:12px!important;padding:6px 8px!important}.po-detail-drawer--h5[data-v-561f0ce8] .stat-card{padding:0!important}.po-detail-drawer--h5[data-v-561f0ce8] .stat-card .el-card__body{padding:8px 10px!important}.po-detail-drawer--h5[data-v-561f0ce8] .stat-card .stat-title{font-size:10px!important;margin-bottom:2px!important}.po-detail-drawer--h5[data-v-561f0ce8] .stat-card .stat-value{font-size:15px!important;line-height:1.2!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body>.el-row{margin-left:-4px!important;margin-right:-4px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-detail-body>.el-row .el-col{padding-left:4px!important;padding-right:4px!important;margin-bottom:6px}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions__body{width:100%}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions__table{table-layout:fixed;width:100%}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions__cell{padding:8px 10px!important;font-size:12px!important;word-break:break-all}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions__label{width:84px!important;min-width:84px!important;font-size:12px!important;color:#6b7280!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-descriptions__content{font-size:12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel-rx .el-card__header{padding:10px 12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel-rx-header{writing-mode:horizontal-tb}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel-rx-header__title{word-break:break-word;max-width:100%}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel-rx-header .el-button.is-link{padding:2px 0!important;margin:0!important;height:auto!important;min-height:0!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel .el-card__header,.po-detail-drawer--h5[data-v-561f0ce8] .po-panel .el-card__body{padding:10px 12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel .el-card__header .flex.items-center.gap-3,.po-detail-drawer--h5[data-v-561f0ce8] .po-panel .el-card__header .flex.items-center.justify-between{flex-wrap:wrap;gap:6px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel .el-card__header .font-medium.text-\[15px\]{font-size:14px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-panel .el-card__header .el-button{padding:4px 8px!important;font-size:12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps-wrap{padding:10px!important;margin-bottom:12px!important}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps .el-step__title{font-size:13px!important;line-height:1.45!important;word-break:break-word}.po-detail-drawer--h5[data-v-561f0ce8] .po-workflow-steps .el-step__description{font-size:12px!important;padding-right:0!important;margin-top:4px!important;white-space:normal;line-height:1.45!important;word-break:break-word}.po-detail-drawer--h5[data-v-561f0ce8] .po-pay-table{font-size:11px}.po-detail-drawer--h5[data-v-561f0ce8] .po-pay-table .el-table__cell{padding:4px 6px!important}.po-detail-drawer--h5 .po-logistics-toolbar__phone[data-v-561f0ce8]{flex:1 1 160px;min-width:140px}.po-detail-drawer--h5 .po-logistics-toolbar__carrier[data-v-561f0ce8]{flex:1 1 120px;min-width:110px}.po-detail-drawer--h5 .po-logistics-toolbar__btn[data-v-561f0ce8]{flex:1 1 100%;width:100%;min-height:40px}.po-detail-drawer--h5 .po-logistics-toolbar__links[data-v-561f0ce8]{border-top:1px dashed #edf0f4;margin-top:6px;padding-top:8px;justify-content:space-around}.po-detail-drawer--h5[data-v-561f0ce8] .audit-stamp{transform:scale(.6) rotate(-12deg)!important;transform-origin:top right;top:6px!important;right:6px!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-timeline{padding-left:6px!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-timeline-item__content{font-size:12px;line-height:1.5}.po-detail-drawer--h5[data-v-561f0ce8] .el-timeline-item__timestamp{font-size:11px!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-alert--error{padding:8px 10px!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-alert__title{font-size:13px!important}.po-detail-drawer--h5[data-v-561f0ce8] .el-alert__content .text-sm{font-size:12px!important}.create-order-dialog--h5[data-v-561f0ce8] .create-order-steps{flex-wrap:wrap;gap:4px}.create-order-dialog--h5[data-v-561f0ce8] .create-order-steps .el-step__title{font-size:11px!important}.create-order-dialog--h5[data-v-561f0ce8] .create-order-dialog__inner .el-row{margin-left:0!important;margin-right:0!important}.create-order-dialog--h5[data-v-561f0ce8] .create-order-dialog__inner .el-col{flex:0 0 100%!important;max-width:100%!important;padding:0!important;margin-bottom:8px}.create-order-dialog--h5[data-v-561f0ce8] .create-order-dialog__inner .el-form-item__label{font-size:12px!important}.create-order-dialog--h5[data-v-561f0ce8] .el-dialog__footer .el-button{padding:10px 16px!important;font-size:13px!important}
diff --git a/server/public/admin/assets/order_list_h5-IsgD664i.js b/server/public/admin/assets/order_list_h5-IsgD664i.js
deleted file mode 100644
index 3b92b22f..00000000
--- a/server/public/admin/assets/order_list_h5-IsgD664i.js
+++ /dev/null
@@ -1,2 +0,0 @@
-const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-B2Gq7mEa.js","assets/element-plus-lurTijPg.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-Cy3x75Vy.js","assets/index-BFUnjLFW.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-cWYbZtDX.css","assets/perm-CJJhXl65.js","assets/DailyMatrix-BHuAWKao.js","assets/picker-C170hwS0.js","assets/index-BxS92JVe.js","assets/index-B3imPWFk.css","assets/index-BtsZldaS.js","assets/index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js","assets/index-CovX5DnH.js","assets/index-D0f1Mn00.css","assets/index-BNAGRG93.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-BkhkKLmC.js","assets/index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-ZqPYlotr.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-BOMtPRQZ.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DzJJzaM1.js","assets/RecordingPlaybackBlock-DYJipyZI.js","assets/RecordingVideoPlayer-BIj4v6nv.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-B6HXWOUi.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-DlhE5I9o.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-DsATAQst.js","assets/doctor-doxmoseM.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-9OkFWBf6.js","assets/patient-DV343GH9.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-DHSj_BWd.js","assets/PatientOrderList-Dx28GIXs.css","assets/index-CTjLDnjc.js","assets/index-DyOCxSh0.js","assets/medicine-DAGybju-.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,Z as yn,i as bn,W 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,S 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-lurTijPg.js";import{_ as Wn}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.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-BL8k8rcl.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-Cy3x75Vy.js";import ki from"./html2canvas-QH1iLAAe.js";import{u as hi,i as T,m as wi,_ as Si}from"./index-BFUnjLFW.js";import{d as Vi}from"./department-EpA31U4M.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-B2Gq7mEa.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)||f
Number(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/order_list_h5-TyQ1kut8.css b/server/public/admin/assets/order_list_h5-TyQ1kut8.css
deleted file mode 100644
index a07df3cf..00000000
--- a/server/public/admin/assets/order_list_h5-TyQ1kut8.css
+++ /dev/null
@@ -1 +0,0 @@
-@charset "UTF-8";.prescription-order-page[data-v-f5f53a70]{margin:0 auto}.po-page-title[data-v-f5f53a70]{margin:0 0 6px;font-size:20px;font-weight:600;color:var(--el-text-color-primary);letter-spacing:.02em}.po-page-desc[data-v-f5f53a70]{margin:0;font-size:13px;line-height:1.55;color:var(--el-text-color-secondary)}.po-filter-card[data-v-f5f53a70]{border-radius:8px}.po-filter-card[data-v-f5f53a70] .el-card__body{padding-bottom:12px}.po-list-stats[data-v-f5f53a70]{--po-stat-order-a: color-mix(in srgb, var(--el-color-primary) 12%, white);--po-stat-order-b: color-mix(in srgb, var(--el-color-primary) 5%, transparent);--po-stat-pay-a: color-mix(in srgb, #10b981 10%, white);--po-stat-pay-b: color-mix(in srgb, #10b981 4%, transparent)}.po-stat-surface[data-v-f5f53a70]{transition:box-shadow .2s ease,border-color .2s ease}.po-stat-surface[data-v-f5f53a70]:hover{box-shadow:0 10px 28px -12px #0f172a2e;border-color:color-mix(in srgb,var(--el-color-primary) 22%,var(--el-border-color))}.po-stat-surface--order[data-v-f5f53a70]{background:linear-gradient(135deg,var(--po-stat-order-a) 0%,#fff 48%,var(--po-stat-order-b) 100%)}.po-stat-surface--pay[data-v-f5f53a70]{background:linear-gradient(135deg,var(--po-stat-pay-a) 0%,#fff 48%,var(--po-stat-pay-b) 100%)}.po-stat-deco--o[data-v-f5f53a70]{background:radial-gradient(circle,color-mix(in srgb,var(--el-color-primary) 45%,transparent) 0%,transparent 70%)}.po-stat-deco--p[data-v-f5f53a70]{background:radial-gradient(circle,color-mix(in srgb,#10b981 40%,transparent) 0%,transparent 70%)}.stat-icon-wrap[data-v-f5f53a70]{box-shadow:inset 0 1px #ffffffb3}.po-table-card[data-v-f5f53a70]{border-radius:8px}.po-table-card[data-v-f5f53a70] .el-card__body{padding-top:16px}.po-table-toolbar[data-v-f5f53a70]{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.po-table-toolbar__title-wrap[data-v-f5f53a70]{display:flex;align-items:baseline;gap:10px}.po-table-title[data-v-f5f53a70]{font-size:16px;font-weight:600}.po-focus-board[data-v-f5f53a70]{display:grid;grid-template-columns:repeat(4,minmax(106px,1fr));gap:8px;width:min(100%,520px)}.po-focus-board__item[data-v-f5f53a70]{display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:8px;border:1px solid var(--el-border-color-lighter);background:#fff;padding:7px 10px;cursor:pointer;transition:all .18s ease}.po-focus-board__item[data-v-f5f53a70]:hover{transform:translateY(-1px);box-shadow:0 8px 20px -14px #0f172a61}.po-focus-board__item.is-active[data-v-f5f53a70]{box-shadow:0 0 0 2px color-mix(in srgb,var(--el-color-primary) 24%,transparent) inset;transform:translateY(-1px)}.po-focus-board__label[data-v-f5f53a70]{font-size:12px;color:var(--el-text-color-secondary)}.po-focus-board__value[data-v-f5f53a70]{font-size:18px;line-height:1;font-weight:700;color:var(--el-text-color-primary);font-variant-numeric:tabular-nums}.po-focus-board__item.is-pending-rx[data-v-f5f53a70]{border-color:color-mix(in srgb,var(--el-color-warning) 34%,#fff);background:color-mix(in srgb,var(--el-color-warning-light-9) 66%,#fff)}.po-focus-board__item.is-pending-pay[data-v-f5f53a70]{border-color:color-mix(in srgb,#2563eb 30%,#fff);background:color-mix(in srgb,#dbeafe 62%,#fff)}.po-focus-board__item.is-pending-ship[data-v-f5f53a70]{border-color:color-mix(in srgb,var(--el-color-primary) 30%,#fff);background:color-mix(in srgb,var(--el-color-primary-light-9) 64%,#fff)}.po-focus-board__item.is-risk[data-v-f5f53a70]{border-color:color-mix(in srgb,var(--el-color-danger) 34%,#fff);background:color-mix(in srgb,var(--el-color-danger-light-9) 66%,#fff)}@media(max-width:1024px){.po-focus-board[data-v-f5f53a70]{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}}.po-data-table[data-v-f5f53a70] th.el-table__cell{font-weight:600;background:var(--el-fill-color-light)!important}.po-order-no-cell[data-v-f5f53a70]{display:flex;flex-direction:column;gap:4px}.po-order-no-main[data-v-f5f53a70]{font-weight:600;color:var(--el-text-color-primary);line-height:1.35}.po-order-no-sub[data-v-f5f53a70]{display:inline-flex;align-items:center;gap:6px;font-size:12px}.po-status-tag[data-v-f5f53a70]{font-weight:600}.po-status-tag.is-focus[data-v-f5f53a70]{box-shadow:0 0 0 1px color-mix(in srgb,var(--el-color-warning) 24%,transparent) inset}.po-status-tag.is-risk[data-v-f5f53a70]{box-shadow:0 0 0 1px color-mix(in srgb,var(--el-color-danger) 30%,transparent) inset}.po-data-table[data-v-f5f53a70] .el-table__row.po-row-focus>td.el-table__cell{background:color-mix(in srgb,var(--el-color-warning-light-9) 38%,#fff)!important}.po-data-table[data-v-f5f53a70] .el-table__row.po-row-risk>td.el-table__cell{background:color-mix(in srgb,var(--el-color-danger-light-9) 42%,#fff)!important}.po-data-table[data-v-f5f53a70] .el-table__row.po-row-done>td.el-table__cell{background:color-mix(in srgb,var(--el-color-success-light-9) 24%,#fff)!important}.po-detail-drawer[data-v-f5f53a70] .el-drawer__header{margin-bottom:0;padding:16px 24px;border-bottom:1px solid var(--el-border-color-lighter)}.stat-card[data-v-f5f53a70]{border-radius:8px}.stat-title[data-v-f5f53a70]{font-weight:500}.po-panel[data-v-f5f53a70]{border-radius:8px;transition:all .3s}.po-panel[data-v-f5f53a70] .el-card__header{padding:14px 16px;background-color:var(--el-bg-color-page);border-bottom:1px solid var(--el-border-color-lighter)}.po-panel[data-v-f5f53a70] .el-card__body{padding:16px}.po-desc[data-v-f5f53a70] .el-descriptions__label{width:120px;color:var(--el-text-color-regular)}.po-audit-remark[data-v-f5f53a70]{color:var(--el-color-danger);font-weight:600;white-space:pre-wrap;word-break:break-word}.rx-wrap[data-v-f5f53a70]{min-height:160px;background:#f5f6f8;padding:12px;margin:-20px}.rx-statusbar[data-v-f5f53a70]{display:flex;align-items:center;gap:8px;padding:0 4px 8px}.rx-status[data-v-f5f53a70]{margin-bottom:10px;padding:8px 12px;border-radius:4px;font-size:13px;line-height:1.6}.rx-status-danger[data-v-f5f53a70]{background:#fef0f0;color:#b91c1c;border:1px solid #fecaca}.rx-paper[data-v-f5f53a70]{width:210mm;min-height:297mm;margin:0 auto;background:#fff;box-sizing:border-box;padding:8mm 10mm;color:#1f1f1f;font-size:13px;line-height:1.5;font-family:Microsoft YaHei,PingFang SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-shadow:0 0 0 1px #d6d6d6,0 6px 24px #0000000f;overflow:visible}.rx-notice[data-v-f5f53a70]{display:flex;flex-direction:column;align-items:stretch;gap:10px;background:#f3f4f6;border:1px solid #e5e7eb;padding:14px 12px;border-radius:2px;font-size:12px;color:#1f1f1f;margin-bottom:6px}.rx-notice .rx-notice-text[data-v-f5f53a70]{flex:none;width:100%;line-height:1.55;word-break:break-word}.rx-notice .rx-notice-meta[data-v-f5f53a70]{display:flex;flex-flow:row nowrap;align-items:center;gap:4px 14px;width:100%;box-sizing:border-box;margin-top:4px;padding:8px 2px 2px;border-top:1px solid #e5e7eb;font-size:10px;line-height:2.35;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.rx-notice .rx-notice-meta .rx-meta-item[data-v-f5f53a70]{display:inline-flex;flex:0 0 auto;align-items:baseline;gap:2px;min-width:0;padding:0;margin:0;background:transparent;border:none;border-radius:0;white-space:nowrap;line-height:2.35;height:20px}.rx-notice .rx-notice-meta .rx-meta-item[data-v-f5f53a70]:not(:first-child){border-left:1px solid #d1d5db;padding-left:14px;margin-left:2px;line-height:2.35}.rx-notice .rx-notice-meta .rx-meta-label[data-v-f5f53a70]{font-weight:600;color:#6b7280;line-height:1.35;flex-shrink:0}.rx-notice .rx-notice-meta .rx-meta-label[data-v-f5f53a70]:after{content:":";font-weight:500;color:#9ca3af}.rx-notice .rx-notice-meta .rx-meta-value[data-v-f5f53a70]{color:#111827;line-height:1.35;font-variant-numeric:tabular-nums}.rx-title[data-v-f5f53a70]{text-align:center;font-size:28px;font-weight:700;line-height:1.2;margin:10px 0 35px;letter-spacing:.08em}.rx-info[data-v-f5f53a70]{border:1px solid #c8c8c8;border-bottom:none}.rx-info-row[data-v-f5f53a70]{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #c8c8c8}.rx-info-row-full[data-v-f5f53a70]{grid-template-columns:1fr}.rx-info-cell[data-v-f5f53a70]{display:flex;align-items:center;gap:6px;padding:16px 10px;font-size:13px;border-right:1px solid #c8c8c8;min-height:32px}.rx-info-cell[data-v-f5f53a70]:last-child{border-right:none}.rx-info-cell .rx-key[data-v-f5f53a70]{color:#1f1f1f;flex-shrink:0}.rx-info-cell .rx-val[data-v-f5f53a70]{flex:1;min-width:0;word-break:break-all}.rx-rp[data-v-f5f53a70]{position:relative;border-left:1px solid #c8c8c8;border-right:1px solid #c8c8c8;padding:8px 10px 16px;overflow:hidden;box-sizing:border-box;width:100%}.rx-watermark[data-v-f5f53a70]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:88px;font-weight:700;color:#0000000f;transform:rotate(-22deg);letter-spacing:.18em;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:0}.rx-rp-head[data-v-f5f53a70]{display:grid;grid-template-columns:36px 1fr;align-items:end;-moz-column-gap:8px;column-gap:8px;border-bottom:1px solid #d4d4d4;margin-bottom:6px;position:relative;z-index:1;width:100%;box-sizing:border-box;padding:10px}.rx-rp-label[data-v-f5f53a70]{font-size:16px;font-weight:700;color:#1f1f1f;line-height:1;padding-bottom:15px}.rx-rp-cols-head[data-v-f5f53a70]{display:grid;grid-template-columns:1fr 1fr;-moz-column-gap:24px;column-gap:24px;width:100%;box-sizing:border-box;min-width:0}.rx-rp-col-head[data-v-f5f53a70]{display:grid;grid-template-columns:1fr 64px;-moz-column-gap:8px;column-gap:8px;font-size:13px;color:#1f1f1f;min-width:0;padding-bottom:15px}.rx-rp-col-head>span[data-v-f5f53a70]:last-child{text-align:right}.rx-herbs[data-v-f5f53a70]{padding-left:44px;display:grid;grid-template-columns:1fr 1fr;-moz-column-gap:24px;column-gap:24px;row-gap:6px;position:relative;z-index:1;width:100%;box-sizing:border-box}.rx-herb-cell[data-v-f5f53a70]{display:grid;grid-template-columns:1fr 64px;-moz-column-gap:8px;column-gap:8px;font-size:13px;line-height:2.5;min-width:0}.rx-herb-name[data-v-f5f53a70]{color:#1f1f1f;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rx-herb-total[data-v-f5f53a70]{color:#1f1f1f;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.rx-text[data-v-f5f53a70]{border:1px solid #c8c8c8;border-top:none;padding:10px 12px;font-size:13px;line-height:1.85}.rx-text p[data-v-f5f53a70]{margin:0}.rx-text .rx-text-warn[data-v-f5f53a70]{color:#d72424;font-weight:600}.rx-bottom[data-v-f5f53a70]{border:1px solid #c8c8c8;border-top:none}.rx-bot-row[data-v-f5f53a70]{display:grid;border-bottom:1px solid #c8c8c8}.rx-bot-row[data-v-f5f53a70]:last-child{border-bottom:none}.rx-bot-row-1[data-v-f5f53a70]{grid-template-columns:1.6fr .6fr .6fr .6fr .6fr 1.7fr .95fr 1.25fr;min-height:70px}.rx-bot-row-2[data-v-f5f53a70]{grid-template-columns:repeat(6,1fr)}.rx-hospital-row[data-v-f5f53a70]{display:flex;flex-direction:column;align-items:left;justify-content:left;gap:2px;padding:10px 12px;min-height:52px;text-align:left}.rx-hospital-line[data-v-f5f53a70]{font-size:12px;color:#374151;line-height:1.6}.rx-bot-cell[data-v-f5f53a70]{border-right:1px solid #c8c8c8;padding:6px 10px;font-size:12px;color:#1f1f1f;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;min-height:32px;box-sizing:border-box;line-height:2.5}.rx-bot-cell[data-v-f5f53a70]:last-child{border-right:none}.rx-bot-stack[data-v-f5f53a70]{flex-direction:column;align-items:flex-start;justify-content:flex-start}.rx-bot-label[data-v-f5f53a70]{font-size:13px;color:#1f1f1f;margin-bottom:4px}.rx-bot-label--doctor[data-v-f5f53a70]{flex-shrink:0;margin-bottom:0;margin-right:6px;line-height:1.2;align-self:center}.rx-bot-doctor[data-v-f5f53a70]{flex-direction:row;align-items:center;flex-wrap:nowrap}.rx-bot-doctor .rx-bot-doctor-body[data-v-f5f53a70]{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px;min-height:0}.rx-bot-doctor .rx-bot-doctor-name[data-v-f5f53a70]{font-size:13px;color:#1f1f1f;line-height:1.2;white-space:nowrap}.rx-bot-doctor .rx-bot-sign-img[data-v-f5f53a70]{flex-shrink:0;max-height:40px;max-width:110px;-o-object-fit:contain;object-fit:contain}.rx-bot-meta[data-v-f5f53a70]{flex-wrap:nowrap}.rx-bot-meta .rx-bot-meta-key[data-v-f5f53a70]{color:#1f1f1f;margin-right:6px;white-space:nowrap;flex-shrink:0;line-height:1.4}.rx-bot-meta .rx-bot-meta-val[data-v-f5f53a70]{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;line-height:2.5}.rx-fee[data-v-f5f53a70]{font-size:13px;line-height:1.4;padding:8px 10px}.rx-fee .rx-fee-key[data-v-f5f53a70]{color:#1f1f1f;margin-right:6px;white-space:nowrap}.rx-fee .rx-fee-val[data-v-f5f53a70]{font-variant-numeric:tabular-nums;white-space:nowrap}.rx-fee-total[data-v-f5f53a70]{font-weight:700;background:#fafafa}.rx-fee-total .rx-fee-val[data-v-f5f53a70]{font-weight:700}.rx-audit[data-v-f5f53a70]{margin:12px auto 0;max-width:210mm;padding:8px 12px;background:#fafafa;border:1px dashed #d4d4d4;color:#6b7280;font-size:12px;line-height:1.6;border-radius:4px}.audit-stamp[data-v-f5f53a70]{position:absolute;top:18px;right:-14px;width:72px;height:72px;border:3px solid currentColor;border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(20deg);opacity:.8;pointer-events:none;z-index:10;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:700;font-size:13px;letter-spacing:1px;box-shadow:inset 0 0 0 1px #ffffff80}.audit-stamp[data-v-f5f53a70]:after{content:"";position:absolute;top:4px;left:4px;right:4px;bottom:4px;border:1px double currentColor;border-radius:50%;opacity:.6}.audit-stamp .stamp-inner[data-v-f5f53a70]{text-align:center;line-height:1.1}.stamp-pass[data-v-f5f53a70]{color:var(--el-color-success)}.stamp-reject[data-v-f5f53a70]{color:var(--el-color-danger)}.create-order-dialog[data-v-f5f53a70] .el-dialog__header{padding:20px 24px 12px;margin-right:0}.create-order-dialog[data-v-f5f53a70] .el-dialog__title{font-size:18px;font-weight:600;letter-spacing:.02em}.create-order-dialog[data-v-f5f53a70] .el-dialog__body{padding:8px 24px 20px;max-height:calc(100vh - 200px);overflow:hidden}.create-order-dialog[data-v-f5f53a70] .el-dialog__footer{padding:16px 24px 20px;border-top:1px solid var(--el-border-color-lighter);background:var(--el-fill-color-blank)}.create-order-dialog__inner[data-v-f5f53a70]{display:flex;flex-direction:column;gap:0}.create-order-rx-card[data-v-f5f53a70]{border-radius:10px;border:1px solid var(--el-color-primary-light-5);background:linear-gradient(135deg,var(--el-color-primary-light-9) 0%,var(--el-fill-color-blank) 100%);padding:16px 18px;margin-bottom:20px;box-shadow:0 1px 2px #0000000a}.create-order-rx-card__head[data-v-f5f53a70]{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-bottom:10px}.create-order-rx-card__badge[data-v-f5f53a70]{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;color:#fff;background:var(--el-color-primary);letter-spacing:.04em}.create-order-rx-card__meta[data-v-f5f53a70]{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:14px;color:var(--el-text-color-regular)}.create-order-rx-card__id[data-v-f5f53a70]{font-weight:600;color:var(--el-text-color-primary)}.create-order-rx-card__sn[data-v-f5f53a70]{padding:2px 8px;border-radius:4px;background:var(--el-fill-color);font-size:13px;color:var(--el-text-color-secondary)}.create-order-rx-card__patient[data-v-f5f53a70]{font-weight:500;color:var(--el-text-color-primary)}.create-order-rx-card__herbs[data-v-f5f53a70]{font-size:13px;line-height:1.55;color:var(--el-text-color-secondary);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;cursor:default;padding-top:2px}.create-order-steps[data-v-f5f53a70]{margin-bottom:8px;padding:8px 12px 4px}.create-order-steps[data-v-f5f53a70] .el-step__title{font-size:14px;font-weight:500;line-height:1.4}.create-order-steps[data-v-f5f53a70] .el-step__description{font-size:12px;margin-top:4px;line-height:1.35;padding-right:6px}.create-order-steps[data-v-f5f53a70] .el-step__head{padding-right:8px}.create-order-steps[data-v-f5f53a70] .el-step.is-horizontal .el-step__line{top:14px}.create-order-step-lead[data-v-f5f53a70]{margin:0 0 20px;padding:12px 16px;font-size:13px;line-height:1.6;color:var(--el-text-color-secondary);background:var(--el-fill-color-light);border-radius:8px;border-left:3px solid var(--el-color-primary-light-5)}.create-order-step-panel[data-v-f5f53a70]{max-height:min(56vh,480px);overflow-y:auto;overflow-x:hidden;padding:4px 8px 12px 4px;margin-right:-4px}.create-order-step-panel__row-after-bar[data-v-f5f53a70]{margin-top:20px}.create-order-unit-suffix[data-v-f5f53a70]{flex-shrink:0;font-size:13px;color:var(--el-text-color-secondary);padding-left:4px}.create-order-footer[data-v-f5f53a70]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;width:100%}.create-order-footer__hint[data-v-f5f53a70]{flex:1;min-width:200px;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.5;color:var(--el-text-color-secondary)}.create-order-footer__step[data-v-f5f53a70]{color:var(--el-text-color-placeholder)}.create-order-footer__warn[data-v-f5f53a70]{color:var(--el-color-warning);font-weight:500}.create-order-footer__actions[data-v-f5f53a70]{flex-shrink:0;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.create-order-deposit-bar[data-v-f5f53a70]{display:flex;align-items:stretch;border-radius:10px;border:1px solid var(--el-border-color-lighter);overflow:hidden;font-size:13px;box-shadow:0 1px 2px #0000000a}.create-order-deposit-bar__cell[data-v-f5f53a70]{flex:1;padding:16px 20px;display:flex;flex-direction:column;gap:6px;background:var(--el-fill-color-light)}.create-order-deposit-bar__cell strong[data-v-f5f53a70]{font-size:20px;font-weight:600;color:var(--el-text-color-primary);letter-spacing:.02em}.create-order-deposit-bar__label[data-v-f5f53a70]{font-size:13px;color:var(--el-text-color-secondary)}.create-order-deposit-bar__sub[data-v-f5f53a70]{font-size:12px;color:var(--el-text-color-placeholder)}.create-order-deposit-bar__sep[data-v-f5f53a70]{width:1px;background:var(--el-border-color-lighter);flex-shrink:0}.create-order-deposit-bar.is-ok .create-order-deposit-bar__cell:last-child strong[data-v-f5f53a70]{color:var(--el-color-success)}.create-order-deposit-bar.is-warn .create-order-deposit-bar__cell:last-child strong[data-v-f5f53a70]{color:var(--el-color-danger)}.create-order-pay-hint[data-v-f5f53a70]{font-size:12px;line-height:1.55;margin-top:8px;color:var(--el-text-color-secondary)}.create-order-form[data-v-f5f53a70] .el-form-item{margin-bottom:20px}.create-order-form[data-v-f5f53a70] .el-form-item__label{font-size:14px;padding-right:12px}.create-order-form[data-v-f5f53a70] .el-input__inner,.create-order-form[data-v-f5f53a70] .el-textarea__inner{font-size:14px}.create-order-form-item--inline-num[data-v-f5f53a70] .el-form-item__content{line-height:normal}.po-diagnosis-creator-dept-breadcrumb[data-v-f5f53a70] .el-breadcrumb__item{display:inline-flex;float:none}.po-diagnosis-creator-dept-breadcrumb[data-v-f5f53a70] .el-breadcrumb__separator{margin:0 2px 0 4px}.prescription-order-h5.po-h5-app[data-v-f5f53a70]{--po-h5-ink: #0f172a;--po-h5-muted: #64748b;--po-h5-surface: rgba(255, 255, 255, .82);--po-h5-elevated: 0 14px 44px -18px rgba(15, 23, 42, .22), 0 4px 14px -6px rgba(15, 23, 42, .08);--po-h5-pill-idle: rgba(255, 255, 255, .72);box-sizing:border-box;min-height:100vh;min-height:100dvh;padding:max(10px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) max(28px,env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));background:radial-gradient(100% 70% at 0% 0%,color-mix(in srgb,var(--el-color-primary) 16%,transparent),transparent 55%),radial-gradient(80% 50% at 100% 8%,rgba(45,212,191,.11),transparent 52%),radial-gradient(60% 40% at 50% 100%,rgba(251,191,36,.06),transparent 45%),linear-gradient(180deg,#f1f5f9,#e2e8f0 55%,#f8fafc);font-size:15px;line-height:1.5;color:var(--po-h5-ink);-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain}.po-h5-hero[data-v-f5f53a70]{margin-bottom:14px;padding:4px 2px 2px}.po-h5-hero__title[data-v-f5f53a70]{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;color:var(--po-h5-ink)}.po-h5-hero__sub[data-v-f5f53a70]{margin:6px 0 0;font-size:.8125rem;line-height:1.45;color:var(--po-h5-muted);max-width:42ch}.prescription-order-h5.po-h5-app .po-h5-surface[data-v-f5f53a70]{border-radius:20px!important;border:1px solid rgba(255,255,255,.55)!important;background:var(--po-h5-surface)!important;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);box-shadow:var(--po-h5-elevated)!important}.prescription-order-h5.po-h5-app .po-h5-surface--list[data-v-f5f53a70] .el-card__body{padding-top:14px!important}.prescription-order-h5.po-h5-app .po-h5-list-head[data-v-f5f53a70]{margin-bottom:4px;padding-bottom:12px;border-bottom:1px solid rgba(15,23,42,.06)}.prescription-order-h5.po-h5-app[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>span:first-child{background:color-mix(in srgb,#fff 94%,var(--el-color-primary-light-9))!important;-webkit-backdrop-filter:none;backdrop-filter:none}.prescription-order-h5.po-h5-app .po-h5-surface--chips[data-v-f5f53a70]{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb,#fff 94%,var(--el-color-primary-light-9))!important}.prescription-order-h5.po-h5-app[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>div{border-radius:9999px!important;padding:10px 16px!important;font-size:13px!important;font-weight:600;border:1px solid rgba(15,23,42,.1)!important;background:#ffffffeb!important;color:#334155!important;box-shadow:0 1px 3px #0f172a0f;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.prescription-order-h5.po-h5-app[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>div span{color:inherit!important}.prescription-order-h5.po-h5-app[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>div.bg-primary{border-color:transparent!important;background:var(--el-color-primary)!important;color:#fff!important;box-shadow:0 10px 26px -14px color-mix(in srgb,var(--el-color-primary) 62%,transparent)!important}.prescription-order-h5.po-h5-app .po-filter-toggle[data-v-f5f53a70]{border-radius:16px!important;border:1px solid rgba(255,255,255,.55)!important;background:linear-gradient(140deg,color-mix(in srgb,#fff 78%,var(--el-color-primary-light-9)),color-mix(in srgb,var(--el-color-primary-light-9) 40%,#fff))!important;box-shadow:0 10px 28px -18px #0f172a38}.prescription-order-h5.po-h5-app .po-table-title[data-v-f5f53a70]{font-size:1.125rem!important;font-weight:700!important;letter-spacing:-.02em;color:var(--po-h5-ink)!important}.prescription-order-h5.po-h5-app .po-table-hint[data-v-f5f53a70]{font-size:13px!important;color:var(--po-h5-muted)!important}.prescription-order-h5.po-h5-app .po-focus-board__item[data-v-f5f53a70]{flex-direction:column;align-items:flex-start;justify-content:center;min-height:4.5rem;padding:12px 14px!important;border-radius:18px!important;border:none!important;box-shadow:0 10px 28px -18px #0f172a40;gap:6px}.prescription-order-h5.po-h5-app .po-focus-board__label[data-v-f5f53a70]{font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--po-h5-muted)}.prescription-order-h5.po-h5-app .po-focus-board__value[data-v-f5f53a70]{font-size:1.35rem}.prescription-order-h5.po-h5-app .po-focus-board__item.is-active[data-v-f5f53a70]{box-shadow:0 0 0 2px color-mix(in srgb,var(--el-color-primary) 35%,transparent) inset,0 12px 32px -16px #0f172a47}.prescription-order-h5.po-h5-app .po-card[data-v-f5f53a70]{border-radius:22px!important;border:1px solid rgba(255,255,255,.55)!important;background:color-mix(in srgb,#fff 92%,transparent)!important;backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);box-shadow:0 20px 44px -34px #0f172a73!important;padding:16px!important}.prescription-order-h5.po-h5-app .po-card__order-no-main[data-v-f5f53a70]{font-size:15px!important}.prescription-order-h5.po-h5-app .po-card__label[data-v-f5f53a70]{font-size:12px!important;color:var(--po-h5-muted)!important}.prescription-order-h5.po-h5-app .po-card__value[data-v-f5f53a70]{font-size:15px!important}.prescription-order-h5.po-h5-app .po-stat-surface[data-v-f5f53a70]{border-radius:18px!important;border:1px solid rgba(255,255,255,.45)!important;box-shadow:0 12px 36px -22px #0f172a47!important}.prescription-order-h5.po-h5-app .po-card__amount[data-v-f5f53a70]{font-size:1.05rem!important}@media(prefers-reduced-motion:reduce){.prescription-order-h5.po-h5-app .po-card[data-v-f5f53a70]:active{transform:none!important}.prescription-order-h5.po-h5-app[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>div{transition:none}}.prescription-order-h5[data-v-f5f53a70] .el-card .flex.flex-col.gap-3{gap:10px}.prescription-order-h5[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap{flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.prescription-order-h5[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap::-webkit-scrollbar{display:none}.prescription-order-h5[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>span:first-child{position:sticky;left:0;background:#fff;z-index:2;padding-right:4px}.prescription-order-h5[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>div{flex-shrink:0;padding:6px 12px!important;font-size:12px!important}.prescription-order-h5[data-v-f5f53a70] .el-card{border-radius:12px}.prescription-order-h5[data-v-f5f53a70] .el-card__body{padding:12px!important}.prescription-order-h5 .po-list-stats[data-v-f5f53a70]{grid-template-columns:1fr!important;gap:10px!important;margin-bottom:12px!important}.prescription-order-h5 .po-stat-surface[data-v-f5f53a70]{padding:12px 14px!important}.prescription-order-h5 .po-stat-surface .text-2xl[data-v-f5f53a70],.prescription-order-h5 .po-stat-surface .sm\:text-\[28px\][data-v-f5f53a70]{font-size:22px!important}.prescription-order-h5 .ls-form[data-v-f5f53a70]{display:flex;flex-direction:column;gap:10px}.prescription-order-h5[data-v-f5f53a70] .ls-form .el-form-item{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important}.prescription-order-h5[data-v-f5f53a70] .ls-form .el-form-item__label{width:72px!important;font-size:12px!important;color:#6b7280;padding-right:6px!important}.prescription-order-h5[data-v-f5f53a70] .ls-form .el-form-item__content{flex:1 1 0!important;min-width:0!important}.prescription-order-h5[data-v-f5f53a70] .ls-form .el-form-item:last-child .el-form-item__content{justify-content:flex-end;gap:8px}.prescription-order-h5 .po-table-toolbar[data-v-f5f53a70]{gap:10px;margin-bottom:10px}.prescription-order-h5 .po-table-title[data-v-f5f53a70]{font-size:15px}.prescription-order-h5 .po-focus-board[data-v-f5f53a70]{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.prescription-order-h5 .po-focus-board__item[data-v-f5f53a70]{padding:8px 10px}.prescription-order-h5 .po-focus-board__value[data-v-f5f53a70]{font-size:16px}.prescription-order-h5 .po-card-list[data-v-f5f53a70]{display:flex;flex-direction:column;gap:12px}.prescription-order-h5 .po-card[data-v-f5f53a70]{background:#fff;border-radius:12px;border:1px solid #edf0f4;padding:12px;box-shadow:0 2px 6px -3px #0f172a14;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer;overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5 .po-card[data-v-f5f53a70]:active{transform:scale(.995);box-shadow:0 4px 10px -4px #0f172a1f}.prescription-order-h5 .po-card[data-v-f5f53a70]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-card--focus[data-v-f5f53a70]{border-color:color-mix(in srgb,var(--el-color-warning) 40%,#fff);background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-warning-light-9) 50%,#fff),#fff 60%)}.prescription-order-h5 .po-card--risk[data-v-f5f53a70]{border-color:color-mix(in srgb,var(--el-color-danger) 44%,#fff);background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-danger-light-9) 55%,#fff),#fff 60%)}.prescription-order-h5 .po-card__head[data-v-f5f53a70]{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px dashed #edf0f4}.prescription-order-h5 .po-card__order-no-main[data-v-f5f53a70]{font-size:14px;font-weight:600;color:#0f172a;word-break:break-all;line-height:1.35}.prescription-order-h5 .po-card__tags[data-v-f5f53a70]{display:flex;align-items:center;gap:6px;flex-shrink:0}.prescription-order-h5 .po-card__id[data-v-f5f53a70]{font-size:11px;color:#9ca3af}.prescription-order-h5 .po-card__alert[data-v-f5f53a70]{display:flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--el-color-danger-light-9) 70%,#fff);color:#dc2626;font-size:12px;font-weight:600;border-radius:8px;padding:6px 10px;margin-bottom:8px}.prescription-order-h5 .po-card__row[data-v-f5f53a70]{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.prescription-order-h5 .po-card__field[data-v-f5f53a70]{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 0}.prescription-order-h5 .po-card__field--right[data-v-f5f53a70]{text-align:right;align-items:flex-end}.prescription-order-h5 .po-card__label[data-v-f5f53a70]{font-size:11px;color:#9ca3af;line-height:1.2}.prescription-order-h5 .po-card__value[data-v-f5f53a70]{font-size:13px;color:#111827;font-weight:500;word-break:break-all;line-height:1.35}.prescription-order-h5 .po-card__amount[data-v-f5f53a70]{color:#ef4444!important;font-size:15px!important;font-weight:700!important}.prescription-order-h5 .po-card__time[data-v-f5f53a70]{font-size:12px!important;color:#6b7280!important;font-weight:400!important}.prescription-order-h5 .po-card__tags-row[data-v-f5f53a70]{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed #edf0f4}.prescription-order-h5 .po-card__meta[data-v-f5f53a70]{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;font-size:11px;color:#6b7280}.prescription-order-h5 .po-card__meta-time[data-v-f5f53a70]{margin-left:auto}.prescription-order-h5 .po-card__actions[data-v-f5f53a70]{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #f1f3f6}.prescription-order-h5 .po-card__actions[data-v-f5f53a70] .el-button{margin-left:0;font-size:13px;padding:8px 14px;min-height:36px;border-radius:8px;touch-action:manipulation}.prescription-order-h5 .po-card__actions[data-v-f5f53a70] .el-button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .flex.justify-end.mt-4[data-v-f5f53a70]{justify-content:center!important}.prescription-order-h5[data-v-f5f53a70] .el-pagination{--el-pagination-button-height: 30px;--el-pagination-button-width: 30px;font-size:12px;flex-wrap:wrap;justify-content:center}.prescription-order-h5[data-v-f5f53a70] .el-pagination .el-pagination__sizes{display:none}.po-detail-drawer--h5[data-v-f5f53a70] .el-drawer__header{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:6px!important;padding:10px 10px 10px 14px!important;margin-bottom:0!important;border-bottom:1px solid #edf0f4}.po-detail-drawer--h5[data-v-f5f53a70] .el-drawer__header .po-detail-drawer-head{flex:1 1 auto;min-width:0;max-width:100%}.po-detail-drawer--h5[data-v-f5f53a70] .el-drawer__header .el-drawer__close-btn{flex-shrink:0;margin-top:2px}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-head{flex-direction:column;align-items:stretch!important;gap:10px}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-actions{margin-right:0!important;flex-wrap:wrap;gap:6px;width:100%}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-head .el-button{padding:6px 10px;font-size:12px}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-title{font-size:16px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body{padding:12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body .grid.grid-cols-1.md\:grid-cols-2,.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body .grid.grid-cols-1.lg\:grid-cols-2{grid-template-columns:1fr!important;gap:12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .stat-card .stat-value{font-size:16px!important}.po-detail-drawer--h5[data-v-f5f53a70] .stat-card .stat-title{font-size:11px!important}.po-detail-drawer--h5[data-v-f5f53a70] .stat-card .el-card__body{padding:10px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps.el-steps--vertical{padding-left:6px}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps .el-step__title{font-size:14px!important;font-weight:500;line-height:1.45!important;word-break:break-word}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps .el-step__description{font-size:12px!important;line-height:1.45!important;margin-top:4px!important;word-break:break-word;white-space:normal}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps .el-step__main{min-height:auto;padding-bottom:8px}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps .el-step:last-child .el-step__main{padding-bottom:0}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions{font-size:12px}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions__label{width:92px!important;font-size:12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions__cell{padding:8px 10px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-biz-diagnosis-id__btn{min-height:44px;padding:10px 18px!important;font-size:14px!important;font-weight:600}.po-detail-drawer--h5[data-v-f5f53a70] .po-biz-diagnosis-id__btn:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.po-detail-drawer--h5[data-v-f5f53a70] .audit-stamp{transform:scale(.72) rotate(-12deg)!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-table{font-size:12px}.po-h5-dialog[data-v-f5f53a70] .el-dialog__header{padding:12px 14px!important;margin-right:0!important}.po-h5-dialog[data-v-f5f53a70] .el-dialog__title{font-size:15px!important}.po-h5-dialog[data-v-f5f53a70] .el-dialog__body{padding:14px!important}.po-h5-dialog[data-v-f5f53a70] .el-dialog__footer{padding:10px 14px!important}.po-h5-dialog[data-v-f5f53a70] .el-form-item__label{font-size:12px!important}.po-h5-dialog[data-v-f5f53a70] .el-button{font-size:13px}.create-order-dialog--h5[data-v-f5f53a70] .el-dialog{margin:2vh auto!important;max-width:96vw}.create-order-dialog--h5[data-v-f5f53a70] .el-dialog__body{padding:10px 12px!important;max-height:82vh;overflow-y:auto}.create-order-dialog--h5[data-v-f5f53a70] .create-order-rx-card__head{flex-wrap:wrap;gap:6px}.create-order-dialog--h5[data-v-f5f53a70] .create-order-rx-card__meta{flex-wrap:wrap;font-size:12px}.create-order-dialog--h5[data-v-f5f53a70] .el-steps.is-simple{padding:0 4px!important}.create-order-dialog--h5[data-v-f5f53a70] .el-form--inline .el-form-item{width:100%;margin-right:0!important}.create-order-dialog--h5[data-v-f5f53a70] .el-col{flex:0 0 100%!important;max-width:100%!important}.po-h5-drawer[data-v-f5f53a70] .el-drawer__header{padding:10px 14px!important;margin-bottom:0!important;border-bottom:1px solid #edf0f4}.po-h5-drawer[data-v-f5f53a70] .el-drawer__title{font-size:15px}.po-h5-drawer[data-v-f5f53a70] .el-drawer__body{padding:12px!important;overflow-y:auto}.po-h5-drawer[data-v-f5f53a70] .el-table,.po-h5-drawer[data-v-f5f53a70] .el-descriptions{font-size:12px}.po-h5-drawer[data-v-f5f53a70] .el-descriptions__label{width:84px!important}.prescription-order-h5 .po-filter-toggle[data-v-f5f53a70]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;min-height:44px;background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-primary-light-9) 60%,#fff),#fff);border:1px solid color-mix(in srgb,var(--el-color-primary) 18%,#fff);border-radius:10px;margin-bottom:12px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5 .po-filter-toggle[data-v-f5f53a70]:active{transform:scale(.99);background:linear-gradient(135deg,color-mix(in srgb,var(--el-color-primary-light-9) 80%,#fff),#fff)}.prescription-order-h5 .po-filter-toggle[data-v-f5f53a70]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-filter-toggle__label[data-v-f5f53a70]{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--el-color-primary)}.prescription-order-h5 .po-filter-toggle__arrow[data-v-f5f53a70]{color:var(--el-color-primary);transition:transform .25s ease}.prescription-order-h5 .po-filter-toggle__arrow.is-open[data-v-f5f53a70]{transform:rotate(180deg)}.prescription-order-h5[data-v-f5f53a70] .ls-form .el-form-item:last-child{width:100%}.prescription-order-h5[data-v-f5f53a70] .ls-form .el-form-item:last-child .el-form-item__content{display:flex;gap:8px;width:100%}.prescription-order-h5[data-v-f5f53a70] .ls-form .el-form-item:last-child .el-form-item__content>.el-button{flex:1 1 0;margin:0!important}.prescription-order-h5 .po-table-toolbar[data-v-f5f53a70]{flex-direction:column;align-items:stretch!important}.prescription-order-h5 .po-table-toolbar__title-wrap[data-v-f5f53a70]{justify-content:space-between}.prescription-order-h5[data-v-f5f53a70] .po-workflow-steps-wrap{padding:10px!important;margin-bottom:12px!important}.prescription-order-h5[data-v-f5f53a70] .po-workflow-steps .el-step__title{font-size:13px!important;line-height:1.4!important}.prescription-order-h5[data-v-f5f53a70] .po-workflow-steps .el-step__description{font-size:11px!important;padding-right:0!important;margin-top:4px!important}.prescription-order-h5[data-v-f5f53a70] .po-workflow-steps .el-step__head{width:auto!important}.prescription-order-h5[data-v-f5f53a70] .po-detail-body .el-row{margin-left:-4px!important;margin-right:-4px!important}.prescription-order-h5[data-v-f5f53a70] .po-detail-body .el-row .el-col{padding-left:4px!important;padding-right:4px!important;margin-bottom:8px}.prescription-order-h5[data-v-f5f53a70] .po-detail-drawer--h5 .el-drawer__close-btn{font-size:20px!important;padding:8px!important}.prescription-order-h5[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>div{min-height:36px;display:flex!important;align-items:center;gap:4px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5[data-v-f5f53a70] .el-card .flex.items-center.gap-2.flex-wrap>div:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-focus-board__item[data-v-f5f53a70]{min-height:56px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.prescription-order-h5 .po-focus-board__item[data-v-f5f53a70]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.prescription-order-h5 .po-card__amount[data-v-f5f53a70],.prescription-order-h5 .po-card__id[data-v-f5f53a70],.prescription-order-h5[data-v-f5f53a70] .tabular-nums{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.prescription-order-h5[data-v-f5f53a70] .el-dropdown-menu__item{min-height:40px;line-height:40px;font-size:13px}.prescription-order-h5[data-v-f5f53a70] .el-input__wrapper,.prescription-order-h5[data-v-f5f53a70] .el-select__wrapper,.prescription-order-h5[data-v-f5f53a70] .el-date-editor.el-input{min-height:36px}@media(prefers-reduced-motion:reduce){.prescription-order-h5[data-v-f5f53a70] *,.prescription-order-h5[data-v-f5f53a70] *:before,.prescription-order-h5[data-v-f5f53a70] *:after,.po-detail-drawer--h5[data-v-f5f53a70] *,.po-detail-drawer--h5[data-v-f5f53a70] *:before,.po-detail-drawer--h5[data-v-f5f53a70] *:after,.po-h5-dialog[data-v-f5f53a70] *,.po-h5-dialog[data-v-f5f53a70] *:before,.po-h5-dialog[data-v-f5f53a70] *:after,.po-h5-drawer[data-v-f5f53a70] *,.po-h5-drawer[data-v-f5f53a70] *:before,.po-h5-drawer[data-v-f5f53a70] *:after,.create-order-dialog--h5[data-v-f5f53a70] *,.create-order-dialog--h5[data-v-f5f53a70] *:before,.create-order-dialog--h5[data-v-f5f53a70] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.prescription-order-h5 .po-card[data-v-f5f53a70],.prescription-order-h5 .po-filter-toggle[data-v-f5f53a70],.prescription-order-h5 .po-focus-board__item[data-v-f5f53a70],.po-detail-drawer--h5 .po-card[data-v-f5f53a70],.po-detail-drawer--h5 .po-filter-toggle[data-v-f5f53a70],.po-detail-drawer--h5 .po-focus-board__item[data-v-f5f53a70],.po-h5-dialog .po-card[data-v-f5f53a70],.po-h5-dialog .po-filter-toggle[data-v-f5f53a70],.po-h5-dialog .po-focus-board__item[data-v-f5f53a70],.po-h5-drawer .po-card[data-v-f5f53a70],.po-h5-drawer .po-filter-toggle[data-v-f5f53a70],.po-h5-drawer .po-focus-board__item[data-v-f5f53a70],.create-order-dialog--h5 .po-card[data-v-f5f53a70],.create-order-dialog--h5 .po-filter-toggle[data-v-f5f53a70],.create-order-dialog--h5 .po-focus-board__item[data-v-f5f53a70]{transition:none!important}.prescription-order-h5 .po-card[data-v-f5f53a70]:active,.prescription-order-h5 .po-filter-toggle[data-v-f5f53a70]:active,.po-detail-drawer--h5 .po-card[data-v-f5f53a70]:active,.po-detail-drawer--h5 .po-filter-toggle[data-v-f5f53a70]:active,.po-h5-dialog .po-card[data-v-f5f53a70]:active,.po-h5-dialog .po-filter-toggle[data-v-f5f53a70]:active,.po-h5-drawer .po-card[data-v-f5f53a70]:active,.po-h5-drawer .po-filter-toggle[data-v-f5f53a70]:active,.create-order-dialog--h5 .po-card[data-v-f5f53a70]:active,.create-order-dialog--h5 .po-filter-toggle[data-v-f5f53a70]:active{transform:none!important}}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body{padding:10px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body .px-6,.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body .px-5,.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body .py-4,.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body .pb-6{padding-left:10px!important;padding-right:10px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-head{flex-direction:column;align-items:stretch!important;gap:8px;width:100%}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-head>.po-detail-drawer-head-main{flex-wrap:wrap;gap:6px;min-width:0}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-head-main .ml-2,.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-head-main .ml-3{margin-left:0!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;margin-right:0!important;width:100%}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-drawer-actions .el-button{margin-left:0!important;width:100%;min-height:36px;font-size:12px!important;padding:6px 8px!important}.po-detail-drawer--h5[data-v-f5f53a70] .stat-card{padding:0!important}.po-detail-drawer--h5[data-v-f5f53a70] .stat-card .el-card__body{padding:8px 10px!important}.po-detail-drawer--h5[data-v-f5f53a70] .stat-card .stat-title{font-size:10px!important;margin-bottom:2px!important}.po-detail-drawer--h5[data-v-f5f53a70] .stat-card .stat-value{font-size:15px!important;line-height:1.2!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body>.el-row{margin-left:-4px!important;margin-right:-4px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-detail-body>.el-row .el-col{padding-left:4px!important;padding-right:4px!important;margin-bottom:6px}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions__body{width:100%}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions__table{table-layout:fixed;width:100%}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions__cell{padding:8px 10px!important;font-size:12px!important;word-break:break-all}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions__label{width:84px!important;min-width:84px!important;font-size:12px!important;color:#6b7280!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-descriptions__content{font-size:12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel-rx .el-card__header{padding:10px 12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel-rx-header{writing-mode:horizontal-tb}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel-rx-header__title{word-break:break-word;max-width:100%}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel-rx-header .el-button.is-link{padding:2px 0!important;margin:0!important;height:auto!important;min-height:0!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel .el-card__header,.po-detail-drawer--h5[data-v-f5f53a70] .po-panel .el-card__body{padding:10px 12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel .el-card__header .flex.items-center.gap-3,.po-detail-drawer--h5[data-v-f5f53a70] .po-panel .el-card__header .flex.items-center.justify-between{flex-wrap:wrap;gap:6px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel .el-card__header .font-medium.text-\[15px\]{font-size:14px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-panel .el-card__header .el-button{padding:4px 8px!important;font-size:12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps-wrap{padding:10px!important;margin-bottom:12px!important}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps .el-step__title{font-size:13px!important;line-height:1.45!important;word-break:break-word}.po-detail-drawer--h5[data-v-f5f53a70] .po-workflow-steps .el-step__description{font-size:12px!important;padding-right:0!important;margin-top:4px!important;white-space:normal;line-height:1.45!important;word-break:break-word}.po-detail-drawer--h5[data-v-f5f53a70] .po-pay-table{font-size:11px}.po-detail-drawer--h5[data-v-f5f53a70] .po-pay-table .el-table__cell{padding:4px 6px!important}.po-detail-drawer--h5 .po-logistics-toolbar__phone[data-v-f5f53a70]{flex:1 1 160px;min-width:140px}.po-detail-drawer--h5 .po-logistics-toolbar__carrier[data-v-f5f53a70]{flex:1 1 120px;min-width:110px}.po-detail-drawer--h5 .po-logistics-toolbar__btn[data-v-f5f53a70]{flex:1 1 100%;width:100%;min-height:40px}.po-detail-drawer--h5 .po-logistics-toolbar__links[data-v-f5f53a70]{border-top:1px dashed #edf0f4;margin-top:6px;padding-top:8px;justify-content:space-around}.po-detail-drawer--h5[data-v-f5f53a70] .audit-stamp{transform:scale(.6) rotate(-12deg)!important;transform-origin:top right;top:6px!important;right:6px!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-timeline{padding-left:6px!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-timeline-item__content{font-size:12px;line-height:1.5}.po-detail-drawer--h5[data-v-f5f53a70] .el-timeline-item__timestamp{font-size:11px!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-alert--error{padding:8px 10px!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-alert__title{font-size:13px!important}.po-detail-drawer--h5[data-v-f5f53a70] .el-alert__content .text-sm{font-size:12px!important}.create-order-dialog--h5[data-v-f5f53a70] .create-order-steps{flex-wrap:wrap;gap:4px}.create-order-dialog--h5[data-v-f5f53a70] .create-order-steps .el-step__title{font-size:11px!important}.create-order-dialog--h5[data-v-f5f53a70] .create-order-dialog__inner .el-row{margin-left:0!important;margin-right:0!important}.create-order-dialog--h5[data-v-f5f53a70] .create-order-dialog__inner .el-col{flex:0 0 100%!important;max-width:100%!important;padding:0!important;margin-bottom:8px}.create-order-dialog--h5[data-v-f5f53a70] .create-order-dialog__inner .el-form-item__label{font-size:12px!important}.create-order-dialog--h5[data-v-f5f53a70] .el-dialog__footer .el-button{padding:10px 16px!important;font-size:13px!important}
diff --git a/server/public/admin/assets/overflow-u2j0XOue.js b/server/public/admin/assets/overflow-rp70UQjb.js
similarity index 96%
rename from server/public/admin/assets/overflow-u2j0XOue.js
rename to server/public/admin/assets/overflow-rp70UQjb.js
index dcd7cd46..37647450 100644
--- a/server/public/admin/assets/overflow-u2j0XOue.js
+++ b/server/public/admin/assets/overflow-rp70UQjb.js
@@ -1 +1 @@
-import{J as m}from"./element-plus-lurTijPg.js";import{_ as i,o as p}from"./index-BFUnjLFW.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=p,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=i(c,[["render",s]]);export{W as default};
+import{J as m}from"./element-plus-lurTijPg.js";import{_ as i,o as p}from"./index-BtuN-JX0.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=p,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=i(c,[["render",s]]);export{W as default};
diff --git a/server/public/admin/assets/paiban-B_9wxZQG.js b/server/public/admin/assets/paiban-BxUy7cQ7.js
similarity index 96%
rename from server/public/admin/assets/paiban-B_9wxZQG.js
rename to server/public/admin/assets/paiban-BxUy7cQ7.js
index 07e0d038..b12383b2 100644
--- a/server/public/admin/assets/paiban-B_9wxZQG.js
+++ b/server/public/admin/assets/paiban-BxUy7cQ7.js
@@ -1 +1 @@
-import{D as J,B as P,G as U,I as q,W as H,i as O,J as Q}from"./element-plus-lurTijPg.js";import{d,g as K}from"./dayjs-DG77mNTn.js";import{g as X}from"./tcm-Cy3x75Vy.js";import{r as Z,g as ee}from"./doctor-doxmoseM.js";import{i as y,_ as te}from"./index-BFUnjLFW.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 I,n as re}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Y,o as R}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=I(()=>{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}),$=I(()=>{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,W=O,z=J,G=Q;return c(),u("div",ne,[g(G,{shadow:"never"},{header:m(()=>[...s[1]||(s[1]=[p("div",{class:"card-header"},[p("span",null,"医生排班管理")],-1)])]),default:m(()=>[g(z,{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(W,{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:R(["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:R(["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,W as H,i as O,J as Q}from"./element-plus-lurTijPg.js";import{d,g as K}from"./dayjs-DG77mNTn.js";import{g as X}from"./tcm-CXOqniC5.js";import{r as Z,g as ee}from"./doctor-DBKAZw5L.js";import{i as y,_ as te}from"./index-BtuN-JX0.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 I,n as re}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Y,o as R}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=I(()=>{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}),$=I(()=>{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,W=O,z=J,G=Q;return c(),u("div",ne,[g(G,{shadow:"never"},{header:m(()=>[...s[1]||(s[1]=[p("div",{class:"card-header"},[p("span",null,"医生排班管理")],-1)])]),default:m(()=>[g(z,{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(W,{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:R(["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:R(["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-call-B04n4WW6.js b/server/public/admin/assets/patient-call-tp_NqKPl.js
similarity index 99%
rename from server/public/admin/assets/patient-call-B04n4WW6.js
rename to server/public/admin/assets/patient-call-tp_NqKPl.js
index ae340610..fc6c1dbc 100644
--- a/server/public/admin/assets/patient-call-B04n4WW6.js
+++ b/server/public/admin/assets/patient-call-tp_NqKPl.js
@@ -1 +1 @@
-import{E as a,K as H,i as Q,d as $,W as X,J as Y,b as M}from"./element-plus-lurTijPg.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-BFUnjLFW.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||"接听失败")}},W=async()=>{try{console.log("拒绝来电"),await C.reject(),a.info("已拒绝通话"),o.value=!1,p.value=null}catch(t){console.error("拒绝失败:",t),a.error(t.message||"拒绝失败")}},q=()=>{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=H,i=Q,_=$,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:W},{default:c(()=>[...e[9]||(e[9]=[f(" 拒绝 ",-1)])]),_:1})])):(m(),z(i,{key:1,type:"danger",onClick:q,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 H,i as Q,d as $,W as X,J as Y,b as M}from"./element-plus-lurTijPg.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-BtuN-JX0.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||"接听失败")}},W=async()=>{try{console.log("拒绝来电"),await C.reject(),a.info("已拒绝通话"),o.value=!1,p.value=null}catch(t){console.error("拒绝失败:",t),a.error(t.message||"拒绝失败")}},q=()=>{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=H,i=Q,_=$,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:W},{default:c(()=>[...e[9]||(e[9]=[f(" 拒绝 ",-1)])]),_:1})])):(m(),z(i,{key:1,type:"danger",onClick:q,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/patient-DV343GH9.js b/server/public/admin/assets/patient-oa1S9q0Z.js
similarity index 88%
rename from server/public/admin/assets/patient-DV343GH9.js
rename to server/public/admin/assets/patient-oa1S9q0Z.js
index 30cf667d..1772123a 100644
--- a/server/public/admin/assets/patient-DV343GH9.js
+++ b/server/public/admin/assets/patient-oa1S9q0Z.js
@@ -1 +1 @@
-import{r as o}from"./index-BFUnjLFW.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-BtuN-JX0.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/pay-Bc9WH9Hb.js b/server/public/admin/assets/pay-CVs6AwQO.js
similarity index 85%
rename from server/public/admin/assets/pay-Bc9WH9Hb.js
rename to server/public/admin/assets/pay-CVs6AwQO.js
index 059de01b..3c4aa0e6 100644
--- a/server/public/admin/assets/pay-Bc9WH9Hb.js
+++ b/server/public/admin/assets/pay-CVs6AwQO.js
@@ -1 +1 @@
-import{r as a}from"./index-BFUnjLFW.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-BtuN-JX0.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-qfAgL2R-.js b/server/public/admin/assets/pc-C2WPCPVJ.js
similarity index 94%
rename from server/public/admin/assets/pc-qfAgL2R-.js
rename to server/public/admin/assets/pc-C2WPCPVJ.js
index 2ce5b37a..8c3cfa69 100644
--- a/server/public/admin/assets/pc-qfAgL2R-.js
+++ b/server/public/admin/assets/pc-C2WPCPVJ.js
@@ -1 +1 @@
-import{i as x,D as v,B as D,C as b,J as g}from"./element-plus-lurTijPg.js";import{b as k}from"./decoration-WUldB2V6.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-BFUnjLFW.js";import"./jspdf-BsthCvR5.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-lurTijPg.js";import{b as k}from"./decoration-Dt6hXbIo.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-BtuN-JX0.js";import"./jspdf-BsthCvR5.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-k5ochI8n.js b/server/public/admin/assets/pc_details-L354YYpw.js
similarity index 65%
rename from server/public/admin/assets/pc_details-k5ochI8n.js
rename to server/public/admin/assets/pc_details-L354YYpw.js
index 6ba14130..a111e62a 100644
--- a/server/public/admin/assets/pc_details-k5ochI8n.js
+++ b/server/public/admin/assets/pc_details-L354YYpw.js
@@ -1 +1 @@
-import{i as b,J as P}from"./element-plus-lurTijPg.js";import{o as B}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as N,s as V}from"./decoration-WUldB2V6.js";import{i as C,_ as E}from"./index-BFUnjLFW.js";import I from"./preview-pc-B6mE7fb5.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-CF46Z5lo.js";import"./attr-BpAVGaRt.js";import"./index-CovX5DnH.js";import"./picker-DmbPKi7C.js";import"./index-BxS92JVe.js";import"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import"./article-CSzK-64I.js";import"./usePaging-VsbTxSU0.js";import"./picker-C170hwS0.js";import"./index-BtsZldaS.js";import"./index-BNAGRG93.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-BkhkKLmC.js";import"./index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-auWkDI33.js";import"./decoration-img-BHX9jN8C.js";import"./attr.vue_vue_type_script_setup_true_lang-ZjKb5-kz.js";import"./content-EdGKhzMM.js";import"./attr.vue_vue_type_script_setup_true_lang-CvNxUx8K.js";import"./content.vue_vue_type_script_setup_true_lang-DW44eC68.js";import"./attr.vue_vue_type_script_setup_true_lang-B49I_kds.js";import"./add-nav.vue_vue_type_script_setup_true_lang-Dl9npC6n.js";import"./content-Cv7FIZiI.js";import"./attr.vue_vue_type_script_setup_true_lang-EriVRME3.js";import"./content.vue_vue_type_script_setup_true_lang-C2MVOv8S.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-DIi6DECo.js";import"./attr.vue_vue_type_script_setup_true_lang-Bnc7FgRm.js";import"./index.vue_vue_type_script_setup_true_lang-8-xP7boW.js";import"./content-Bpdy4I6C.js";import"./content.vue_vue_type_script_setup_true_lang-CdInkM6B.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-LNbHniXS.js";import"./attr.vue_vue_type_script_setup_true_lang-DyT-I-kE.js";import"./content.vue_vue_type_script_setup_true_lang-CXgFs_rE.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-lfaeG-Zj.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-lurTijPg.js";import{o as B}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as N,s as V}from"./decoration-Dt6hXbIo.js";import{i as C,_ as E}from"./index-BtuN-JX0.js";import I from"./preview-pc-DB0kAGjD.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-DNJ61pJE.js";import"./attr-CqhHjdi9.js";import"./index-DgLVdwR7.js";import"./picker-CSczr2Cc.js";import"./index-Db1NE_K4.js";import"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import"./article-CJ8KWr7T.js";import"./usePaging-VsbTxSU0.js";import"./picker-DnWXwaVg.js";import"./index-akOrsdaO.js";import"./index-Dr40NMPX.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-lcDB9k8z.js";import"./index.vue_vue_type_script_setup_true_lang-SfFZFG0h.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-CVzzmpQ9.js";import"./decoration-img-fxoKnxLp.js";import"./attr.vue_vue_type_script_setup_true_lang-DI80ngFU.js";import"./content-VXoKsQw5.js";import"./attr.vue_vue_type_script_setup_true_lang-CFADKMWp.js";import"./content.vue_vue_type_script_setup_true_lang-buIisOH7.js";import"./attr.vue_vue_type_script_setup_true_lang-BpRzyyXy.js";import"./add-nav.vue_vue_type_script_setup_true_lang-B9aPGcPY.js";import"./content-0xY_Gr52.js";import"./attr.vue_vue_type_script_setup_true_lang-DzaIW3hf.js";import"./content.vue_vue_type_script_setup_true_lang-y8uXbTh4.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-BU6bBTA1.js";import"./attr.vue_vue_type_script_setup_true_lang-D7_x2JqM.js";import"./index.vue_vue_type_script_setup_true_lang-8-xP7boW.js";import"./content-CV4VnyZf.js";import"./content.vue_vue_type_script_setup_true_lang-CR62sSDB.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-aPfkM5iu.js";import"./attr.vue_vue_type_script_setup_true_lang-Ba_18Dmk.js";import"./content.vue_vue_type_script_setup_true_lang-CBoy7n9p.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-fbxUlVw1.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-CJJhXl65.js b/server/public/admin/assets/perm-Bc23IvuR.js
similarity index 67%
rename from server/public/admin/assets/perm-CJJhXl65.js
rename to server/public/admin/assets/perm-Bc23IvuR.js
index 88e49fdb..d8b98fa3 100644
--- a/server/public/admin/assets/perm-CJJhXl65.js
+++ b/server/public/admin/assets/perm-Bc23IvuR.js
@@ -1 +1 @@
-import{u as i}from"./index-BFUnjLFW.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-BtuN-JX0.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-DmbPKi7C.js b/server/public/admin/assets/picker-CSczr2Cc.js
similarity index 97%
rename from server/public/admin/assets/picker-DmbPKi7C.js
rename to server/public/admin/assets/picker-CSczr2Cc.js
index 58ecc65f..d4f53f26 100644
--- a/server/public/admin/assets/picker-DmbPKi7C.js
+++ b/server/public/admin/assets/picker-CSczr2Cc.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-lurTijPg.js";import{_ as q,c as oe}from"./index-BFUnjLFW.js";import{w as ie,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as de}from"./index-BxS92JVe.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{N as pe}from"./@element-plus/icons-vue-HOEUG8sr.js";import{k as re}from"./article-CSzK-64I.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-lurTijPg.js";import{_ as q,c as oe}from"./index-BtuN-JX0.js";import{w as ie,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as de}from"./index-Db1NE_K4.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-CB1JgtXC.js";import{N as pe}from"./@element-plus/icons-vue-HOEUG8sr.js";import{k as re}from"./article-CJ8KWr7T.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-C170hwS0.js b/server/public/admin/assets/picker-DnWXwaVg.js
similarity index 96%
rename from server/public/admin/assets/picker-C170hwS0.js
rename to server/public/admin/assets/picker-DnWXwaVg.js
index 0eb15364..84f83f99 100644
--- a/server/public/admin/assets/picker-C170hwS0.js
+++ b/server/public/admin/assets/picker-DnWXwaVg.js
@@ -1 +1 @@
-import{_ as j}from"./index-BxS92JVe.js";import{s as le}from"./element-plus-lurTijPg.js";import{_ as se,a as J,F as ue}from"./index-BtsZldaS.js";import{e as de,i as O,_ as pe,c as me}from"./index-BFUnjLFW.js";import{_ as fe}from"./index-CovX5DnH.js";import{D as ge}from"./vuedraggable-5bKFmC7X.js";import{a as ve}from"./file-BkhkKLmC.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
接诊诊单:${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),Ze=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,Xe=(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=Xe(va,y.totalIds),z=Xe(Pn,y.totalIds),A=fa?Xe(fa,y.totalIds):null,J=ya?Xe(ya,y.totalIds):null,ha=ba?Xe(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 Zt(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 Zt({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 Zt({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 Za(t){return(K.value-1)*st.value+t+1}function Xa(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 Xt(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=Ze.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,Ze.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,Ze.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,Ze.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,Ze.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}
diff --git a/server/public/admin/index.html b/server/public/admin/index.html
index f1260689..16b1979d 100755
--- a/server/public/admin/index.html
+++ b/server/public/admin/index.html
@@ -60,7 +60,7 @@
document.head.appendChild(link);
})();
-
+
diff --git a/server/sql/1.9.20260526/add_blood_record_source.sql b/server/sql/1.9.20260526/add_blood_record_source.sql
new file mode 100644
index 00000000..6c6f731f
--- /dev/null
+++ b/server/sql/1.9.20260526/add_blood_record_source.sql
@@ -0,0 +1,11 @@
+-- 为「血糖血压记录表」增加来源字段
+-- 0 = 医生 / 助理在管理后台录入(历史数据默认 0)
+-- 1 = 患者在小程序「日常记录」页自录
+-- 该字段用于:1) 后台 DailyMatrix 上展示「患者自录」徽章;2) 限制患者只能编辑/删除自己当天的记录
+
+ALTER TABLE `zyt_tcm_blood_record`
+ADD COLUMN `source` tinyint(1) NOT NULL DEFAULT 0 COMMENT '来源:0-医生录入 1-患者自录' AFTER `remark`;
+
+-- 加索引方便按来源过滤
+ALTER TABLE `zyt_tcm_blood_record`
+ADD KEY `idx_source` (`source`);