{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=`已开启关联支付门槛(¥${ne(U.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function _t(){var t;R.value=0,m.patient_id="",m.recipient_name="",m.recipient_phone="",m.shipping_address="",m.is_follow_up=0,m.medication_days=void 0,m.prev_staff="",m.service_channel="",m.service_package=[],m.express_company="auto",m.tracking_number="",m.fee_type=3,m.amount=0,m.internal_cost=void 0,m.remark_extra="",m.remark_assistant="",m.pay_order_ids=[],B.value=[],se.value=[],U.value=0,z.value=null,(t=me.value)==null||t.clearValidate()}function Qt(){const t=U.value;if(t<=0)return;const e=Math.round(t*100)/100;Number(m.amount) 0){const e=`已开启关联支付门槛(¥${ne(U.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function _t(){var t;R.value=0,m.patient_id="",m.recipient_name="",m.recipient_phone="",m.shipping_address="",m.is_follow_up=0,m.medication_days=void 0,m.prev_staff="",m.service_channel="",m.service_package=[],m.express_company="auto",m.tracking_number="",m.fee_type=3,m.amount=0,m.internal_cost=void 0,m.remark_extra="",m.remark_assistant="",m.pay_order_ids=[],B.value=[],se.value=[],U.value=0,z.value=null,(t=me.value)==null||t.clearValidate()}function Qt(){const t=U.value;if(t<=0)return;const e=Math.round(t*100)/100;Number(m.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,R as mt}from"./element-plus-DFTWCWyi.js";import{H as O}from"./vue-echarts-BNtg2q_G.js";import{L as Q,ae as _t,af as ht,a4 as yt}from"./@element-plus/icons-vue-HOEUG8sr.js";import{l as wt,O as V,Q as ft,_ as vt}from"./index-Dn8YPxC3.js";import{ar as gt}from"./tcm-DumH0-Hh.js";import{u as kt}from"./order-CjjGo3tl.js";import{u as U}from"./getExposeType-MUpmx9zy.js";import{f as Y,w as xt,b as St,ak as l,I as c,J as t,a,aN as r,O as C,F as A,ap as D,G as w,H as B,A as S}from"./@vue/runtime-core-C6bnekPw.js";import{r as M,y as f,n as J}from"./@vue/reactivity-DiY1c2vO.js";import{Q as n}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./resize-detector-G6vbKCU7.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const Ot={class:"workbench-page"},Ct={class:"wb-hero"},At={class:"wb-section wb-section--order"},Dt={class:"wb-section-head"},Nt={class:"wb-section-title"},$t={class:"wb-section-icon wb-section-icon--violet"},zt={class:"wb-section-sub"},Et={class:"wb-toolbar"},Lt={class:"wb-section-body"},Vt={class:"wb-kpi wb-kpi--violet"},Rt={class:"wb-kpi-value"},Pt={class:"wb-kpi wb-kpi--amber"},Ft={class:"wb-kpi-value wb-kpi-value--sm"},Wt={class:"wb-rank-strip wb-rank-strip--compact"},Bt={key:0,class:"wb-rank-chips"},Ht={key:1,class:"wb-rank-empty"},Tt={class:"wb-chart-card"},It={class:"wb-chart-card"},Qt={class:"wb-chart-card"},Ut={class:"wb-chart-card wb-ranking-card"},Mt={key:0,class:"wb-ranking-list"},jt={class:"wb-ranking-rank"},Gt={class:"wb-ranking-name"},Jt={class:"wb-ranking-meta"},Yt={class:"wb-ranking-money"},qt={key:0,class:"wb-dept-block"},Kt={class:"wb-dept-card wb-dept-card--order"},Xt={class:"wb-dept-card-head"},Zt={class:"wb-dept-total"},te={class:"wb-dept-list"},ee={class:"wb-dept-num"},se={key:0,class:"wb-dept-empty"},ae={class:"wb-section wb-section--diagnosis"},oe={class:"wb-section-head"},le={class:"wb-section-title"},re={class:"wb-section-icon wb-section-icon--blue"},ie={class:"wb-section-sub"},ne={class:"wb-toolbar"},de={class:"wb-section-body"},ce={class:"wb-kpi wb-kpi--blue"},pe={class:"wb-kpi-value"},ue={class:"wb-rank-strip"},be={key:0,class:"wb-rank-chips"},me={key:1,class:"wb-rank-empty"},_e={class:"wb-chart-card"},he={class:"wb-chart-card"},ye={key:0,class:"wb-dept-block"},we={class:"wb-dept-card"},fe={class:"wb-dept-card-head"},ve={class:"wb-dept-total"},ge={class:"wb-dept-list"},ke={class:"wb-dept-num"},xe={key:0,class:"wb-dept-empty"},Se={class:"wb-section wb-section--trend"},Oe={class:"wb-section-head"},Ce={class:"wb-section-title"},Ae={class:"wb-section-icon wb-section-icon--teal"},De={class:"wb-section-body wb-trend-body"},Ne={class:"wb-chart-card wb-trend-card"},$e={class:"wb-chart-card wb-trend-card"},ze=Y({name:"workbench"}),Ee=Y({...ze,setup(Le){const g=wt(),H=U(),T=U(),q=U(),I=["#5b7cfa","#36cfc9","#ffc53d","#ff7a45","#b37feb","#597ef7","#73d13d","#ff85c0"];function j(s){if(s==null)return 0;const e=parseFloat(String(s).replace(/,/g,""));return Number.isFinite(e)?e:0}const p=M({days:0,departments:[],today_ranking:[],ranking:[],chart:{xAxis:[],series:[]}}),K=S(()=>(p.departments||[]).some(s=>Number(s.total)>0)),X=S(()=>{const s=(p.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:I,tooltip:{trigger:"item",formatter:"{b}
{c} 单 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"诊单",type:"pie",radius:["46%","72%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
{c}`},data:s}]}}),Z=S(()=>{var b;const s=g.theme,e=(p.chart.series||[]).map(i=>({...i,name:i.name||"诊单数",type:"bar",barWidth:"46%",itemStyle:{borderRadius:[8,8,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(s,.75)},{offset:1,color:s}]}}})),h=((b=e[0])==null?void 0:b.data)||[];return{color:[s,"#f0b429"],legend:{data:["诊单数","趋势"],top:4},xAxis:{type:"category",data:p.chart.xAxis||[],axisLabel:{rotate:28,fontSize:11},axisLine:{lineStyle:{color:"#e4e7ec"}}},yAxis:{type:"value",name:"诊单数",splitLine:{lineStyle:{type:"dashed",color:"#eef0f4"}}},tooltip:{trigger:"axis"},grid:{left:"2%",right:"2%",bottom:"12%",top:48,containLabel:!0},series:[...e,{name:"趋势",type:"line",smooth:.35,symbol:"circle",symbolSize:7,lineStyle:{width:3,color:"#f0b429"},itemStyle:{color:"#f0b429"},data:h}]}}),R=()=>{gt({days:p.days}).then(s=>{p.date_range=s.date_range,p.today_total=s.today_total??0,p.today_ranking=s.today_ranking||[],p.departments=s.departments||[],p.ranking=s.ranking||[],p.chart=s.chart||{xAxis:[],series:[]}}).catch(()=>{})},P=J(-1),F=J(0),_=M({order_type_name:"",date_range:[],today_total:0,today_amount:"0.00",today_ranking:[],departments:[],ranking:[],chart:{xAxis:[],series:[]}}),tt=S(()=>(_.departments||[]).some(s=>Number(s.total)>0)),et=S(()=>(_.departments||[]).some(s=>j(s.amount)>0)),st=S(()=>{const s=(_.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:I,tooltip:{trigger:"item",formatter:"{b}
{c} 单 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"单数",type:"pie",radius:["44%","70%"],center:["50%","46%"],itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
{c}`},data:s}]}}),at=S(()=>{const s=(_.departments||[]).map(e=>({name:e.dept_name||"—",value:j(e.amount)})).filter(e=>e.value>0);return{color:I,tooltip:{trigger:"item",formatter:e=>{const h=e.value;return`${e.name}
¥${Number(h).toFixed(2)} (${e.percent}%)`}},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"金额",type:"pie",radius:["44%","70%"],center:["50%","46%"],itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:e=>`${e.name}
¥${Number(e.value).toFixed(0)}`},data:s}]}}),ot=S(()=>{const s=_.date_range;if((s==null?void 0:s.length)>=2)return`${s[0]} 至 ${s[1]}`;const e=F.value,h=new Date,b=new Date;return e===0?(b.setHours(0,0,0,0),`${W(b)} 至 ${W(h)}`):(b.setDate(b.getDate()-(e||7)),`${W(b)} 至 ${W(h)}`)});function W(s){return s.getFullYear()+"-"+String(s.getMonth()+1).padStart(2,"0")+"-"+String(s.getDate()).padStart(2,"0")}const lt=S(()=>{var b,i,k;const s=g.theme,e=(((b=_.chart)==null?void 0:b.series)||[]).map(m=>({...m,name:m.name||"单数",type:"bar",barWidth:"46%",itemStyle:{borderRadius:[8,8,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(s,.72)},{offset:1,color:s}]}}})),h=((i=e[0])==null?void 0:i.data)||[];return{color:[s,"#fa8c16"],legend:{data:["单数","趋势"],top:4},xAxis:{type:"category",data:((k=_.chart)==null?void 0:k.xAxis)||[],axisLabel:{rotate:28,fontSize:11},axisLine:{lineStyle:{color:"#e4e7ec"}}},yAxis:{type:"value",name:"单数",splitLine:{lineStyle:{type:"dashed",color:"#eef0f4"}}},tooltip:{trigger:"axis"},grid:{left:"2%",right:"2%",bottom:"12%",top:48,containLabel:!0},series:[...e,{name:"趋势",type:"line",smooth:.35,symbol:"circle",symbolSize:7,lineStyle:{width:3,color:"#fa8c16"},itemStyle:{color:"#fa8c16"},data:h}]}}),N=()=>{kt({order_type:P.value,days:F.value}).then(s=>{Object.assign(_,{order_type_name:s.order_type_name??"",date_range:s.date_range||[],today_total:s.today_total??0,today_amount:s.today_amount??"0.00",today_ranking:s.today_ranking||[],departments:s.departments||[],ranking:s.ranking||[],chart:s.chart||{xAxis:[],series:[]}})}).catch(()=>{})},rt=()=>{G(),R(),N()};xt(()=>g.theme,()=>{it()});const u=M({version:{version:"",website:"",based:"",channel:{gitee:"",website:""}},support:[],today:{},menu:[],visitor:[],article:[],visitorOption:{xAxis:{type:"category",data:[]},yAxis:{type:"value"},legend:{data:["访问量"],top:8},tooltip:{trigger:"axis"},grid:{left:"2%",right:"3%",bottom:"3%",top:40,containLabel:!0},series:[{name:"访问量",data:[],type:"line",smooth:!0,color:g.theme,lineStyle:{color:g.theme,width:2},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:g.theme},{offset:1,color:g.theme}]},opacity:.12}}]},saleOption:{xAxis:{type:"category",data:[]},yAxis:{type:"value",name:"万"},tooltip:{trigger:"axis"},grid:{left:"2%",right:"3%",bottom:"3%",top:36,containLabel:!0},series:[{name:"销售量",data:[],type:"bar",showBackground:!0,backgroundStyle:{color:"rgba(120, 130, 150, 0.08)",borderRadius:[10,10,0,0]},barWidth:"42%",itemStyle:{borderRadius:[10,10,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(g.theme,.65)},{offset:1,color:g.theme}]}}}]}}),G=()=>{ft().then(s=>{var e,h,b,i,k,m,v,x,$,z,E,L;u.version=s.version,u.today=s.today,u.menu=s.menu,u.visitor=s.visitor,u.support=s.support,u.visitorOption.xAxis.data=[],u.visitorOption.series[0].data=[],u.saleOption.xAxis.data=[],u.saleOption.series[0].data=[],(h=(e=s.visitor)==null?void 0:e.date)==null||h.reverse().forEach(o=>{u.visitorOption.xAxis.data.push(o)}),(m=(k=(i=(b=s.visitor)==null?void 0:b.list)==null?void 0:i[0])==null?void 0:k.data)==null||m.forEach(o=>{u.visitorOption.series[0].data.push(o)}),(x=(v=s.sale)==null?void 0:v.date)==null||x.reverse().forEach(o=>{u.saleOption.xAxis.data.push(o)}),(L=(E=(z=($=s.sale)==null?void 0:$.list)==null?void 0:z[0])==null?void 0:E.data)==null||L.forEach(o=>{let d=o;o<=50&&(d={value:o,itemStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V("#ff8729",.7)},{offset:1,color:"#ff8729"}]}}}),u.saleOption.series[0].data.push(d)})}).catch(s=>{console.log("err",s)})},it=()=>{var e,h,b,i;const s=g.theme;u.visitorOption.series[0].color=s,u.visitorOption.series[0].lineStyle.color=s,u.visitorOption.series[0].areaStyle.color.colorStops=[{offset:0,color:s},{offset:1,color:s}],u.saleOption.series[0].itemStyle.color.colorStops=[{offset:0,color:V(s,.65)},{offset:1,color:s}],(e=H.value)==null||e.clear(),(h=T.value)==null||h.clear(),(b=H.value)==null||b.setOption(u.saleOption),(i=T.value)==null||i.setOption(u.visitorOption)};return St(()=>{G(),R(),N()}),(s,e)=>{var $,z,E,L;const h=nt,b=dt,i=ct,k=pt,m=ut,v=bt,x=mt;return l(),c("div",Ot,[t("header",Ct,[e[4]||(e[4]=t("div",{class:"wb-hero-text"},[t("h1",{class:"wb-hero-title"},"数据工作台"),t("p",{class:"wb-hero-desc"},"医助诊单、订单营收与运营趋势一屏掌握")],-1)),a(h,{type:"primary",icon:f(Q),round:"",class:"wb-refresh-btn",onClick:rt},{default:r(()=>[...e[3]||(e[3]=[C(" 刷新全部 ",-1)])]),_:1},8,["icon"])]),t("section",At,[t("div",Dt,[t("div",Nt,[t("span",$t,[a(b,null,{default:r(()=>[a(f(_t))]),_:1})]),t("div",null,[e[5]||(e[5]=t("div",{class:"wb-section-name"},"订单统计",-1)),t("div",zt,n(ot.value)+" · "+n(_.order_type_name||"—"),1)])]),t("div",Et,[a(k,{modelValue:P.value,"onUpdate:modelValue":e[0]||(e[0]=o=>P.value=o),class:"wb-select wb-select--wide",onChange:N},{default:r(()=>[a(i,{label:"全部(已支付)",value:-1}),a(i,{label:"挂号费",value:1}),a(i,{label:"问诊费",value:2}),a(i,{label:"药品费用",value:3}),a(i,{label:"首付费用",value:4}),a(i,{label:"尾款费用",value:5}),a(i,{label:"其他费用",value:6}),a(i,{label:"全部费用",value:7}),a(i,{label:"驼奶费用",value:8}),a(i,{label:"退款统计",value:0})]),_:1},8,["modelValue"]),a(k,{modelValue:F.value,"onUpdate:modelValue":e[1]||(e[1]=o=>F.value=o),class:"wb-select",onChange:N},{default:r(()=>[a(i,{label:"今天",value:0}),a(i,{label:"最近7天",value:7}),a(i,{label:"最近30天",value:30})]),_:1},8,["modelValue"]),a(h,{icon:f(Q),circle:"",onClick:N},null,8,["icon"])])]),t("div",Lt,[a(v,{gutter:16,class:"wb-kpi-row"},{default:r(()=>[a(m,{xs:24,sm:8},{default:r(()=>[t("div",Vt,[e[6]||(e[6]=t("div",{class:"wb-kpi-label"},"今日单数",-1)),t("div",Rt,n(_.today_total??0),1)])]),_:1}),a(m,{xs:24,sm:8},{default:r(()=>[t("div",Pt,[e[7]||(e[7]=t("div",{class:"wb-kpi-label"},"今日金额",-1)),t("div",Ft,"¥"+n(_.today_amount??"0.00"),1)])]),_:1}),a(m,{xs:24,sm:8},{default:r(()=>{var o;return[t("div",Wt,[e[8]||(e[8]=t("span",{class:"wb-rank-strip-label"},"今日 TOP",-1)),(o=_.today_ranking)!=null&&o.length?(l(),c("div",Bt,[(l(!0),c(A,null,D(_.today_ranking.slice(0,4),(d,y)=>(l(),c("span",{key:d.id,class:"wb-rank-chip wb-rank-chip--dense"},[t("em",null,n(Number(y)+1),1),C(" "+n(d.name)+" ",1),t("strong",null,n(d.count),1),t("small",null,"¥"+n(d.amount),1)]))),128))])):(l(),c("span",Ht,"暂无"))])]}),_:1})]),_:1}),a(v,{gutter:20,class:"wb-chart-row"},{default:r(()=>[a(m,{xs:24,lg:10},{default:r(()=>[t("div",Tt,[e[9]||(e[9]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门单数占比")],-1)),tt.value?(l(),w(f(O),{key:0,class:"wb-chart",style:{height:"300px"},option:st.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:r(()=>{var o,d;return[t("div",It,[e[10]||(e[10]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"开单人 · 单数排行"),t("span",{class:"wb-chart-hint"},"柱状 + 趋势")],-1)),(d=(o=_.chart)==null?void 0:o.xAxis)!=null&&d.length?(l(),w(f(O),{key:"order-bar-"+P.value,class:"wb-chart",style:{height:"300px"},option:lt.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1})]),_:1}),a(v,{gutter:20,class:"wb-chart-row"},{default:r(()=>[a(m,{xs:24,lg:10},{default:r(()=>[t("div",Qt,[e[11]||(e[11]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门金额占比")],-1)),et.value?(l(),w(f(O),{key:0,class:"wb-chart",style:{height:"300px"},option:at.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:r(()=>{var o;return[t("div",Ut,[e[13]||(e[13]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"周期内排行"),t("span",{class:"wb-chart-hint"},"单数 / 金额")],-1)),(o=_.ranking)!=null&&o.length?(l(),c("div",Mt,[(l(!0),c(A,null,D(_.ranking,(d,y)=>(l(),c("div",{key:d.id,class:"wb-ranking-item"},[t("span",jt,n(Number(y)+1),1),t("span",Gt,n(d.name),1),t("span",Jt,[t("b",null,n(d.count),1),e[12]||(e[12]=C(" 单 ",-1)),t("span",Yt,"¥"+n(d.amount),1)])]))),128))])):(l(),w(x,{key:1,description:"暂无排行"}))])]}),_:1})]),_:1}),($=_.departments)!=null&&$.length?(l(),c("div",qt,[e[14]||(e[14]=t("div",{class:"wb-dept-title"},"按部门统计",-1)),a(v,{gutter:16},{default:r(()=>[(l(!0),c(A,null,D(_.departments,o=>(l(),w(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:r(()=>{var d;return[t("div",Kt,[t("div",Xt,[C(n(o.dept_name)+" ",1),t("span",Zt,n(o.total)+" 单 · ¥"+n(o.amount),1)]),t("div",te,[(l(!0),c(A,null,D(o.members,y=>(l(),c("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,n(y.name),1),t("span",ee,[C(n(y.count)+" ",1),t("small",null,"¥"+n(y.amount),1)])]))),128)),(d=o.members)!=null&&d.length?B("",!0):(l(),c("div",se,"暂无"))])])]}),_:2},1024))),128))]),_:1})])):B("",!0)])]),t("section",ae,[t("div",oe,[t("div",le,[t("span",re,[a(b,null,{default:r(()=>[a(f(ht))]),_:1})]),t("div",null,[e[15]||(e[15]=t("div",{class:"wb-section-name"},"医助理诊单统计",-1)),t("div",ie,n((z=p.date_range)==null?void 0:z[0])+" 至 "+n((E=p.date_range)==null?void 0:E[1]),1)])]),t("div",ne,[a(k,{modelValue:p.days,"onUpdate:modelValue":e[2]||(e[2]=o=>p.days=o),class:"wb-select",onChange:R},{default:r(()=>[a(i,{label:"今天",value:0}),a(i,{label:"最近7天",value:7}),a(i,{label:"最近14天",value:14}),a(i,{label:"最近30天",value:30})]),_:1},8,["modelValue"]),a(h,{icon:f(Q),circle:"",onClick:R},null,8,["icon"])])]),t("div",de,[a(v,{gutter:16,class:"wb-kpi-row"},{default:r(()=>[a(m,{xs:24,sm:8,lg:6},{default:r(()=>[t("div",ce,[e[16]||(e[16]=t("div",{class:"wb-kpi-label"},"今日创建诊单",-1)),t("div",pe,n(p.today_total??0),1),e[17]||(e[17]=t("div",{class:"wb-kpi-hint"},"当日新增总量",-1))])]),_:1}),a(m,{xs:24,sm:16,lg:18},{default:r(()=>{var o;return[t("div",ue,[e[18]||(e[18]=t("span",{class:"wb-rank-strip-label"},"今日排行",-1)),(o=p.today_ranking)!=null&&o.length?(l(),c("div",be,[(l(!0),c(A,null,D(p.today_ranking.slice(0,6),(d,y)=>(l(),c("span",{key:d.id,class:"wb-rank-chip"},[t("em",null,n(y+1),1),C(" "+n(d.name)+" ",1),t("strong",null,n(d.count),1)]))),128))])):(l(),c("span",me,"暂无排行数据"))])]}),_:1})]),_:1}),a(v,{gutter:20,class:"wb-chart-row"},{default:r(()=>[a(m,{xs:24,lg:15},{default:r(()=>{var o;return[t("div",_e,[e[19]||(e[19]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"诊单量分布"),t("span",{class:"wb-chart-hint"},"柱状 + 趋势线")],-1)),(o=p.chart.xAxis)!=null&&o.length?(l(),w(f(O),{key:0,ref_key:"assistantChart",ref:q,class:"wb-chart",style:{height:"340px"},option:Z.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1}),a(m,{xs:24,lg:9},{default:r(()=>[t("div",he,[e[20]||(e[20]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门占比"),t("span",{class:"wb-chart-hint"},"按诊单数")],-1)),K.value?(l(),w(f(O),{key:0,class:"wb-chart",style:{height:"340px"},option:X.value,autoresize:!0},null,8,["option"])):(l(),w(x,{key:1,class:"wb-chart-empty",description:"暂无部门数据"}))])]),_:1})]),_:1}),(L=p.departments)!=null&&L.length?(l(),c("div",ye,[e[21]||(e[21]=t("div",{class:"wb-dept-title"},"按部门明细",-1)),a(v,{gutter:16},{default:r(()=>[(l(!0),c(A,null,D(p.departments,o=>(l(),w(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:r(()=>{var d;return[t("div",we,[t("div",fe,[C(n(o.dept_name)+" ",1),t("span",ve,"共 "+n(o.total),1)]),t("div",ge,[(l(!0),c(A,null,D(o.assistants,y=>(l(),c("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,n(y.name),1),t("span",ke,n(y.count),1)]))),128)),(d=o.assistants)!=null&&d.length?B("",!0):(l(),c("div",xe,"暂无医助"))])])]}),_:2},1024))),128))]),_:1})])):B("",!0)])]),t("section",Se,[t("div",Oe,[t("div",Ce,[t("span",Ae,[a(b,null,{default:r(()=>[a(f(yt))]),_:1})]),e[22]||(e[22]=t("div",null,[t("div",{class:"wb-section-name"},"运营趋势"),t("div",{class:"wb-section-sub"},"访问量与销售额走势")],-1))])]),t("div",De,[a(v,{gutter:20},{default:r(()=>[a(m,{xs:24,lg:14},{default:r(()=>[t("div",Ne,[e[23]||(e[23]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"访问量趋势")],-1)),a(f(O),{ref_key:"visitorChart",ref:T,class:"wb-chart",style:{height:"320px"},option:u.visitorOption,autoresize:!0},null,8,["option"])])]),_:1}),a(m,{xs:24,lg:10},{default:r(()=>[t("div",$e,[e[24]||(e[24]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"销售额趋势"),t("span",{class:"wb-chart-hint"},"单位(万)")],-1)),a(f(O),{ref_key:"saleChart",ref:H,class:"wb-chart",style:{height:"320px"},option:u.saleOption,autoresize:!0},null,8,["option"])])]),_:1})]),_:1})])])])}}}),ks=vt(Ee,[["__scopeId","data-v-2f6eaa33"]]);export{ks as default};
diff --git a/server/public/admin/assets/index-CKYRs9qE.js b/server/public/admin/assets/index-CJb3EdIv.js
similarity index 90%
rename from server/public/admin/assets/index-CKYRs9qE.js
rename to server/public/admin/assets/index-CJb3EdIv.js
index 7599566f..8fab0b63 100644
--- a/server/public/admin/assets/index-CKYRs9qE.js
+++ b/server/public/admin/assets/index-CJb3EdIv.js
@@ -1 +1 @@
-import{D as T,B as j,C as q,i as z,J as A,L as J,M,N as G,q as H,g as O}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as W,i as X,_ as Y}from"./index-B7JHxj4W.js";import{w as k}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Z,b as ee,c as te}from"./admin-DiTecWWv.js";import{u as oe}from"./usePaging-VsbTxSU0.js";import ae from"./edit-BzdUqucU.js";import{f as x,b as ie,as as ne,ak as m,I as le,a as e,aN as a,O as _,aP as f,G as s,J as V,H as me,n as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as re,q as se,r as pe,n as de}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-C3_ymTuH.js";import"./index-CfViC04h.js";import"./index-DevmXUeT.js";import"./index-DB9D3_w0.js";import"./index-CUGvV7XN.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-BCYsLPcQ.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-Dko40H4q.js";import"./post-CfDmi98_.js";import"./useDictOptions-Dld5Y8QE.js";const ce={class:"doctor-list"},ue={class:"mt-4"},_e={class:"flex mt-4 justify-end"},fe=x({name:"doctorList"}),be=x({...fe,setup(ve){const b=se(),r=pe({account:"",name:"",role_id:2,apply_data_scope:1}),v=de(!1),{pager:p,getLists:d,resetParams:D,resetPage:h}=oe({fetchFun:Z,params:r}),P=o=>{ee({id:o.id,avatar:o.avatar,account:o.account,name:o.name,role_id:o.role_id,jobs_id:o.jobs_id,dept_id:o.dept_id,disable:o.disable,multipoint_login:o.multipoint_login}).finally(()=>{d()})},B=async()=>{var o;v.value=!0,await E(),(o=b.value)==null||o.open("add")},I=async o=>{var t,c;v.value=!0,await E(),(t=b.value)==null||t.open("edit"),(c=b.value)==null||c.setFormData(o)},N=async o=>{await X.confirm("确定要删除该医助吗?"),await te({id:o}),d()};return ie(()=>{d()}),(o,t)=>{const c=q,y=j,u=z,$=T,C=A,K=W,l=G,L=H,U=O,F=M,R=Q,w=ne("perms"),S=J;return m(),le("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e($,{class:"mb-[-16px]",model:n(r),inline:""},{default:a(()=>[e(y,{class:"w-[280px]",label:"医助账号"},{default:a(()=>[e(c,{modelValue:n(r).account,"onUpdate:modelValue":t[0]||(t[0]=i=>n(r).account=i),placeholder:"请输入医助账号",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医助名称"},{default:a(()=>[e(c,{modelValue:n(r).name,"onUpdate:modelValue":t[1]||(t[1]=i=>n(r).name=i),placeholder:"请输入医助名称",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:a(()=>[e(u,{type:"primary",onClick:n(h)},{default:a(()=>[...t[4]||(t[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:a(()=>[...t[5]||(t[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((m(),s(C,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[f((m(),s(u,{type:"primary",onClick:B},{icon:a(()=>[e(K,{name:"el-icon-Plus"})]),default:a(()=>[t[6]||(t[6]=_(" 新增医助 ",-1))]),_:1})),[[w,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(p).lists,size:"large"},{default:a(()=>[e(l,{label:"ID",prop:"id","min-width":"60"}),e(l,{label:"头像","min-width":"100"},{default:a(({row:i})=>[e(L,{size:50,src:i.avatar},null,8,["src"])]),_:1}),e(l,{label:"账号",prop:"account","min-width":"120"}),e(l,{label:"姓名",prop:"name","min-width":"100"}),e(l,{label:"手机号",prop:"phone","min-width":"120"}),e(l,{label:"创建时间",prop:"create_time","min-width":"180"}),e(l,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(l,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((m(),s(l,{label:"状态","min-width":"100"},{default:a(({row:i})=>[e(U,{modelValue:i.disable,"onUpdate:modelValue":g=>i.disable=g,"active-value":0,"inactive-value":1,onChange:g=>P(i)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[w,["auth.admin/edit"]]]),e(l,{label:"操作",width:"120",fixed:"right"},{default:a(({row:i})=>[f((m(),s(u,{type:"primary",link:"",onClick:g=>I(i)},{default:a(()=>[...t[7]||(t[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/edit"]]]),f((m(),s(u,{type:"danger",link:"",onClick:g=>N(i.id)},{default:a(()=>[...t[8]||(t[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(R,{modelValue:n(p),"onUpdate:modelValue":t[2]||(t[2]=i=>re(p)?p.value=i:null),onChange:n(d)},null,8,["modelValue","onChange"])])]),_:1})),[[S,n(p).loading]]),n(v)?(m(),s(ae,{key:0,ref_key:"editRef",ref:b,onSuccess:n(d),onClose:t[3]||(t[3]=i=>v.value=!1)},null,8,["onSuccess"])):me("",!0)])}}}),yt=Y(be,[["__scopeId","data-v-64b2cdbe"]]);export{yt as default};
+import{D as T,B as j,C as q,i as z,J as A,L as J,M,N as G,q as H,g as O}from"./element-plus-DFTWCWyi.js";import{_ as Q}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as W,i as X,_ as Y}from"./index-Dn8YPxC3.js";import{w as k}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Z,b as ee,c as te}from"./admin-FqXgRD2T.js";import{u as oe}from"./usePaging-VsbTxSU0.js";import ae from"./edit-mvwqDCvd.js";import{f as x,b as ie,as as ne,ak as m,I as le,a as e,aN as a,O as _,aP as f,G as s,J as V,H as me,n as E}from"./@vue/runtime-core-C6bnekPw.js";import{y as n,a as re,q as se,r as pe,n as de}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/shared-mAAVTE9n.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./picker-DuwjC-1U.js";import"./index-BOXguUgn.js";import"./index-DgypKt72.js";import"./index-CrY043B3.js";import"./index-32KWa0px.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-Bh0UlSsJ.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./department-Dfpky2D6.js";import"./post-BTWwTnmz.js";import"./useDictOptions-Cs3sDB3M.js";const ce={class:"doctor-list"},ue={class:"mt-4"},_e={class:"flex mt-4 justify-end"},fe=x({name:"doctorList"}),be=x({...fe,setup(ve){const b=se(),r=pe({account:"",name:"",role_id:2,apply_data_scope:1}),v=de(!1),{pager:p,getLists:d,resetParams:D,resetPage:h}=oe({fetchFun:Z,params:r}),P=o=>{ee({id:o.id,avatar:o.avatar,account:o.account,name:o.name,role_id:o.role_id,jobs_id:o.jobs_id,dept_id:o.dept_id,disable:o.disable,multipoint_login:o.multipoint_login}).finally(()=>{d()})},B=async()=>{var o;v.value=!0,await E(),(o=b.value)==null||o.open("add")},I=async o=>{var t,c;v.value=!0,await E(),(t=b.value)==null||t.open("edit"),(c=b.value)==null||c.setFormData(o)},N=async o=>{await X.confirm("确定要删除该医助吗?"),await te({id:o}),d()};return ie(()=>{d()}),(o,t)=>{const c=q,y=j,u=z,$=T,C=A,K=W,l=G,L=H,U=O,F=M,R=Q,w=ne("perms"),S=J;return m(),le("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:a(()=>[e($,{class:"mb-[-16px]",model:n(r),inline:""},{default:a(()=>[e(y,{class:"w-[280px]",label:"医助账号"},{default:a(()=>[e(c,{modelValue:n(r).account,"onUpdate:modelValue":t[0]||(t[0]=i=>n(r).account=i),placeholder:"请输入医助账号",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医助名称"},{default:a(()=>[e(c,{modelValue:n(r).name,"onUpdate:modelValue":t[1]||(t[1]=i=>n(r).name=i),placeholder:"请输入医助名称",clearable:"",onKeyup:k(n(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:a(()=>[e(u,{type:"primary",onClick:n(h)},{default:a(()=>[...t[4]||(t[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:a(()=>[...t[5]||(t[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((m(),s(C,{class:"mt-4 !border-none",shadow:"never"},{default:a(()=>[f((m(),s(u,{type:"primary",onClick:B},{icon:a(()=>[e(K,{name:"el-icon-Plus"})]),default:a(()=>[t[6]||(t[6]=_(" 新增医助 ",-1))]),_:1})),[[w,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(p).lists,size:"large"},{default:a(()=>[e(l,{label:"ID",prop:"id","min-width":"60"}),e(l,{label:"头像","min-width":"100"},{default:a(({row:i})=>[e(L,{size:50,src:i.avatar},null,8,["src"])]),_:1}),e(l,{label:"账号",prop:"account","min-width":"120"}),e(l,{label:"姓名",prop:"name","min-width":"100"}),e(l,{label:"手机号",prop:"phone","min-width":"120"}),e(l,{label:"创建时间",prop:"create_time","min-width":"180"}),e(l,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(l,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((m(),s(l,{label:"状态","min-width":"100"},{default:a(({row:i})=>[e(U,{modelValue:i.disable,"onUpdate:modelValue":g=>i.disable=g,"active-value":0,"inactive-value":1,onChange:g=>P(i)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[w,["auth.admin/edit"]]]),e(l,{label:"操作",width:"120",fixed:"right"},{default:a(({row:i})=>[f((m(),s(u,{type:"primary",link:"",onClick:g=>I(i)},{default:a(()=>[...t[7]||(t[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/edit"]]]),f((m(),s(u,{type:"danger",link:"",onClick:g=>N(i.id)},{default:a(()=>[...t[8]||(t[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[w,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(R,{modelValue:n(p),"onUpdate:modelValue":t[2]||(t[2]=i=>re(p)?p.value=i:null),onChange:n(d)},null,8,["modelValue","onChange"])])]),_:1})),[[S,n(p).loading]]),n(v)?(m(),s(ae,{key:0,ref_key:"editRef",ref:b,onSuccess:n(d),onClose:t[3]||(t[3]=i=>v.value=!1)},null,8,["onSuccess"])):me("",!0)])}}}),yt=Y(be,[["__scopeId","data-v-64b2cdbe"]]);export{yt as default};
diff --git a/server/public/admin/assets/index-vskTqJG2.js b/server/public/admin/assets/index-CKdbZDIG.js
similarity index 86%
rename from server/public/admin/assets/index-vskTqJG2.js
rename to server/public/admin/assets/index-CKdbZDIG.js
index d5565094..2f366355 100644
--- a/server/public/admin/assets/index-vskTqJG2.js
+++ b/server/public/admin/assets/index-CKdbZDIG.js
@@ -1 +1 @@
-import{f as t,ak as s,I as n,J as a,aq as r}from"./@vue/runtime-core-C6bnekPw.js";import{p as _}from"./@vue/shared-mAAVTE9n.js";import{_ as i}from"./index-B7JHxj4W.js";const c={class:"footer-btns"},p=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,d)=>(s(),n("div",c,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),u=i(p,[["__scopeId","data-v-9f638557"]]);export{u as _};
+import{f as t,ak as s,I as n,J as a,aq as r}from"./@vue/runtime-core-C6bnekPw.js";import{p as _}from"./@vue/shared-mAAVTE9n.js";import{_ as i}from"./index-Dn8YPxC3.js";const c={class:"footer-btns"},p=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,d)=>(s(),n("div",c,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),u=i(p,[["__scopeId","data-v-9f638557"]]);export{u as _};
diff --git a/server/public/admin/assets/index-DwbPJ6Zn.js b/server/public/admin/assets/index-Ca9NI1dT.js
similarity index 95%
rename from server/public/admin/assets/index-DwbPJ6Zn.js
rename to server/public/admin/assets/index-Ca9NI1dT.js
index b38fb9bf..d8b2d284 100644
--- a/server/public/admin/assets/index-DwbPJ6Zn.js
+++ b/server/public/admin/assets/index-Ca9NI1dT.js
@@ -1 +1 @@
-import{D as A,B as G,C as H,P as j,Q as W,i as X,J as Y,M as Z,N as ee,T as te,L as oe}from"./element-plus-DFTWCWyi.js";import{c as ae,i as le}from"./index-B7JHxj4W.js";import{w as ne}from"./@vue/runtime-dom-DDAG46FW.js";import{e as se,f as ie}from"./department-Dko40H4q.js";import{_ as re}from"./edit.vue_vue_type_script_setup_true_lang-CNT54Nmv.js";import{f as I,b as pe,n as E,as as me,ak as m,I as de,a as t,aN as o,O as s,J as P,aP as v,G as c,H as F}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,q as x,n as V,r as ue}from"./@vue/reactivity-DiY1c2vO.js";import{Q as L}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CfViC04h.js";import"./useDictOptions-Dld5Y8QE.js";const fe={class:"department"},ce=I({name:"department"}),at=I({...ce,setup(_e){const D=x(),_=x(),R=x();let b=!1;const w=V(!1),C=V([]),d=ue({status:"",name:""}),y=V(!1),u=async()=>{w.value=!0,C.value=await se(d),w.value=!1},S=()=>{var a;(a=R.value)==null||a.resetFields(),u()},$=async a=>{var e,n;y.value=!0,await E(),a&&((e=_.value)==null||e.setFormData({pid:a})),(n=_.value)==null||n.open("add")},q=async a=>{var e,n;y.value=!0,await E(),(e=_.value)==null||e.open("edit"),(n=_.value)==null||n.getDetail(a)},J=async a=>{await le.confirm("确定要删除?"),await ie({id:a}),u()},B=()=>{b=!b,N(C.value,b)},N=(a,e=!0)=>{var n;for(const r in a)(n=D.value)==null||n.toggleRowExpansion(a[r],e),a[r].children&&N(a[r].children,e)};return pe(async()=>{await u(),E(()=>{B()})}),(a,e)=>{const n=H,r=G,g=W,K=j,p=X,M=A,T=Y,O=ae,f=ee,Q=te,U=Z,k=me("perms"),z=oe;return m(),de("div",fe,[t(T,{class:"!border-none",shadow:"never"},{default:o(()=>[t(M,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(d),inline:!0},{default:o(()=>[t(r,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:o(()=>[t(n,{modelValue:i(d).name,"onUpdate:modelValue":e[0]||(e[0]=l=>i(d).name=l),placeholder:"输入部门名称",clearable:"",onKeyup:ne(u,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:o(()=>[t(K,{modelValue:i(d).status,"onUpdate:modelValue":e[1]||(e[1]=l=>i(d).status=l)},{default:o(()=>[t(g,{label:"全部",value:""}),t(g,{label:"正常",value:"1"}),t(g,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(r,null,{default:o(()=>[t(p,{type:"primary",onClick:u},{default:o(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(p,{onClick:S},{default:o(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(T,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[P("div",null,[v((m(),c(p,{type:"primary",onClick:e[2]||(e[2]=l=>$())},{icon:o(()=>[t(O,{name:"el-icon-Plus"})]),default:o(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[k,["dept.dept/add"]]]),t(p,{onClick:B},{default:o(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),v((m(),c(U,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(C),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:o(()=>[...e[8]||(e[8]=[P("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:o(({row:l})=>[s(L(l.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:o(({row:l})=>[t(Q,{class:"ml-2",type:l.status?"primary":"danger"},{default:o(()=>[s(L(l.status_desc),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"排序",prop:"sort","min-width":"100"}),t(f,{label:"更新时间",prop:"update_time","min-width":"180"}),t(f,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[v((m(),c(p,{type:"primary",link:"",onClick:h=>$(l.id)},{default:o(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/add"]]]),v((m(),c(p,{type:"primary",link:"",onClick:h=>q(l)},{default:o(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/edit"]]]),l.pid!==0?v((m(),c(p,{key:0,type:"danger",link:"",onClick:h=>J(l.id)},{default:o(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/delete"]]]):F("",!0)]),_:1})]),_:1},8,["data"])),[[z,i(w)]])]),_:1}),i(y)?(m(),c(re,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=l=>y.value=!1)},null,512)):F("",!0)])}}});export{at as default};
+import{D as A,B as G,C as H,P as j,Q as W,i as X,J as Y,M as Z,N as ee,T as te,L as oe}from"./element-plus-DFTWCWyi.js";import{c as ae,i as le}from"./index-Dn8YPxC3.js";import{w as ne}from"./@vue/runtime-dom-DDAG46FW.js";import{e as se,f as ie}from"./department-Dfpky2D6.js";import{_ as re}from"./edit.vue_vue_type_script_setup_true_lang-B0A6Qq8l.js";import{f as I,b as pe,n as E,as as me,ak as m,I as de,a as t,aN as o,O as s,J as P,aP as v,G as c,H as F}from"./@vue/runtime-core-C6bnekPw.js";import{y as i,q as x,n as V,r as ue}from"./@vue/reactivity-DiY1c2vO.js";import{Q as L}from"./@vue/shared-mAAVTE9n.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BOXguUgn.js";import"./useDictOptions-Cs3sDB3M.js";const fe={class:"department"},ce=I({name:"department"}),at=I({...ce,setup(_e){const D=x(),_=x(),R=x();let b=!1;const w=V(!1),C=V([]),d=ue({status:"",name:""}),y=V(!1),u=async()=>{w.value=!0,C.value=await se(d),w.value=!1},S=()=>{var a;(a=R.value)==null||a.resetFields(),u()},$=async a=>{var e,n;y.value=!0,await E(),a&&((e=_.value)==null||e.setFormData({pid:a})),(n=_.value)==null||n.open("add")},q=async a=>{var e,n;y.value=!0,await E(),(e=_.value)==null||e.open("edit"),(n=_.value)==null||n.getDetail(a)},J=async a=>{await le.confirm("确定要删除?"),await ie({id:a}),u()},B=()=>{b=!b,N(C.value,b)},N=(a,e=!0)=>{var n;for(const r in a)(n=D.value)==null||n.toggleRowExpansion(a[r],e),a[r].children&&N(a[r].children,e)};return pe(async()=>{await u(),E(()=>{B()})}),(a,e)=>{const n=H,r=G,g=W,K=j,p=X,M=A,T=Y,O=ae,f=ee,Q=te,U=Z,k=me("perms"),z=oe;return m(),de("div",fe,[t(T,{class:"!border-none",shadow:"never"},{default:o(()=>[t(M,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(d),inline:!0},{default:o(()=>[t(r,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:o(()=>[t(n,{modelValue:i(d).name,"onUpdate:modelValue":e[0]||(e[0]=l=>i(d).name=l),placeholder:"输入部门名称",clearable:"",onKeyup:ne(u,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:o(()=>[t(K,{modelValue:i(d).status,"onUpdate:modelValue":e[1]||(e[1]=l=>i(d).status=l)},{default:o(()=>[t(g,{label:"全部",value:""}),t(g,{label:"正常",value:"1"}),t(g,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(r,null,{default:o(()=>[t(p,{type:"primary",onClick:u},{default:o(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(p,{onClick:S},{default:o(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(T,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[P("div",null,[v((m(),c(p,{type:"primary",onClick:e[2]||(e[2]=l=>$())},{icon:o(()=>[t(O,{name:"el-icon-Plus"})]),default:o(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[k,["dept.dept/add"]]]),t(p,{onClick:B},{default:o(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),v((m(),c(U,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(C),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:o(()=>[...e[8]||(e[8]=[P("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:o(({row:l})=>[s(L(l.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:o(({row:l})=>[t(Q,{class:"ml-2",type:l.status?"primary":"danger"},{default:o(()=>[s(L(l.status_desc),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"排序",prop:"sort","min-width":"100"}),t(f,{label:"更新时间",prop:"update_time","min-width":"180"}),t(f,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[v((m(),c(p,{type:"primary",link:"",onClick:h=>$(l.id)},{default:o(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/add"]]]),v((m(),c(p,{type:"primary",link:"",onClick:h=>q(l)},{default:o(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/edit"]]]),l.pid!==0?v((m(),c(p,{key:0,type:"danger",link:"",onClick:h=>J(l.id)},{default:o(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["dept.dept/delete"]]]):F("",!0)]),_:1})]),_:1},8,["data"])),[[z,i(w)]])]),_:1}),i(y)?(m(),c(re,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=l=>y.value=!1)},null,512)):F("",!0)])}}});export{at as default};
diff --git a/server/public/admin/assets/index-DVmnC6O3.js b/server/public/admin/assets/index-CaqmxTD1.js
similarity index 91%
rename from server/public/admin/assets/index-DVmnC6O3.js
rename to server/public/admin/assets/index-CaqmxTD1.js
index b72bd650..c7e5f7bb 100644
--- a/server/public/admin/assets/index-DVmnC6O3.js
+++ b/server/public/admin/assets/index-CaqmxTD1.js
@@ -1 +1 @@
-import{i as P,M as I,N as J,L as j,J as q}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as G,i as H}from"./index-B7JHxj4W.js";import{c as M,d as O}from"./role-TPUrhZWE.js";import{u as Q}from"./usePaging-VsbTxSU0.js";import{_ as U}from"./auth.vue_vue_type_script_setup_true_lang-BwibEL23.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_lang-BiHVIiSe.js";import{f as E,as as W,ak as l,I as g,a as t,aN as i,J as y,aP as u,G as m,O as c,H as $,n as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as X,q as D,n as x}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./menu-B-bVmON9.js";import"./index-CfViC04h.js";const Z={class:"role-lists"},ee={class:"mt-4"},te={class:"flex justify-end mt-4"},oe=E({name:"role"}),Ue=E({...oe,setup(ae){const f=D(),k=D(),_=x(!1),w=x(!1),{pager:p,getLists:d}=Q({fetchFun:M}),N=async()=>{var o;_.value=!0,await b(),(o=f.value)==null||o.open("add")},V=async o=>{var e,r;_.value=!0,await b(),(e=f.value)==null||e.open("edit"),(r=f.value)==null||r.setFormData(o)},R=async o=>{var e,r;w.value=!0,await b(),(e=k.value)==null||e.open(),(r=k.value)==null||r.setFormData(o)},S=o=>{const e=Number(o)||1;return{1:"全部数据(免隔离)",2:"本部门及下级部门",3:"仅本部门",4:"仅本人"}[e]||"全部数据(免隔离)"},B=async o=>{await H.confirm("确定要删除?"),await O({id:o}),d()};return d(),(o,e)=>{const r=G,v=P,n=J,L=I,T=z,A=q,h=W("perms"),F=j;return l(),g("div",Z,[t(A,{class:"!border-none",shadow:"never"},{default:i(()=>[y("div",null,[u((l(),m(v,{type:"primary",onClick:N},{icon:i(()=>[t(r,{name:"el-icon-Plus"})]),default:i(()=>[e[3]||(e[3]=c(" 新增 ",-1))]),_:1})),[[h,["auth.role/add"]]])]),u((l(),g("div",ee,[y("div",null,[t(L,{data:s(p).lists,size:"large"},{default:i(()=>[t(n,{prop:"id",label:"ID","min-width":"100"}),t(n,{prop:"name",label:"名称","min-width":"150"}),t(n,{prop:"desc",label:"备注","min-width":"150","show-overflow-tooltip":""}),t(n,{prop:"sort",label:"排序","min-width":"100"}),t(n,{label:"数据范围","min-width":"140"},{default:i(({row:a})=>[c(Y(S(a.data_scope)),1)]),_:1}),t(n,{prop:"num",label:"管理员人数","min-width":"100"}),t(n,{prop:"create_time",label:"创建时间","min-width":"180"}),t(n,{label:"操作",width:"200",fixed:"right"},{default:i(({row:a})=>[u((l(),m(v,{link:"",type:"primary",onClick:C=>V(a)},{default:i(()=>[...e[4]||(e[4]=[c(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"primary",onClick:C=>R(a)},{default:i(()=>[...e[5]||(e[5]=[c(" 分配权限 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"danger",onClick:C=>B(a.id)},{default:i(()=>[...e[6]||(e[6]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/delete"]]])]),_:1})]),_:1},8,["data"])]),y("div",te,[t(T,{modelValue:s(p),"onUpdate:modelValue":e[0]||(e[0]=a=>X(p)?p.value=a:null),onChange:s(d)},null,8,["modelValue","onChange"])])])),[[F,s(p).loading]])]),_:1}),s(_)?(l(),m(K,{key:0,ref_key:"editRef",ref:f,onSuccess:s(d),onClose:e[1]||(e[1]=a=>_.value=!1)},null,8,["onSuccess"])):$("",!0),s(w)?(l(),m(U,{key:1,ref_key:"authRef",ref:k,onSuccess:s(d),onClose:e[2]||(e[2]=a=>w.value=!1)},null,8,["onSuccess"])):$("",!0)])}}});export{Ue as default};
+import{i as P,M as I,N as J,L as j,J as q}from"./element-plus-DFTWCWyi.js";import{_ as z}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as G,i as H}from"./index-Dn8YPxC3.js";import{c as M,d as O}from"./role-BI_yirih.js";import{u as Q}from"./usePaging-VsbTxSU0.js";import{_ as U}from"./auth.vue_vue_type_script_setup_true_lang-CPsDAZOl.js";import{_ as K}from"./edit.vue_vue_type_script_setup_true_lang-DGX_Xe3h.js";import{f as E,as as W,ak as l,I as g,a as t,aN as i,J as y,aP as u,G as m,O as c,H as $,n as b}from"./@vue/runtime-core-C6bnekPw.js";import{y as s,a as X,q as D,n as x}from"./@vue/reactivity-DiY1c2vO.js";import{Q as Y}from"./@vue/shared-mAAVTE9n.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./menu-BeGYTbfT.js";import"./index-BOXguUgn.js";const Z={class:"role-lists"},ee={class:"mt-4"},te={class:"flex justify-end mt-4"},oe=E({name:"role"}),Ue=E({...oe,setup(ae){const f=D(),k=D(),_=x(!1),w=x(!1),{pager:p,getLists:d}=Q({fetchFun:M}),N=async()=>{var o;_.value=!0,await b(),(o=f.value)==null||o.open("add")},V=async o=>{var e,r;_.value=!0,await b(),(e=f.value)==null||e.open("edit"),(r=f.value)==null||r.setFormData(o)},R=async o=>{var e,r;w.value=!0,await b(),(e=k.value)==null||e.open(),(r=k.value)==null||r.setFormData(o)},S=o=>{const e=Number(o)||1;return{1:"全部数据(免隔离)",2:"本部门及下级部门",3:"仅本部门",4:"仅本人"}[e]||"全部数据(免隔离)"},B=async o=>{await H.confirm("确定要删除?"),await O({id:o}),d()};return d(),(o,e)=>{const r=G,v=P,n=J,L=I,T=z,A=q,h=W("perms"),F=j;return l(),g("div",Z,[t(A,{class:"!border-none",shadow:"never"},{default:i(()=>[y("div",null,[u((l(),m(v,{type:"primary",onClick:N},{icon:i(()=>[t(r,{name:"el-icon-Plus"})]),default:i(()=>[e[3]||(e[3]=c(" 新增 ",-1))]),_:1})),[[h,["auth.role/add"]]])]),u((l(),g("div",ee,[y("div",null,[t(L,{data:s(p).lists,size:"large"},{default:i(()=>[t(n,{prop:"id",label:"ID","min-width":"100"}),t(n,{prop:"name",label:"名称","min-width":"150"}),t(n,{prop:"desc",label:"备注","min-width":"150","show-overflow-tooltip":""}),t(n,{prop:"sort",label:"排序","min-width":"100"}),t(n,{label:"数据范围","min-width":"140"},{default:i(({row:a})=>[c(Y(S(a.data_scope)),1)]),_:1}),t(n,{prop:"num",label:"管理员人数","min-width":"100"}),t(n,{prop:"create_time",label:"创建时间","min-width":"180"}),t(n,{label:"操作",width:"200",fixed:"right"},{default:i(({row:a})=>[u((l(),m(v,{link:"",type:"primary",onClick:C=>V(a)},{default:i(()=>[...e[4]||(e[4]=[c(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"primary",onClick:C=>R(a)},{default:i(()=>[...e[5]||(e[5]=[c(" 分配权限 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/edit"]]]),u((l(),m(v,{link:"",type:"danger",onClick:C=>B(a.id)},{default:i(()=>[...e[6]||(e[6]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.role/delete"]]])]),_:1})]),_:1},8,["data"])]),y("div",te,[t(T,{modelValue:s(p),"onUpdate:modelValue":e[0]||(e[0]=a=>X(p)?p.value=a:null),onChange:s(d)},null,8,["modelValue","onChange"])])])),[[F,s(p).loading]])]),_:1}),s(_)?(l(),m(K,{key:0,ref_key:"editRef",ref:f,onSuccess:s(d),onClose:e[1]||(e[1]=a=>_.value=!1)},null,8,["onSuccess"])):$("",!0),s(w)?(l(),m(U,{key:1,ref_key:"authRef",ref:k,onSuccess:s(d),onClose:e[2]||(e[2]=a=>w.value=!1)},null,8,["onSuccess"])):$("",!0)])}}});export{Ue as default};
diff --git a/server/public/admin/assets/index-CcEuw9BZ.js b/server/public/admin/assets/index-CcEuw9BZ.js
deleted file mode 100644
index 286e47ef..00000000
--- a/server/public/admin/assets/index-CcEuw9BZ.js
+++ /dev/null
@@ -1 +0,0 @@
-import{J as j,D as z,B as G,P as H,Q as W,W as X,C as Y,i as Z,M as ee,N as te,L as ae}from"./element-plus-DFTWCWyi.js";import{_ as oe}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{c as ne,i as le}from"./index-B7JHxj4W.js";import{_ as ie}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{w as se}from"./@vue/runtime-dom-DDAG46FW.js";import{e as de,f as re}from"./finance-CMS0uhUU.js";import{u as me}from"./usePaging-VsbTxSU0.js";import{_ as pe}from"./edit.vue_vue_type_script_setup_true_lang-B7u_i2Pj.js";import{f as S,as as ce,ak as m,I as E,a as t,aN as n,J as r,F as _e,ap as ue,G as c,O as _,aP as k,H as fe,A as g,n as T}from"./@vue/runtime-core-C6bnekPw.js";import{Q as x}from"./@vue/shared-mAAVTE9n.js";import{y as a,a as ve,q as be,n as we,r as ke}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-CfViC04h.js";const ye={class:"account-cost-list"},he={class:"flex flex-wrap"},ge={class:"w-1/2 md:w-1/3"},xe={class:"text-4xl"},Ce={class:"w-1/2 md:w-1/3"},Ve={class:"text-4xl"},Ee={class:"flex justify-end mt-4"},Te=S({name:"accountCostList"}),wt=S({...Te,setup(Se){const v=be(),b=we(!1),l=ke({start_date:"",end_date:"",media_channel_code:"",dept_id:"",remark:""}),{pager:s,getLists:w,resetPage:y}=me({fetchFun:de,params:l}),C=g(()=>{const i=s.extend.media_channel_options;return Array.isArray(i)?i.map(e=>({code:String(e.code||""),name:String(e.name||"")})):[]}),V=g(()=>{const i=s.extend.dept_options;return Array.isArray(i)?i:[]}),D=g(()=>String(s.extend.default_media_channel_code||"")),P={value:"id",label:"name",children:"children"},$=async()=>{var i;b.value=!0,await T(),(i=v.value)==null||i.open("add")},A=async i=>{var e,p;b.value=!0,await T(),(e=v.value)==null||e.open("edit"),(p=v.value)==null||p.getDetail(i)},B=async i=>{await le.confirm("确定要删除这条账户消耗记录吗?"),await re({id:i}),w()},L=()=>{l.start_date="",l.end_date="",l.media_channel_code="",l.dept_id="",l.remark="",y()};return w(),(i,e)=>{const p=j,N=ie,u=G,U=W,F=H,R=X,O=Y,f=Z,I=z,K=ne,d=te,q=ee,J=oe,h=ce("perms"),M=ae;return m(),E("div",ye,[t(p,{class:"!border-none mb-4",shadow:"never"},{default:n(()=>[r("div",he,[r("div",ge,[e[7]||(e[7]=r("div",{class:"leading-10"},"当前筛选天数",-1)),r("div",xe,x(a(s).extend.days_count??0),1)]),r("div",Ce,[e[8]||(e[8]=r("div",{class:"leading-10"},"累计账户消耗 (元)",-1)),r("div",Ve,"¥"+x(a(s).extend.total_amount??"0.00"),1)])])]),_:1}),t(p,{class:"!border-none",shadow:"never"},{default:n(()=>[t(I,{class:"mb-[-16px]",model:a(l),inline:""},{default:n(()=>[t(u,{label:"日期范围"},{default:n(()=>[t(N,{startTime:a(l).start_date,"onUpdate:startTime":e[0]||(e[0]=o=>a(l).start_date=o),endTime:a(l).end_date,"onUpdate:endTime":e[1]||(e[1]=o=>a(l).end_date=o)},null,8,["startTime","endTime"])]),_:1}),t(u,{label:"自媒体渠道"},{default:n(()=>[t(F,{modelValue:a(l).media_channel_code,"onUpdate:modelValue":e[2]||(e[2]=o=>a(l).media_channel_code=o),placeholder:"筛选全部渠道",clearable:"",filterable:"",class:"w-[220px]"},{default:n(()=>[(m(!0),E(_e,null,ue(a(C),o=>(m(),c(U,{key:o.code,label:o.name,value:o.code},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(u,{label:"部门"},{default:n(()=>[t(R,{modelValue:a(l).dept_id,"onUpdate:modelValue":e[3]||(e[3]=o=>a(l).dept_id=o),data:a(V),"node-key":"id",props:P,"default-expand-all":!0,"check-strictly":"",placeholder:"筛选全部部门",clearable:"",filterable:"",class:"w-[220px]"},null,8,["modelValue","data"])]),_:1}),t(u,{class:"w-[280px]",label:"备注/维护人"},{default:n(()=>[t(O,{modelValue:a(l).remark,"onUpdate:modelValue":e[4]||(e[4]=o=>a(l).remark=o),placeholder:"备注 / 创建人 / 修改人",clearable:"",onKeyup:se(a(y),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(u,null,{default:n(()=>[t(f,{type:"primary",onClick:a(y)},{default:n(()=>[...e[9]||(e[9]=[_("查询",-1)])]),_:1},8,["onClick"]),t(f,{onClick:L},{default:n(()=>[...e[10]||(e[10]=[_("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(p,{class:"!border-none mt-4",shadow:"never"},{default:n(()=>[r("div",null,[k((m(),c(f,{type:"primary",onClick:$},{icon:n(()=>[t(K,{name:"el-icon-Plus"})]),default:n(()=>[e[11]||(e[11]=_(" 新增 ",-1))]),_:1})),[[h,["finance.account_cost/add"]]])]),k((m(),c(q,{class:"mt-4",size:"large",data:a(s).lists},{default:n(()=>[t(d,{label:"日期",prop:"cost_date","min-width":"120"}),t(d,{label:"自媒体渠道",prop:"media_channel_name","min-width":"120"}),t(d,{label:"部门",prop:"dept_name","min-width":"140"}),t(d,{label:"账户消耗","min-width":"120"},{default:n(({row:o})=>[_("¥"+x(o.amount),1)]),_:1}),t(d,{label:"备注",prop:"remark","min-width":"260","show-overflow-tooltip":""}),t(d,{label:"创建人",prop:"creator_name","min-width":"100"}),t(d,{label:"最后修改人",prop:"updater_name","min-width":"100"}),t(d,{label:"更新时间",prop:"update_time","min-width":"180"}),t(d,{label:"操作",width:"160",fixed:"right"},{default:n(({row:o})=>[k((m(),c(f,{type:"primary",link:"",onClick:Q=>A(o)},{default:n(()=>[...e[12]||(e[12]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["finance.account_cost/edit"]]]),k((m(),c(f,{type:"danger",link:"",onClick:Q=>B(o.id)},{default:n(()=>[...e[13]||(e[13]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["finance.account_cost/delete"]]])]),_:1})]),_:1},8,["data"])),[[M,a(s).loading]]),r("div",Ee,[t(J,{modelValue:a(s),"onUpdate:modelValue":e[5]||(e[5]=o=>ve(s)?s.value=o:null),onChange:a(w)},null,8,["modelValue","onChange"])])]),_:1}),a(b)?(m(),c(pe,{key:0,ref_key:"editRef",ref:v,"media-channel-options":a(C),"dept-options":a(V),"default-media-channel-code":a(D),onSuccess:a(w),onClose:e[6]||(e[6]=o=>b.value=!1)},null,8,["media-channel-options","dept-options","default-media-channel-code","onSuccess"])):fe("",!0)])}}});export{wt as default};
diff --git a/server/public/admin/assets/index-Cn4DxyYB.js b/server/public/admin/assets/index-Cj_xjp4L.js
similarity index 97%
rename from server/public/admin/assets/index-Cn4DxyYB.js
rename to server/public/admin/assets/index-Cj_xjp4L.js
index 0de6238a..09aa16a8 100644
--- a/server/public/admin/assets/index-Cn4DxyYB.js
+++ b/server/public/admin/assets/index-Cj_xjp4L.js
@@ -1,5 +1,5 @@
-const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DQHnz0FF.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DAroNjl9.js","assets/index-B7JHxj4W.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-B4YuMuOA.js","assets/DailyMatrix-BLGQEXFv.js","assets/picker-C3_ymTuH.js","assets/index-CfViC04h.js","assets/index-B3imPWFk.css","assets/index-DevmXUeT.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-DB9D3_w0.js","assets/index-D0f1Mn00.css","assets/index-CUGvV7XN.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-BCYsLPcQ.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-Mohqk5Co.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-_gevAkBd.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-CSnapG0K.js","assets/RecordingPlaybackBlock-Bh86XnvX.js","assets/RecordingVideoPlayer-DvvHvEgB.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DsPRzjgI.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-CL3PKEyI.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-C9DXrr_z.js","assets/doctor-BNAGA_m3.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-BmJXshPQ.js","assets/patient-29zo_Hnk.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-Bazo8gx9.js","assets/PatientOrderList-CNDUDncc.css","assets/index-ClvAwKMf.js","assets/index-e632Hvg_.js","assets/medicine-x2QLX8Qn.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-DGbIWVjL.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
-import{_ as ml,E as _l}from"./jspdf-BsthCvR5.js";import{G as cl,F as fl,D as gl,B as vl,C as bl,P as yl,Q as xl,i as kl,J as Vl,L as hl,M as wl,N as Nl,T as Sl,K as Cl,a4 as Pl,a5 as $l,I as Ul,h as Dl,a2 as Rl,e as Tl,V as El,a6 as Ol,a7 as Al,a8 as Ll,g as Fl,r as Il,X as zl}from"./element-plus-DFTWCWyi.js";import{_ as jl}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{u as Ml,c as Hl,i as N,m as Wl,_ as ql}from"./index-B7JHxj4W.js";import{w as ot,s as Ve,q as rt}from"./@vue/runtime-dom-DDAG46FW.js";import{g as Yl,p as Bl,b as Gl,c as it,d as Jl,e as Kl,f as Ql,h as Xl,i as Zl,j as es,k as ts,l as as}from"./tcm-DAroNjl9.js";import{m as ls}from"./medicine-x2QLX8Qn.js";import{r as ss}from"./role-TPUrhZWE.js";import{u as ns}from"./usePaging-VsbTxSU0.js";import{_ as os}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{M as rs}from"./index-e632Hvg_.js";import{T as is,M as us,U as ds,N as ps}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as ms}from"./vue-router-QlpZ4wdW.js";import _s from"./html2canvas-QH1iLAAe.js";import{f as At,w as Oe,b as cs,as as fs,ak as _,I as b,a,aN as s,J as r,O as c,F as I,ap as Z,G as k,aP as E,H as y,P as gs,A as T,n as ee}from"./@vue/runtime-core-C6bnekPw.js";import{y as A,a as vs,r as he,n as v}from"./@vue/reactivity-DiY1c2vO.js";import{Q as f,o as bs}from"./@vue/shared-mAAVTE9n.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ys={class:"prescription-list"},xs={class:"pl-toolbar"},ks={class:"pl-toolbar__line"},Vs={class:"pl-toolbar__line pl-toolbar__line--second"},hs={class:"pl-toolbar__actions"},ws={class:"pl-table-head"},Ns={class:"flex items-center gap-2"},Ss={class:"mt-3"},Cs={class:"font-medium"},Ps={class:"text-xs text-gray-400 mt-0.5"},$s={key:1,class:"text-gray-400 text-sm"},Us={class:"font-medium"},Ds={class:"text-xs text-gray-500 mt-0.5"},Rs={class:"flex flex-col gap-1"},Ts={class:"flex flex-wrap items-center gap-1"},Es={key:0,class:"text-xs text-gray-500"},Os=["title"],As={key:1,class:"text-gray-400"},Ls={class:"font-medium"},Fs={class:"text-xs text-gray-500 mt-0.5"},Is={class:"text-sm"},zs={class:"flex mt-2 justify-end"},js={key:0,class:"rx-wrap"},Ms={class:"rx-toolbar"},Hs={key:0,class:"rx-status rx-status-danger"},Ws={key:1,class:"rx-status rx-status-danger"},qs={key:0,class:"mt-1"},Ys={key:2,class:"rx-status rx-status-danger"},Bs={key:0,class:"mt-1"},Gs={class:"rx-notice"},Js={class:"rx-notice-meta"},Ks={class:"rx-info"},Qs={class:"rx-info-row"},Xs={class:"rx-info-cell"},Zs={class:"rx-val"},en={class:"rx-info-cell"},tn={class:"rx-val"},an={class:"rx-info-cell"},ln={class:"rx-val"},sn={class:"rx-info-cell"},nn={class:"rx-val"},on={class:"rx-info-row rx-info-row-full"},rn={class:"rx-info-cell"},un={class:"rx-val"},dn={class:"rx-info-row rx-info-row-full"},pn={class:"rx-info-cell"},mn={class:"rx-val"},_n={class:"rx-rp"},cn={class:"rx-herbs"},fn={class:"rx-herb-name"},gn={class:"rx-herb-total"},vn={class:"rx-text"},bn={key:0},yn={key:1},xn={key:2,class:"rx-text-warn"},kn={key:3,class:"rx-text-warn"},Vn={class:"rx-bottom"},hn={class:"rx-bot-row rx-bot-row-1"},wn={class:"rx-bot-cell rx-bot-stack rx-bot-doctor"},Nn={class:"rx-bot-doctor-body"},Sn=["src"],Cn={class:"rx-bot-doctor-name"},Pn={class:"rx-bot-cell rx-bot-meta"},$n={class:"rx-bot-meta-val"},Un={class:"rx-bot-cell rx-bot-meta"},Dn={class:"rx-bot-meta-val"},Rn={class:"rx-bot-cell rx-bot-meta"},Tn={class:"rx-bot-meta-val"},En={key:4,class:"rx-audit"},On={key:0},An={key:0,class:"ml-2 text-gray-400"},Ln={key:1,class:"mt-1"},Fn={class:"text-sm mt-1"},In={key:0,class:"text-sm mt-2 text-gray-800 font-medium"},zn={key:5,class:"mb-3 flex flex-wrap items-center gap-2 pl-[120px]"},jn={class:"text-xs text-gray-400"},Mn={class:"w-full"},Hn={class:"flex flex-wrap items-center gap-2"},Wn={class:"mt-2"},qn={class:"text-sm mt-1 leading-relaxed"},Yn={key:0,class:"mb-1.5"},Bn={class:"font-mono text-primary"},Gn={class:"mb-1.5"},Jn={class:"whitespace-pre-wrap"},Kn={key:1,class:"text-gray-600"},Qn={class:"signature-pad-wrap"},Xn={class:"signature-actions"},Zn={class:"text-gray-700"},eo={class:"create-order-dialog__inner"},to={key:0,class:"create-order-rx-card"},ao={class:"create-order-rx-card__head"},lo={class:"create-order-rx-card__meta"},so={class:"create-order-rx-card__id"},no={key:0,class:"create-order-rx-card__sn"},oo={class:"create-order-rx-card__patient"},ro={class:"create-order-step-lead"},io={class:"create-order-step-panel"},uo={class:"create-order-step-panel"},po={class:"flex items-center gap-1 w-full"},mo={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},_o={class:"flex items-center justify-between"},co={class:"font-medium text-[13px] text-gray-800"},fo={class:"text-orange-500 font-medium ml-4"},go={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},vo={class:"truncate pr-2"},bo={class:"shrink-0"},yo={class:"create-order-pay-hint text-gray-500"},xo={class:"text-amber-600 font-medium"},ko={class:"create-order-step-panel"},Vo={class:"create-order-deposit-bar__cell"},ho={class:"create-order-deposit-bar__sub"},wo={class:"create-order-deposit-bar__cell"},No={class:"create-order-deposit-bar__sub"},So={class:"create-order-footer"},Co={class:"create-order-footer__hint"},Po={class:"create-order-footer__step"},$o={key:0,class:"create-order-footer__warn"},Uo={class:"create-order-footer__actions"},Do={class:"mb-4"},Ro={key:0},To={key:1,class:"text-gray-400"},Eo={class:"flex justify-end mt-4"},Oo={class:"mt-3 flex flex-wrap items-center gap-x-4 gap-y-2"},Ao=At({name:"prescriptionList"}),Lo=At({...Ao,setup(Fo){const Lt=gs(()=>ml(()=>import("./edit-DQHnz0FF.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]))),re=Ml(),ut=ms();function Ft(){const t=ut.getRoutes().find(e=>{var o;return((o=e.meta)==null?void 0:o.perms)==="tcm.prescriptionOrder/lists"});t!=null&&t.path?ut.push(t.path):N.msgWarning("未配置「处方业务订单」菜单,请在权限管理中执行菜单 SQL 或手动添加路由")}const w=he({sn:"",patient_name:"",creator_ids:[],audit_filter:"all",source_filter:"all",start_time:"",end_time:""}),Ae=v([]),M=v("all"),Y=v(!1),D=v("add"),Le=v(!1),J=v(),H=v(),ie=v(null),te=560,ae=168,g=v(null),Fe=v(!1),dt=v([]),ue=v(!1),pt=v(0),le=v(""),we=v(!1),de=v(!1),Ie=v(!1),ze=v(),$=he({id:0,patient_name:"",gender:1,phone:""}),It={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function zt(t){$.id=Number(t.id)||0,$.patient_name=String(t.patient_name??"").trim();const e=Number(t.gender);$.gender=e===0||e===1?e:1,$.phone=String(t.phone??"").trim(),de.value=!0}function jt(){var t;$.id=0,$.patient_name="",$.gender=1,$.phone="",(t=ze.value)==null||t.clearValidate()}async function Mt(){const t=ze.value;if(t){try{await t.validate()}catch{return}Ie.value=!0;try{await Bl({id:$.id,patient_name:$.patient_name.trim(),phone:$.phone.trim(),gender:$.gender}),N.msgSuccess("已保存"),de.value=!1,K()}catch(e){const o=e&&typeof e=="object"&&"msg"in e?String(e.msg):"";N.msgError(o||"保存失败")}finally{Ie.value=!1}}}const pe=v(!1),R=v(0),Ht=T(()=>["请核对诊单患者并填写完整收货信息,便于发货与物流联系。","按需填写服务相关信息,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;提交前请对照定金门槛是否已满足。"][R.value]??""),Wt=["patient_id","recipient_name","recipient_phone","region","shipping_address"],z=v(null),me=v(),je=v(!1),Me=v(!1),B=v([]),se=v([]),He=v(!1),U=v(0);function ne(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function mt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const m=he({patient_id:"",recipient_name:"",recipient_phone:"",region:[],shipping_address:"",is_follow_up:0,medication_days:void 0,prev_staff:"",service_channel:"",service_package:[],express_company:"auto",tracking_number:"",fee_type:3,amount:0,internal_cost:void 0,remark_extra:"",remark_assistant:"",pay_order_ids:[]}),_e=v([]),We=v([]),qt=t=>t.map(e=>{var o;return{name:e.province,code:e.code,children:((o=e.citys)==null?void 0:o.map(u=>{var p;return{name:u.city,code:u.code,children:((p=u.areas)==null?void 0:p.map(d=>({name:d.area,code:d.code})))||[]}}))||[]}}),Yt=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const o=await e.json();console.log("加载的数据条数:",o==null?void 0:o.length),_e.value=qt(o),console.log("regionOptions 已设置,条数:",_e.value.length)}catch(t){console.error("加载省市区数据失败:",t),_e.value=[{name:"四川省",children:[{name:"成都市",children:[{name:"锦江区"},{name:"青羊区"},{name:"金牛区"},{name:"武侯区"},{name:"成华区"},{name:"龙泉驿区"},{name:"青白江区"},{name:"新都区"},{name:"温江区"},{name:"双流区"}]},{name:"绵阳市",children:[{name:"涪城区"},{name:"游仙区"},{name:"安州区"}]}]},{name:"北京市",children:[{name:"北京市",children:[{name:"东城区"},{name:"西城区"},{name:"朝阳区"},{name:"丰台区"},{name:"海淀区"}]}]},{name:"上海市",children:[{name:"上海市",children:[{name:"黄浦区"},{name:"徐汇区"},{name:"长宁区"},{name:"静安区"},{name:"普陀区"}]}]},{name:"广东省",children:[{name:"广州市",children:[{name:"荔湾区"},{name:"越秀区"},{name:"海珠区"},{name:"天河区"},{name:"白云区"}]},{name:"深圳市",children:[{name:"罗湖区"},{name:"福田区"},{name:"南山区"},{name:"宝安区"}]}]}],console.log("使用后备数据,条数:",_e.value.length)}},Bt=async()=>{try{const t=await Wl({type:"server_order"});We.value=((t==null?void 0:t.server_order)||[]).filter(e=>e.status!==0)}catch{We.value=[]}},Gt=t=>{console.log("选择的省市区:",t)},qe=T(()=>{const t=new Set(m.pay_order_ids.map(o=>Number(o)));let e=0;for(const o of se.value)t.has(Number(o.id))&&(e+=Number(o.amount)||0);return Math.round(e*100)/100}),Jt=T(()=>{const t=U.value;return t>0?Math.round(t*100)/100:0}),Kt=T(()=>{const t={patient_id:[{required:!0,message:"请选择诊单患者",trigger:"change"}],recipient_name:[{required:!0,message:"请输入收货人",trigger:"blur"}],recipient_phone:[{required:!0,message:"请输入收货手机",trigger:"blur"}],region:[{required:!0,message:"请选择省/市/区",trigger:"change",type:"array"}],shipping_address:[{required:!0,message:"请输入收货地址",trigger:"blur"}],fee_type:[{required:!0,message:"请选择费用类别",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(e,o,u)=>{const p=U.value,d=Number(o);if(p>0&&(!Number.isFinite(d)||dNumber(U)).filter(U=>!Number.isNaN(U)):[],_.internal_cost=n.internal_cost!=null&&n.internal_cost!==""?Number(n.internal_cost):void 0,await ul(_.diagnosis_id,_.id),Ot(()=>{var U;(U=we.value)==null||U.clearValidate()})}catch(e){A.msgError((e==null?void 0:e.message)||"加载异常"),fe.value=!1}finally{Kt.value=!1}}async function fl(){if(!(!we.value||L.value!==2)){await we.value.validate(),Yt.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 ls(t),A.msgSuccess("保存成功"),fe.value=!1,K()}catch{}finally{Yt.value=!1}}}const Ue=x(!1),Zt=x("prescription"),_t=x(0),Fe=x(null),Ve=x(""),mt=x(!1),vl=V(()=>Zt.value==="prescription"?"处方业务审核":"关联支付单审核");function $a(t,e){Zt.value=e,_t.value=t.id,Fe.value=t,Ve.value="",Ue.value=!0}async function Da(t){if(t==="reject"&&!Ve.value.trim()){A.msgError("驳回或阻止时必须填写明确的审核意见");return}mt.value=!0;try{const e={id:_t.value,action:t,remark:Ve.value.trim()};if(Zt.value==="prescription"?await ti(e):await ai(e),A.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),Ue.value=!1,K(),J.value&&_t.value)try{const n=await Z({id:_t.value}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}finally{mt.value=!1}}async function gl(t){try{await Je.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await si({id:t.id}),A.msgSuccess("撤回成功"),K()}catch{}}const za=x(0),ft=x(!1),Se=x(!1),z=x(null);function Ua(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 yl(t,e){const n=parseFloat(Ua(t))||0,u=Number(e)||0;return u<=0?"—":(n/u*100).toFixed(2)}function bl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((n,u)=>n+(Number(u.quantity)||0),0).toFixed(0)}async function xl(){if(!_.id){A.msgError("请先保存订单");return}Se.value=!0;try{const t=await ns({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,ft.value=!0,A.msgSuccess("预下单测试成功"))}catch{}finally{Se.value=!1}}async function kl(){var t;if(!((t=c.value)!=null&&t.id)){A.msgError("订单数据不存在");return}Se.value=!0;try{const e=await ns({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&&(z.value=n,ft.value=!0)}catch{}finally{Se.value=!1}}async function hl(t){var e;try{await Je.confirm("将把本单关联处方提交至甘草药管家开放平台(先 CTM_PREVIEW 预检查再 CTM_SUBMIT_RECIPEL 正式下单;成功后将按甘草侧规则扣费,详见 https://apidoc.igancao.com/service-doc/scm-outer-recipel.html )。确定继续?","上传甘草药方",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),za.value=t.id;const n=await li({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(A.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}),k=(f==null?void 0:f.data)??f??null;k&&(c.value=k)}catch{}}catch{}finally{za.value=0}}xi(async()=>{await gs(),await ys(),await fs(),K()});const je=x(!1),vt=x(!1),Ie=x(0),X=be({express_company:"auto",tracking_number:""});function wl(t){Ie.value=t.id,X.express_company=String(t.express_company||"auto")||"auto",X.tracking_number=String(t.tracking_number||""),je.value=!0}async function Fa(){var t;if(!X.tracking_number.trim()){A.msgError("请填写快递单号");return}vt.value=!0;try{const e=await Z({id:Ie.value}),n=(e==null?void 0:e.data)??e;if(!n){A.msgError("加载订单数据失败");return}if(await ls({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()}),A.msgSuccess("快递单号已保存"),je.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===Ie.value)try{const u=await Z({id:Ie.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 Je.confirm(`快递单号「${X.tracking_number}」已保存,是否立即确认发货?`,"确认发货",{type:"success",confirmButtonText:"确认发货",cancelButtonText:"稍后再说"}),ea({id:Ie.value,tracking_number:X.tracking_number,express_company:X.express_company})}catch{}}catch{}finally{vt.value=!1}}const Le=x(!1),gt=x(!1),yt=x(0),Y=be({ship_mode:"gancao",express_company:"auto",tracking_number:""});function ea(t){yt.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||""),Le.value=!0}async function ja(){var t;if(!Y.tracking_number.trim()){A.msgError("请先填写快递单号再确认发货");return}gt.value=!0;try{if(await ni({id:yt.value,ship_mode:Y.ship_mode==="direct"?"direct":"gancao",express_company:Y.express_company||"auto",tracking_number:Y.tracking_number.trim()}),A.msgSuccess("确认发货成功,订单已进入「已发货」状态"),Le.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===yt.value)try{const e=await Z({id:yt.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{gt.value=!1}}const Vl=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],qe=x(!1),ta=x(0),bt=x(3),aa=x(!1);async function Sl(){var e;const t=ta.value;if(t){aa.value=!0;try{if(await ii({id:t,fulfillment_status:bt.value}),A.msgSuccess("订单状态已更新"),qe.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{aa.value=!1}}}const Me=x(!1),xt=x(!1),Be=x(0),kt=x(),sa=x(!1),ht=x([]),O=be({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),Nl={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 Cl(t,e=[]){var n;if(!t){ht.value=[];return}try{sa.value=!0;const u=await ua({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(k=>!e.includes(k.id)):[];ht.value=f}catch{ht.value=[]}finally{sa.value=!1}}function Ia(t){var u,d;Be.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,Me.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&&Cl(e,n)}async function Pl(){var t;if(kt.value){await kt.value.validate(),xt.value=!0;try{if(O.add_mode==="create")await ri({id:Be.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 oi({id:Be.value,pay_order_ids:e,completion_request:O.completion_request}),A.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}if(Me.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===Be.value)try{const e=await Z({id:Be.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{xt.value=!1}}}function La(t){ta.value=t.id,bt.value=3,qe.value=!0}async function Al(t){var e;try{if(await Je.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await ui({id:t.id}),A.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 Tl(t){var e;try{if(await Je.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await di({id:t.id}),A.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 wt=x(!1),Vt=x(!1),h=x(null),qa=x(null),Ne=x(!1),St=V(()=>{var e;const t=(e=h.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),Ol=V(()=>{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}),Nt=t=>String(t).padStart(2,"0"),Rl=V(()=>{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()}-${Nt(u.getMonth()+1)}-${Nt(u.getDate())} ${Nt(u.getHours())}:${Nt(u.getMinutes())}`}return t.prescription_date||"—"}),El=V(()=>{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||"—"}),$l=V(()=>{const t=h.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),Ma=V(()=>{const t=h.value;return t?String(t.order_no??"").trim():""}),Dl=V(()=>{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(","):"—"}),Ba=V(()=>{var e;const t=Number((e=h.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),zl=V(()=>{const e=St.value.reduce((n,u)=>n+(Number(u==null?void 0:u.dosage)||0),0);return He(e)}),Ul=t=>{const e=Number(t)||0;return He(e*Ba.value)},Fl=V(()=>{const t=h.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),jl=V(()=>{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||"",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(`每袋${n}${u}`)}else k.push(`一次${n}${u}`);return k.push(d),f&&k.push(f),k.join(", ")}),Il=V(()=>{const t=Ol.value;if(typeof t=="number"&&isFinite(t)&&t>0)return He(t);const e=h.value;if(!e)return"";const n=e.out_pellet||e.total_weight;if(n&&Number(n)>0)return He(Number(n));const u=St.value;if(!u.length)return"";const d=u.reduce((f,k)=>f+(Number(k==null?void 0:k.dosage)||0),0);return He(d*Ba.value)}),Ha=V(()=>{const t=h.value;return t&&t.medical_advice||""}),Ga=V(()=>{const t=h.value;if(!t)return"";const e=[];return e.push(`共${St.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Wa=V(()=>{const t=h.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),Ka=V(()=>{const t=Il.value;return t?`${t}克`:""});function He(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function Ya(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 Ll(t){return t?Ya(t):"—"}function ql(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function Ml(t){return t==null||t===""?"—":`${t}岁`}function Bl(){Qa(_)}async function Qa(t){if(!t.prescription_id){A.msgWarning("该订单未关联处方");return}wt.value=!0,Vt.value=!0,h.value=null;try{const e=await pi({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){A.msgError((e==null?void 0:e.message)||"加载处方详情失败"),wt.value=!1}finally{Vt.value=!1}}async function Hl(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(),k=await new Promise((y,F)=>{const Q=new FileReader;Q.onload=()=>y(Q.result),Q.onerror=F,Q.readAsDataURL(f)});u.src=k}catch{}});await Promise.allSettled(n)}async function Ja(){await Ot();const t=qa.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Hl(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),_i(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 Xa(){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 Gl(){if(h.value){Ne.value=!0;try{const t=await Ja(),e=document.createElement("a");e.download=`${Xa()}.png`,e.href=t.toDataURL("image/png"),e.click(),A.msgSuccess("图片已下载")}catch{A.msgError("下载图片失败")}finally{Ne.value=!1}}}async function Wl(){if(h.value){Ne.value=!0;try{const t=await Ja(),e=t.toDataURL("image/jpeg",.95),n=new Zl({orientation:"portrait",unit:"mm",format:"a4"}),u=210,d=297,f=u,k=t.height*f/t.width;if(k<=d)n.addImage(e,"JPEG",0,0,f,k);else{let y=k,F=0;for(;y>0;)n.addImage(e,"JPEG",0,F,f,k),y-=d,F-=d,y>0&&n.addPage()}n.save(`${Xa()}.pdf`),A.msgSuccess("PDF已下载")}catch{A.msgError("下载PDF失败")}finally{Ne.value=!1}}}return(t,e)=>{const n=en,u=tn,d=sn,f=nn,k=rn,y=un,F=on,Q=dn,w=pn,U=ln,re=cn,ve=fn,Ct=mn,Za=_n,la=jn,Ge=vn,le=gn,oe=bn,We=yn,E=kn,pe=xn,S=wn,Ke=hn,D=Sn,Pt=Vn,na=Nn,es=Pn,ts=Cn,ia=An,Ce=Tn,ce=On,as=Rn,Kl=En,Yl=Dn,Ql=$n,Jl=zn,Pe=Fn,ra=Un,ge=an,q=ki("perms");return o(),m("div",Vi,[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",Si,[_e.value?(o(),m("div",Ni,[e[85]||(e[85]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),m($,null,B(Ss,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=>Cs(i.value)},[a("span",Pi,r(i.label),1)],10,Ci)),64))])):v("",!0),a("div",Ai,[e[86]||(e[86]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),m($,null,B(Ns,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=>Ps(i.value)},[a("span",Oi,r(i.label),1)],10,Ti)),64))]),a("div",Ri,[e[87]||(e[87]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),m($,null,B(bs,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=>xs(i.value)},[a("span",$i,r(i.label),1)],10,Ei)),64))]),a("div",Di,[e[88]||(e[88]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),m($,null,B(ks,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=>hs(i.value)},[a("span",Ui,r(i.label),1)],10,zi)),64))]),a("div",Fi,[e[89]||(e[89]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),m($,null,B(ws,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=>Vs(i.value)},[a("span",Ii,r(i.label),1)],10,ji)),64))])])]),_:1}),s(n,{class:"po-h5-surface po-filter-card !mb-3 !border-none shadow-none",shadow:"never"},{default:l(()=>[T((o(),m("div",Li,[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",Mi,[a("div",null,[a("div",Bi,[s(u,{size:16,class:"text-sky-500"},{default:l(()=>[s(R(In))]),_:1}),p(" "+r(ne.value.orderHeading),1)]),a("div",Hi,[a("div",Gi," ¥"+r(ne.value.orderPerformanceStr),1),a("div",Wi,[a("span",null,"合计 ¥"+r(ne.value.orderStr),1),a("span",Ki,"已取消 ¥"+r(ne.value.orderCancelledStr),1)])])]),a("div",Yi,[s(u,{size:20},{default:l(()=>[s(R(Ln))]),_:1})])]),a("p",Qi,r(ne.value.periodLine),1)]),a("div",Ji,[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",Xi,[a("div",null,[a("div",Zi,[s(u,{size:16,class:"text-emerald-500"},{default:l(()=>[s(R(qn))]),_:1}),p(" "+r(ne.value.payHeading),1)]),a("div",er,[a("div",tr," ¥"+r(ne.value.payPerformanceStr),1),a("div",ar,[a("span",null,"合计 ¥"+r(ne.value.payStr),1),a("span",sr,"已取消 ¥"+r(ne.value.payCancelledStr),1)])])]),a("div",lr,[s(u,{size:20},{default:l(()=>[s(R(Mn))]),_:1})])]),a("p",nr,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=>nt.value=!nt.value)},[a("div",ir,[s(u,null,{default:l(()=>[s(R(oa))]),_:1}),e[92]||(e[92]=a("span",null,"筛选条件",-1)),xa.value>0?(o(),g(d,{key:0,size:"small",type:"primary",effect:"dark",round:""},{default:l(()=>[p(r(xa.value),1)]),_:1})):v("",!0)]),s(u,{class:I(["po-filter-toggle__arrow",{"is-open":!nt.value}])},{default:l(()=>[s(R(ss))]),_:1},8,["class"])]),T(s(U,{class:"ls-form",model:b,inline:""},{default:l(()=>[s(f,{class:"w-[360px] min-w-[240px] max-w-full",label:"创建时间"},{default:l(()=>[s(Kn,{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(k,{modelValue:b.order_no,"onUpdate:modelValue":e[3]||(e[3]=i=>b.order_no=i),placeholder:"业务订单号",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[140px]",label:"处方ID"},{default:l(()=>[s(k,{modelValue:b.prescription_id,"onUpdate:modelValue":e[4]||(e[4]=i=>b.prescription_id=i),placeholder:"处方ID",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"患者"},{default:l(()=>[s(k,{modelValue:b.patient_keyword,"onUpdate:modelValue":e[5]||(e[5]=i=>b.patient_keyword=i),placeholder:"姓名 / 手机号",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"快递"},{default:l(()=>[s(k,{modelValue:b.express_keyword,"onUpdate:modelValue":e[6]||(e[6]=i=>b.express_keyword=i),placeholder:"快递单号 / 公司",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[200px]",label:"医生"},{default:l(()=>[s(F,{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($,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:et.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:_s,placeholder:"医助部门(选父级含子级)",onChange:Os},null,8,["modelValue","data"])]),_:1}),s(f,{class:"w-[200px]",label:"医助"},{default:l(()=>[s(F,{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($,null,B(ma.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:Rs},{default:l(()=>[...e[94]||(e[94]=[p("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),[[At,!nt.value]])]),_:1}),T((o(),g(n,{class:"po-h5-surface po-table-card !mt-0 !border-none shadow-none",shadow:"never"},{default:l(()=>[a("div",rr,[a("div",or,[a("div",ur,[e[96]||(e[96]=a("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),a("span",dr,"共 "+r(R(te).count)+" 条",1)]),a("div",pr,[a("div",{class:I(["po-focus-board__item is-pending-rx",{"is-active":ee.value==="pendingRx"}]),onClick:e[10]||(e[10]=i=>tt("pendingRx"))},[e[97]||(e[97]=a("span",{class:"po-focus-board__label"},"待处方审核",-1)),a("strong",cr,r(at.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=>tt("pendingPay"))},[e[98]||(e[98]=a("span",{class:"po-focus-board__label"},"待支付审核",-1)),a("strong",_r,r(at.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=>tt("pendingShip"))},[e[99]||(e[99]=a("span",{class:"po-focus-board__label"},"待发货",-1)),a("strong",mr,r(at.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=>tt("risk"))},[e[100]||(e[100]=a("span",{class:"po-focus-board__label"},"重点异常",-1)),a("strong",fr,r(at.value.risk),1)],2)])])]),a("div",vr,[!R(te).lists.length&&!R(te).loading?(o(),g(re,{key:0,description:"暂无订单","image-size":88})):v("",!0),(o(!0),m($,null,B(R(te).lists,i=>(o(),m("div",{key:i.id,class:I(["po-card",{"po-card--focus":st&&st({row:i})==="po-row-focus","po-card--risk":st&&st({row:i})==="po-row-risk"}]),onClick:P=>Oa(i.id)},[a("div",yr,[a("div",br,[a("span",xr,r(i.order_no||"—"),1)]),a("div",kr,[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",hr,"#"+r(i.id),1)])]),dt(i.recipient_phone,i.prescription_phone)?(o(),m("div",wr,[s(u,null,{default:l(()=>[s(R(Bn))]),_:1}),e[101]||(e[101]=a("span",null,"收货手机与处方手机不一致",-1))])):v("",!0),a("div",Vr,[a("div",Sr,[e[102]||(e[102]=a("span",{class:"po-card__label"},"收货人",-1)),a("span",Nr,r(i.recipient_name||"—"),1)]),a("div",Cr,[e[103]||(e[103]=a("span",{class:"po-card__label"},"金额",-1)),a("span",Pr,"¥"+r(i.amount),1)])]),a("div",Ar,[a("div",Tr,[e[104]||(e[104]=a("span",{class:"po-card__label"},"手机",-1)),a("span",{class:I(["po-card__value",dt(i.recipient_phone,i.prescription_phone)?"text-red-600 font-semibold":""])},r(i.recipient_phone||"—"),3)]),a("div",Or,[e[105]||(e[105]=a("span",{class:"po-card__label"},"费用类别",-1)),a("span",Rr,r(lt(i.fee_type)),1)])]),a("div",Er,[a("div",$r,[e[106]||(e[106]=a("span",{class:"po-card__label"},"处方ID",-1)),a("span",Dr,r(i.prescription_id||"—"),1)]),a("div",zr,[e[107]||(e[107]=a("span",{class:"po-card__label"},"诊单ID",-1)),a("span",Ur,r(i.diagnosis_id||"—"),1)])]),pa()&&i.internal_cost!=null&&i.internal_cost!==""?(o(),m("div",Fr,[a("div",jr,[e[108]||(e[108]=a("span",{class:"po-card__label"},"内部成本",-1)),a("span",Ir,"¥"+r(i.internal_cost),1)]),a("div",Lr,[e[109]||(e[109]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",qr,[Number(i.linked_pay_order_count)>0?(o(),m("span",Mr,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",Br,"—"))])])])):(o(),m("div",Hr,[a("div",Gr,[e[110]||(e[110]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",Wr,[Number(i.linked_pay_order_count)>0?(o(),m("span",Kr,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",Yr,"—"))])]),a("div",Qr,[e[111]||(e[111]=a("span",{class:"po-card__label"},"创建时间",-1)),a("span",Jr,r(me(i.create_time)),1)])])),a("div",Xr,[s(d,{type:va(i.prescription_audit_status),size:"small",class:I($t("rx",i))},{default:l(()=>[p(" 处方审: "+r(fa(i.prescription_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:va(i.payment_slip_audit_status),size:"small",class:I($t("pay",i))},{default:l(()=>[p(" 支付审: "+r(fa(i.payment_slip_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:$s(i.fulfillment_status),size:"small",class:I($t("fulfillment",i))},{default:l(()=>[p(r(Dt(i.fulfillment_status)),1)]),_:2},1032,["type","class"])]),a("div",Zr,[i.doctor_name?(o(),m("span",eo,"医:"+r(i.doctor_name),1)):v("",!0),i.creator_name?(o(),m("span",to,"建:"+r(i.creator_name),1)):v("",!0),pa()&&i.internal_cost!=null&&i.internal_cost!==""?v("",!0):(o(),m("span",ao,r(me(i.create_time)),1))]),a("div",{class:"po-card__actions",onClick:e[14]||(e[14]=Tt(()=>{},["stop"]))},[T((o(),g(w,{type:"primary",size:"small",onClick:P=>Oa(i.id)},{default:l(()=>[p(r(ps.value),1)]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/detail"]]]),Ds(i)?T((o(),g(w,{key:0,size:"small",onClick:P=>ml(i)},{default:l(()=>[...e[112]||(e[112]=[p("编辑",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/edit"]]]):v("",!0),Is(i)?T((o(),g(w,{key:1,type:"success",size:"small",onClick:P=>wl(i)},{default:l(()=>[...e[113]||(e[113]=[p("改单号",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),zt(i)?T((o(),g(w,{key:2,type:"primary",size:"small",onClick:P=>ea(i)},{default:l(()=>[...e[114]||(e[114]=[p("发货",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ls(i)?(o(),g(Za,{key:3,trigger:"click",onCommand:P=>qs(P,i)},{dropdown:l(()=>[s(Ct,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),ya(i)?(o(),g(ve,{key:2,command:"submitGancao"},{default:l(()=>[...e[118]||(e[118]=[p("上传药方",-1)])]),_:1})):v("",!0),ga(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(ss))]),_:1})]),_:1})]),_:2},1032,["onCommand"])):v("",!0)])],10,gr))),128))]),a("div",so,[s(la,{modelValue:R(te),"onUpdate:modelValue":e[15]||(e[15]=i=>wi(te)?te.value=i:null),onChange:R(K)},null,8,["modelValue","onChange"])])]),_:1})),[[ge,R(te).loading]]),s(ia,{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",lo,[a("div",no,[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",io,[zs(c.value)?T((o(),g(w,{key:0,type:"warning",size:"small",plain:"",onClick:e[16]||(e[16]=N=>$a(c.value,"prescription"))},{default:l(()=>[...e[121]||(e[121]=[p(" 处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Fs(c.value)?T((o(),g(w,{key:1,type:"info",size:"small",plain:"",onClick:e[17]||(e[17]=N=>Al(c.value))},{default:l(()=>[...e[122]||(e[122]=[p(" 撤回处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Us(c.value)?T((o(),g(w,{key:2,type:"warning",size:"small",plain:"",onClick:e[18]||(e[18]=N=>$a(c.value,"payment"))},{default:l(()=>[...e[123]||(e[123]=[p(" 支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),js(c.value)?T((o(),g(w,{key:3,type:"info",size:"small",plain:"",onClick:e[19]||(e[19]=N=>Tl(c.value))},{default:l(()=>[...e[124]||(e[124]=[p(" 撤回支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),zt(c.value)?T((o(),g(w,{key:4,type:"primary",size:"small",plain:"",onClick:e[20]||(e[20]=N=>ea(c.value))},{default:l(()=>[...e[125]||(e[125]=[p(" 确认发货 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ut(c.value)?T((o(),g(w,{key:5,type:"success",size:"small",plain:"",onClick:e[21]||(e[21]=N=>Ia(c.value))},{default:l(()=>[...e[126]||(e[126]=[p(" 关联支付单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Ft(c.value)?T((o(),g(w,{key:6,type:"primary",size:"small",plain:"",onClick:e[22]||(e[22]=N=>La(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(Ge,{key:0,rows:12,animated:"",class:"px-6 py-4"})):c.value?(o(),m("div",ro,[Oe.value?(o(),g(le,{key:0,type:"error",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:"业务订单收货手机与处方登记手机不一致"},{default:l(()=>[a("div",oo,[a("div",null,[e[128]||(e[128]=p(" 处方手机: ",-1)),a("span",uo,r(Bs.value),1)]),a("div",null,[e[129]||(e[129]=p(" 订单收货手机: ",-1)),a("span",po,r(Hs.value),1)]),e[130]||(e[130]=a("div",{class:"text-gray-600 mt-1"},"请核对是否代收货或录入错误,避免物流与回访联系错人。",-1))])]),_:1})):v("",!0),a("div",co,[s(We,{class:"po-workflow-steps",direction:"vertical",active:it.value,"finish-status":"success"},{default:l(()=>[s(oe,{title:"业务订单创建",description:me(c.value.create_time)},null,8,["description"]),s(oe,{title:"处方单双审",status:rt.value},{description:l(()=>[rt.value==="error"?(o(),m("span",_o,"处方被驳回")):rt.value==="wait"?(o(),m("span",mo,"等待审核")):rt.value==="success"?(o(),m("span",fo,"双审通过")):(o(),m("span",vo,"进行中"))]),_:1},8,["status"]),s(oe,{title:"支付单审核",status:ot.value},{description:l(()=>[ot.value==="error"?(o(),m("span",go,"支付审核驳回")):ot.value==="wait"?(o(),m("span",yo,"等待审核")):ot.value==="success"?(o(),m("span",bo,"审核通过")):(o(),m("span",xo,"进行中"))]),_: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",ko,"进行中")):xe.value==="process"?(o(),m("span",ho,"等待发货/补充单号")):xe.value==="wait"?(o(),m("span",wo,"待转入履约")):xe.value==="success"?(o(),m("span",Vo,r(Dt((P=c.value)==null?void 0:P.fulfillment_status)),1)):xe.value==="error"?(o(),m("span",So,r(Dt((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",No,[e[132]||(e[132]=a("div",{class:"stat-title text-gray-500 text-xs"},"总金额",-1)),jt(c.value)?T((o(),g(w,{key:0,type:"primary",size:"small",link:"",onClick:ll},{default:l(()=>[...e[131]||(e[131]=[p(" 修改 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/updateAmount"]]]):v("",!0)]),a("div",Co,"¥"+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",Po,"¥"+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",ka.value>0?"text-amber-600":"text-gray-500"])}," ¥"+r(de(ka.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",Ao,r(Lt.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),a("div",To,[s(n,{shadow:"never",class:"po-panel po-panel-rx border-gray-100 h-full relative overflow-hidden"},{header:l(()=>[a("div",Eo,[a("div",$o,[e[138]||(e[138]=a("span",{class:"po-panel-rx-header__title font-medium text-[15px] leading-snug"},"处方详情",-1)),a("span",Do," ID: "+r(c.value.prescription_id||"—"),1)]),c.value.doctor_name?(o(),m("div",zo,[e[139]||(e[139]=p(" 开方人:",-1)),a("span",Uo,r(c.value.doctor_name),1)])):v("",!0),a("div",Fo,[c.value.prescription_id&&C.value&&!String(c.value.prescription_detail_error||"").trim()?T((o(),g(w,{key:0,type:"default",size:"small",link:"",onClick:tl},{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=>Qa(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:Se.value,icon:R(oa),onClick:kl},{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",Oo,[...e[136]||(e[136]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.prescription_audit_status===2?(o(),m("div",Ro,[...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($,{key:3},[s(Ke,{column:1,border:"",size:"small",class:"po-desc bg-white"},{default:l(()=>[s(S,{label:"处方编号",span:2},{default:l(()=>[p(r(C.value.sn||"—"),1)]),_:1}),s(S,{label:"患者"},{default:l(()=>[p(r(C.value.patient_name||"—"),1)]),_:1}),s(S,{label:"性别 / 年龄"},{default:l(()=>[p(r(C.value.gender_desc||"—")+" · "+r(C.value.age??"—")+"岁 ",1)]),_:1}),s(S,{label:"手机"},{default:l(()=>[a("span",{class:I(Oe.value?"rx-phone-mismatch text-red-600 font-bold":"")},r(C.value.phone||"—"),3),Oe.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(S,{label:"处方日期"},{default:l(()=>[p(r(C.value.prescription_date||"—"),1)]),_:1}),s(S,{label:"医师"},{default:l(()=>[p(r(C.value.doctor_name||"—"),1)]),_:1}),s(S,{label:"类型"},{default:l(()=>[p(r(C.value.prescription_type||"—"),1)]),_:1}),s(S,{label:"临床诊断",span:2},{default:l(()=>[p(r(C.value.clinical_diagnosis||"—"),1)]),_:1}),_e.value?(o(),g(S,{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(S,{label:"处方金额"},{default:l(()=>[a("span",jo,"¥"+r(C.value.amount??"—"),1)]),_:1}),s(S,{label:"消费者审核"},{default:l(()=>[s(d,{type:Ys(C.value.audit_status),size:"small"},{default:l(()=>[p(r(Ks(C.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),s(S,{label:"用量"},{default:l(()=>[C.value.dosage_amount?(o(),m($,{key:0},[p(r(C.value.dosage_amount)+r(C.value.dosage_unit||"g")+" ",1),C.value.prescription_type==="浓缩水丸"?(o(),m($,{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",Io," ("+r(C.value.need_decoction?"代煎":"不代煎")+") ",1)):v("",!0)],64)):(o(),m($,{key:1},[p("—")],64))]),_:1}),s(S,{label:"服用方式"},{default:l(()=>[a("div",Lo,[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(S,{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}),Gs.value?(o(),m("div",qo,[e[147]||(e[147]=a("div",{class:"text-xs font-medium text-gray-500 mb-2 px-1"},"药材明细",-1)),Va.value.length?(o(),g(Pt,{key:0,data:Va.value,size:"small",border:"",stripe:"","max-height":"260"},{default:l(()=>[s(D,{type:"index",label:"#",width:"48",align:"center"}),s(D,{prop:"name",label:"药名","min-width":"120","show-overflow-tooltip":""}),s(D,{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",Mo,[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(Pt,{key:0,data:ke.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s(D,{prop:"id",label:"ID",width:"70"}),s(D,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(D,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||lt(i.order_type)),1)]),_:1}),s(D,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",Bo,"¥"+r(i.amount),1)]),_:1}),s(D,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Na(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||ba(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(D,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(D,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ca(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",Wo,[a("div",Ko,[e[153]||(e[153]=a("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),c.value.creator_name?(o(),m("span",Yo,[e[152]||(e[152]=p(" 创建人:",-1)),a("span",Qo,r(c.value.creator_name),1)])):v("",!0)])])]),default:l(()=>[c.value.payment_slip_audit_status===1?(o(),m("div",Ho,[...e[150]||(e[150]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.payment_slip_audit_status===2?(o(),m("div",Go,[...e[151]||(e[151]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),Lt.value.length?(o(),g(Pt,{key:2,data:Lt.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s(D,{prop:"id",label:"ID",width:"70"}),s(D,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(D,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||lt(i.order_type)),1)]),_:1}),s(D,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",Jo,"¥"+r(i.amount),1)]),_:1}),s(D,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Na(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||ba(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(D,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(D,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ca(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(Ke,{column:1,border:"",size:"small",class:"po-desc"},{default:l(()=>[s(S,{label:"诊单ID"},{default:l(()=>[a("div",Xo,[a("div",Zo,[e[156]||(e[156]=a("span",{class:"text-[11px] font-semibold uppercase tracking-[0.06em] text-slate-500"},"关联诊单",-1)),a("span",eu,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(Hn),"aria-label":"打开关联诊单详情(患者与病历)",onClick:os},{default:l(()=>[...e[158]||(e[158]=[p(" 查看诊单详情 ",-1)])]),_:1},8,["icon"])):v("",!0)])]),_:1}),s(S,{label:"创建时间"},{default:l(()=>[p(r(me(c.value.create_time)),1)]),_:1}),s(S,{label:"收货人"},{default:l(()=>[p(r(c.value.recipient_name),1)]),_:1}),s(S,{label:"挂号关联",span:3},{default:l(()=>[W.value?(o(),m($,{key:0},[a("div",tu,[a("span",null,[e[159]||(e[159]=p("预约 ",-1)),a("span",au,"#"+r(W.value.id),1)]),a("span",su,"时间:"+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",lu,"接诊:"+r(W.value.doctor_name),1)):v("",!0),W.value.channel_source?(o(),m("span",nu,"渠道:"+r(W.value.channel_source),1)):v("",!0),wa.value?(o(),g(d,{key:2,size:"small",effect:"plain"},{default:l(()=>[p(r(wa.value),1)]),_:1})):v("",!0)]),String(W.value.remark||"").trim()?(o(),m("p",iu," 备注:"+r(W.value.remark),1)):v("",!0)],64)):(o(),m("span",ru,"暂无挂号预约记录(未绑定或诊单下无预约)"))]),_:1}),s(S,{label:"收货手机"},{default:l(()=>[a("span",{class:I(Oe.value?"text-red-600 font-bold font-mono":"font-mono")},r(c.value.recipient_phone||"—"),3),Oe.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(S,{label:"收货地址",span:2},{default:l(()=>[p(r(Ws.value),1)]),_:1}),s(S,{label:"复诊"},{default:l(()=>[p(r(c.value.is_follow_up?"是":"否"),1)]),_:1}),s(S,{label:"用药疗程"},{default:l(()=>[p(r(c.value.medication_days?c.value.medication_days+" 天":"—"),1)]),_:1}),s(S,{label:"上次医护"},{default:l(()=>[p(r(c.value.prev_staff||"—"),1)]),_:1}),s(S,{label:"服务渠道"},{default:l(()=>[p(r(c.value.service_channel||"—"),1)]),_:1}),s(S,{label:"服务套餐"},{default:l(()=>[p(r(Es(c.value.service_package)),1)]),_:1}),s(S,{label:"费用类别"},{default:l(()=>[p(r(lt(c.value.fee_type)),1)]),_:1}),c.value.internal_cost!=null&&c.value.internal_cost!==""?(o(),g(S,{key:0,label:"内部成本"},{default:l(()=>[p(" ¥"+r(c.value.internal_cost),1)]),_:1})):v("",!0),s(S,{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(S,{label:"快递公司"},{default:l(()=>[p(r(Zs(c.value.express_company)),1)]),_:1}),T((o(),g(S,{label:"备注",span:3},{default:l(()=>[p(r(c.value.remark_extra||"—"),1)]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(S,{label:"医助备注",span:3},{default:l(()=>[p(r(c.value.remark_assistant||"—"),1)]),_:1}),s(S,{label:"处方审核意见",span:3},{default:l(()=>[a("span",ou,r(c.value.prescription_audit_remark||"—"),1)]),_:1}),s(S,{label:"支付审核意见",span:3},{default:l(()=>[a("span",uu,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,Ye,Qe;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",du,[s(k,{modelValue:Ee.value,"onUpdate:modelValue":e[24]||(e[24]=ue=>Ee.value=ue),clearable:"",maxlength:"20",placeholder:"收件手机(建议11位,与面单一致)",class:"po-logistics-toolbar__phone",onKeyup:Xe(Ht,["enter"])},null,8,["modelValue"]),s(F,{modelValue:Re.value,"onUpdate:modelValue":e[25]||(e[25]=ue=>Re.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"]),T((o(),g(w,{type:"primary",plain:"",size:"default",loading:pt.value,class:"po-logistics-toolbar__btn",onClick:Ht},{icon:l(()=>[s(u,null,{default:l(()=>[s(R(Gn))]),_:1})]),default:l(()=>[e[162]||(e[162]=p(" 刷新轨迹 ",-1))]),_:1},8,["loading"])),[[q,["tcm.prescriptionOrder/logisticsTrace"]]]),a("div",pu,[s(na,{href:Bt.value.sf,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[163]||(e[163]=[p("顺丰官网",-1)])]),_:1},8,["href"]),s(na,{href:Bt.value.jd,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[164]||(e[164]=[p("京东物流",-1)])]),_:1},8,["href"]),s(na,{href:Bt.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),pt.value&&!H.value?(o(),m("div",cu,[s(u,{class:"is-loading mr-1"},{default:l(()=>[s(R(Wn))]),_:1}),e[166]||(e[166]=p("正在加载物流轨迹... ",-1))])):H.value?(o(),m("div",_u,[(N=H.value)!=null&&N.state_text?(o(),m("div",mu,[a("span",fu,"状态:"+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),(Ye=H.value)!=null&&Ye.source?(o(),m("span",vu," ["+r(H.value.source==="database"?"数据库缓存":"API拉取")+"] ",1)):v("",!0),(Qe=H.value)!=null&&Qe.last_query_time?(o(),m("span",gu," 更新时间:"+r(H.value.last_query_time),1)):v("",!0)])):v("",!0),Pa.value.length?(o(),g(ts,{key:1,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m($,null,B(Pa.value,(ue,ye)=>(o(),g(es,{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),T((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(ts,{key:0,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m($,null,B(he.value,(i,P)=>(o(),g(es,{key:i.id,type:P===0?"primary":"info",hollow:P!==0,timestamp:me(i.create_time),placement:"top"},{default:l(()=>[a("div",yu,[a("span",bu,r(i.admin_name),1),s(d,{size:"small",type:"info"},{default:l(()=>[p(r(Xs(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:sl},{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:qt.value,onClick:Ta},{default:l(()=>[...e[171]||(e[171]=[p(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(U,{ref_key:"updateAmountFormRef",ref:ct,model:ie,rules:Qs,"label-width":"84px",onSubmit:Tt(Ta,["prevent"])},{default:l(()=>[s(f,{label:"当前金额"},{default:l(()=>{var i;return[a("div",xu,"¥"+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:pl},{footer:l(()=>[a("div",ed,[a("div",td,[a("span",ad,"第 "+r(L.value+1)+" / 3 步",1),L.value===2&&M.value>0?(o(),m("span",sd," 订单金额与关联支付单合计须 ≥ ¥"+r(de(M.value)),1)):v("",!0)]),a("div",ld,[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:cl},{default:l(()=>[...e[185]||(e[185]=[p("上一步",-1)])]),_:1})):v("",!0),L.value<2?(o(),g(w,{key:1,type:"primary",size:"large",onClick:_l},{default:l(()=>[...e[186]||(e[186]=[p(" 下一步 ",-1)])]),_:1})):v("",!0),L.value===2?(o(),g(w,{key:2,type:"primary",size:"large",loading:Yt.value,onClick:fl},{default:l(()=>[...e[187]||(e[187]=[p(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:l(()=>[T((o(),m("div",ku,[se.value?(o(),m("div",hu,[a("div",wu,[e[172]||(e[172]=a("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),a("div",Vu,[a("span",Su,"#"+r(se.value.id),1),se.value.sn?(o(),m("span",Nu,r(se.value.sn),1)):v("",!0),a("span",Cu,r(se.value.patient_name||"—"),1)])]),s(as,{content:Ra.value,placement:"bottom","show-after":300},{default:l(()=>[a("div",Pu,r(Ra.value),1)]),_:1},8,["content"])])):v("",!0),s(We,{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",Au,r(il.value),1),s(U,{ref_key:"editFormRef",ref:we,model:_,rules:dl.value,"label-width":"108px",class:"create-order-form"},{default:l(()=>[T(a("div",Tu,[s(pe,{gutter:20},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"收货人",prop:"recipient_name"},{default:l(()=>[s(k,{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(k,{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(Kl,{modelValue:_.region,"onUpdate:modelValue":e[32]||(e[32]=i=>_.region=i),options:Ze.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(k,{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]]),T(a("div",Ou,[_e.value?(o(),g(pe,{key:0,gutter:20,class:"mb-1"},{default:l(()=>[s(E,{span:24},{default:l(()=>[a("div",Ru,[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:Bl},{default:l(()=>[...e[173]||(e[173]=[p(" 详细 ",-1)])]),_:1})):v("",!0),_.id?(o(),g(w,{key:1,type:"warning",size:"small",link:"",loading:Se.value,icon:R(oa),onClick:xl},{default:l(()=>[...e[174]||(e[174]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),a("span",Eu,"ID: "+r(_.prescription_id||"—"),1)]),a("div",$u,[Ea.value.length?(o(),m("div",Du,[e[176]||(e[176]=a("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),m($,null,B(Ea.value,(i,P)=>(o(),m("div",{key:P,class:"pl-0 min-w-0"},[i.length?(o(),g(Ql,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:l(()=>[(o(!0),m($,null,B(i,(N,j)=>(o(),g(Yl,{key:j},{default:l(()=>[a("span",zu,r(N),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),m("div",Uu,"创建人所属部门:—"))])]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"复诊"},{default:l(()=>[s(Jl,{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",Fu,[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(k,{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:Sa.value,prop:"dose_count"},{default:l(()=>[s(Ce,{modelValue:_.dose_count,"onUpdate:modelValue":e[37]||(e[37]=i=>_.dose_count=i),min:1,placeholder:Sa.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(F,{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(k,{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(F,{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($,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",ju,[s(F,{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(k,{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(F,{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:Qt.value},{default:l(()=>[(o(!0),m($,null,B(ze.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Jt(i.order_type)}`,value:i.id,class:"!h-auto py-1.5"},{default:l(()=>[a("div",Iu,[a("div",Lu,[a("span",qu,r(i.order_no),1),a("span",Mu,"¥"+r(i.amount),1)]),a("div",Bu,[a("span",Hu,[p(r(Jt(i.order_type)),1),i.remark?(o(),m($,{key:0},[p(" · "+r(i.remark),1)],64)):v("",!0)]),a("span",Gu,r(String(i.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),a("div",Wu,[M.value>0?(o(),m($,{key:0},[a("span",Ku,"当前已开启关联支付门槛(¥"+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(as,{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]]),T(a("div",Yu,[a("div",{class:I(["create-order-deposit-bar",Xt.value>=M.value?"is-ok":"is-warn"])},[a("div",Qu,[e[181]||(e[181]=a("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),a("strong",null,"¥"+r(de(M.value)),1),a("span",Ju,r(M.value>0?"须 ≥ 此值":"未设置"),1)]),e[183]||(e[183]=a("div",{class:"create-order-deposit-bar__sep"},null,-1)),a("div",Xu,[e[182]||(e[182]=a("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),a("strong",null,"¥"+r(de(Xt.value)),1),a("span",Zu,r(Xt.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(F,{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:ol.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),T((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(()=>[T((o(),g(f,{label:"药房备注"},{default:l(()=>[s(k,{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(k,{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,Kt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Ue.value,"onUpdate:modelValue":e[55]||(e[55]=i=>Ue.value=i),title:vl.value,width:"92%","destroy-on-close":"",class:"po-h5-dialog",onClosed:e[56]||(e[56]=i=>Ve.value="")},{footer:l(()=>[s(w,{onClick:e[52]||(e[52]=i=>Ue.value=!1)},{default:l(()=>[...e[189]||(e[189]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:mt.value,onClick:e[53]||(e[53]=i=>Da("approve"))},{default:l(()=>[...e[190]||(e[190]=[p("同意通过",-1)])]),_:1},8,["loading"]),s(w,{type:"danger",loading:mt.value,onClick:e[54]||(e[54]=i=>Da("reject"))},{default:l(()=>[...e[191]||(e[191]=[p("驳回阻止",-1)])]),_:1},8,["loading"])]),default:l(()=>[Fe.value&&Fe.value.completion_request===1?(o(),g(le,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:l(()=>[a("div",nd,[e[188]||(e[188]=a("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),a("div",id," 申请人:"+r(Fe.value.completion_request_by_name||"—"),1),a("div",rd," 申请时间:"+r(me(Fe.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(k,{modelValue:Ve.value,"onUpdate:modelValue":e[51]||(e[51]=i=>Ve.value=i),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),s(ce,{modelValue:je.value,"onUpdate:modelValue":e[60]||(e[60]=i=>je.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=>je.value=!1)},{default:l(()=>[...e[194]||(e[194]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:vt.value,onClick:Fa},{default:l(()=>[...e[195]||(e[195]=[p("保存单号",-1)])]),_:1},8,["loading"])]),default:l(()=>[T((o(),g(U,{"label-width":"90px",class:"pr-2",onSubmit:Tt(Fa,["prevent"])},{default:l(()=>[s(f,{label:"承运商"},{default:l(()=>[s(F,{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(k,{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,vt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Le.value,"onUpdate:modelValue":e[65]||(e[65]=i=>Le.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=>Le.value=!1)},{default:l(()=>[...e[198]||(e[198]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:gt.value,onClick:ja},{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"}),T((o(),g(U,{"label-width":"90px",class:"pr-2",onSubmit:Tt(ja,["prevent"])},{default:l(()=>[s(f,{label:"发货方式"},{default:l(()=>[s(ra,{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(F,{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(k,{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,gt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:qe.value,"onUpdate:modelValue":e[68]||(e[68]=i=>qe.value=i),title:"完成订单",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[69]||(e[69]=i=>ta.value=0)},{footer:l(()=>[s(w,{onClick:e[67]||(e[67]=i=>qe.value=!1)},{default:l(()=>[...e[200]||(e[200]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:aa.value,onClick:Sl},{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(F,{modelValue:bt.value,"onUpdate:modelValue":e[66]||(e[66]=i=>bt.value=i),class:"w-full",placeholder:"请选择"},{default:l(()=>[(o(),m($,null,B(Vl,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:Me.value,"onUpdate:modelValue":e[77]||(e[77]=i=>Me.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=kt.value)==null?void 0:P.clearValidate()})},{footer:l(()=>[s(w,{onClick:e[76]||(e[76]=i=>Me.value=!1)},{default:l(()=>[...e[209]||(e[209]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:xt.value,onClick:Pl},{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"}),T((o(),g(U,{ref_key:"addPayOrderFormRef",ref:kt,model:O,rules:Nl,"label-width":"90px",class:"pr-2"},{default:l(()=>[s(f,{label:"添加方式",prop:"add_mode"},{default:l(()=>[s(ra,{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($,{key:0},[s(f,{label:"费用类别",prop:"order_type"},{default:l(()=>[s(F,{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(k,{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(F,{modelValue:O.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=i=>O.link_pay_order_ids=i),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:sa.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:l(()=>[(o(!0),m($,null,B(ht.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Jt(i.order_type)}`,value:i.id},{default:l(()=>[a("div",od,[a("span",ud,r(i.order_no),1),a("span",dd,"¥"+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(ra,{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,xt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:De.value,"onUpdate:modelValue":e[82]||(e[82]=i=>De.value=i),title:"修改处方患者信息",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:al},{footer:l(()=>[s(w,{onClick:e[81]||(e[81]=i=>De.value=!1)},{default:l(()=>[...e[211]||(e[211]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:Gt.value,onClick:nl},{default:l(()=>[...e[212]||(e[212]=[p(" 保存 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(U,{ref_key:"patchRxPatientFormRef",ref:Wt,model:ae,rules:el,"label-width":"96px"},{default:l(()=>[s(f,{label:"患者姓名",prop:"patient_name"},{default:l(()=>[s(k,{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(k,{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(ia,{modelValue:wt.value,"onUpdate:modelValue":e[83]||(e[83]=i=>wt.value=i),size:"100%",direction:"btt",class:"po-h5-drawer","close-on-click-modal":!1},{header:l(()=>[a("div",pd,[e[215]||(e[215]=a("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),h.value&&!Vt.value?(o(),m("div",cd,[s(w,{size:"small",loading:Ne.value,onClick:Gl},{default:l(()=>[...e[213]||(e[213]=[p(" 下载图片 ",-1)])]),_:1},8,["loading"]),s(w,{size:"small",loading:Ne.value,onClick:Wl},{default:l(()=>[...e[214]||(e[214]=[p(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:l(()=>[T((o(),m("div",_d,[h.value?(o(),m("div",md,[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",fd," 作废人:"+r(h.value.void_by_name||"—")+",作废时间:"+r(Ll(h.value.void_time)),1)):h.value&&Number(h.value.business_prescription_audit_rejected)===1?(o(),m("div",vd,[e[221]||(e[221]=a("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),h.value.business_prescription_audit_remark?(o(),m("div",gd," 驳回意见:"+r(h.value.business_prescription_audit_remark),1)):v("",!0)])):h.value&&Number(h.value.audit_status)===2?(o(),m("div",yd,[e[222]||(e[222]=a("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),h.value.audit_remark?(o(),m("div",bd,"驳回意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0),h.value?(o(),m("div",{key:4,ref_key:"prescriptionSlipPrintRef",ref:qa,class:"rx-paper"},[e[240]||(e[240]=a("div",{class:"rx-title"},"处方单",-1)),a("div",xd,[e[227]||(e[227]=a("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),a("div",kd,[a("div",hd,[e[223]||(e[223]=a("span",{class:"rx-meta-label"},"日期",-1)),a("span",wd,r(Rl.value),1)]),a("div",Vd,[e[224]||(e[224]=a("span",{class:"rx-meta-label"},"处方编号",-1)),a("span",Sd,r(El.value),1)]),a("div",Nd,[e[225]||(e[225]=a("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),a("span",Cd,r($l.value),1)]),Ma.value?(o(),m("div",Pd,[e[226]||(e[226]=a("span",{class:"rx-meta-label"},"业务单号",-1)),a("span",Ad,r(Ma.value),1)])):v("",!0)])]),a("div",Td,[a("div",Od,[a("div",Rd,[e[228]||(e[228]=a("span",{class:"rx-key"},"姓名",-1)),a("span",Ed,r(h.value.patient_name||"—"),1)]),a("div",$d,[e[229]||(e[229]=a("span",{class:"rx-key"},"性别",-1)),a("span",Dd,r(ql(h.value.gender)),1)]),a("div",zd,[e[230]||(e[230]=a("span",{class:"rx-key"},"年龄",-1)),a("span",Ud,r(Ml(h.value.age)),1)]),a("div",Fd,[e[231]||(e[231]=a("span",{class:"rx-key"},"电话",-1)),a("span",jd,r(h.value.phone||h.value.recipient_phone||"—"),1)])]),a("div",Id,[a("div",Ld,[e[232]||(e[232]=a("span",{class:"rx-key"},"收件信息",-1)),a("span",qd,r(Dl.value),1)])]),a("div",Md,[a("div",Bd,[e[233]||(e[233]=a("span",{class:"rx-key"},"临床诊断",-1)),a("span",Hd,r(h.value.clinical_diagnosis||"—"),1)])])]),a("div",Gd,[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",Wd,[(o(!0),m($,null,B(St.value,(i,P)=>(o(),m("div",{key:P,class:"rx-herb-cell"},[a("span",Kd,r(i.name)+" ("+r(i.dosage)+"克)",1),a("span",Yd,r(Ul(i.dosage))+"克",1)]))),128))])]),a("div",Qd,[a("p",null,"服法:"+r(jl.value),1),Ha.value?(o(),m("p",Jd,"医嘱:"+r(Ha.value),1)):v("",!0),Ga.value?(o(),m("p",Xd,"备注:"+r(Ga.value),1)):v("",!0),Wa.value?(o(),m("p",Zd," 药房备注:"+r(Wa.value),1)):v("",!0),Ka.value?(o(),m("p",ep," 出丸:"+r(Ka.value),1)):v("",!0)]),a("div",tp,[a("div",ap,[a("div",sp,[e[236]||(e[236]=a("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),a("div",lp,[h.value.doctor_signature?(o(),m("img",{key:0,src:h.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,np)):v("",!0)])]),a("div",ip,[e[237]||(e[237]=a("span",{class:"rx-bot-meta-key"},"类型:",-1)),a("span",rp,r(Fl.value),1)]),a("div",op,[e[238]||(e[238]=a("span",{class:"rx-bot-meta-key"},"天数:",-1)),a("span",up,r(c.value.medication_days!=null&&String(c.value.medication_days).trim()!==""?c.value.medication_days+" 天":"—"),1)]),a("div",dp,[e[239]||(e[239]=a("span",{class:"rx-bot-meta-key"},"剂量:",-1)),a("span",pp,r(zl.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",cp,[h.value.audit_by_name?(o(),m("div",_p,[p(" 审核人:"+r(h.value.audit_by_name)+" ",1),h.value.audit_time?(o(),m("span",mp,r(Ya(h.value.audit_time)),1)):v("",!0)])):v("",!0),h.value.audit_remark?(o(),m("div",fp,"审核意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[ge,Vt.value]])]),_:1},8,["modelValue"]),s(ia,{modelValue:ft.value,"onUpdate:modelValue":e[84]||(e[84]=i=>ft.value=i),title:"甘草预下单测试结果",size:"100%",direction:"btt",class:"po-h5-drawer","destroy-on-close":""},{default:l(()=>{var i,P;return[z.value?(o(),m("div",vp,[s(n,{shadow:"never",class:"mb-4"},{header:l(()=>[a("div",gp,[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(Ke,{column:2,border:""},{default:l(()=>[s(S,{label:"药材成本"},{default:l(()=>{var N;return[a("span",yp,"¥"+r(((N=z.value.fee)==null?void 0:N.m_cost)||"0.00"),1)]}),_:1}),s(S,{label:"制作费"},{default:l(()=>{var N;return[a("span",bp,"¥"+r((((N=z.value.fee)==null?void 0:N.proces_cost)||0).toFixed(2)),1)]}),_:1}),s(S,{label:"物流费"},{default:l(()=>{var N;return[a("span",xp,"¥"+r((((N=z.value.fee)==null?void 0:N.lis_cost)||0).toFixed(2)),1)]}),_:1}),s(S,{label:"总计"},{default:l(()=>[a("div",null,[a("span",kp," ¥"+r(Ua(z.value.fee)),1),T((o(),m("div",hp,[e[244]||(e[244]=p(" 占订单总金额: ",-1)),a("span",wp,r(yl(z.value.fee,z.value.amount)),1),z.value.amount>0?(o(),m("span",Vp,"%(预报价 ÷ 订单金额 × 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(Ke,{column:2,border:""},{default:l(()=>[s(S,{label:"调配中心"},{default:l(()=>{var N;return[p(r(((N=z.value.result)==null?void 0:N.ds_name)||"—"),1)]}),_:1}),s(S,{label:"调配中心ID"},{default:l(()=>{var N;return[p(r(((N=z.value.result)==null?void 0:N.ds_id)||"—"),1)]}),_:1}),s(S,{label:"服用天数范围",span:2},{default:l(()=>{var N,j,Ye,Qe,ue,ye;return[p(r(((j=(N=z.value.result)==null?void 0:N.take_days)==null?void 0:j.min)||"—")+" - "+r(((Qe=(Ye=z.value.result)==null?void 0:Ye.take_days)==null?void 0:Qe.max)||"—")+" 天 (默认: "+r(((ye=(ue=z.value.result)==null?void 0:ue.take_days)==null?void 0:ye.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(i=z.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",Sp,r(z.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",Np,[e[247]||(e[247]=a("span",{class:"font-semibold"},"药材明细",-1)),a("span",Cp,"共 "+r(((j=(N=z.value.result)==null?void 0:N.m_list)==null?void 0:j.length)||0)+" 味药",1)])]}),default:l(()=>{var N;return[s(Pt,{data:((N=z.value.result)==null?void 0:N.m_list)||[],border:"",stripe:"","max-height":"400"},{default:l(()=>[s(D,{type:"index",label:"#",width:"50",align:"center"}),s(D,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),s(D,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:l(({row:j})=>[p(r(j.quantity)+r(j.unit),1)]),_:1}),s(D,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:l(({row:j})=>[p(" ¥"+r(Number(j.price).toFixed(4)),1)]),_:1}),s(D,{label:"小计",width:"100",align:"right"},{default:l(({row:j})=>[a("span",Pp," ¥"+r((Number(j.price)*Number(j.quantity)).toFixed(2)),1)]),_:1}),s(D,{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(D,{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(Ke,{column:2,border:""},{default:l(()=>[s(S,{label:"订单号",span:2},{default:l(()=>[p(r(z.value.order_no||"—"),1)]),_:1}),s(S,{label:"剂数"},{default:l(()=>[a("span",Ap,r(z.value.dose_count||"—")+"剂",1)]),_:1}),s(S,{label:"单剂量"},{default:l(()=>{var N;return[a("span",Tp,r(bl((N=z.value.result)==null?void 0:N.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),s(R(rs),{ref_key:"diagnosisViewRef",ref:da},null,512)])}}}),wc=vi(Rp,[["__scopeId","data-v-400bbef2"]]);export{wc as default};
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-MqCGG5UN.js","assets/element-plus-DFTWCWyi.js","assets/@vue/runtime-dom-DDAG46FW.js","assets/lodash-D3kF6u-c.js","assets/@vue/runtime-core-C6bnekPw.js","assets/@vue/reactivity-DiY1c2vO.js","assets/@vue/shared-mAAVTE9n.js","assets/@element-plus/icons-vue-HOEUG8sr.js","assets/lodash-es-C2A-Pj28.js","assets/@popperjs/core-C5az9QE8.js","assets/dayjs-DG77mNTn.js","assets/@ctrl/tinycolor-BuyEbX8F.js","assets/async-validator-CFA_igpM.js","assets/normalize-wheel-es-BQoi3Ox2.js","assets/element-plus-C_YxM8bk.css","assets/tcm-DumH0-Hh.js","assets/index-Dn8YPxC3.js","assets/jspdf-BsthCvR5.js","assets/@babel/runtime-BanGtE2-.js","assets/fflate-_ayOYiT1.js","assets/vue-router-QlpZ4wdW.js","assets/pinia-B8cvXbiZ.js","assets/axios-C80V62Fs.js","assets/@vueuse/core-1S4fJlii.js","assets/@vueuse/shared-Cl3lVqjz.js","assets/css-color-function-DI01JAaZ.js","assets/balanced-match-BdS7OldZ.js","assets/color-B2zxaWkI.js","assets/clone-DBZ6_OiU.js","assets/color-convert-OrFsTA_V.js","assets/color-name-Dju3oUBS.js","assets/color-string-pUQDDJII.js","assets/ms-CzQ2E3wO.js","assets/vue-clipboard3-DByT_rEQ.js","assets/clipboard-CHgxszqY.js","assets/echarts-CNLwa9wG.js","assets/tslib-BDyQ-Jie.js","assets/zrender-DRNXw7y3.js","assets/highlight.js-Bxt7hFFy.js","assets/highlight-BfC0goYb.css","assets/@highlightjs/vue-plugin-C4onkBvW.js","assets/index-DWUT2gCy.css","assets/perm-u3InoaJU.js","assets/DailyMatrix-BH0vt9VJ.js","assets/picker-DuwjC-1U.js","assets/index-BOXguUgn.js","assets/index-B3imPWFk.css","assets/index-DgypKt72.js","assets/index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js","assets/index-CrY043B3.js","assets/index-D0f1Mn00.css","assets/index-32KWa0px.js","assets/cos-js-sdk-v5-DSMN0LUT.js","assets/file-Bh0UlSsJ.js","assets/index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js","assets/usePaging-VsbTxSU0.js","assets/index-BYOmK9R5.css","assets/vuedraggable-5bKFmC7X.js","assets/vue-BVs68q8v.js","assets/@vue/compiler-dom-CqayqxS7.js","assets/@vue/compiler-core-CvbQOXIO.js","assets/sortablejs-dsEAUXlE.js","assets/picker-XZbUgFct.css","assets/vue-echarts-BNtg2q_G.js","assets/resize-detector-G6vbKCU7.js","assets/DiagnosisTodoList-DFjyAsHC.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-BODQibyb.css","assets/CaseRecordList-Bykb28q7.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-rrgSYnCD.js","assets/RecordingPlaybackBlock-BFAjBM41.js","assets/RecordingVideoPlayer-D4J5IPEM.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-DfQbVYzq.js","assets/im-business-message-parse-QKjFLn3X.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-4FZeEVdS.js","assets/AssignLogPanel-BdKOtd2m.css","assets/AppointmentRecordPanel-DqFL5Tnk.js","assets/doctor-DvybObQD.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-LI-RL8y7.js","assets/patient-BunSjcOD.js","assets/NoteTimeline-CCWIpEBQ.css","assets/PatientOrderList-iftCiVcR.js","assets/PatientOrderList-CNDUDncc.css","assets/index-DABaUje6.js","assets/index-QapqzCh6.js","assets/medicine-C50wtx8h.js","assets/index-tfEElgYq.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/html2canvas-QH1iLAAe.js","assets/index-DGbIWVjL.css","assets/edit-z2mn_utb.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
+import{_ as Xl,E as Zl}from"./jspdf-BsthCvR5.js";import{J as en,d as tn,L as an,T as sn,D as ln,B as nn,C as rn,P as on,Q as un,W as dn,i as pn,R as cn,p as _n,n as mn,o as fn,a9 as vn,K as gn,a6 as yn,a7 as bn,a4 as xn,a5 as kn,aa as hn,ab as wn,M as Vn,N as Sn,_ as Nn,ac as Cn,ad as Pn,e as An,h as Tn,V as On,r as Rn,a8 as En,k as $n,j as Dn,g as zn,G as Un,I as Fn,a as Je}from"./element-plus-DFTWCWyi.js";import{_ as jn}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{w as Xe,q as At,s as Tt}from"./@vue/runtime-dom-DDAG46FW.js";import{k as In,G as Ln,R as qn,V as Mn,N as oa,e as ss,i as Bn,X as Hn,L as Gn,l as Wn}from"./@element-plus/icons-vue-HOEUG8sr.js";import{_ as Kn}from"./index.vue_vue_type_script_setup_true_lang-DPC_NOWM.js";import{g as Yn,a as Qn,l as Jn,r as Xn,s as Zn,t as ei,u as Z,v as ls,w as ti,x as ai,y as si,z as ns,A as li,B as ni,C as ii,D as ri,E as oi,F as ui,G as di,c as pi,b as ua,H as ci}from"./tcm-DumH0-Hh.js";import _i from"./html2canvas-QH1iLAAe.js";import{u as mi,i as A,m as fi,_ as vi}from"./index-Dn8YPxC3.js";import{d as gi}from"./department-Dfpky2D6.js";import{u as yi}from"./usePaging-VsbTxSU0.js";import{f as is,w as bi,b as xi,as as ki,ak as o,I as m,J as a,a as s,aN as l,F as $,ap as B,H as v,aP as T,O as p,G as g,P as hi,A as V,n as Ot}from"./@vue/runtime-core-C6bnekPw.js";import{o as I,Q as r}from"./@vue/shared-mAAVTE9n.js";import{y as R,a as wi,n as x,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 Vi={class:"prescription-order-page prescription-order-list prescription-order-h5 po-h5-app"},Si={class:"flex flex-col gap-3"},Ni={key:0,class:"flex items-center gap-2 flex-wrap"},Ci=["onClick"],Pi={class:"font-medium"},Ai={class:"flex items-center gap-2 flex-wrap"},Ti=["onClick"],Oi={class:"font-medium"},Ri={class:"flex items-center gap-2 flex-wrap"},Ei=["onClick"],$i={class:"font-medium"},Di={class:"flex items-center gap-2 flex-wrap"},zi=["onClick"],Ui={class:"font-medium"},Fi={class:"flex items-center gap-2 flex-wrap"},ji=["onClick"],Ii={class:"font-medium"},Li={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"},Mi={class:"relative flex items-start justify-between gap-3"},Bi={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},Hi={class:"mt-2 space-y-1.5 min-w-0"},Gi={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},Wi={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},Ki={class:"text-slate-400"},Yi={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},Qi={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},Ji={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Xi={class:"relative flex items-start justify-between gap-3"},Zi={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},er={class:"mt-2 space-y-1.5 min-w-0"},tr={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},ar={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},sr={class:"text-slate-400"},lr={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},nr={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},ir={class:"po-filter-toggle__label"},rr={class:"po-h5-list-head"},or={class:"po-table-toolbar"},ur={class:"po-table-toolbar__title-wrap"},dr={class:"po-table-hint text-gray-400"},pr={class:"po-focus-board"},cr={class:"po-focus-board__value"},_r={class:"po-focus-board__value"},mr={class:"po-focus-board__value"},fr={class:"po-focus-board__value"},vr={class:"po-card-list"},gr=["onClick"],yr={class:"po-card__head"},br={class:"po-card__order-no"},xr={class:"po-card__order-no-main"},kr={class:"po-card__tags"},hr={class:"po-card__id"},wr={key:0,class:"po-card__alert"},Vr={class:"po-card__row"},Sr={class:"po-card__field"},Nr={class:"po-card__value"},Cr={class:"po-card__field po-card__field--right"},Pr={class:"po-card__value po-card__amount"},Ar={class:"po-card__row"},Tr={class:"po-card__field"},Or={class:"po-card__field po-card__field--right"},Rr={class:"po-card__value"},Er={class:"po-card__row"},$r={class:"po-card__field"},Dr={class:"po-card__value"},zr={class:"po-card__field po-card__field--right"},Ur={class:"po-card__value"},Fr={key:1,class:"po-card__row"},jr={class:"po-card__field"},Ir={class:"po-card__value text-orange-600 font-semibold"},Lr={class:"po-card__field po-card__field--right"},qr={class:"po-card__value"},Mr={key:0,class:"text-primary"},Br={key:1},Hr={key:2,class:"po-card__row"},Gr={class:"po-card__field"},Wr={class:"po-card__value"},Kr={key:0,class:"text-primary"},Yr={key:1},Qr={class:"po-card__field po-card__field--right"},Jr={class:"po-card__value po-card__time"},Xr={class:"po-card__tags-row"},Zr={class:"po-card__meta"},eo={key:0},to={key:1},ao={key:2,class:"po-card__meta-time"},so={class:"flex justify-end mt-4"},lo={class:"po-detail-drawer-head flex w-full min-w-0 flex-col gap-2"},no={class:"po-detail-drawer-head-main flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1"},io={key:0,class:"po-detail-drawer-actions flex flex-wrap items-center gap-2"},ro={key:1,class:"po-detail-body px-6 pb-6 h-full overflow-y-auto"},oo={class:"min-w-0 break-words text-sm leading-relaxed"},uo={class:"font-mono font-semibold text-red-700"},po={class:"font-mono font-semibold text-red-700"},co={class:"po-workflow-steps-wrap bg-gray-50/80 border border-gray-100 rounded-lg p-5 mb-5 shadow-sm"},_o={key:0,class:"text-red-500 font-medium"},mo={key:1},fo={key:2,class:"text-green-600"},vo={key:3,class:"text-gray-400"},go={key:0,class:"text-red-500 font-medium"},yo={key:1},bo={key:2,class:"text-green-600"},xo={key:3,class:"text-gray-400"},ko={key:0,class:"text-amber-600 font-medium"},ho={key:1,class:"text-primary font-medium"},wo={key:2},Vo={key:3,class:"text-green-600"},So={key:4,class:"text-red-500 font-medium"},No={class:"flex items-center justify-between mb-1"},Co={class:"stat-value text-red-500 font-bold text-xl"},Po={class:"stat-value text-green-600 font-bold text-xl"},Ao={class:"stat-value text-primary font-bold text-xl"},To={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},Oo={key:0,class:"audit-stamp stamp-pass"},Ro={key:1,class:"audit-stamp stamp-reject"},Eo={class:"po-panel-rx-header flex w-full min-w-0 flex-col gap-2"},$o={class:"flex w-full min-w-0 flex-wrap items-center justify-between gap-x-2 gap-y-1"},Do={class:"shrink-0 text-xs text-gray-400 tabular-nums"},zo={key:0,class:"min-w-0 text-xs leading-snug text-gray-500"},Uo={class:"text-primary font-medium"},Fo={class:"flex w-full min-w-0 flex-wrap items-center gap-x-3 gap-y-1"},jo={class:"text-red-500 font-medium"},Io={key:1,class:"ml-2 text-gray-500"},Lo={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},qo={key:0,class:"mt-4"},Mo={class:"flex flex-col gap-4 h-full"},Bo={class:"text-red-500"},Ho={key:0,class:"audit-stamp stamp-pass"},Go={key:1,class:"audit-stamp stamp-reject"},Wo={class:"flex items-center justify-between"},Ko={class:"flex items-center gap-3"},Yo={key:0,class:"text-xs text-gray-500"},Qo={class:"text-primary font-medium"},Jo={class:"text-red-500"},Xo={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"},Zo={class:"flex min-w-0 flex-col gap-1"},eu={class:"font-mono text-[1.125rem] font-semibold leading-tight tracking-tight text-slate-900 tabular-nums"},tu={class:"flex flex-wrap items-center gap-x-4 gap-y-1 text-[13px]"},au={class:"font-mono text-primary"},su={class:"text-gray-500"},lu={key:0},nu={key:1,class:"text-gray-500"},iu={key:0,class:"text-xs text-gray-500 mt-1"},ru={key:1,class:"text-gray-400"},ou={class:"po-audit-remark"},uu={class:"po-audit-remark"},du={class:"po-logistics-toolbar flex flex-wrap items-center gap-2 mb-4"},pu={class:"po-logistics-toolbar__links flex items-center gap-3 w-full pt-1"},cu={key:1,class:"py-6 text-center text-sm text-gray-500"},_u={key:2,class:"logistics-content bg-gray-50/50 p-4 rounded-md"},mu={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},fu={class:"text-gray-800"},vu={key:1,class:"text-xs text-gray-400 ml-1"},gu={key:2,class:"text-xs text-gray-400"},yu={class:"flex items-center gap-2 mb-1"},bu={class:"font-medium text-[13px]"},xu={class:"text-sm text-gray-700 font-medium"},ku={class:"create-order-dialog__inner"},hu={key:0,class:"create-order-rx-card"},wu={class:"create-order-rx-card__head"},Vu={class:"create-order-rx-card__meta"},Su={class:"create-order-rx-card__id"},Nu={key:0,class:"create-order-rx-card__sn"},Cu={class:"create-order-rx-card__patient"},Pu={class:"create-order-rx-card__herbs"},Au={class:"create-order-step-lead"},Tu={class:"create-order-step-panel"},Ou={class:"create-order-step-panel"},Ru={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},Eu={class:"text-xs text-gray-400"},$u={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},Du={key:0,class:"space-y-1.5"},zu={class:"text-gray-800 break-all"},Uu={key:1,class:"text-gray-400"},Fu={class:"flex items-center gap-1 w-full"},ju={class:"flex gap-2 w-full"},Iu={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},Lu={class:"flex items-center justify-between"},qu={class:"font-medium text-[13px] text-gray-800"},Mu={class:"text-orange-500 font-medium ml-4"},Bu={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},Hu={class:"truncate pr-2"},Gu={class:"shrink-0"},Wu={class:"create-order-pay-hint text-gray-500"},Ku={class:"text-amber-600 font-medium"},Yu={class:"create-order-step-panel"},Qu={class:"create-order-deposit-bar__cell"},Ju={class:"create-order-deposit-bar__sub"},Xu={class:"create-order-deposit-bar__cell"},Zu={class:"create-order-deposit-bar__sub"},ed={class:"create-order-footer"},td={class:"create-order-footer__hint"},ad={class:"create-order-footer__step"},sd={key:0,class:"create-order-footer__warn"},ld={class:"create-order-footer__actions"},nd={class:"text-sm"},id={class:"text-gray-600"},rd={class:"text-gray-600"},od={class:"flex items-center justify-between"},ud={class:"text-sm"},dd={class:"text-orange-500 font-medium ml-4"},pd={class:"flex items-center justify-between w-full pr-2 gap-3"},cd={key:0,class:"flex items-center gap-2 shrink-0"},_d={class:"rx-wrap"},md={key:0,class:"rx-statusbar"},fd={key:1,class:"rx-status rx-status-danger"},vd={key:2,class:"rx-status rx-status-danger"},gd={key:0,class:"mt-1"},yd={key:3,class:"rx-status rx-status-danger"},bd={key:0,class:"mt-1"},xd={class:"rx-notice"},kd={class:"rx-notice-meta"},hd={class:"rx-meta-item"},wd={class:"rx-meta-value"},Vd={class:"rx-meta-item"},Sd={class:"rx-meta-value"},Nd={class:"rx-meta-item"},Cd={class:"rx-meta-value"},Pd={key:0,class:"rx-meta-item"},Ad={class:"rx-meta-value"},Td={class:"rx-info"},Od={class:"rx-info-row"},Rd={class:"rx-info-cell"},Ed={class:"rx-val"},$d={class:"rx-info-cell"},Dd={class:"rx-val"},zd={class:"rx-info-cell"},Ud={class:"rx-val"},Fd={class:"rx-info-cell"},jd={class:"rx-val"},Id={class:"rx-info-row rx-info-row-full"},Ld={class:"rx-info-cell"},qd={class:"rx-val"},Md={class:"rx-info-row rx-info-row-full"},Bd={class:"rx-info-cell"},Hd={class:"rx-val"},Gd={class:"rx-rp"},Wd={class:"rx-herbs"},Kd={class:"rx-herb-name"},Yd={class:"rx-herb-total"},Qd={class:"rx-text"},Jd={key:0},Xd={key:1},Zd={key:2,class:"rx-text-warn"},ep={key:3,class:"rx-text-warn"},tp={class:"rx-bottom"},ap={class:"rx-bot-row rx-bot-row-1"},sp={class:"rx-bot-cell rx-bot-doctor"},lp={class:"rx-bot-doctor-body"},np=["src"],ip={class:"rx-bot-cell rx-bot-meta"},rp={class:"rx-bot-meta-val"},op={class:"rx-bot-cell rx-bot-meta"},up={class:"rx-bot-meta-val"},dp={class:"rx-bot-cell rx-bot-meta"},pp={class:"rx-bot-meta-val"},cp={key:5,class:"rx-audit"},_p={key:0},mp={key:0,class:"ml-2 text-gray-400"},fp={key:1,class:"mt-1"},vp={key:0,class:"px-4"},gp={class:"flex items-center justify-between"},yp={class:"text-lg font-semibold text-orange-600"},bp={class:"text-lg font-semibold text-blue-600"},xp={class:"text-lg font-semibold text-green-600"},kp={class:"text-xl font-bold text-red-600"},hp={class:"text-sm text-gray-500 mt-1.5"},wp={class:"font-medium text-gray-700"},Vp={key:0},Sp={class:"text-sm text-gray-700 leading-relaxed"},Np={class:"flex items-center justify-between"},Cp={class:"text-sm text-gray-500"},Pp={class:"font-medium text-orange-600"},Ap={class:"text-base font-medium"},Tp={class:"text-base font-medium"},Op=is({name:"prescriptionOrderListH5"}),Rp=is({...Op,setup(Ep){const rs=hi(()=>Xl(()=>import("./edit-MqCGG5UN.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]))),Rt=mi(),da=x(null);function os(){var e,n;const t=Number((e=c.value)==null?void 0:e.diagnosis_id);if(!t){A.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(n=da.value)==null||n.openViewOnly(t)}const us=2,ds=[0,3,6],_e=V(()=>{const t=Rt.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(us)?e.some(n=>ds.includes(n)):!0}),ps=V(()=>_e.value?"详情/审核":"详情"),cs=[0,3,6],pa=()=>{const t=Rt.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 cs.some(n=>e.includes(n))},Ze=x([]),Ae=x([]),Et=x([]),Te=x([]),et=x([]),_s={value:"id",label:"name",children:"children"};function ca(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=ca(u.children||[],e);if(d)return d}return null}function _a(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(..._a(u));return n}function ms(t,e){const n=ca(e,t);return n?_a(n):[t]}async function fs(){try{const[t,e,n]=await Promise.all([Yn(),Qn(),gi()]);Et.value=Array.isArray(t)?t:[],Te.value=Array.isArray(e)?e:[];const u=Array.isArray(n)?n:[];et.value=u}catch{Et.value=[],Te.value=[],et.value=[]}}const vs=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})))||[]}}))||[]}}),gs=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),Ze.value=vs(n),console.log("regionOptions 已设置,条数:",Ze.value.length)}catch(t){console.error("加载省市区数据失败:",t),Ze.value=[]}},ys=async()=>{try{const t=await fi({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=[]}},bs=[{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 xs(t){ee.value="",b.fulfillment_status=t,G()}const ee=x(""),ks=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"自营",value:"self"}];function hs(t){b.supply_mode=t,G()}const ws=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function Vs(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:""}),Ss=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],Ns=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function Cs(t){ee.value="",b.prescription_audit_status=t,G()}function Ps(t){ee.value="",b.payment_slip_audit_status=t,G()}function tt(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 As(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 Jn(e)}const{pager:te,getLists:K,resetPage:G,resetParams:Ts}=yi({fetchFun:As,params:b}),ma=V(()=>{const t=b.assistant_dept_id;if(t===""||t==null)return Te.value;const e=Number(t);if(!Number.isFinite(e))return Te.value;const n=new Set(ms(e,et.value));return Te.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 Os(){const t=b.assistant_id;if(t!==""&&t!=null){const e=Number(t);ma.value.some(u=>Number(u.id)===e)||(b.assistant_id="")}G()}const ne=V(()=>{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,k=(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),F=f?u(t==null?void 0:t.stats_order_amount_cancelled):0,Q=u(k?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:n),w=k?u(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,U=(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(),Ct=String((t==null?void 0:t.stats_time_end)??"").trim(),la=ve&&Ct?`统计时间:${ve} ~ ${Ct}`:"统计时间:—",Ge=String((t==null?void 0:t.stats_scope)??"restricted");let le="统计口径:与当前列表数据可见范围一致";Ge==="all"?le="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":Ge==="assistant"?le="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":Ge==="own_rx"&&(le="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const We=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(F),payNotCancelledStr:d(Q),payCancelledStr:d(w),orderPerformanceStr:d(U),payPerformanceStr:d(re),orderHeading:`${We}业绩(业务订单额)`,payHeading:`${We}业绩(关联实付)`,periodLine:la,scopeHint:le,orderSplitHint:"业绩 = 除履约已取消(4)外全部订单金额;下方为合计与已取消明细"}}),at=V(()=>{const t=te.extend,e=k=>{const y=Number(k);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 $t(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 st({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=dt(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":""}bi(_e,t=>{t||b.prescription_audit_status===""||b.prescription_audit_status===void 0||(b.prescription_audit_status="",G())},{immediate:!0});function Rs(){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="",Ts()}function lt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"}[Number(t)]??"—"}function Es(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 fa(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function va(t){return t===1?"success":t===2?"danger":"info"}function Dt(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function $s(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)}function Ds(t){const e=Number(t.fulfillment_status);if(e===3||e===4)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 zs(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function Us(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 Fs(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 js(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 ga(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 Is(t){return Number(t.fulfillment_status)===5}function ya(t){const e=Number(t.prescription_audit_status),n=String(t.gancao_reciperl_order_no||"").trim();return e===1&&n===""}function ba(t){return{1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"}[Number(t)]??"—"}const nt=x(!0),xa=V(()=>{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 Ls(t){return Ut(t)||Ft(t)||ya(t)||ga(t)}function qs(t,e){t==="addPayOrder"?Ia(e):t==="complete"?La(e):t==="submitGancao"?hl(e):t==="withdraw"&&gl(e)}function jt(t){if(!(t!=null&&t.id))return!1;const e=Number(t.fulfillment_status);return e!==3&&e!==4}const J=x(!1),It=x(!1),c=x(null),it=V(()=>{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}),rt=V(()=>{var e;const t=Number((e=c.value)==null?void 0:e.prescription_audit_status);return t===1?"success":t===2?"error":it.value===1?"process":"wait"}),ot=V(()=>{var e;const t=Number((e=c.value)==null?void 0:e.payment_slip_audit_status);return t===1?"success":t===2?"error":it.value===2?"process":"wait"}),xe=V(()=>{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||it.value===3?"process":"wait"}),Lt=V(()=>{const t=c.value;if(!t)return[];const e=t.linked_pay_orders;return Array.isArray(e)?e:[]}),ka=V(()=>{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=x([]);async function Ms(t,e,n){var u;if(!t){ke.value=[];return}try{const d=await ua({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)??[],k=Array.isArray(f)?f.filter(y=>!n.includes(y.id)):[];ke.value=k}catch{ke.value=[]}}function ha(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=V(()=>{var e;const t=(e=c.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null});function ut(t){return t==null?"":String(t).replace(/\s/g,"").trim()}function dt(t,e){const n=ut(t),u=ut(e);return!n||!u?!1:n!==u}const Oe=V(()=>{var n,u;const t=(n=C.value)==null?void 0:n.phone,e=(u=c.value)==null?void 0:u.recipient_phone;return dt(e,t)}),Bs=V(()=>{var e;return ut((e=C.value)==null?void 0:e.phone)||"—"}),Hs=V(()=>{var e;return ut((e=c.value)==null?void 0:e.recipient_phone)||"—"}),W=V(()=>{var e;const t=(e=c.value)==null?void 0:e.linked_appointment;return t&&typeof t=="object"?t:null}),wa=V(()=>{var e;const t=String(((e=W.value)==null?void 0:e.resolved_from)||"");return t==="prescription"?"处方绑定挂号":t==="diagnosis"?"诊单关联挂号":""}),Va=V(()=>{var t;return ha((t=C.value)==null?void 0:t.herbs)}),Gs=V(()=>{var t;return((t=c.value)==null?void 0:t.prescription_detail_herbs_visible)!==!1}),Ws=V(()=>{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(" "):"—"}),Sa=V(()=>`${_.dose_unit||"剂"}数`);function Ks(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function Ys(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function Na(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function Ca(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):me(t)}const Re=x("auto"),pt=x(!1),H=x(null),Ee=x(""),he=x([]),$e=x(!1),qt=x(!1),ct=x(),ie=be({id:0,amount:void 0}),Qs={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 Js(){const t=Rt.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function Mt(t){if(!Js()){he.value=[];return}try{const e=await ci({id:t});he.value=(e==null?void 0:e.data)??e??[]}catch{he.value=[]}}function Xs(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 Bt=V(()=>{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}`}}),Pa=V(()=>{const t=H.value;return!t||!Array.isArray(t.traces)?[]:t.traces});function Zs(t){const e=String(t||"").toLowerCase();return e==="sf"?"顺丰速运":e==="jd"?"京东快递":e==="jt"||e==="jtexpress"?"极兔速递":"自动识别"}async function Ht(){var e;const t=Number((e=c.value)==null?void 0:e.id);if(t){pt.value=!0;try{const n=String(Ee.value||"").replace(/\D/g,""),u={id:t,express_company:Re.value};n.length>=4&&(u.phone_tail=n);const d=await Xn(u);H.value=(d==null?void 0:d.data)??d}catch{H.value=null}finally{pt.value=!1}}}const De=x(!1),Gt=x(!1),Wt=x(),ae=be({patient_name:"",phone:""}),el={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function tl(){const t=C.value,e=c.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){A.msgWarning("无处方数据");return}ae.patient_name=String(t.patient_name??"").trim(),ae.phone=String(t.phone??"").trim(),De.value=!0,Ot(()=>{var n;return(n=Wt.value)==null?void 0:n.clearValidate()})}function al(){ae.patient_name="",ae.phone=""}function sl(){var t;ie.id=0,ie.amount=void 0,(t=ct.value)==null||t.clearValidate()}function ll(){const t=c.value;if(!jt(t)){A.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,Ot(()=>{var e;return(e=ct.value)==null?void 0:e.clearValidate()})}async function Aa(){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 nl(){var n;const t=Wt.value;if(!t)return;try{await t.validate()}catch{return}const e=(n=c.value)==null?void 0:n.id;if(e){Gt.value=!0;try{await Zn({id:e,patient_name:ae.patient_name.trim(),phone:ae.phone.trim()}),De.value=!1,await Aa(),await Mt(e)}catch(u){console.error(u)}finally{Gt.value=!1}}}async function Ta(){const t=ct.value;if(!t)return;try{await t.validate()}catch{return}if(!jt(c.value)){A.msgWarning("当前订单状态不允许修改金额");return}const e=ie.id;qt.value=!0;try{await ei({id:e,amount:Number(ie.amount)}),A.msgSuccess("修改成功"),$e.value=!1,await Aa(),await Mt(e),K()}catch{}finally{qt.value=!1}}async function Oa(t){c.value=null,ke.value=[],H.value=null,Re.value="auto",Ee.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){Re.value=String(n.express_company||"auto")||"auto";const u=String(n.recipient_phone||"").replace(/\D/g,"");Ee.value=u.length>=4?u:"",String(n.tracking_number||"").trim()&&Ht(),Mt(t);const d=n.diagnosis_id,f=n.pay_order_ids||[];d&&Ms(d,t,f)}}catch(e){A.msgError((e==null?void 0:e.message)||"加载失败"),J.value=!1}finally{It.value=!1}}const fe=x(!1),Kt=x(!1),Yt=x(!1),L=x(0),se=x(null),il=V(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][L.value]??""),Ra=V(()=>{const t=se.value,e=ha(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}),rl=["recipient_name","recipient_phone","region","shipping_address"],we=x(),_=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:""}),Ea=V(()=>{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):[]}),ze=x([]),Qt=x(!1),M=x(0);function Jt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const Xt=V(()=>{const t=new Set(_.pay_order_ids.map(n=>Number(n)));let e=0;for(const n of ze.value)t.has(Number(n.id))&&(e+=Number(n.amount)||0);return Math.round(e*100)/100}),ol=V(()=>{const t=M.value;return t>0?Math.round(t*100)/100:0});async function ul(t,e){var n,u;if(!t){ze.value=[];return}try{Qt.value=!0;const d=await ua({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)??[];ze.value=Array.isArray(f)?f:[];const k=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(k)&&k>=0&&(M.value=k)}catch{ze.value=[]}finally{Qt.value=!1}}const dl=V(()=>{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(U)).filter(U=>!Number.isNaN(U)):[],_.internal_cost=n.internal_cost!=null&&n.internal_cost!==""?Number(n.internal_cost):void 0,await ul(_.diagnosis_id,_.id),Ot(()=>{var U;(U=we.value)==null||U.clearValidate()})}catch(e){A.msgError((e==null?void 0:e.message)||"加载异常"),fe.value=!1}finally{Kt.value=!1}}async function fl(){if(!(!we.value||L.value!==2)){await we.value.validate(),Yt.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 ls(t),A.msgSuccess("保存成功"),fe.value=!1,K()}catch{}finally{Yt.value=!1}}}const Ue=x(!1),Zt=x("prescription"),_t=x(0),Fe=x(null),Ve=x(""),mt=x(!1),vl=V(()=>Zt.value==="prescription"?"处方业务审核":"关联支付单审核");function $a(t,e){Zt.value=e,_t.value=t.id,Fe.value=t,Ve.value="",Ue.value=!0}async function Da(t){if(t==="reject"&&!Ve.value.trim()){A.msgError("驳回或阻止时必须填写明确的审核意见");return}mt.value=!0;try{const e={id:_t.value,action:t,remark:Ve.value.trim()};if(Zt.value==="prescription"?await ti(e):await ai(e),A.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),Ue.value=!1,K(),J.value&&_t.value)try{const n=await Z({id:_t.value}),u=(n==null?void 0:n.data)??n??null;u&&(c.value=u)}catch{}}catch{}finally{mt.value=!1}}async function gl(t){try{await Je.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await si({id:t.id}),A.msgSuccess("撤回成功"),K()}catch{}}const za=x(0),ft=x(!1),Se=x(!1),z=x(null);function Ua(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 yl(t,e){const n=parseFloat(Ua(t))||0,u=Number(e)||0;return u<=0?"—":(n/u*100).toFixed(2)}function bl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((n,u)=>n+(Number(u.quantity)||0),0).toFixed(0)}async function xl(){if(!_.id){A.msgError("请先保存订单");return}Se.value=!0;try{const t=await ns({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,ft.value=!0,A.msgSuccess("预下单测试成功"))}catch{}finally{Se.value=!1}}async function kl(){var t;if(!((t=c.value)!=null&&t.id)){A.msgError("订单数据不存在");return}Se.value=!0;try{const e=await ns({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&&(z.value=n,ft.value=!0)}catch{}finally{Se.value=!1}}async function hl(t){var e;try{await Je.confirm("将把本单关联处方提交至甘草药管家开放平台(先 CTM_PREVIEW 预检查再 CTM_SUBMIT_RECIPEL 正式下单;成功后将按甘草侧规则扣费,详见 https://apidoc.igancao.com/service-doc/scm-outer-recipel.html )。确定继续?","上传甘草药方",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),za.value=t.id;const n=await li({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(A.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}),k=(f==null?void 0:f.data)??f??null;k&&(c.value=k)}catch{}}catch{}finally{za.value=0}}xi(async()=>{await gs(),await ys(),await fs(),K()});const je=x(!1),vt=x(!1),Ie=x(0),X=be({express_company:"auto",tracking_number:""});function wl(t){Ie.value=t.id,X.express_company=String(t.express_company||"auto")||"auto",X.tracking_number=String(t.tracking_number||""),je.value=!0}async function Fa(){var t;if(!X.tracking_number.trim()){A.msgError("请填写快递单号");return}vt.value=!0;try{const e=await Z({id:Ie.value}),n=(e==null?void 0:e.data)??e;if(!n){A.msgError("加载订单数据失败");return}if(await ls({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()}),A.msgSuccess("快递单号已保存"),je.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===Ie.value)try{const u=await Z({id:Ie.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 Je.confirm(`快递单号「${X.tracking_number}」已保存,是否立即确认发货?`,"确认发货",{type:"success",confirmButtonText:"确认发货",cancelButtonText:"稍后再说"}),ea({id:Ie.value,tracking_number:X.tracking_number,express_company:X.express_company})}catch{}}catch{}finally{vt.value=!1}}const Le=x(!1),gt=x(!1),yt=x(0),Y=be({ship_mode:"gancao",express_company:"auto",tracking_number:""});function ea(t){yt.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||""),Le.value=!0}async function ja(){var t;if(!Y.tracking_number.trim()){A.msgError("请先填写快递单号再确认发货");return}gt.value=!0;try{if(await ni({id:yt.value,ship_mode:Y.ship_mode==="direct"?"direct":"gancao",express_company:Y.express_company||"auto",tracking_number:Y.tracking_number.trim()}),A.msgSuccess("确认发货成功,订单已进入「已发货」状态"),Le.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===yt.value)try{const e=await Z({id:yt.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{gt.value=!1}}const Vl=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],qe=x(!1),ta=x(0),bt=x(3),aa=x(!1);async function Sl(){var e;const t=ta.value;if(t){aa.value=!0;try{if(await ii({id:t,fulfillment_status:bt.value}),A.msgSuccess("订单状态已更新"),qe.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{aa.value=!1}}}const Me=x(!1),xt=x(!1),Be=x(0),kt=x(),sa=x(!1),ht=x([]),O=be({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),Nl={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 Cl(t,e=[]){var n;if(!t){ht.value=[];return}try{sa.value=!0;const u=await ua({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(k=>!e.includes(k.id)):[];ht.value=f}catch{ht.value=[]}finally{sa.value=!1}}function Ia(t){var u,d;Be.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,Me.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&&Cl(e,n)}async function Pl(){var t;if(kt.value){await kt.value.validate(),xt.value=!0;try{if(O.add_mode==="create")await ri({id:Be.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 oi({id:Be.value,pay_order_ids:e,completion_request:O.completion_request}),A.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}if(Me.value=!1,K(),J.value&&((t=c.value)==null?void 0:t.id)===Be.value)try{const e=await Z({id:Be.value}),n=(e==null?void 0:e.data)??e??null;n&&(c.value=n)}catch{}}catch{}finally{xt.value=!1}}}function La(t){ta.value=t.id,bt.value=3,qe.value=!0}async function Al(t){var e;try{if(await Je.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await ui({id:t.id}),A.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 Tl(t){var e;try{if(await Je.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await di({id:t.id}),A.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 wt=x(!1),Vt=x(!1),h=x(null),qa=x(null),Ne=x(!1),St=V(()=>{var e;const t=(e=h.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),Ol=V(()=>{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}),Nt=t=>String(t).padStart(2,"0"),Rl=V(()=>{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()}-${Nt(u.getMonth()+1)}-${Nt(u.getDate())} ${Nt(u.getHours())}:${Nt(u.getMinutes())}`}return t.prescription_date||"—"}),El=V(()=>{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||"—"}),$l=V(()=>{const t=h.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),Ma=V(()=>{const t=h.value;return t?String(t.order_no??"").trim():""}),Dl=V(()=>{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(","):"—"}),Ba=V(()=>{var e;const t=Number((e=h.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),zl=V(()=>{const e=St.value.reduce((n,u)=>n+(Number(u==null?void 0:u.dosage)||0),0);return He(e)}),Ul=t=>{const e=Number(t)||0;return He(e*Ba.value)},Fl=V(()=>{const t=h.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),jl=V(()=>{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||"",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(`每袋${n}${u}`)}else k.push(`一次${n}${u}`);return k.push(d),f&&k.push(f),k.join(", ")}),Il=V(()=>{const t=Ol.value;if(typeof t=="number"&&isFinite(t)&&t>0)return He(t);const e=h.value;if(!e)return"";const n=e.out_pellet||e.total_weight;if(n&&Number(n)>0)return He(Number(n));const u=St.value;if(!u.length)return"";const d=u.reduce((f,k)=>f+(Number(k==null?void 0:k.dosage)||0),0);return He(d*Ba.value)}),Ha=V(()=>{const t=h.value;return t&&t.medical_advice||""}),Ga=V(()=>{const t=h.value;if(!t)return"";const e=[];return e.push(`共${St.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),Wa=V(()=>{const t=h.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),Ka=V(()=>{const t=Il.value;return t?`${t}克`:""});function He(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function Ya(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 Ll(t){return t?Ya(t):"—"}function ql(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function Ml(t){return t==null||t===""?"—":`${t}岁`}function Bl(){Qa(_)}async function Qa(t){if(!t.prescription_id){A.msgWarning("该订单未关联处方");return}wt.value=!0,Vt.value=!0,h.value=null;try{const e=await pi({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){A.msgError((e==null?void 0:e.message)||"加载处方详情失败"),wt.value=!1}finally{Vt.value=!1}}async function Hl(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(),k=await new Promise((y,F)=>{const Q=new FileReader;Q.onload=()=>y(Q.result),Q.onerror=F,Q.readAsDataURL(f)});u.src=k}catch{}});await Promise.allSettled(n)}async function Ja(){await Ot();const t=qa.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Hl(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),_i(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 Xa(){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 Gl(){if(h.value){Ne.value=!0;try{const t=await Ja(),e=document.createElement("a");e.download=`${Xa()}.png`,e.href=t.toDataURL("image/png"),e.click(),A.msgSuccess("图片已下载")}catch{A.msgError("下载图片失败")}finally{Ne.value=!1}}}async function Wl(){if(h.value){Ne.value=!0;try{const t=await Ja(),e=t.toDataURL("image/jpeg",.95),n=new Zl({orientation:"portrait",unit:"mm",format:"a4"}),u=210,d=297,f=u,k=t.height*f/t.width;if(k<=d)n.addImage(e,"JPEG",0,0,f,k);else{let y=k,F=0;for(;y>0;)n.addImage(e,"JPEG",0,F,f,k),y-=d,F-=d,y>0&&n.addPage()}n.save(`${Xa()}.pdf`),A.msgSuccess("PDF已下载")}catch{A.msgError("下载PDF失败")}finally{Ne.value=!1}}}return(t,e)=>{const n=en,u=tn,d=sn,f=nn,k=rn,y=un,F=on,Q=dn,w=pn,U=ln,re=cn,ve=fn,Ct=mn,Za=_n,la=jn,Ge=vn,le=gn,oe=bn,We=yn,E=kn,pe=xn,S=wn,Ke=hn,D=Sn,Pt=Vn,na=Nn,es=Pn,ts=Cn,ia=An,Ce=Tn,ce=On,as=Rn,Kl=En,Yl=Dn,Ql=$n,Jl=zn,Pe=Fn,ra=Un,ge=an,q=ki("perms");return o(),m("div",Vi,[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",Si,[_e.value?(o(),m("div",Ni,[e[85]||(e[85]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),m($,null,B(Ss,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=>Cs(i.value)},[a("span",Pi,r(i.label),1)],10,Ci)),64))])):v("",!0),a("div",Ai,[e[86]||(e[86]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),m($,null,B(Ns,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=>Ps(i.value)},[a("span",Oi,r(i.label),1)],10,Ti)),64))]),a("div",Ri,[e[87]||(e[87]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),m($,null,B(bs,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=>xs(i.value)},[a("span",$i,r(i.label),1)],10,Ei)),64))]),a("div",Di,[e[88]||(e[88]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),m($,null,B(ks,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=>hs(i.value)},[a("span",Ui,r(i.label),1)],10,zi)),64))]),a("div",Fi,[e[89]||(e[89]=a("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),m($,null,B(ws,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=>Vs(i.value)},[a("span",Ii,r(i.label),1)],10,ji)),64))])])]),_:1}),s(n,{class:"po-h5-surface po-filter-card !mb-3 !border-none shadow-none",shadow:"never"},{default:l(()=>[T((o(),m("div",Li,[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",Mi,[a("div",null,[a("div",Bi,[s(u,{size:16,class:"text-sky-500"},{default:l(()=>[s(R(In))]),_:1}),p(" "+r(ne.value.orderHeading),1)]),a("div",Hi,[a("div",Gi," ¥"+r(ne.value.orderPerformanceStr),1),a("div",Wi,[a("span",null,"合计 ¥"+r(ne.value.orderStr),1),a("span",Ki,"已取消 ¥"+r(ne.value.orderCancelledStr),1)])])]),a("div",Yi,[s(u,{size:20},{default:l(()=>[s(R(Ln))]),_:1})])]),a("p",Qi,r(ne.value.periodLine),1)]),a("div",Ji,[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",Xi,[a("div",null,[a("div",Zi,[s(u,{size:16,class:"text-emerald-500"},{default:l(()=>[s(R(qn))]),_:1}),p(" "+r(ne.value.payHeading),1)]),a("div",er,[a("div",tr," ¥"+r(ne.value.payPerformanceStr),1),a("div",ar,[a("span",null,"合计 ¥"+r(ne.value.payStr),1),a("span",sr,"已取消 ¥"+r(ne.value.payCancelledStr),1)])])]),a("div",lr,[s(u,{size:20},{default:l(()=>[s(R(Mn))]),_:1})])]),a("p",nr,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=>nt.value=!nt.value)},[a("div",ir,[s(u,null,{default:l(()=>[s(R(oa))]),_:1}),e[92]||(e[92]=a("span",null,"筛选条件",-1)),xa.value>0?(o(),g(d,{key:0,size:"small",type:"primary",effect:"dark",round:""},{default:l(()=>[p(r(xa.value),1)]),_:1})):v("",!0)]),s(u,{class:I(["po-filter-toggle__arrow",{"is-open":!nt.value}])},{default:l(()=>[s(R(ss))]),_:1},8,["class"])]),T(s(U,{class:"ls-form",model:b,inline:""},{default:l(()=>[s(f,{class:"w-[360px] min-w-[240px] max-w-full",label:"创建时间"},{default:l(()=>[s(Kn,{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(k,{modelValue:b.order_no,"onUpdate:modelValue":e[3]||(e[3]=i=>b.order_no=i),placeholder:"业务订单号",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[140px]",label:"处方ID"},{default:l(()=>[s(k,{modelValue:b.prescription_id,"onUpdate:modelValue":e[4]||(e[4]=i=>b.prescription_id=i),placeholder:"处方ID",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"患者"},{default:l(()=>[s(k,{modelValue:b.patient_keyword,"onUpdate:modelValue":e[5]||(e[5]=i=>b.patient_keyword=i),placeholder:"姓名 / 手机号",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[220px]",label:"快递"},{default:l(()=>[s(k,{modelValue:b.express_keyword,"onUpdate:modelValue":e[6]||(e[6]=i=>b.express_keyword=i),placeholder:"快递单号 / 公司",clearable:"",onKeyup:Xe(R(G),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),s(f,{class:"w-[200px]",label:"医生"},{default:l(()=>[s(F,{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($,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:et.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:_s,placeholder:"医助部门(选父级含子级)",onChange:Os},null,8,["modelValue","data"])]),_:1}),s(f,{class:"w-[200px]",label:"医助"},{default:l(()=>[s(F,{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($,null,B(ma.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:Rs},{default:l(()=>[...e[94]||(e[94]=[p("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),[[At,!nt.value]])]),_:1}),T((o(),g(n,{class:"po-h5-surface po-table-card !mt-0 !border-none shadow-none",shadow:"never"},{default:l(()=>[a("div",rr,[a("div",or,[a("div",ur,[e[96]||(e[96]=a("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),a("span",dr,"共 "+r(R(te).count)+" 条",1)]),a("div",pr,[a("div",{class:I(["po-focus-board__item is-pending-rx",{"is-active":ee.value==="pendingRx"}]),onClick:e[10]||(e[10]=i=>tt("pendingRx"))},[e[97]||(e[97]=a("span",{class:"po-focus-board__label"},"待处方审核",-1)),a("strong",cr,r(at.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=>tt("pendingPay"))},[e[98]||(e[98]=a("span",{class:"po-focus-board__label"},"待支付审核",-1)),a("strong",_r,r(at.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=>tt("pendingShip"))},[e[99]||(e[99]=a("span",{class:"po-focus-board__label"},"待发货",-1)),a("strong",mr,r(at.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=>tt("risk"))},[e[100]||(e[100]=a("span",{class:"po-focus-board__label"},"重点异常",-1)),a("strong",fr,r(at.value.risk),1)],2)])])]),a("div",vr,[!R(te).lists.length&&!R(te).loading?(o(),g(re,{key:0,description:"暂无订单","image-size":88})):v("",!0),(o(!0),m($,null,B(R(te).lists,i=>(o(),m("div",{key:i.id,class:I(["po-card",{"po-card--focus":st&&st({row:i})==="po-row-focus","po-card--risk":st&&st({row:i})==="po-row-risk"}]),onClick:P=>Oa(i.id)},[a("div",yr,[a("div",br,[a("span",xr,r(i.order_no||"—"),1)]),a("div",kr,[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",hr,"#"+r(i.id),1)])]),dt(i.recipient_phone,i.prescription_phone)?(o(),m("div",wr,[s(u,null,{default:l(()=>[s(R(Bn))]),_:1}),e[101]||(e[101]=a("span",null,"收货手机与处方手机不一致",-1))])):v("",!0),a("div",Vr,[a("div",Sr,[e[102]||(e[102]=a("span",{class:"po-card__label"},"收货人",-1)),a("span",Nr,r(i.recipient_name||"—"),1)]),a("div",Cr,[e[103]||(e[103]=a("span",{class:"po-card__label"},"金额",-1)),a("span",Pr,"¥"+r(i.amount),1)])]),a("div",Ar,[a("div",Tr,[e[104]||(e[104]=a("span",{class:"po-card__label"},"手机",-1)),a("span",{class:I(["po-card__value",dt(i.recipient_phone,i.prescription_phone)?"text-red-600 font-semibold":""])},r(i.recipient_phone||"—"),3)]),a("div",Or,[e[105]||(e[105]=a("span",{class:"po-card__label"},"费用类别",-1)),a("span",Rr,r(lt(i.fee_type)),1)])]),a("div",Er,[a("div",$r,[e[106]||(e[106]=a("span",{class:"po-card__label"},"处方ID",-1)),a("span",Dr,r(i.prescription_id||"—"),1)]),a("div",zr,[e[107]||(e[107]=a("span",{class:"po-card__label"},"诊单ID",-1)),a("span",Ur,r(i.diagnosis_id||"—"),1)])]),pa()&&i.internal_cost!=null&&i.internal_cost!==""?(o(),m("div",Fr,[a("div",jr,[e[108]||(e[108]=a("span",{class:"po-card__label"},"内部成本",-1)),a("span",Ir,"¥"+r(i.internal_cost),1)]),a("div",Lr,[e[109]||(e[109]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",qr,[Number(i.linked_pay_order_count)>0?(o(),m("span",Mr,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",Br,"—"))])])])):(o(),m("div",Hr,[a("div",Gr,[e[110]||(e[110]=a("span",{class:"po-card__label"},"关联支付",-1)),a("span",Wr,[Number(i.linked_pay_order_count)>0?(o(),m("span",Kr,r(i.linked_pay_order_count)+" 笔",1)):(o(),m("span",Yr,"—"))])]),a("div",Qr,[e[111]||(e[111]=a("span",{class:"po-card__label"},"创建时间",-1)),a("span",Jr,r(me(i.create_time)),1)])])),a("div",Xr,[s(d,{type:va(i.prescription_audit_status),size:"small",class:I($t("rx",i))},{default:l(()=>[p(" 处方审: "+r(fa(i.prescription_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:va(i.payment_slip_audit_status),size:"small",class:I($t("pay",i))},{default:l(()=>[p(" 支付审: "+r(fa(i.payment_slip_audit_status)),1)]),_:2},1032,["type","class"]),s(d,{type:$s(i.fulfillment_status),size:"small",class:I($t("fulfillment",i))},{default:l(()=>[p(r(Dt(i.fulfillment_status)),1)]),_:2},1032,["type","class"])]),a("div",Zr,[i.doctor_name?(o(),m("span",eo,"医:"+r(i.doctor_name),1)):v("",!0),i.creator_name?(o(),m("span",to,"建:"+r(i.creator_name),1)):v("",!0),pa()&&i.internal_cost!=null&&i.internal_cost!==""?v("",!0):(o(),m("span",ao,r(me(i.create_time)),1))]),a("div",{class:"po-card__actions",onClick:e[14]||(e[14]=Tt(()=>{},["stop"]))},[T((o(),g(w,{type:"primary",size:"small",onClick:P=>Oa(i.id)},{default:l(()=>[p(r(ps.value),1)]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/detail"]]]),Ds(i)?T((o(),g(w,{key:0,size:"small",onClick:P=>ml(i)},{default:l(()=>[...e[112]||(e[112]=[p("编辑",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/edit"]]]):v("",!0),Is(i)?T((o(),g(w,{key:1,type:"success",size:"small",onClick:P=>wl(i)},{default:l(()=>[...e[113]||(e[113]=[p("改单号",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),zt(i)?T((o(),g(w,{key:2,type:"primary",size:"small",onClick:P=>ea(i)},{default:l(()=>[...e[114]||(e[114]=[p("发货",-1)])]),_:1},8,["onClick"])),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ls(i)?(o(),g(Za,{key:3,trigger:"click",onCommand:P=>qs(P,i)},{dropdown:l(()=>[s(Ct,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),ya(i)?(o(),g(ve,{key:2,command:"submitGancao"},{default:l(()=>[...e[118]||(e[118]=[p("上传药方",-1)])]),_:1})):v("",!0),ga(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(ss))]),_:1})]),_:1})]),_:2},1032,["onCommand"])):v("",!0)])],10,gr))),128))]),a("div",so,[s(la,{modelValue:R(te),"onUpdate:modelValue":e[15]||(e[15]=i=>wi(te)?te.value=i:null),onChange:R(K)},null,8,["modelValue","onChange"])])]),_:1})),[[ge,R(te).loading]]),s(ia,{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",lo,[a("div",no,[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",io,[zs(c.value)?T((o(),g(w,{key:0,type:"warning",size:"small",plain:"",onClick:e[16]||(e[16]=N=>$a(c.value,"prescription"))},{default:l(()=>[...e[121]||(e[121]=[p(" 处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Fs(c.value)?T((o(),g(w,{key:1,type:"info",size:"small",plain:"",onClick:e[17]||(e[17]=N=>Al(c.value))},{default:l(()=>[...e[122]||(e[122]=[p(" 撤回处方审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),Us(c.value)?T((o(),g(w,{key:2,type:"warning",size:"small",plain:"",onClick:e[18]||(e[18]=N=>$a(c.value,"payment"))},{default:l(()=>[...e[123]||(e[123]=[p(" 支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),js(c.value)?T((o(),g(w,{key:3,type:"info",size:"small",plain:"",onClick:e[19]||(e[19]=N=>Tl(c.value))},{default:l(()=>[...e[124]||(e[124]=[p(" 撤回支付审核 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),zt(c.value)?T((o(),g(w,{key:4,type:"primary",size:"small",plain:"",onClick:e[20]||(e[20]=N=>ea(c.value))},{default:l(()=>[...e[125]||(e[125]=[p(" 确认发货 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/ship"]]]):v("",!0),Ut(c.value)?T((o(),g(w,{key:5,type:"success",size:"small",plain:"",onClick:e[21]||(e[21]=N=>Ia(c.value))},{default:l(()=>[...e[126]||(e[126]=[p(" 关联支付单 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Ft(c.value)?T((o(),g(w,{key:6,type:"primary",size:"small",plain:"",onClick:e[22]||(e[22]=N=>La(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(Ge,{key:0,rows:12,animated:"",class:"px-6 py-4"})):c.value?(o(),m("div",ro,[Oe.value?(o(),g(le,{key:0,type:"error",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:"业务订单收货手机与处方登记手机不一致"},{default:l(()=>[a("div",oo,[a("div",null,[e[128]||(e[128]=p(" 处方手机: ",-1)),a("span",uo,r(Bs.value),1)]),a("div",null,[e[129]||(e[129]=p(" 订单收货手机: ",-1)),a("span",po,r(Hs.value),1)]),e[130]||(e[130]=a("div",{class:"text-gray-600 mt-1"},"请核对是否代收货或录入错误,避免物流与回访联系错人。",-1))])]),_:1})):v("",!0),a("div",co,[s(We,{class:"po-workflow-steps",direction:"vertical",active:it.value,"finish-status":"success"},{default:l(()=>[s(oe,{title:"业务订单创建",description:me(c.value.create_time)},null,8,["description"]),s(oe,{title:"处方单双审",status:rt.value},{description:l(()=>[rt.value==="error"?(o(),m("span",_o,"处方被驳回")):rt.value==="wait"?(o(),m("span",mo,"等待审核")):rt.value==="success"?(o(),m("span",fo,"双审通过")):(o(),m("span",vo,"进行中"))]),_:1},8,["status"]),s(oe,{title:"支付单审核",status:ot.value},{description:l(()=>[ot.value==="error"?(o(),m("span",go,"支付审核驳回")):ot.value==="wait"?(o(),m("span",yo,"等待审核")):ot.value==="success"?(o(),m("span",bo,"审核通过")):(o(),m("span",xo,"进行中"))]),_: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",ko,"进行中")):xe.value==="process"?(o(),m("span",ho,"等待发货/补充单号")):xe.value==="wait"?(o(),m("span",wo,"待转入履约")):xe.value==="success"?(o(),m("span",Vo,r(Dt((P=c.value)==null?void 0:P.fulfillment_status)),1)):xe.value==="error"?(o(),m("span",So,r(Dt((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",No,[e[132]||(e[132]=a("div",{class:"stat-title text-gray-500 text-xs"},"总金额",-1)),jt(c.value)?T((o(),g(w,{key:0,type:"primary",size:"small",link:"",onClick:ll},{default:l(()=>[...e[131]||(e[131]=[p(" 修改 ",-1)])]),_:1})),[[q,["tcm.prescriptionOrder/updateAmount"]]]):v("",!0)]),a("div",Co,"¥"+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",Po,"¥"+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",ka.value>0?"text-amber-600":"text-gray-500"])}," ¥"+r(de(ka.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",Ao,r(Lt.value.length)+" 笔",1)]),_:1})]),_:1})]),_:1}),a("div",To,[s(n,{shadow:"never",class:"po-panel po-panel-rx border-gray-100 h-full relative overflow-hidden"},{header:l(()=>[a("div",Eo,[a("div",$o,[e[138]||(e[138]=a("span",{class:"po-panel-rx-header__title font-medium text-[15px] leading-snug"},"处方详情",-1)),a("span",Do," ID: "+r(c.value.prescription_id||"—"),1)]),c.value.doctor_name?(o(),m("div",zo,[e[139]||(e[139]=p(" 开方人:",-1)),a("span",Uo,r(c.value.doctor_name),1)])):v("",!0),a("div",Fo,[c.value.prescription_id&&C.value&&!String(c.value.prescription_detail_error||"").trim()?T((o(),g(w,{key:0,type:"default",size:"small",link:"",onClick:tl},{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=>Qa(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:Se.value,icon:R(oa),onClick:kl},{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",Oo,[...e[136]||(e[136]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.prescription_audit_status===2?(o(),m("div",Ro,[...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($,{key:3},[s(Ke,{column:1,border:"",size:"small",class:"po-desc bg-white"},{default:l(()=>[s(S,{label:"处方编号",span:2},{default:l(()=>[p(r(C.value.sn||"—"),1)]),_:1}),s(S,{label:"患者"},{default:l(()=>[p(r(C.value.patient_name||"—"),1)]),_:1}),s(S,{label:"性别 / 年龄"},{default:l(()=>[p(r(C.value.gender_desc||"—")+" · "+r(C.value.age??"—")+"岁 ",1)]),_:1}),s(S,{label:"手机"},{default:l(()=>[a("span",{class:I(Oe.value?"rx-phone-mismatch text-red-600 font-bold":"")},r(C.value.phone||"—"),3),Oe.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(S,{label:"处方日期"},{default:l(()=>[p(r(C.value.prescription_date||"—"),1)]),_:1}),s(S,{label:"医师"},{default:l(()=>[p(r(C.value.doctor_name||"—"),1)]),_:1}),s(S,{label:"类型"},{default:l(()=>[p(r(C.value.prescription_type||"—"),1)]),_:1}),s(S,{label:"临床诊断",span:2},{default:l(()=>[p(r(C.value.clinical_diagnosis||"—"),1)]),_:1}),_e.value?(o(),g(S,{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(S,{label:"处方金额"},{default:l(()=>[a("span",jo,"¥"+r(C.value.amount??"—"),1)]),_:1}),s(S,{label:"消费者审核"},{default:l(()=>[s(d,{type:Ys(C.value.audit_status),size:"small"},{default:l(()=>[p(r(Ks(C.value.audit_status)),1)]),_:1},8,["type"])]),_:1}),s(S,{label:"用量"},{default:l(()=>[C.value.dosage_amount?(o(),m($,{key:0},[p(r(C.value.dosage_amount)+r(C.value.dosage_unit||"g")+" ",1),C.value.prescription_type==="浓缩水丸"?(o(),m($,{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",Io," ("+r(C.value.need_decoction?"代煎":"不代煎")+") ",1)):v("",!0)],64)):(o(),m($,{key:1},[p("—")],64))]),_:1}),s(S,{label:"服用方式"},{default:l(()=>[a("div",Lo,[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(S,{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}),Gs.value?(o(),m("div",qo,[e[147]||(e[147]=a("div",{class:"text-xs font-medium text-gray-500 mb-2 px-1"},"药材明细",-1)),Va.value.length?(o(),g(Pt,{key:0,data:Va.value,size:"small",border:"",stripe:"","max-height":"260"},{default:l(()=>[s(D,{type:"index",label:"#",width:"48",align:"center"}),s(D,{prop:"name",label:"药名","min-width":"120","show-overflow-tooltip":""}),s(D,{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",Mo,[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(Pt,{key:0,data:ke.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s(D,{prop:"id",label:"ID",width:"70"}),s(D,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(D,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||lt(i.order_type)),1)]),_:1}),s(D,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",Bo,"¥"+r(i.amount),1)]),_:1}),s(D,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Na(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||ba(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(D,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(D,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ca(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",Wo,[a("div",Ko,[e[153]||(e[153]=a("span",{class:"font-medium text-[15px]"},"关联收款记录",-1)),c.value.creator_name?(o(),m("span",Yo,[e[152]||(e[152]=p(" 创建人:",-1)),a("span",Qo,r(c.value.creator_name),1)])):v("",!0)])])]),default:l(()=>[c.value.payment_slip_audit_status===1?(o(),m("div",Ho,[...e[150]||(e[150]=[a("div",{class:"stamp-inner"},"审核通过",-1)])])):v("",!0),c.value.payment_slip_audit_status===2?(o(),m("div",Go,[...e[151]||(e[151]=[a("div",{class:"stamp-inner"},"已驳回",-1)])])):v("",!0),Lt.value.length?(o(),g(Pt,{key:2,data:Lt.value,size:"small",border:"",stripe:"",class:"po-pay-table","max-height":"280"},{default:l(()=>[s(D,{prop:"id",label:"ID",width:"70"}),s(D,{prop:"order_no",label:"单号","min-width":"135","show-overflow-tooltip":""}),s(D,{label:"类型",width:"90"},{default:l(({row:i})=>[p(r(i.order_type_desc||lt(i.order_type)),1)]),_:1}),s(D,{label:"金额",width:"86",align:"right"},{default:l(({row:i})=>[a("span",Jo,"¥"+r(i.amount),1)]),_:1}),s(D,{label:"状态",width:"100",align:"center"},{default:l(({row:i})=>[s(d,{type:Na(i.status),size:"small"},{default:l(()=>[p(r(i.status_desc||ba(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(D,{prop:"creator_name",label:"创建人",width:"80","show-overflow-tooltip":""}),s(D,{label:"创建时间","min-width":"136"},{default:l(({row:i})=>[p(r(Ca(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(Ke,{column:1,border:"",size:"small",class:"po-desc"},{default:l(()=>[s(S,{label:"诊单ID"},{default:l(()=>[a("div",Xo,[a("div",Zo,[e[156]||(e[156]=a("span",{class:"text-[11px] font-semibold uppercase tracking-[0.06em] text-slate-500"},"关联诊单",-1)),a("span",eu,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(Hn),"aria-label":"打开关联诊单详情(患者与病历)",onClick:os},{default:l(()=>[...e[158]||(e[158]=[p(" 查看诊单详情 ",-1)])]),_:1},8,["icon"])):v("",!0)])]),_:1}),s(S,{label:"创建时间"},{default:l(()=>[p(r(me(c.value.create_time)),1)]),_:1}),s(S,{label:"收货人"},{default:l(()=>[p(r(c.value.recipient_name),1)]),_:1}),s(S,{label:"挂号关联",span:3},{default:l(()=>[W.value?(o(),m($,{key:0},[a("div",tu,[a("span",null,[e[159]||(e[159]=p("预约 ",-1)),a("span",au,"#"+r(W.value.id),1)]),a("span",su,"时间:"+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",lu,"接诊:"+r(W.value.doctor_name),1)):v("",!0),W.value.channel_source?(o(),m("span",nu,"渠道:"+r(W.value.channel_source),1)):v("",!0),wa.value?(o(),g(d,{key:2,size:"small",effect:"plain"},{default:l(()=>[p(r(wa.value),1)]),_:1})):v("",!0)]),String(W.value.remark||"").trim()?(o(),m("p",iu," 备注:"+r(W.value.remark),1)):v("",!0)],64)):(o(),m("span",ru,"暂无挂号预约记录(未绑定或诊单下无预约)"))]),_:1}),s(S,{label:"收货手机"},{default:l(()=>[a("span",{class:I(Oe.value?"text-red-600 font-bold font-mono":"font-mono")},r(c.value.recipient_phone||"—"),3),Oe.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(S,{label:"收货地址",span:2},{default:l(()=>[p(r(Ws.value),1)]),_:1}),s(S,{label:"复诊"},{default:l(()=>[p(r(c.value.is_follow_up?"是":"否"),1)]),_:1}),s(S,{label:"用药疗程"},{default:l(()=>[p(r(c.value.medication_days?c.value.medication_days+" 天":"—"),1)]),_:1}),s(S,{label:"上次医护"},{default:l(()=>[p(r(c.value.prev_staff||"—"),1)]),_:1}),s(S,{label:"服务渠道"},{default:l(()=>[p(r(c.value.service_channel||"—"),1)]),_:1}),s(S,{label:"服务套餐"},{default:l(()=>[p(r(Es(c.value.service_package)),1)]),_:1}),s(S,{label:"费用类别"},{default:l(()=>[p(r(lt(c.value.fee_type)),1)]),_:1}),c.value.internal_cost!=null&&c.value.internal_cost!==""?(o(),g(S,{key:0,label:"内部成本"},{default:l(()=>[p(" ¥"+r(c.value.internal_cost),1)]),_:1})):v("",!0),s(S,{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(S,{label:"快递公司"},{default:l(()=>[p(r(Zs(c.value.express_company)),1)]),_:1}),T((o(),g(S,{label:"备注",span:3},{default:l(()=>[p(r(c.value.remark_extra||"—"),1)]),_:1})),[[q,["tcm.prescriptionOrder/editRemarkExtra"]]]),s(S,{label:"医助备注",span:3},{default:l(()=>[p(r(c.value.remark_assistant||"—"),1)]),_:1}),s(S,{label:"处方审核意见",span:3},{default:l(()=>[a("span",ou,r(c.value.prescription_audit_remark||"—"),1)]),_:1}),s(S,{label:"支付审核意见",span:3},{default:l(()=>[a("span",uu,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,Ye,Qe;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",du,[s(k,{modelValue:Ee.value,"onUpdate:modelValue":e[24]||(e[24]=ue=>Ee.value=ue),clearable:"",maxlength:"20",placeholder:"收件手机(建议11位,与面单一致)",class:"po-logistics-toolbar__phone",onKeyup:Xe(Ht,["enter"])},null,8,["modelValue"]),s(F,{modelValue:Re.value,"onUpdate:modelValue":e[25]||(e[25]=ue=>Re.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"]),T((o(),g(w,{type:"primary",plain:"",size:"default",loading:pt.value,class:"po-logistics-toolbar__btn",onClick:Ht},{icon:l(()=>[s(u,null,{default:l(()=>[s(R(Gn))]),_:1})]),default:l(()=>[e[162]||(e[162]=p(" 刷新轨迹 ",-1))]),_:1},8,["loading"])),[[q,["tcm.prescriptionOrder/logisticsTrace"]]]),a("div",pu,[s(na,{href:Bt.value.sf,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[163]||(e[163]=[p("顺丰官网",-1)])]),_:1},8,["href"]),s(na,{href:Bt.value.jd,target:"_blank",type:"primary",underline:!1,class:"text-[12px]"},{default:l(()=>[...e[164]||(e[164]=[p("京东物流",-1)])]),_:1},8,["href"]),s(na,{href:Bt.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),pt.value&&!H.value?(o(),m("div",cu,[s(u,{class:"is-loading mr-1"},{default:l(()=>[s(R(Wn))]),_:1}),e[166]||(e[166]=p("正在加载物流轨迹... ",-1))])):H.value?(o(),m("div",_u,[(N=H.value)!=null&&N.state_text?(o(),m("div",mu,[a("span",fu,"状态:"+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),(Ye=H.value)!=null&&Ye.source?(o(),m("span",vu," ["+r(H.value.source==="database"?"数据库缓存":"API拉取")+"] ",1)):v("",!0),(Qe=H.value)!=null&&Qe.last_query_time?(o(),m("span",gu," 更新时间:"+r(H.value.last_query_time),1)):v("",!0)])):v("",!0),Pa.value.length?(o(),g(ts,{key:1,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m($,null,B(Pa.value,(ue,ye)=>(o(),g(es,{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),T((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(ts,{key:0,class:"mt-2 pl-2"},{default:l(()=>[(o(!0),m($,null,B(he.value,(i,P)=>(o(),g(es,{key:i.id,type:P===0?"primary":"info",hollow:P!==0,timestamp:me(i.create_time),placement:"top"},{default:l(()=>[a("div",yu,[a("span",bu,r(i.admin_name),1),s(d,{size:"small",type:"info"},{default:l(()=>[p(r(Xs(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:sl},{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:qt.value,onClick:Ta},{default:l(()=>[...e[171]||(e[171]=[p(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(U,{ref_key:"updateAmountFormRef",ref:ct,model:ie,rules:Qs,"label-width":"84px",onSubmit:Tt(Ta,["prevent"])},{default:l(()=>[s(f,{label:"当前金额"},{default:l(()=>{var i;return[a("div",xu,"¥"+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:pl},{footer:l(()=>[a("div",ed,[a("div",td,[a("span",ad,"第 "+r(L.value+1)+" / 3 步",1),L.value===2&&M.value>0?(o(),m("span",sd," 订单金额与关联支付单合计须 ≥ ¥"+r(de(M.value)),1)):v("",!0)]),a("div",ld,[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:cl},{default:l(()=>[...e[185]||(e[185]=[p("上一步",-1)])]),_:1})):v("",!0),L.value<2?(o(),g(w,{key:1,type:"primary",size:"large",onClick:_l},{default:l(()=>[...e[186]||(e[186]=[p(" 下一步 ",-1)])]),_:1})):v("",!0),L.value===2?(o(),g(w,{key:2,type:"primary",size:"large",loading:Yt.value,onClick:fl},{default:l(()=>[...e[187]||(e[187]=[p(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:l(()=>[T((o(),m("div",ku,[se.value?(o(),m("div",hu,[a("div",wu,[e[172]||(e[172]=a("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),a("div",Vu,[a("span",Su,"#"+r(se.value.id),1),se.value.sn?(o(),m("span",Nu,r(se.value.sn),1)):v("",!0),a("span",Cu,r(se.value.patient_name||"—"),1)])]),s(as,{content:Ra.value,placement:"bottom","show-after":300},{default:l(()=>[a("div",Pu,r(Ra.value),1)]),_:1},8,["content"])])):v("",!0),s(We,{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",Au,r(il.value),1),s(U,{ref_key:"editFormRef",ref:we,model:_,rules:dl.value,"label-width":"108px",class:"create-order-form"},{default:l(()=>[T(a("div",Tu,[s(pe,{gutter:20},{default:l(()=>[s(E,{span:12},{default:l(()=>[s(f,{label:"收货人",prop:"recipient_name"},{default:l(()=>[s(k,{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(k,{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(Kl,{modelValue:_.region,"onUpdate:modelValue":e[32]||(e[32]=i=>_.region=i),options:Ze.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(k,{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]]),T(a("div",Ou,[_e.value?(o(),g(pe,{key:0,gutter:20,class:"mb-1"},{default:l(()=>[s(E,{span:24},{default:l(()=>[a("div",Ru,[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:Bl},{default:l(()=>[...e[173]||(e[173]=[p(" 详细 ",-1)])]),_:1})):v("",!0),_.id?(o(),g(w,{key:1,type:"warning",size:"small",link:"",loading:Se.value,icon:R(oa),onClick:xl},{default:l(()=>[...e[174]||(e[174]=[p(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),a("span",Eu,"ID: "+r(_.prescription_id||"—"),1)]),a("div",$u,[Ea.value.length?(o(),m("div",Du,[e[176]||(e[176]=a("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),m($,null,B(Ea.value,(i,P)=>(o(),m("div",{key:P,class:"pl-0 min-w-0"},[i.length?(o(),g(Ql,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:l(()=>[(o(!0),m($,null,B(i,(N,j)=>(o(),g(Yl,{key:j},{default:l(()=>[a("span",zu,r(N),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),m("div",Uu,"创建人所属部门:—"))])]),_:1}),s(E,{xs:24,sm:8},{default:l(()=>[s(f,{label:"复诊"},{default:l(()=>[s(Jl,{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",Fu,[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(k,{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:Sa.value,prop:"dose_count"},{default:l(()=>[s(Ce,{modelValue:_.dose_count,"onUpdate:modelValue":e[37]||(e[37]=i=>_.dose_count=i),min:1,placeholder:Sa.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(F,{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(k,{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(F,{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($,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",ju,[s(F,{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(k,{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(F,{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:Qt.value},{default:l(()=>[(o(!0),m($,null,B(ze.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Jt(i.order_type)}`,value:i.id,class:"!h-auto py-1.5"},{default:l(()=>[a("div",Iu,[a("div",Lu,[a("span",qu,r(i.order_no),1),a("span",Mu,"¥"+r(i.amount),1)]),a("div",Bu,[a("span",Hu,[p(r(Jt(i.order_type)),1),i.remark?(o(),m($,{key:0},[p(" · "+r(i.remark),1)],64)):v("",!0)]),a("span",Gu,r(String(i.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),a("div",Wu,[M.value>0?(o(),m($,{key:0},[a("span",Ku,"当前已开启关联支付门槛(¥"+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(as,{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]]),T(a("div",Yu,[a("div",{class:I(["create-order-deposit-bar",Xt.value>=M.value?"is-ok":"is-warn"])},[a("div",Qu,[e[181]||(e[181]=a("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),a("strong",null,"¥"+r(de(M.value)),1),a("span",Ju,r(M.value>0?"须 ≥ 此值":"未设置"),1)]),e[183]||(e[183]=a("div",{class:"create-order-deposit-bar__sep"},null,-1)),a("div",Xu,[e[182]||(e[182]=a("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),a("strong",null,"¥"+r(de(Xt.value)),1),a("span",Zu,r(Xt.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(F,{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:ol.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),T((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(()=>[T((o(),g(f,{label:"药房备注"},{default:l(()=>[s(k,{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(k,{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,Kt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Ue.value,"onUpdate:modelValue":e[55]||(e[55]=i=>Ue.value=i),title:vl.value,width:"92%","destroy-on-close":"",class:"po-h5-dialog",onClosed:e[56]||(e[56]=i=>Ve.value="")},{footer:l(()=>[s(w,{onClick:e[52]||(e[52]=i=>Ue.value=!1)},{default:l(()=>[...e[189]||(e[189]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:mt.value,onClick:e[53]||(e[53]=i=>Da("approve"))},{default:l(()=>[...e[190]||(e[190]=[p("同意通过",-1)])]),_:1},8,["loading"]),s(w,{type:"danger",loading:mt.value,onClick:e[54]||(e[54]=i=>Da("reject"))},{default:l(()=>[...e[191]||(e[191]=[p("驳回阻止",-1)])]),_:1},8,["loading"])]),default:l(()=>[Fe.value&&Fe.value.completion_request===1?(o(),g(le,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:l(()=>[a("div",nd,[e[188]||(e[188]=a("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),a("div",id," 申请人:"+r(Fe.value.completion_request_by_name||"—"),1),a("div",rd," 申请时间:"+r(me(Fe.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(k,{modelValue:Ve.value,"onUpdate:modelValue":e[51]||(e[51]=i=>Ve.value=i),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),s(ce,{modelValue:je.value,"onUpdate:modelValue":e[60]||(e[60]=i=>je.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=>je.value=!1)},{default:l(()=>[...e[194]||(e[194]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:vt.value,onClick:Fa},{default:l(()=>[...e[195]||(e[195]=[p("保存单号",-1)])]),_:1},8,["loading"])]),default:l(()=>[T((o(),g(U,{"label-width":"90px",class:"pr-2",onSubmit:Tt(Fa,["prevent"])},{default:l(()=>[s(f,{label:"承运商"},{default:l(()=>[s(F,{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(k,{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,vt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:Le.value,"onUpdate:modelValue":e[65]||(e[65]=i=>Le.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=>Le.value=!1)},{default:l(()=>[...e[198]||(e[198]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:gt.value,onClick:ja},{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"}),T((o(),g(U,{"label-width":"90px",class:"pr-2",onSubmit:Tt(ja,["prevent"])},{default:l(()=>[s(f,{label:"发货方式"},{default:l(()=>[s(ra,{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(F,{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(k,{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,gt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:qe.value,"onUpdate:modelValue":e[68]||(e[68]=i=>qe.value=i),title:"完成订单",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:e[69]||(e[69]=i=>ta.value=0)},{footer:l(()=>[s(w,{onClick:e[67]||(e[67]=i=>qe.value=!1)},{default:l(()=>[...e[200]||(e[200]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:aa.value,onClick:Sl},{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(F,{modelValue:bt.value,"onUpdate:modelValue":e[66]||(e[66]=i=>bt.value=i),class:"w-full",placeholder:"请选择"},{default:l(()=>[(o(),m($,null,B(Vl,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:Me.value,"onUpdate:modelValue":e[77]||(e[77]=i=>Me.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=kt.value)==null?void 0:P.clearValidate()})},{footer:l(()=>[s(w,{onClick:e[76]||(e[76]=i=>Me.value=!1)},{default:l(()=>[...e[209]||(e[209]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:xt.value,onClick:Pl},{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"}),T((o(),g(U,{ref_key:"addPayOrderFormRef",ref:kt,model:O,rules:Nl,"label-width":"90px",class:"pr-2"},{default:l(()=>[s(f,{label:"添加方式",prop:"add_mode"},{default:l(()=>[s(ra,{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($,{key:0},[s(f,{label:"费用类别",prop:"order_type"},{default:l(()=>[s(F,{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(k,{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(F,{modelValue:O.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=i=>O.link_pay_order_ids=i),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:sa.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:l(()=>[(o(!0),m($,null,B(ht.value,i=>(o(),g(y,{key:i.id,label:`${i.order_no} · ¥${i.amount} · ${Jt(i.order_type)}`,value:i.id},{default:l(()=>[a("div",od,[a("span",ud,r(i.order_no),1),a("span",dd,"¥"+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(ra,{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,xt.value]])]),_:1},8,["modelValue"]),s(ce,{modelValue:De.value,"onUpdate:modelValue":e[82]||(e[82]=i=>De.value=i),title:"修改处方患者信息",width:"92%","close-on-click-modal":!1,"destroy-on-close":"",class:"po-h5-dialog",onClosed:al},{footer:l(()=>[s(w,{onClick:e[81]||(e[81]=i=>De.value=!1)},{default:l(()=>[...e[211]||(e[211]=[p("取消",-1)])]),_:1}),s(w,{type:"primary",loading:Gt.value,onClick:nl},{default:l(()=>[...e[212]||(e[212]=[p(" 保存 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[s(U,{ref_key:"patchRxPatientFormRef",ref:Wt,model:ae,rules:el,"label-width":"96px"},{default:l(()=>[s(f,{label:"患者姓名",prop:"patient_name"},{default:l(()=>[s(k,{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(k,{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(ia,{modelValue:wt.value,"onUpdate:modelValue":e[83]||(e[83]=i=>wt.value=i),size:"100%",direction:"btt",class:"po-h5-drawer","close-on-click-modal":!1},{header:l(()=>[a("div",pd,[e[215]||(e[215]=a("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),h.value&&!Vt.value?(o(),m("div",cd,[s(w,{size:"small",loading:Ne.value,onClick:Gl},{default:l(()=>[...e[213]||(e[213]=[p(" 下载图片 ",-1)])]),_:1},8,["loading"]),s(w,{size:"small",loading:Ne.value,onClick:Wl},{default:l(()=>[...e[214]||(e[214]=[p(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:l(()=>[T((o(),m("div",_d,[h.value?(o(),m("div",md,[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",fd," 作废人:"+r(h.value.void_by_name||"—")+",作废时间:"+r(Ll(h.value.void_time)),1)):h.value&&Number(h.value.business_prescription_audit_rejected)===1?(o(),m("div",vd,[e[221]||(e[221]=a("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),h.value.business_prescription_audit_remark?(o(),m("div",gd," 驳回意见:"+r(h.value.business_prescription_audit_remark),1)):v("",!0)])):h.value&&Number(h.value.audit_status)===2?(o(),m("div",yd,[e[222]||(e[222]=a("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),h.value.audit_remark?(o(),m("div",bd,"驳回意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0),h.value?(o(),m("div",{key:4,ref_key:"prescriptionSlipPrintRef",ref:qa,class:"rx-paper"},[e[240]||(e[240]=a("div",{class:"rx-title"},"处方单",-1)),a("div",xd,[e[227]||(e[227]=a("span",{class:"rx-notice-text"}," 服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点 ",-1)),a("div",kd,[a("div",hd,[e[223]||(e[223]=a("span",{class:"rx-meta-label"},"日期",-1)),a("span",wd,r(Rl.value),1)]),a("div",Vd,[e[224]||(e[224]=a("span",{class:"rx-meta-label"},"处方编号",-1)),a("span",Sd,r(El.value),1)]),a("div",Nd,[e[225]||(e[225]=a("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),a("span",Cd,r($l.value),1)]),Ma.value?(o(),m("div",Pd,[e[226]||(e[226]=a("span",{class:"rx-meta-label"},"业务单号",-1)),a("span",Ad,r(Ma.value),1)])):v("",!0)])]),a("div",Td,[a("div",Od,[a("div",Rd,[e[228]||(e[228]=a("span",{class:"rx-key"},"姓名",-1)),a("span",Ed,r(h.value.patient_name||"—"),1)]),a("div",$d,[e[229]||(e[229]=a("span",{class:"rx-key"},"性别",-1)),a("span",Dd,r(ql(h.value.gender)),1)]),a("div",zd,[e[230]||(e[230]=a("span",{class:"rx-key"},"年龄",-1)),a("span",Ud,r(Ml(h.value.age)),1)]),a("div",Fd,[e[231]||(e[231]=a("span",{class:"rx-key"},"电话",-1)),a("span",jd,r(h.value.phone||h.value.recipient_phone||"—"),1)])]),a("div",Id,[a("div",Ld,[e[232]||(e[232]=a("span",{class:"rx-key"},"收件信息",-1)),a("span",qd,r(Dl.value),1)])]),a("div",Md,[a("div",Bd,[e[233]||(e[233]=a("span",{class:"rx-key"},"临床诊断",-1)),a("span",Hd,r(h.value.clinical_diagnosis||"—"),1)])])]),a("div",Gd,[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",Wd,[(o(!0),m($,null,B(St.value,(i,P)=>(o(),m("div",{key:P,class:"rx-herb-cell"},[a("span",Kd,r(i.name)+" ("+r(i.dosage)+"克)",1),a("span",Yd,r(Ul(i.dosage))+"克",1)]))),128))])]),a("div",Qd,[a("p",null,"服法:"+r(jl.value),1),Ha.value?(o(),m("p",Jd,"医嘱:"+r(Ha.value),1)):v("",!0),Ga.value?(o(),m("p",Xd,"备注:"+r(Ga.value),1)):v("",!0),Wa.value?(o(),m("p",Zd," 药房备注:"+r(Wa.value),1)):v("",!0),Ka.value?(o(),m("p",ep," 出丸:"+r(Ka.value),1)):v("",!0)]),a("div",tp,[a("div",ap,[a("div",sp,[e[236]||(e[236]=a("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),a("div",lp,[h.value.doctor_signature?(o(),m("img",{key:0,src:h.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,np)):v("",!0)])]),a("div",ip,[e[237]||(e[237]=a("span",{class:"rx-bot-meta-key"},"类型:",-1)),a("span",rp,r(Fl.value),1)]),a("div",op,[e[238]||(e[238]=a("span",{class:"rx-bot-meta-key"},"天数:",-1)),a("span",up,r(c.value.medication_days!=null&&String(c.value.medication_days).trim()!==""?c.value.medication_days+" 天":"—"),1)]),a("div",dp,[e[239]||(e[239]=a("span",{class:"rx-bot-meta-key"},"剂量:",-1)),a("span",pp,r(zl.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",cp,[h.value.audit_by_name?(o(),m("div",_p,[p(" 审核人:"+r(h.value.audit_by_name)+" ",1),h.value.audit_time?(o(),m("span",mp,r(Ya(h.value.audit_time)),1)):v("",!0)])):v("",!0),h.value.audit_remark?(o(),m("div",fp,"审核意见:"+r(h.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[ge,Vt.value]])]),_:1},8,["modelValue"]),s(ia,{modelValue:ft.value,"onUpdate:modelValue":e[84]||(e[84]=i=>ft.value=i),title:"甘草预下单测试结果",size:"100%",direction:"btt",class:"po-h5-drawer","destroy-on-close":""},{default:l(()=>{var i,P;return[z.value?(o(),m("div",vp,[s(n,{shadow:"never",class:"mb-4"},{header:l(()=>[a("div",gp,[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(Ke,{column:2,border:""},{default:l(()=>[s(S,{label:"药材成本"},{default:l(()=>{var N;return[a("span",yp,"¥"+r(((N=z.value.fee)==null?void 0:N.m_cost)||"0.00"),1)]}),_:1}),s(S,{label:"制作费"},{default:l(()=>{var N;return[a("span",bp,"¥"+r((((N=z.value.fee)==null?void 0:N.proces_cost)||0).toFixed(2)),1)]}),_:1}),s(S,{label:"物流费"},{default:l(()=>{var N;return[a("span",xp,"¥"+r((((N=z.value.fee)==null?void 0:N.lis_cost)||0).toFixed(2)),1)]}),_:1}),s(S,{label:"总计"},{default:l(()=>[a("div",null,[a("span",kp," ¥"+r(Ua(z.value.fee)),1),T((o(),m("div",hp,[e[244]||(e[244]=p(" 占订单总金额: ",-1)),a("span",wp,r(yl(z.value.fee,z.value.amount)),1),z.value.amount>0?(o(),m("span",Vp,"%(预报价 ÷ 订单金额 × 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(Ke,{column:2,border:""},{default:l(()=>[s(S,{label:"调配中心"},{default:l(()=>{var N;return[p(r(((N=z.value.result)==null?void 0:N.ds_name)||"—"),1)]}),_:1}),s(S,{label:"调配中心ID"},{default:l(()=>{var N;return[p(r(((N=z.value.result)==null?void 0:N.ds_id)||"—"),1)]}),_:1}),s(S,{label:"服用天数范围",span:2},{default:l(()=>{var N,j,Ye,Qe,ue,ye;return[p(r(((j=(N=z.value.result)==null?void 0:N.take_days)==null?void 0:j.min)||"—")+" - "+r(((Qe=(Ye=z.value.result)==null?void 0:Ye.take_days)==null?void 0:Qe.max)||"—")+" 天 (默认: "+r(((ye=(ue=z.value.result)==null?void 0:ue.take_days)==null?void 0:ye.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(i=z.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",Sp,r(z.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",Np,[e[247]||(e[247]=a("span",{class:"font-semibold"},"药材明细",-1)),a("span",Cp,"共 "+r(((j=(N=z.value.result)==null?void 0:N.m_list)==null?void 0:j.length)||0)+" 味药",1)])]}),default:l(()=>{var N;return[s(Pt,{data:((N=z.value.result)==null?void 0:N.m_list)||[],border:"",stripe:"","max-height":"400"},{default:l(()=>[s(D,{type:"index",label:"#",width:"50",align:"center"}),s(D,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),s(D,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:l(({row:j})=>[p(r(j.quantity)+r(j.unit),1)]),_:1}),s(D,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:l(({row:j})=>[p(" ¥"+r(Number(j.price).toFixed(4)),1)]),_:1}),s(D,{label:"小计",width:"100",align:"right"},{default:l(({row:j})=>[a("span",Pp," ¥"+r((Number(j.price)*Number(j.quantity)).toFixed(2)),1)]),_:1}),s(D,{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(D,{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(Ke,{column:2,border:""},{default:l(()=>[s(S,{label:"订单号",span:2},{default:l(()=>[p(r(z.value.order_no||"—"),1)]),_:1}),s(S,{label:"剂数"},{default:l(()=>[a("span",Ap,r(z.value.dose_count||"—")+"剂",1)]),_:1}),s(S,{label:"单剂量"},{default:l(()=>{var N;return[a("span",Tp,r(bl((N=z.value.result)==null?void 0:N.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),s(R(rs),{ref_key:"diagnosisViewRef",ref:da},null,512)])}}}),wc=vi(Rp,[["__scopeId","data-v-400bbef2"]]);export{wc as default};
diff --git a/server/public/admin/assets/overflow-hhC3Euyx.js b/server/public/admin/assets/overflow-CdFMqpO3.js
similarity index 96%
rename from server/public/admin/assets/overflow-hhC3Euyx.js
rename to server/public/admin/assets/overflow-CdFMqpO3.js
index 619c337b..6a05752c 100644
--- a/server/public/admin/assets/overflow-hhC3Euyx.js
+++ b/server/public/admin/assets/overflow-CdFMqpO3.js
@@ -1 +1 @@
-import{J as m}from"./element-plus-DFTWCWyi.js";import{_ as p,p as i}from"./index-B7JHxj4W.js";import{ak as e,I as a,a as o,aN as n}from"./@vue/runtime-core-C6bnekPw.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const c={};function s(_,l){const t=i,r=m;return e(),a("div",null,[o(r,{header:"基础使用",shadow:"never",class:"!border-none"},{default:n(()=>[o(t,{class:"w-20 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"}),o(t,{class:"w-60 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"})]),_:1})])}const W=p(c,[["render",s]]);export{W as default};
+import{J as m}from"./element-plus-DFTWCWyi.js";import{_ as p,p as i}from"./index-Dn8YPxC3.js";import{ak as e,I as a,a as o,aN as n}from"./@vue/runtime-core-C6bnekPw.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@vue/shared-mAAVTE9n.js";import"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const c={};function s(_,l){const t=i,r=m;return e(),a("div",null,[o(r,{header:"基础使用",shadow:"never",class:"!border-none"},{default:n(()=>[o(t,{class:"w-20 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"}),o(t,{class:"w-60 m-4",content:"超出自动打点,悬浮弹窗显示全部内容"})]),_:1})])}const W=p(c,[["render",s]]);export{W as default};
diff --git a/server/public/admin/assets/paiban-Dm4IFutV.js b/server/public/admin/assets/paiban-DtATFjLy.js
similarity index 96%
rename from server/public/admin/assets/paiban-Dm4IFutV.js
rename to server/public/admin/assets/paiban-DtATFjLy.js
index c48b4eba..9e9f1e4f 100644
--- a/server/public/admin/assets/paiban-Dm4IFutV.js
+++ b/server/public/admin/assets/paiban-DtATFjLy.js
@@ -1 +1 @@
-import{D as J,B as P,G as U,I as q,R as H,i as O,J as Q}from"./element-plus-DFTWCWyi.js";import{d,g as K}from"./dayjs-DG77mNTn.js";import{g as X}from"./tcm-DAroNjl9.js";import{r as Z,g as ee}from"./doctor-BNAGA_m3.js";import{i as y,_ as te}from"./index-B7JHxj4W.js";import{f as ae,b as oe,d as se,ak as c,I as u,a as g,aN as m,J as p,F as T,ap as E,G as k,O as B,H as le,A as R,n as re}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Y,o as I}from"./@vue/shared-mAAVTE9n.js";import{n as b,r as ie}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"paiban-container"},ce={class:"doctor-list"},de={key:2,class:"paiban-time-container"},me={class:"date-selector"},ue={key:0,class:"time-slots-container"},pe={class:"time-slots-grid"},ve=["onClick"],fe={class:"slot-time"},_e=ae({__name:"paiban",setup(ye){d.extend(K);const v=b(!1),h=b([]),f=b([]),l=b(0),i=b([]);let D=null,w=!1;const o=ie({date:"",selectedTime:""}),V=R(()=>{if(!l.value||i.value.length===0)return[];const e=[],s=["日","一","二","三","四","五","六"],a=d().startOf("day");for(const r of i.value){const n=d(r);if(n.isBefore(a))continue;const _=`${n.format("MM月DD日")} (${s[n.day()]})`;e.push({date:r,label:_})}return e}),$=R(()=>{if(!o.date||f.value.length===0)return[];const e=d().format("YYYY-MM-DD");if(!(o.date===e))return f.value;const a=d();return f.value.map(r=>{const n=d(`${o.date} ${r.time}`);return n.isBefore(a)||n.isSame(a,"minute")?{...r,available:!1}:r})}),N=async()=>{try{v.value=!0;const e=await X();h.value=e||[],h.value.length>0&&!l.value&&(l.value=h.value[0].id,await C())}catch(e){console.error("加载医生列表失败:",e),y.msgError("加载医生列表失败")}finally{v.value=!1}},C=async()=>{o.selectedTime="",o.date="",f.value=[],i.value=[],l.value&&await A()},A=async()=>{if(l.value)try{v.value=!0;const e=d().format("YYYY-MM-DD"),s=d().add(6,"day").format("YYYY-MM-DD"),a=await Z({doctor_id:l.value,start_date:e,end_date:s,status:1});if(a!=null&&a.lists&&a.lists.length>0){if(i.value=[...new Set(a.lists.map(r=>r.date))],i.value.sort(),await re(),i.value.length>0){const r=d().format("YYYY-MM-DD"),n=i.value.includes(r)?r:i.value[0];M(n)}}else i.value=[],y.msgWarning("该医生暂无排班")}catch(e){console.error("加载医生排班失败:",e),y.msgError("加载医生排班失败"),i.value=[]}finally{v.value=!1}},M=e=>{o.date=e,o.selectedTime="",l.value&&S()},S=async(e=!1)=>{if(!(!l.value||!o.date)){if(w){console.log("正在加载中,跳过本次请求");return}try{w=!0,e||(v.value=!0);const s=await ee({doctor_id:l.value,appointment_date:o.date,period:"all"});f.value=((s==null?void 0:s.slots)||[]).map(a=>({time:a.time,available:a.available,quota:a.available?1:0}))}catch(s){console.error("加载时间段失败:",s),e||y.msgError("加载时间段失败"),f.value=[]}finally{w=!1,e||(v.value=!1)}}},F=e=>{if(!e.available){y.msgWarning("该时间段不可预约");return}o.selectedTime=e.time},L=()=>{x(),D=window.setInterval(()=>{l.value&&o.date&&S(!0)},5e3)},x=()=>{D&&(clearInterval(D),D=null)};return oe(()=>{N(),L()}),se(()=>{x()}),(e,s)=>{const a=q,r=U,n=P,_=H,z=O,G=J,W=Q;return c(),u("div",ne,[g(W,{shadow:"never"},{header:m(()=>[...s[1]||(s[1]=[p("div",{class:"card-header"},[p("span",null,"医生排班管理")],-1)])]),default:m(()=>[g(G,{model:o,"label-width":"100px",class:"paiban-form"},{default:m(()=>[g(n,{label:"选择医生:"},{default:m(()=>[p("div",ce,[g(r,{modelValue:l.value,"onUpdate:modelValue":s[0]||(s[0]=t=>l.value=t),onChange:C},{default:m(()=>[(c(!0),u(T,null,E(h.value,t=>(c(),k(a,{key:t.id,value:t.id,class:"doctor-radio"},{default:m(()=>[B(Y(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])]),_:1}),g(n,{label:"排班时间:"},{default:m(()=>[l.value?l.value&&i.value.length===0?(c(),k(_,{key:1,description:"该医生暂无排班","image-size":80})):(c(),u("div",de,[p("div",me,[(c(!0),u(T,null,E(V.value,t=>(c(),k(z,{key:t.date,type:o.date===t.date?"primary":"",onClick:j=>M(t.date),class:"date-button"},{default:m(()=>[B(Y(t.label),1)]),_:2},1032,["type","onClick"]))),128))]),o.date?(c(),u("div",ue,[p("div",pe,[(c(!0),u(T,null,E($.value,t=>(c(),u("div",{key:t.time,class:I(["time-slot-item",{available:t.available,unavailable:!t.available,selected:o.selectedTime===t.time}]),onClick:j=>F(t)},[p("div",fe,Y(t.time),1),p("div",{class:I(["slot-status",{"status-available":t.available}])},Y(t.available?"可约":"已约"),3)],10,ve))),128))])])):le("",!0)])):(c(),k(_,{key:0,description:"请先选择医生","image-size":80}))]),_:1})]),_:1},8,["model"])]),_:1})])}}}),ot=te(_e,[["__scopeId","data-v-79f98e7f"]]);export{ot as default};
+import{D as J,B as P,G as U,I as q,R as H,i as O,J as Q}from"./element-plus-DFTWCWyi.js";import{d,g as K}from"./dayjs-DG77mNTn.js";import{g as X}from"./tcm-DumH0-Hh.js";import{r as Z,g as ee}from"./doctor-DvybObQD.js";import{i as y,_ as te}from"./index-Dn8YPxC3.js";import{f as ae,b as oe,d as se,ak as c,I as u,a as g,aN as m,J as p,F as T,ap as E,G as k,O as B,H as le,A as R,n as re}from"./@vue/runtime-core-C6bnekPw.js";import{Q as Y,o as I}from"./@vue/shared-mAAVTE9n.js";import{n as b,r as ie}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./@element-plus/icons-vue-HOEUG8sr.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const ne={class:"paiban-container"},ce={class:"doctor-list"},de={key:2,class:"paiban-time-container"},me={class:"date-selector"},ue={key:0,class:"time-slots-container"},pe={class:"time-slots-grid"},ve=["onClick"],fe={class:"slot-time"},_e=ae({__name:"paiban",setup(ye){d.extend(K);const v=b(!1),h=b([]),f=b([]),l=b(0),i=b([]);let D=null,w=!1;const o=ie({date:"",selectedTime:""}),V=R(()=>{if(!l.value||i.value.length===0)return[];const e=[],s=["日","一","二","三","四","五","六"],a=d().startOf("day");for(const r of i.value){const n=d(r);if(n.isBefore(a))continue;const _=`${n.format("MM月DD日")} (${s[n.day()]})`;e.push({date:r,label:_})}return e}),$=R(()=>{if(!o.date||f.value.length===0)return[];const e=d().format("YYYY-MM-DD");if(!(o.date===e))return f.value;const a=d();return f.value.map(r=>{const n=d(`${o.date} ${r.time}`);return n.isBefore(a)||n.isSame(a,"minute")?{...r,available:!1}:r})}),N=async()=>{try{v.value=!0;const e=await X();h.value=e||[],h.value.length>0&&!l.value&&(l.value=h.value[0].id,await C())}catch(e){console.error("加载医生列表失败:",e),y.msgError("加载医生列表失败")}finally{v.value=!1}},C=async()=>{o.selectedTime="",o.date="",f.value=[],i.value=[],l.value&&await A()},A=async()=>{if(l.value)try{v.value=!0;const e=d().format("YYYY-MM-DD"),s=d().add(6,"day").format("YYYY-MM-DD"),a=await Z({doctor_id:l.value,start_date:e,end_date:s,status:1});if(a!=null&&a.lists&&a.lists.length>0){if(i.value=[...new Set(a.lists.map(r=>r.date))],i.value.sort(),await re(),i.value.length>0){const r=d().format("YYYY-MM-DD"),n=i.value.includes(r)?r:i.value[0];M(n)}}else i.value=[],y.msgWarning("该医生暂无排班")}catch(e){console.error("加载医生排班失败:",e),y.msgError("加载医生排班失败"),i.value=[]}finally{v.value=!1}},M=e=>{o.date=e,o.selectedTime="",l.value&&S()},S=async(e=!1)=>{if(!(!l.value||!o.date)){if(w){console.log("正在加载中,跳过本次请求");return}try{w=!0,e||(v.value=!0);const s=await ee({doctor_id:l.value,appointment_date:o.date,period:"all"});f.value=((s==null?void 0:s.slots)||[]).map(a=>({time:a.time,available:a.available,quota:a.available?1:0}))}catch(s){console.error("加载时间段失败:",s),e||y.msgError("加载时间段失败"),f.value=[]}finally{w=!1,e||(v.value=!1)}}},F=e=>{if(!e.available){y.msgWarning("该时间段不可预约");return}o.selectedTime=e.time},L=()=>{x(),D=window.setInterval(()=>{l.value&&o.date&&S(!0)},5e3)},x=()=>{D&&(clearInterval(D),D=null)};return oe(()=>{N(),L()}),se(()=>{x()}),(e,s)=>{const a=q,r=U,n=P,_=H,z=O,G=J,W=Q;return c(),u("div",ne,[g(W,{shadow:"never"},{header:m(()=>[...s[1]||(s[1]=[p("div",{class:"card-header"},[p("span",null,"医生排班管理")],-1)])]),default:m(()=>[g(G,{model:o,"label-width":"100px",class:"paiban-form"},{default:m(()=>[g(n,{label:"选择医生:"},{default:m(()=>[p("div",ce,[g(r,{modelValue:l.value,"onUpdate:modelValue":s[0]||(s[0]=t=>l.value=t),onChange:C},{default:m(()=>[(c(!0),u(T,null,E(h.value,t=>(c(),k(a,{key:t.id,value:t.id,class:"doctor-radio"},{default:m(()=>[B(Y(t.name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])]),_:1}),g(n,{label:"排班时间:"},{default:m(()=>[l.value?l.value&&i.value.length===0?(c(),k(_,{key:1,description:"该医生暂无排班","image-size":80})):(c(),u("div",de,[p("div",me,[(c(!0),u(T,null,E(V.value,t=>(c(),k(z,{key:t.date,type:o.date===t.date?"primary":"",onClick:j=>M(t.date),class:"date-button"},{default:m(()=>[B(Y(t.label),1)]),_:2},1032,["type","onClick"]))),128))]),o.date?(c(),u("div",ue,[p("div",pe,[(c(!0),u(T,null,E($.value,t=>(c(),u("div",{key:t.time,class:I(["time-slot-item",{available:t.available,unavailable:!t.available,selected:o.selectedTime===t.time}]),onClick:j=>F(t)},[p("div",fe,Y(t.time),1),p("div",{class:I(["slot-status",{"status-available":t.available}])},Y(t.available?"可约":"已约"),3)],10,ve))),128))])])):le("",!0)])):(c(),k(_,{key:0,description:"请先选择医生","image-size":80}))]),_:1})]),_:1},8,["model"])]),_:1})])}}}),ot=te(_e,[["__scopeId","data-v-79f98e7f"]]);export{ot as default};
diff --git a/server/public/admin/assets/patient-29zo_Hnk.js b/server/public/admin/assets/patient-BunSjcOD.js
similarity index 88%
rename from server/public/admin/assets/patient-29zo_Hnk.js
rename to server/public/admin/assets/patient-BunSjcOD.js
index 1601d9f6..2762f091 100644
--- a/server/public/admin/assets/patient-29zo_Hnk.js
+++ b/server/public/admin/assets/patient-BunSjcOD.js
@@ -1 +1 @@
-import{r as o}from"./index-B7JHxj4W.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-Dn8YPxC3.js";function r(t){return o.get({url:"/doctor.appointment/lists",params:t})}function n(t){return o.get({url:"/doctor.appointment/reception",params:t})}function i(t){return o.post({url:"/doctor.appointment/notifyAssistant",params:t})}function a(t){return o.post({url:"/doctor.appointment/addDoctorNote",params:t})}function c(t){return o.get({url:"/doctor.appointment/doctorNotes",params:t})}function s(t){return o.post({url:"/doctor.appointment/deleteDoctorNoteImage",params:t})}export{a,r as b,s as d,c as g,i as n,n as r};
diff --git a/server/public/admin/assets/patient-call-BFVv4Fsj.js b/server/public/admin/assets/patient-call-BFTvnKkW.js
similarity index 99%
rename from server/public/admin/assets/patient-call-BFVv4Fsj.js
rename to server/public/admin/assets/patient-call-BFTvnKkW.js
index edce9d4b..8f17988d 100644
--- a/server/public/admin/assets/patient-call-BFVv4Fsj.js
+++ b/server/public/admin/assets/patient-call-BFTvnKkW.js
@@ -1 +1 @@
-import{E as a,K as Q,i as W,d as $,R as X,J as Y,b as M}from"./element-plus-DFTWCWyi.js";import{a6 as K}from"./@element-plus/icons-vue-HOEUG8sr.js";import{F as C,u as O,g as k,a as L,l as E,r as Z,y as T}from"./@tencentcloud/call-uikit-vue-DB7vt9Ht.js";import{u as ee,r as te,_ as oe}from"./index-B7JHxj4W.js";import{f as le,b as ae,n as V,d as ne,ak as m,I as d,a as r,aN as c,J as n,O as f,G as z,H as h,A as se}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w,o as ie}from"./@vue/shared-mAAVTE9n.js";import{y as A,n as y}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@tencentcloud/call-engine-js-BX2W9Lhf.js";import"./@tencentcloud/chat-AC2Y2r2A.js";import"./rtc-detect-Chu-fZvE.js";import"./@tencentcloud/tui-core-8M7p1XHw.js";import"./tim-upload-plugin-HO4N4AW9.js";import"./tim-profanity-filter-plugin-Dn_Cf-mP.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"patient-test"},ce={key:0,class:"init-section"},ue={key:1,class:"status"},pe={class:"flex items-center"},me={class:"mt-2"},fe={key:0},ve={key:0,class:"call-actions mt-4"},de={key:2,id:"call-container",class:"call-container phone-call-shell"},ge={key:3,class:"waiting-container"},Ie={key:4,class:"phone-call-kit-host phone-call-kit-host--offscreen","aria-hidden":"true"},_e=le({__name:"patient-call",setup(Ce){const B=ee(),S=se(()=>B.userInfo),U=y(!1),g=y(!1),D=y(""),o=y(!1),s=y(!1),p=y(null),v=y(null);let I=null;ae(()=>{G()});function b(t){try{const e=k.getData(L.CALL,E.CALL_STATUS),u=k.getData(L.CALL,E.CALL_ROLE),i=!!k.getData(L.CALL,E.IS_GROUP),_=o.value;if(e==="calling"&&u===Z.CALLEE){o.value=!0,p.value={isGroup:i,from:t},_||(a.info("检测到待接听的来电,请点击接听"),M({title:"来电提醒",message:"有待接听的视频通话",type:"warning",duration:0,position:"top-right"})),s.value=!1;return}if(e==="connected"){o.value=!1,p.value=null,s.value=!0;return}e==="idle"&&(o.value||s.value)&&(o.value=!1,s.value=!1,p.value=null)}catch(e){console.warn("syncIncomingFromTUIStore:",t,e)}}function x(){b("watch")}function P(){I&&(I(),I=null);const t={[E.CALL_STATUS]:x,[E.CALL_ROLE]:x};try{k.watch(L.CALL,t),I=()=>{try{k.unwatch(L.CALL,t)}catch{}}}catch(e){console.warn("TUIStore.watch 失败:",e)}}const R=()=>{v.value&&clearInterval(v.value);let t=0;const e=90;v.value=setInterval(()=>{t+=1,b("poll"),t>=e&&v.value&&(clearInterval(v.value),v.value=null)},500)},F=({oldStatus:t,newStatus:e})=>{console.log("========================================"),console.log("=== 通话状态变化回调触发 ==="),console.log("oldStatus:",t),console.log("newStatus:",e),console.log("STATUS 常量:",T),console.log("========================================"),e===T.BE_INVITED&&(console.log(">>> 收到来电邀请"),o.value=!0,p.value={oldStatus:t,newStatus:e},M({title:"来电提醒",message:"收到视频通话请求",type:"info",duration:0,position:"top-right"}),a.success("收到来电,请点击接听按钮")),(e===T.CALLING_C2C_VIDEO||e===T.CALLING_GROUP_VIDEO)&&(console.log(">>> 通话已接通"),a.success("通话已接通"),o.value=!1,s.value=!0),e===T.IDLE&&(o.value||s.value)&&(console.log(">>> 通话已结束"),o.value=!1,s.value=!1,p.value=null,a.info("通话已结束"))},G=async()=>{try{U.value=!0;const t=S.value.id;if(!t)throw new Error("未获取到当前用户ID,请重新登录");console.log("=== 开始初始化医疗助理端 ==="),console.log("当前用户ID:",t),a.info("正在获取签名...");const e=await te.get({url:"/tcm.diagnosis/getDoctorSignature",params:{patient_id:t}});if(!e)throw new Error("获取签名失败");const{sdkAppId:u,userId:i,userSig:_}=e;if(D.value=i,console.log("医疗助理签名获取成功:",{userId:i,sdkAppId:u,userSigLength:_.length}),console.log("完整签名信息:",e),a.info("正在初始化通话组件..."),console.log("=== 开始调用 TUICallKitServer.init ==="),!C||typeof C.init!="function")throw new Error("TUICallKitServer 未正确加载,请刷新页面重试");try{await C.init({userID:i,userSig:_,SDKAppID:Number(u)})}catch(l){console.warn("TUICallKitServer.init 出现错误,但继续执行:",l)}console.log("=== TUICallKitServer.init 完成 ===");const N={statusChanged:F,onError:l=>{console.error("=== TUICallKit 错误回调 ===",l),a.error(`通话错误: ${(l==null?void 0:l.message)||"未知错误"}`)},onInvited:l=>{console.log("=== 收到邀请回调 (onInvited) ===",l),a.info("收到通话邀请 (onInvited)")},afterCalling:()=>{console.log("=== afterCalling 回调 ===")}};try{C.setCallback(N)}catch(l){console.warn("设置回调时出现错误,但继续执行:",l)}console.log("回调设置完成"),a.info("等待初始化完成..."),await new Promise(l=>setTimeout(l,2e3)),g.value=!0,await V(),await new Promise(l=>setTimeout(l,300)),P(),b("post-init"),R(),a.success("医疗助理端初始化成功,等待来电..."),console.log("=== 医疗助理端初始化完成 ==="),console.log("userId:",i),console.log("等待来电中..."),console.log("请在医生端发起群组通话,目标用户ID应该是:",i)}catch(t){console.error("=== 初始化失败 ===",t),a.error(t.message||"初始化失败")}finally{U.value=!1}};async function j(){var t;await V(),await new Promise(e=>setTimeout(e,400));try{const e=C;if(typeof e.closeMicrophone=="function")return await e.closeMicrophone(),!0;const u=(t=e.getTUICallEngineInstance)==null?void 0:t.call(e);if(u&&typeof u.closeMicrophone=="function")return await u.closeMicrophone(),!0}catch(e){console.warn("接听后关闭麦克风失败(可在通话条手动关麦):",e)}return!1}const J=async()=>{try{console.log("接听来电"),await C.accept(),a.success("已接听通话"),o.value=!1,s.value=!0,await j()&&a.info("已关闭本地麦克风")}catch(t){console.error("接听失败:",t),a.error(t.message||"接听失败")}},q=async()=>{try{console.log("拒绝来电"),await C.reject(),a.info("已拒绝通话"),o.value=!1,p.value=null}catch(t){console.error("拒绝失败:",t),a.error(t.message||"拒绝失败")}},H=()=>{g.value=!1,D.value="",o.value=!1,s.value=!1,p.value=null};return ne(()=>{v.value&&(clearInterval(v.value),v.value=null),I&&(I(),I=null),g.value&&(o.value=!1,s.value=!1,p.value=null)}),(t,e)=>{const u=Q,i=W,_=$,N=X,l=Y;return m(),d("div",re,[r(l,null,{header:c(()=>[...e[0]||(e[0]=[n("div",{class:"card-header"},[n("span",null,"医疗助理端 - 接听来电")],-1)])]),default:c(()=>[g.value?h("",!0):(m(),d("div",ce,[r(u,{type:"info",closable:!1,class:"mb-4"},{default:c(()=>[n("p",null,[e[1]||(e[1]=n("strong",null,"当前登录用户:",-1)),f(" "+w(S.value.nickname||S.value.name||"未知"),1)]),n("p",null,[e[2]||(e[2]=n("strong",null,"用户ID:",-1)),f(" "+w(S.value.id||"未获取"),1)]),e[3]||(e[3]=n("p",null,[n("strong",null,"状态:"),f(" 正在初始化...")],-1))]),_:1}),U.value?h("",!0):(m(),z(i,{key:0,type:"primary",onClick:G,loading:U.value,size:"large"},{default:c(()=>[...e[4]||(e[4]=[f(" 重新初始化 ",-1)])]),_:1},8,["loading"]))])),g.value?(m(),d("div",ue,[r(u,{type:o.value?"warning":"success",closable:!1},{title:c(()=>[n("div",pe,[r(_,{class:ie(["mr-2",{"animate-pulse":o.value}])},{default:c(()=>[r(A(K))]),_:1},8,["class"]),n("span",null,w(o.value?"收到来电!":"医疗助理端已初始化,等待来电..."),1)])]),default:c(()=>[n("div",me,[n("p",null,[e[5]||(e[5]=n("strong",null,"医疗助理ID:",-1)),f(" "+w(D.value),1)]),n("p",null,[e[6]||(e[6]=n("strong",null,"状态:",-1)),f(" "+w(o.value?"来电中":"在线"),1)]),o.value&&p.value?(m(),d("p",fe,[e[7]||(e[7]=n("strong",null,"通话类型:",-1)),f(" "+w(p.value.isGroup?"群组视频通话":"视频通话"),1)])):h("",!0)])]),_:1},8,["type"]),o.value?(m(),d("div",ve,[r(i,{type:"success",size:"large",onClick:J,icon:A(K)},{default:c(()=>[...e[8]||(e[8]=[f(" 接听 ",-1)])]),_:1},8,["icon"]),r(i,{type:"danger",size:"large",onClick:q},{default:c(()=>[...e[9]||(e[9]=[f(" 拒绝 ",-1)])]),_:1})])):(m(),z(i,{key:1,type:"danger",onClick:H,class:"mt-4"},{default:c(()=>[...e[10]||(e[10]=[f(" 重置 ",-1)])]),_:1}))])):h("",!0),o.value||s.value?(m(),d("div",de,[r(A(O),{class:"TUICallKit-mobile"})])):g.value?(m(),d("div",ge,[r(N,{description:"等待来电中..."},{image:c(()=>[r(_,{size:80,color:"#909399"},{default:c(()=>[r(A(K))]),_:1})]),_:1})])):h("",!0),g.value&&!o.value&&!s.value?(m(),d("div",Ie,[r(A(O),{class:"TUICallKit-mobile"})])):h("",!0)]),_:1})])}}}),ut=oe(_e,[["__scopeId","data-v-56c22385"]]);export{ut as default};
+import{E as a,K as Q,i as W,d as $,R as X,J as Y,b as M}from"./element-plus-DFTWCWyi.js";import{a6 as K}from"./@element-plus/icons-vue-HOEUG8sr.js";import{F as C,u as O,g as k,a as L,l as E,r as Z,y as T}from"./@tencentcloud/call-uikit-vue-DB7vt9Ht.js";import{u as ee,r as te,_ as oe}from"./index-Dn8YPxC3.js";import{f as le,b as ae,n as V,d as ne,ak as m,I as d,a as r,aN as c,J as n,O as f,G as z,H as h,A as se}from"./@vue/runtime-core-C6bnekPw.js";import{Q as w,o as ie}from"./@vue/shared-mAAVTE9n.js";import{y as A,n as y}from"./@vue/reactivity-DiY1c2vO.js";import"./@vue/runtime-dom-DDAG46FW.js";import"./lodash-D3kF6u-c.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./@tencentcloud/call-engine-js-BX2W9Lhf.js";import"./@tencentcloud/chat-AC2Y2r2A.js";import"./rtc-detect-Chu-fZvE.js";import"./@tencentcloud/tui-core-8M7p1XHw.js";import"./tim-upload-plugin-HO4N4AW9.js";import"./tim-profanity-filter-plugin-Dn_Cf-mP.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const re={class:"patient-test"},ce={key:0,class:"init-section"},ue={key:1,class:"status"},pe={class:"flex items-center"},me={class:"mt-2"},fe={key:0},ve={key:0,class:"call-actions mt-4"},de={key:2,id:"call-container",class:"call-container phone-call-shell"},ge={key:3,class:"waiting-container"},Ie={key:4,class:"phone-call-kit-host phone-call-kit-host--offscreen","aria-hidden":"true"},_e=le({__name:"patient-call",setup(Ce){const B=ee(),S=se(()=>B.userInfo),U=y(!1),g=y(!1),D=y(""),o=y(!1),s=y(!1),p=y(null),v=y(null);let I=null;ae(()=>{G()});function b(t){try{const e=k.getData(L.CALL,E.CALL_STATUS),u=k.getData(L.CALL,E.CALL_ROLE),i=!!k.getData(L.CALL,E.IS_GROUP),_=o.value;if(e==="calling"&&u===Z.CALLEE){o.value=!0,p.value={isGroup:i,from:t},_||(a.info("检测到待接听的来电,请点击接听"),M({title:"来电提醒",message:"有待接听的视频通话",type:"warning",duration:0,position:"top-right"})),s.value=!1;return}if(e==="connected"){o.value=!1,p.value=null,s.value=!0;return}e==="idle"&&(o.value||s.value)&&(o.value=!1,s.value=!1,p.value=null)}catch(e){console.warn("syncIncomingFromTUIStore:",t,e)}}function x(){b("watch")}function P(){I&&(I(),I=null);const t={[E.CALL_STATUS]:x,[E.CALL_ROLE]:x};try{k.watch(L.CALL,t),I=()=>{try{k.unwatch(L.CALL,t)}catch{}}}catch(e){console.warn("TUIStore.watch 失败:",e)}}const R=()=>{v.value&&clearInterval(v.value);let t=0;const e=90;v.value=setInterval(()=>{t+=1,b("poll"),t>=e&&v.value&&(clearInterval(v.value),v.value=null)},500)},F=({oldStatus:t,newStatus:e})=>{console.log("========================================"),console.log("=== 通话状态变化回调触发 ==="),console.log("oldStatus:",t),console.log("newStatus:",e),console.log("STATUS 常量:",T),console.log("========================================"),e===T.BE_INVITED&&(console.log(">>> 收到来电邀请"),o.value=!0,p.value={oldStatus:t,newStatus:e},M({title:"来电提醒",message:"收到视频通话请求",type:"info",duration:0,position:"top-right"}),a.success("收到来电,请点击接听按钮")),(e===T.CALLING_C2C_VIDEO||e===T.CALLING_GROUP_VIDEO)&&(console.log(">>> 通话已接通"),a.success("通话已接通"),o.value=!1,s.value=!0),e===T.IDLE&&(o.value||s.value)&&(console.log(">>> 通话已结束"),o.value=!1,s.value=!1,p.value=null,a.info("通话已结束"))},G=async()=>{try{U.value=!0;const t=S.value.id;if(!t)throw new Error("未获取到当前用户ID,请重新登录");console.log("=== 开始初始化医疗助理端 ==="),console.log("当前用户ID:",t),a.info("正在获取签名...");const e=await te.get({url:"/tcm.diagnosis/getDoctorSignature",params:{patient_id:t}});if(!e)throw new Error("获取签名失败");const{sdkAppId:u,userId:i,userSig:_}=e;if(D.value=i,console.log("医疗助理签名获取成功:",{userId:i,sdkAppId:u,userSigLength:_.length}),console.log("完整签名信息:",e),a.info("正在初始化通话组件..."),console.log("=== 开始调用 TUICallKitServer.init ==="),!C||typeof C.init!="function")throw new Error("TUICallKitServer 未正确加载,请刷新页面重试");try{await C.init({userID:i,userSig:_,SDKAppID:Number(u)})}catch(l){console.warn("TUICallKitServer.init 出现错误,但继续执行:",l)}console.log("=== TUICallKitServer.init 完成 ===");const N={statusChanged:F,onError:l=>{console.error("=== TUICallKit 错误回调 ===",l),a.error(`通话错误: ${(l==null?void 0:l.message)||"未知错误"}`)},onInvited:l=>{console.log("=== 收到邀请回调 (onInvited) ===",l),a.info("收到通话邀请 (onInvited)")},afterCalling:()=>{console.log("=== afterCalling 回调 ===")}};try{C.setCallback(N)}catch(l){console.warn("设置回调时出现错误,但继续执行:",l)}console.log("回调设置完成"),a.info("等待初始化完成..."),await new Promise(l=>setTimeout(l,2e3)),g.value=!0,await V(),await new Promise(l=>setTimeout(l,300)),P(),b("post-init"),R(),a.success("医疗助理端初始化成功,等待来电..."),console.log("=== 医疗助理端初始化完成 ==="),console.log("userId:",i),console.log("等待来电中..."),console.log("请在医生端发起群组通话,目标用户ID应该是:",i)}catch(t){console.error("=== 初始化失败 ===",t),a.error(t.message||"初始化失败")}finally{U.value=!1}};async function j(){var t;await V(),await new Promise(e=>setTimeout(e,400));try{const e=C;if(typeof e.closeMicrophone=="function")return await e.closeMicrophone(),!0;const u=(t=e.getTUICallEngineInstance)==null?void 0:t.call(e);if(u&&typeof u.closeMicrophone=="function")return await u.closeMicrophone(),!0}catch(e){console.warn("接听后关闭麦克风失败(可在通话条手动关麦):",e)}return!1}const J=async()=>{try{console.log("接听来电"),await C.accept(),a.success("已接听通话"),o.value=!1,s.value=!0,await j()&&a.info("已关闭本地麦克风")}catch(t){console.error("接听失败:",t),a.error(t.message||"接听失败")}},q=async()=>{try{console.log("拒绝来电"),await C.reject(),a.info("已拒绝通话"),o.value=!1,p.value=null}catch(t){console.error("拒绝失败:",t),a.error(t.message||"拒绝失败")}},H=()=>{g.value=!1,D.value="",o.value=!1,s.value=!1,p.value=null};return ne(()=>{v.value&&(clearInterval(v.value),v.value=null),I&&(I(),I=null),g.value&&(o.value=!1,s.value=!1,p.value=null)}),(t,e)=>{const u=Q,i=W,_=$,N=X,l=Y;return m(),d("div",re,[r(l,null,{header:c(()=>[...e[0]||(e[0]=[n("div",{class:"card-header"},[n("span",null,"医疗助理端 - 接听来电")],-1)])]),default:c(()=>[g.value?h("",!0):(m(),d("div",ce,[r(u,{type:"info",closable:!1,class:"mb-4"},{default:c(()=>[n("p",null,[e[1]||(e[1]=n("strong",null,"当前登录用户:",-1)),f(" "+w(S.value.nickname||S.value.name||"未知"),1)]),n("p",null,[e[2]||(e[2]=n("strong",null,"用户ID:",-1)),f(" "+w(S.value.id||"未获取"),1)]),e[3]||(e[3]=n("p",null,[n("strong",null,"状态:"),f(" 正在初始化...")],-1))]),_:1}),U.value?h("",!0):(m(),z(i,{key:0,type:"primary",onClick:G,loading:U.value,size:"large"},{default:c(()=>[...e[4]||(e[4]=[f(" 重新初始化 ",-1)])]),_:1},8,["loading"]))])),g.value?(m(),d("div",ue,[r(u,{type:o.value?"warning":"success",closable:!1},{title:c(()=>[n("div",pe,[r(_,{class:ie(["mr-2",{"animate-pulse":o.value}])},{default:c(()=>[r(A(K))]),_:1},8,["class"]),n("span",null,w(o.value?"收到来电!":"医疗助理端已初始化,等待来电..."),1)])]),default:c(()=>[n("div",me,[n("p",null,[e[5]||(e[5]=n("strong",null,"医疗助理ID:",-1)),f(" "+w(D.value),1)]),n("p",null,[e[6]||(e[6]=n("strong",null,"状态:",-1)),f(" "+w(o.value?"来电中":"在线"),1)]),o.value&&p.value?(m(),d("p",fe,[e[7]||(e[7]=n("strong",null,"通话类型:",-1)),f(" "+w(p.value.isGroup?"群组视频通话":"视频通话"),1)])):h("",!0)])]),_:1},8,["type"]),o.value?(m(),d("div",ve,[r(i,{type:"success",size:"large",onClick:J,icon:A(K)},{default:c(()=>[...e[8]||(e[8]=[f(" 接听 ",-1)])]),_:1},8,["icon"]),r(i,{type:"danger",size:"large",onClick:q},{default:c(()=>[...e[9]||(e[9]=[f(" 拒绝 ",-1)])]),_:1})])):(m(),z(i,{key:1,type:"danger",onClick:H,class:"mt-4"},{default:c(()=>[...e[10]||(e[10]=[f(" 重置 ",-1)])]),_:1}))])):h("",!0),o.value||s.value?(m(),d("div",de,[r(A(O),{class:"TUICallKit-mobile"})])):g.value?(m(),d("div",ge,[r(N,{description:"等待来电中..."},{image:c(()=>[r(_,{size:80,color:"#909399"},{default:c(()=>[r(A(K))]),_:1})]),_:1})])):h("",!0),g.value&&!o.value&&!s.value?(m(),d("div",Ie,[r(A(O),{class:"TUICallKit-mobile"})])):h("",!0)]),_:1})])}}}),ut=oe(_e,[["__scopeId","data-v-56c22385"]]);export{ut as default};
diff --git a/server/public/admin/assets/pay-DkFDwkqP.js b/server/public/admin/assets/pay-B8yUqOLK.js
similarity index 85%
rename from server/public/admin/assets/pay-DkFDwkqP.js
rename to server/public/admin/assets/pay-B8yUqOLK.js
index 55ae43b8..3b379da7 100644
--- a/server/public/admin/assets/pay-DkFDwkqP.js
+++ b/server/public/admin/assets/pay-B8yUqOLK.js
@@ -1 +1 @@
-import{r as a}from"./index-B7JHxj4W.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-Dn8YPxC3.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-BqGFukHh.js b/server/public/admin/assets/pc-EV4YOHtZ.js
similarity index 94%
rename from server/public/admin/assets/pc-BqGFukHh.js
rename to server/public/admin/assets/pc-EV4YOHtZ.js
index e5bd0694..d8c6c1d1 100644
--- a/server/public/admin/assets/pc-BqGFukHh.js
+++ b/server/public/admin/assets/pc-EV4YOHtZ.js
@@ -1 +1 @@
-import{i as x,D as v,B as D,C as b,J as g}from"./element-plus-DFTWCWyi.js";import{b as k}from"./decoration-CLlOq3KI.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-B7JHxj4W.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";const F={class:"decoration-pc min-w-[1100px]"},J=n({name:"decorationPc"}),Dt=n({...J,setup(q){const r=P({update_time:"",pc_url:""});return(async()=>{try{r.value=await k()}catch(i){console.log(i)}})(),(i,t)=>{const m=x,c=w("router-link"),l=D,_=b,d=v,u=g,f=B("copy");return s(),C("div",F,[o(u,{shadow:"never",class:"!border-none flex-1 flex"},{default:e(()=>[t[3]||(t[3]=E("div",{class:"text-xl font-medium"},"首页装修",-1)),o(c,{to:{path:"/decoration/pc_details",query:{url:a(r).pc_url}}},{default:e(()=>[o(m,{class:"m-5",type:"primary",size:"large"},{default:e(()=>[...t[1]||(t[1]=[p("去装修",-1)])]),_:1})]),_:1},8,["to"]),o(d,null,{default:e(()=>[o(l,{label:"最近更新"},{default:e(()=>[p(I(a(r).update_time),1)]),_:1}),o(l,{label:"PC端链接"},{default:e(()=>[o(_,{style:{width:"350px"},modelValue:a(r).pc_url,"onUpdate:modelValue":t[0]||(t[0]=y=>a(r).pc_url=y),disabled:""},null,8,["modelValue"]),V((s(),N(m,{type:"primary"},{default:e(()=>[...t[2]||(t[2]=[p("复制",-1)])]),_:1})),[[f,a(r).pc_url]])]),_:1})]),_:1})]),_:1})])}}});export{Dt as default};
+import{i as x,D as v,B as D,C as b,J as g}from"./element-plus-DFTWCWyi.js";import{b as k}from"./decoration-COvVycVI.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-Dn8YPxC3.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";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-OsMYpbsw.js b/server/public/admin/assets/pc_details-Pgmlpiyf.js
similarity index 65%
rename from server/public/admin/assets/pc_details-OsMYpbsw.js
rename to server/public/admin/assets/pc_details-Pgmlpiyf.js
index 4e487530..e23b7b2f 100644
--- a/server/public/admin/assets/pc_details-OsMYpbsw.js
+++ b/server/public/admin/assets/pc_details-Pgmlpiyf.js
@@ -1 +1 @@
-import{i as b,J as P}from"./element-plus-DFTWCWyi.js";import{o as B}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as N,s as V}from"./decoration-CLlOq3KI.js";import{i as C,_ as E}from"./index-B7JHxj4W.js";import I from"./preview-pc-CDWKKIvG.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-ChI3_-FE.js";import"./attr--tQE9L7V.js";import"./index-DB9D3_w0.js";import"./picker-DDN748VW.js";import"./index-CfViC04h.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-BHgPYW4-.js";import"./usePaging-VsbTxSU0.js";import"./picker-C3_ymTuH.js";import"./index-DevmXUeT.js";import"./index-CUGvV7XN.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-BCYsLPcQ.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-CGjMOAWa.js";import"./decoration-img-CHuj7lnQ.js";import"./attr.vue_vue_type_script_setup_true_lang-ZC4FOcfB.js";import"./content-CPpwMMIz.js";import"./attr.vue_vue_type_script_setup_true_lang-BybvVPul.js";import"./content.vue_vue_type_script_setup_true_lang-BY5cXn-u.js";import"./attr.vue_vue_type_script_setup_true_lang-CITO8WvH.js";import"./add-nav.vue_vue_type_script_setup_true_lang-HqDyblrG.js";import"./content-Dir9bBUp.js";import"./attr.vue_vue_type_script_setup_true_lang-DRRJELFL.js";import"./content.vue_vue_type_script_setup_true_lang-CCgVSyir.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-C1PUHCdz.js";import"./attr.vue_vue_type_script_setup_true_lang-_CC6RCM9.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-BVoNHxW1.js";import"./content.vue_vue_type_script_setup_true_lang-BQa9YxUm.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-nGWO8HMK.js";import"./attr.vue_vue_type_script_setup_true_lang-CX7cklLF.js";import"./content.vue_vue_type_script_setup_true_lang-xwb0Gm-x.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-BC99LSDU.js";const G={class:"decoration-pages min-w-[1100px]"},H={class:"flex justify-between w-full"},U={class:"flex-1 h-full"},W=v({name:"decorationPc"}),q=v({...W,setup(z){const g=h();let n;(t=>{t.HOME="4"})(n||(n={}));const a=A({4:{id:4,type:4,name:"首页装修",pageData:[]}}),r=_("4"),e=_(0),i=T(()=>{var t;return((t=a[r.value])==null?void 0:t.pageData)??[]}),w=async()=>{await C.confirm("确定离开此页面?系统可能不会保存您所做的更改。"),g.back()},c=async()=>{const t=await N({id:r.value});a[String(t.id)].pageData=JSON.parse(t.data),e.value=i.value.findIndex(o=>!o.disabled)},D=async()=>{await V({...a[r.value],data:JSON.stringify(a[r.value].pageData)}),c()};return J(r,()=>{e.value=i.value.findIndex(t=>!t.disabled),c()},{immediate:!0}),(t,o)=>{const l=b,y=P,x=O("perms");return d(),S("div",G,[p(y,{shadow:"never",class:"!border-none !rounded-none !bg-primary"},{default:m(()=>[u("div",H,[p(l,{link:"",type:"primary",icon:s(B),style:{color:"#fff"},onClick:w},{default:m(()=>[...o[1]||(o[1]=[f(" 返回 ",-1)])]),_:1},8,["icon"]),M((d(),R(l,{onClick:D},{default:m(()=>[...o[2]||(o[2]=[f(" 保存 ",-1)])]),_:1})),[[x,["decorate:pages:save"]]])])]),_:1}),u("div",U,[p(I,{modelValue:s(e),"onUpdate:modelValue":o[0]||(o[0]=k=>j(e)?e.value=k:null),pageData:s(i)},null,8,["modelValue","pageData"])])])}}}),yo=E(q,[["__scopeId","data-v-9bc87a24"]]);export{yo as default};
+import{i as b,J as P}from"./element-plus-DFTWCWyi.js";import{o as B}from"./@element-plus/icons-vue-HOEUG8sr.js";import{a as N,s as V}from"./decoration-COvVycVI.js";import{i as C,_ as E}from"./index-Dn8YPxC3.js";import I from"./preview-pc-Clspp6Cj.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-DGQdn1zS.js";import"./attr-DC6BPxTy.js";import"./index-CrY043B3.js";import"./picker-BtrtANgK.js";import"./index-BOXguUgn.js";import"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import"./article-DQuctzrZ.js";import"./usePaging-VsbTxSU0.js";import"./picker-DuwjC-1U.js";import"./index-DgypKt72.js";import"./index-32KWa0px.js";import"./cos-js-sdk-v5-DSMN0LUT.js";import"./file-Bh0UlSsJ.js";import"./index.vue_vue_type_script_setup_true_lang-x0oL2ShL.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./content.vue_vue_type_script_setup_true_lang-uLttW8br.js";import"./decoration-img-BpgYmPcw.js";import"./attr.vue_vue_type_script_setup_true_lang-Blp4hIUB.js";import"./content-CCzAHFIf.js";import"./attr.vue_vue_type_script_setup_true_lang-Cl9of7pR.js";import"./content.vue_vue_type_script_setup_true_lang-CdRdmFgo.js";import"./attr.vue_vue_type_script_setup_true_lang-C3WzigwI.js";import"./add-nav.vue_vue_type_script_setup_true_lang-Dh-kpyzv.js";import"./content-DlWbbd0E.js";import"./attr.vue_vue_type_script_setup_true_lang-DMiXw-lx.js";import"./content.vue_vue_type_script_setup_true_lang-BWLNB88P.js";import"./attr.vue_vue_type_script_setup_true_lang-DnkDutJb.js";import"./content-Dc0qs0_b.js";import"./attr.vue_vue_type_script_setup_true_lang-uN4_OC0y.js";import"./index.vue_vue_type_script_setup_true_lang-3vCdLVB9.js";import"./content-DA7PE34Y.js";import"./content.vue_vue_type_script_setup_true_lang-BMs7WwME.js";import"./attr.vue_vue_type_script_setup_true_lang-ChKJn1wI.js";import"./content-DZXTje52.js";import"./attr.vue_vue_type_script_setup_true_lang-BBzwFuCf.js";import"./content.vue_vue_type_script_setup_true_lang-DiKo-62L.js";import"./attr.vue_vue_type_script_setup_true_lang-9MDVGbdQ.js";import"./content-q7SQZcI3.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-B4YuMuOA.js b/server/public/admin/assets/perm-u3InoaJU.js
similarity index 67%
rename from server/public/admin/assets/perm-B4YuMuOA.js
rename to server/public/admin/assets/perm-u3InoaJU.js
index c379e64d..435fb755 100644
--- a/server/public/admin/assets/perm-B4YuMuOA.js
+++ b/server/public/admin/assets/perm-u3InoaJU.js
@@ -1 +1 @@
-import{u as i}from"./index-B7JHxj4W.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-Dn8YPxC3.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-DDN748VW.js b/server/public/admin/assets/picker-BtrtANgK.js
similarity index 97%
rename from server/public/admin/assets/picker-DDN748VW.js
rename to server/public/admin/assets/picker-BtrtANgK.js
index 19bf21d7..9e0b1c10 100644
--- a/server/public/admin/assets/picker-DDN748VW.js
+++ b/server/public/admin/assets/picker-BtrtANgK.js
@@ -1 +1 @@
-import{D as F,B as z,C as L,i as J,L as Q,M as W,N as X,H as Y,v as Z,r as ee,G as te,I as le,y as ae,w as ne,x as se}from"./element-plus-DFTWCWyi.js";import{_ as q,c as oe}from"./index-B7JHxj4W.js";import{w as ie,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as de}from"./index-CfViC04h.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{N as pe}from"./@element-plus/icons-vue-HOEUG8sr.js";import{k as re}from"./article-BHgPYW4-.js";import{u as ce}from"./usePaging-VsbTxSU0.js";import{f as k,w as O,ak as r,I as V,a as d,aN as x,aP as _e,G as P,J as l,O as R,F as T,ap as $,H as b,A as N}from"./@vue/runtime-core-C6bnekPw.js";import{n as E,y as o,a as I,r as fe,q as xe}from"./@vue/reactivity-DiY1c2vO.js";import{Q as C,o as ve}from"./@vue/shared-mAAVTE9n.js";var w=(n=>(n.SHOP_PAGES="shop",n.APPTOOL="application_tool",n.OTHER_LINK="other_link",n))(w||{}),a=(n=>(n.SHOP_PAGES="shop",n.ARTICLE_LIST="article",n.CUSTOM_LINK="custom",n.MINI_PROGRAM="mini_program",n))(a||{});const ye={class:"article-list"},he={class:"flex row-center"},Se={class:"flex items-center"},ge={class:"ml-4 overflow-hidden"},Ve={class:"text-base line-clamp-2"},Pe={class:"flex justify-end mt-4"},we=k({__name:"article-list",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=E({path:"/pages/news_detail/news_detail",name:"",query:{},type:a.ARTICLE_LIST}),t=fe({name:"",is_show:1}),{pager:e,getLists:_,resetPage:s}=ce({fetchFun:re,params:t}),i=f=>f==Number(m.value.id),p=f=>{m.value={id:f.id,name:f.title,path:"/pages/news_detail/news_detail",query:{id:f.id},type:a.ARTICLE_LIST},y("update:modelValue",m.value)};return O(()=>c.modelValue,f=>{if(f.type!=a.ARTICLE_LIST)return m.value={id:"",name:"",path:"/pages/news_detail/news_detail",type:a.SHOP_PAGES};m.value=f},{immediate:!0}),_(),(f,v)=>{const u=L,S=J,A=z,G=F,M=Y,H=X,U=Z,K=ee,j=W,B=ue,D=Q;return r(),V("div",ye,[d(G,{ref:"formRef",model:o(t),inline:!0},{default:x(()=>[d(A,{class:"w-[280px]",label:"文章名称"},{default:x(()=>[d(u,{modelValue:o(t).name,"onUpdate:modelValue":v[0]||(v[0]=g=>o(t).name=g),placeholder:"请输入",clearable:"",onKeyup:ie(o(s),["enter"])},null,8,["modelValue","onKeyup"]),d(S,{type:"primary",class:"ml-4",icon:o(pe),onClick:o(s)},null,8,["icon","onClick"])]),_:1})]),_:1},8,["model"]),_e((r(),P(j,{size:"large",data:o(e).lists,height:"432px",onRowClick:p},{default:x(()=>[d(H,{label:"选择","min-width":"50"},{default:x(({row:g})=>[l("div",he,[d(M,{"model-value":i(g.id),size:"large",onChange:Qe=>p(g)},null,8,["model-value","onChange"])])]),_:1}),d(H,{label:"文章名称","min-width":"180"},{default:x(({row:g})=>[l("div",Se,[d(U,{fit:"cover",src:g.image,class:"flex-none w-[58px] h-[58px]"},null,8,["src"]),l("div",ge,[d(K,{effect:"dark",content:g.title,placement:"top"},{default:x(()=>[l("div",Ve,C(g.title),1)]),_:2},1032,["content"])])])]),_:1}),d(H,{label:"创建时间",prop:"create_time","min-width":"140"})]),_:1},8,["data"])),[[D,o(e).loading]]),l("div",Pe,[d(B,{modelValue:o(e),"onUpdate:modelValue":v[1]||(v[1]=g=>I(e)?e.value=g:null),onChange:o(_)},null,8,["modelValue","onChange"])])])}}}),Ie=q(we,[["__scopeId","data-v-1686cf19"]]),ke={class:"custom-link h-[530px]"},Oe={class:"flex flex-wrap items-center mt-4"},Ee={class:"ml-4 flex-1 min-w-[100px]"},Ae=k({__name:"custom-link",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=h,y=m=>{c("update:modelValue",{path:"/pages/webview/webview",query:{url:m},type:a.CUSTOM_LINK})};return(m,t)=>{var _;const e=L;return r(),V("div",ke,[t[1]||(t[1]=l("div",{class:"text-xl font-medium"},"自定义链接",-1)),l("div",Oe,[t[0]||(t[0]=l("div",{class:"w-[86px] text-right"},"自定义链接",-1)),l("div",Ee,[d(e,{class:"max-w-[320px]","model-value":(_=n.modelValue.query)==null?void 0:_.url,placeholder:"请输入链接地址",onInput:y},null,8,["model-value"])])]),t[2]||(t[2]=l("div",{class:"form-tips ml-[101px] max-w-[320px]"}," 请填写完整的带有“https://”或“http://”的链接地址,链接的域名必须在微信公众平台设置业务域名 ",-1))])}}}),be={class:"mini-program h-[530px]"},Ce={class:"flex flex-wrap items-center mt-4"},Le={class:"ml-4 flex-1 min-w-[100px]"},Ge={class:"flex flex-wrap items-center mt-4"},He={class:"ml-4 flex-1 min-w-[100px]"},Re={class:"flex flex-wrap items-center mt-4"},Te={class:"ml-4 flex-1 min-w-[100px]"},$e={class:"flex flex-wrap items-center mt-4"},qe={class:"ml-4 flex-1 min-w-[100px]"},Ne=k({__name:"mini-program",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=(t,e)=>{y("update:modelValue",{...c.modelValue,name:"小程序跳转",query:{...c.modelValue.query,[t]:e},type:a.MINI_PROGRAM})};return O(()=>c.modelValue,t=>{var e;(e=t.query)!=null&&e.env_version||m("env_version","release")},{immediate:!0}),(t,e)=>{var p,f,v,u;const _=L,s=le,i=te;return r(),V("div",be,[e[11]||(e[11]=l("div",{class:"text-xl font-medium"},"跳转小程序",-1)),l("div",Ce,[e[4]||(e[4]=l("div",{class:"w-[86px] text-right"},"小程序APPID",-1)),l("div",Le,[d(_,{class:"max-w-[320px]","model-value":(p=n.modelValue.query)==null?void 0:p.appId,placeholder:"请输入小程序appId",onInput:e[0]||(e[0]=S=>m("appId",S))},null,8,["model-value"])])]),l("div",Ge,[e[5]||(e[5]=l("div",{class:"w-[86px] text-right"},"小程序路径",-1)),l("div",He,[d(_,{class:"max-w-[320px]","model-value":(f=n.modelValue.query)==null?void 0:f.path,placeholder:"请输入小程序路径链接地址",onInput:e[1]||(e[1]=S=>m("path",S))},null,8,["model-value"])])]),l("div",Re,[e[6]||(e[6]=l("div",{class:"w-[86px] text-right"},"传递参数",-1)),l("div",Te,[d(_,{class:"max-w-[320px]","model-value":(v=n.modelValue.query)==null?void 0:v.query,placeholder:"请输入小程序跳转参数(选填)",onInput:e[2]||(e[2]=S=>m("query",S))},null,8,["model-value"])])]),e[12]||(e[12]=l("div",{class:"form-tips ml-[100px] max-w-[320px]"},[l("div",null,"示例:id=2&ustm=jiny&name=234"),l("div",{class:"text-error"}," 注意:不允许输入中文、特殊字符等。如果出现对不起,当前页面无法访问,大概率是跳转参数的问题!! ")],-1)),l("div",$e,[e[10]||(e[10]=l("div",{class:"w-[86px] text-right"},"小程序版本",-1)),l("div",qe,[d(i,{"model-value":(u=n.modelValue.query)==null?void 0:u.env_version,onChange:e[3]||(e[3]=S=>m("env_version",S))},{default:x(()=>[d(s,{value:"release"},{default:x(()=>[...e[7]||(e[7]=[R("正式版",-1)])]),_:1}),d(s,{value:"trial"},{default:x(()=>[...e[8]||(e[8]=[R("体验版",-1)])]),_:1}),d(s,{value:"develop"},{default:x(()=>[...e[9]||(e[9]=[R("开发版",-1)])]),_:1})]),_:1},8,["model-value"])])]),e[13]||(e[13]=l("div",null,[l("div",{class:"form-tips ml-[100px] max-w-[320px]"},[l("div",{class:"mt-4"}," 1. 小程序APPID和小程序路径链接地址,小程序路径链接地址请填写小程序的页面路径,如:pages/index/index "),l("div",{class:"mt-2"},[l("span",null,"2. 如果是H5(浏览器)中需要跳转到小程序,则需要以下配置--->"),l("a",{href:"https://mp.weixin.qq.com/",class:"text-primary",target:"_blank",rel:"nofollow"}," 小程序管理后台 -> 设置 -> 隐私与安全 -> 明文 scheme 拉起此小程序 (点击跳转去配置) ")])])],-1))])}}}),Me={class:"shop-pages h-[530px]"},Ue={class:"link-list flex flex-wrap"},Ke=["onClick"],je=k({__name:"shop-pages",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(n,{emit:h}){const c=h,y=E([{path:"/pages/index/index",name:"商城首页",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/news/news",name:"文章资讯",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/user/user",name:"个人中心",type:a.SHOP_PAGES,canTab:!0},{path:"/pages/collection/collection",name:"我的收藏",type:a.SHOP_PAGES},{path:"/pages/customer_service/customer_service",name:"联系客服",type:a.SHOP_PAGES},{path:"/pages/user_set/user_set",name:"个人设置",type:a.SHOP_PAGES},{path:"/pages/as_us/as_us",name:"关于我们",type:a.SHOP_PAGES},{path:"/pages/user_data/user_data",name:"个人资料",type:a.SHOP_PAGES},{path:"/pages/agreement/agreement",name:"隐私政策",query:{type:"privacy"},type:a.SHOP_PAGES},{path:"/pages/agreement/agreement",name:"服务协议",query:{type:"service"},type:a.SHOP_PAGES},{path:"/pages/search/search",name:"搜索",type:a.SHOP_PAGES},{path:"/packages/pages/user_wallet/user_wallet",name:"我的钱包",type:a.SHOP_PAGES}]),m=t=>{c("update:modelValue",t)};return(t,e)=>(r(),V("div",Me,[l("div",Ue,[(r(!0),V(T,null,$(o(y),(_,s)=>(r(),V("div",{class:ve(["link-item border border-br px-5 py-[5px] rounded-[3px] cursor-pointer mr-[10px] mb-[10px]",{"border-primary text-primary":n.modelValue.path==_.path&&n.modelValue.name==_.name}]),key:s,onClick:i=>m(_)},C(_.name),11,Ke))),128))])]))}}),Be={class:"link flex"},De={class:"flex-1 ml-4 link-content"},Fe=k({__name:"index",props:{modelValue:{type:Object,required:!0}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=E([{name:"商城页面",type:w.SHOP_PAGES,children:[{name:"基础页面",type:a.SHOP_PAGES,link:{}}]},{name:"应用工具",type:w.APPTOOL,children:[{name:"文章资讯",type:a.ARTICLE_LIST,link:{}}]},{name:"其他",type:w.OTHER_LINK,children:[{name:"自定义链接",type:a.CUSTOM_LINK,link:{}},{name:"跳转小程序",type:a.MINI_PROGRAM,link:{}}]}]),t=N({get(){let s={};return m.value.forEach(i=>{const p=i.children.find(f=>f.type==e.value);p&&(s=p)}),s.link},set(s){m.value.forEach(i=>{i.children.forEach(p=>{p.type==e.value&&(p.link=s)})})}}),e=E(a.SHOP_PAGES),_=s=>{e.value=s};return O(t,s=>{s.type&&y("update:modelValue",s)},{deep:!0}),O(()=>c.modelValue,s=>{e.value=s.type,t.value=s},{immediate:!0}),(s,i)=>{const p=ne,f=se,v=ae;return r(),V("div",Be,[d(v,{"default-active":o(e),class:"flex-none w-[180px] min-h-[350px] link-menu","default-openeds":[o(w).SHOP_PAGES,o(w).APPTOOL,o(w).OTHER_LINK],onSelect:_},{default:x(()=>[(r(!0),V(T,null,$(o(m),(u,S)=>(r(),P(f,{index:u.type,key:S},{title:x(()=>[l("span",null,C(u.name),1)]),default:x(()=>[(r(!0),V(T,null,$(u.children,(A,G)=>(r(),P(p,{index:A.type,key:G,style:{"min-width":"160px"}},{default:x(()=>[l("span",null,C(A.name),1)]),_:2},1032,["index"]))),128))]),_:2},1032,["index"]))),128))]),_:1},8,["default-active","default-openeds"]),l("div",De,[o(a).SHOP_PAGES==o(e)?(r(),P(je,{key:0,modelValue:o(t),"onUpdate:modelValue":i[0]||(i[0]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).ARTICLE_LIST==o(e)?(r(),P(Ie,{key:1,modelValue:o(t),"onUpdate:modelValue":i[1]||(i[1]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).CUSTOM_LINK==o(e)?(r(),P(Ae,{key:2,modelValue:o(t),"onUpdate:modelValue":i[2]||(i[2]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0),o(a).MINI_PROGRAM==o(e)?(r(),P(Ne,{key:3,modelValue:o(t),"onUpdate:modelValue":i[3]||(i[3]=u=>I(t)?t.value=u:null)},null,8,["modelValue"])):b("",!0)])])}}}),ze=q(Fe,[["__scopeId","data-v-e991fd93"]]),Je=k({__name:"picker",props:{modelValue:{type:Object},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(n,{emit:h}){const c=n,y=h,m=xe(),t=E({path:"",type:a.SHOP_PAGES}),e=()=>{y("update:modelValue",t.value)},_=N(()=>{var s,i,p;switch((s=c.modelValue)==null?void 0:s.type){case a.SHOP_PAGES:return c.modelValue.name;case a.ARTICLE_LIST:return c.modelValue.name;case a.CUSTOM_LINK:return(i=c.modelValue.query)==null?void 0:i.url;default:return(p=c.modelValue)==null?void 0:p.name}});return O(()=>c.modelValue,s=>{s!=null&&s.type&&(t.value=s)},{immediate:!0}),(s,i)=>{const p=oe,f=L;return r(),V("div",{class:"link-picker flex-1",onClick:i[2]||(i[2]=v=>{var u;return!n.disabled&&((u=o(m))==null?void 0:u.open())})},[d(f,{"model-value":o(_),placeholder:"请选择链接",readonly:"",disabled:n.disabled},{suffix:x(()=>{var v;return[(v=n.modelValue)!=null&&v.path?(r(),P(p,{key:1,name:"el-icon-Close",onClick:i[0]||(i[0]=me(u=>!n.disabled&&y("update:modelValue",{}),["stop"]))})):(r(),P(p,{key:0,name:"el-icon-ArrowRight"}))]}),_:1},8,["model-value","disabled"]),d(de,{ref_key:"popupRef",ref:m,width:"1050px",title:"链接选择",onConfirm:e},{default:x(()=>[d(ze,{modelValue:o(t),"onUpdate:modelValue":i[1]||(i[1]=v=>I(t)?t.value=v:null)},null,8,["modelValue"])]),_:1},512)])}}}),it=q(Je,[["__scopeId","data-v-84fe1e25"]]);export{it as _};
+import{D as F,B as z,C as L,i as J,L as Q,M as W,N as X,H as Y,v as Z,r as ee,G as te,I as le,y as ae,w as ne,x as se}from"./element-plus-DFTWCWyi.js";import{_ as q,c as oe}from"./index-Dn8YPxC3.js";import{w as ie,s as me}from"./@vue/runtime-dom-DDAG46FW.js";import{_ as de}from"./index-BOXguUgn.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-CcvIuIWy.js";import{N as pe}from"./@element-plus/icons-vue-HOEUG8sr.js";import{k as re}from"./article-DQuctzrZ.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-C3_ymTuH.js b/server/public/admin/assets/picker-DuwjC-1U.js
similarity index 96%
rename from server/public/admin/assets/picker-C3_ymTuH.js
rename to server/public/admin/assets/picker-DuwjC-1U.js
index 3987668b..f96c4c00 100644
--- a/server/public/admin/assets/picker-C3_ymTuH.js
+++ b/server/public/admin/assets/picker-DuwjC-1U.js
@@ -1 +1 @@
-import{_ as j}from"./index-CfViC04h.js";import{s as le}from"./element-plus-DFTWCWyi.js";import{_ as se,a as J,F as ue}from"./index-DevmXUeT.js";import{e as de,i as O,_ as pe,c as me}from"./index-B7JHxj4W.js";import{_ as fe}from"./index-DB9D3_w0.js";import{D as ge}from"./vuedraggable-5bKFmC7X.js";import{a as ve}from"./file-BCYsLPcQ.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
接诊诊单:${i[0]}
金额:${Number(i[1]).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`:""}},grid:{left:48,right:24,top:28,bottom:32,containLabel:!0},xAxis:{type:"value",name:"接诊诊单",nameLocation:"middle",nameGap:28,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},yAxis:{type:"value",name:"成交金额",nameLocation:"middle",nameGap:40,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},series:[{type:"scatter",data:n}]}}),ht=z(()=>U.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),ja=z(()=>{const t=[...U.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,R)=>Number(R.deal_amount)-Number(p.deal_amount)).slice(0,5);if(t.length<2)return{radar:{indicator:[]},series:[{type:"radar",data:[]}]};const e=p=>{const R=String(p.doctor_name||"—");return R.length>7?`${R.slice(0,7)}…`:R},n=p=>Number(p.system_prescription_count??0)+Number(p.manual_prescription_count??0),s=p=>{const R=Number(p.avg_deal_amount);if(Number.isFinite(R)&&R>0)return R;const P=Number(p.deal_order_count);return P>0?Number(p.deal_amount)/P:0},i=Math.max(...t.map(p=>Number(p.deal_amount)),1e-9),h=Math.max(...t.map(p=>Number(p.deal_order_count)),1e-9),g=Math.max(...t.map(n),1e-9),k=Math.max(...t.map(p=>Number(p.appointment_completed??0)),1e-9),B=Math.max(...t.map(s),1e-9),I=t.map(p=>({name:e(p),value:[Number(p.deal_amount)/i*100,Number(p.deal_order_count)/h*100,n(p)/g*100,Number(p.appointment_completed??0)/k*100,s(p)/B*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:I,emphasis:{lineStyle:{width:3}}}]}}),xa=z(()=>{const t=[...U.value].filter(s=>Number(s.deal_amount??0)>0).sort((s,i)=>Number(i.deal_amount)-Number(s.deal_amount)).slice(0,20),e=t.map(s=>{const i=String(s.doctor_name||"—");return i.length>10?`${i.slice(0,10)}…`:i}),n=t.map(s=>Number(s.deal_amount??0));return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${s.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`},grid:{left:8,right:16,top:28,bottom:8,containLabel:!0},xAxis:{type:"value",axisLabel:{fontSize:11},splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:[...e].reverse(),axisLabel:{fontSize:11}},series:[{name:"成交金额",type:"bar",data:[...n].reverse(),barMaxWidth:22,itemStyle:{borderRadius:[0,6,6,0]}}]}}),Na=z(()=>{const t=[...U.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 Sa(){var e,n;const t={};if(x.value&&(t.channel_code=x.value),(e=Y.value)!=null&&e[0]&&((n=Y.value)!=null&&n[1]))t.start_date=Y.value[0],t.end_date=Y.value[1];else{const s=nt(new Date);t.start_date=s,t.end_date=s}return t}function Mt(t){return Number(t??0).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function Ca(t){const e=Le.value,n=[];return t.columns.forEach((s,i)=>{if(i===0){n[i]="合计";return}switch(s.property){case"system_prescription_count":n[i]=String(e.system_prescription_count??0);break;case"manual_prescription_count":n[i]=String(e.manual_prescription_count??0);break;case"deal_amount":n[i]=`¥ ${Mt(e.deal_amount)}`;break;case"deal_order_count":n[i]=String(e.deal_order_count??0);break;case"appointment_completed":n[i]=String(e.appointment_completed??0);break;case"appointment_missed":n[i]=String(e.appointment_missed??0);break;case"appointment_cancelled":n[i]=String(e.appointment_cancelled??0);break;default:n[i]=""}}),n}async function It(){De.value=!0;try{const t=await Qn(Sa());U.value=(t==null?void 0:t.rows)??[],Le.value=(t==null?void 0:t.total)??{},t!=null&&t.start_date&&(t!=null&&t.end_date)&&(Ke.value={start:t.start_date,end:t.end_date})}catch(t){if(ie.isCancel(t))return;U.value=[],Le.value={},Ke.value=null}finally{De.value=!1}}const te=v(!1),_e=v(!1),Fe=v(""),Ee=v(""),pe=v([]),Qe=v(0),X=v(1),Ze=v(15),G=v("channel"),H=v(null),Be=v(null),ae=v(null),Tt=z(()=>{const t=ae.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}),Vt=z(()=>{const t=ae.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}),Da=z(()=>pe.value.reduce((t,e)=>t+Number(e.amount??0),0)),Ft=z(()=>!!x.value&&te.value),bt=z(()=>{var e;const t=x.value;if(!t)return"";for(const n of We.value){const s=(e=n.channels)==null?void 0:e.find(i=>i.channel_code===t);if(s!=null&&s.channel_name)return String(s.channel_name)}return t}),La=z(()=>{const t=H.value;return t&&G.value==="total"?Number.isFinite(t.channelAmount)?t.channelAmount:null:Tt.value}),Ye=v(null),et=v(!1);function za(){const t=new Date;return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`}function $a(t){const[e,n]=t.split("-").map(Number);return new Date(e,n,0).getDate()}async function Aa(){var t,e,n,s;et.value=!0,Ye.value=null;try{let i=function(f,D=0){const L=[];for(const $ of f??[])L.push({node:$,depth:D}),L.push(...i($.children??[],D+1));return L},h=function(f){const D=he.value.find(q=>Number(q.id)===f);if(!D)return"";const L=Number(D.pid);if(!L)return"";const $=he.value.find(q=>Number(q.id)===L);return $!=null&&$.name?String($.name):""},g=function(f){const D=[],L=[f];for(;L.length;){const $=L.shift();for(const q of he.value)Number(q.pid)===$&&(D.push(q.id),L.push(q.id))}return D},k=function(f,D){const L=new Map;for(const $ of(f==null?void 0:f.rows)??[])L.set(Number($.dept_id),Number($[D]??0));return L};const B=za(),I=await il({year_month:B}),p=(I==null?void 0:I.rows)??[];if(!p.length)return;const P=i(p).filter(f=>f.depth>=1&&Number(f.node.target_amount)>0).map(f=>f.node);if(!P.length)return;const Q=new Set,O=P.map(f=>{const D=Number(f.dept_id),L=g(D),$=L.length?L:[D];return $.forEach(q=>Q.add(q)),{dept_id:D,dept_name:String(f.dept_name),target_amount:Number(f.target_amount),totalIds:$}});if(!Q.size)return;const $e=We.value.flatMap(f=>f.channels),W=(t=$e.find(f=>f.channel_name.includes("自媒体1")))==null?void 0:t.channel_code,fe=(e=$e.find(f=>f.channel_name.includes("自媒体3")))==null?void 0:e.channel_code,Ae=(n=$e.find(f=>f.channel_name.includes("自媒体4")))==null?void 0:n.channel_code,Pe=Array.from(Q).join(","),[ye,F,l,b]=await Promise.all([He({dept_ids:Pe}),W?He({dept_ids:Pe,channel_code:W}):Promise.resolve(null),fe?He({dept_ids:Pe,channel_code:fe}):Promise.resolve(null),Ae?He({dept_ids:Pe,channel_code:Ae}):Promise.resolve(null)]),m=f=>{var D;return((f==null?void 0:f.tables)??[]).find(L=>String(L.label).includes("月"))??((D=f==null?void 0:f.tables)==null?void 0:D[0])},T=f=>{var D,L;return((f==null?void 0:f.tables)??[]).find($=>String($.label).includes("昨"))??((L=f==null?void 0:f.tables)==null?void 0:L[((D=f==null?void 0:f.tables)==null?void 0:D.length)-1])},oa=k(m(ye),"performance_amount"),gn=k(T(ye),"performance_amount"),sa=F?k(m(F),"completed_performance_amount"):null,ia=l?k(m(l),"completed_performance_amount"):null,ra=b?k(m(b),"completed_performance_amount"):null,Ue=(f,D)=>D.reduce((L,$)=>L+(f.get($)??0),0),Nt=new Date,wn=$a(B),kn=Nt.getDate(),jn=O.map(f=>{const D=Ue(oa,f.totalIds),L=Ue(gn,f.totalIds),$=sa?Ue(sa,f.totalIds):null,q=ia?Ue(ia,f.totalIds):null,da=ra?Ue(ra,f.totalIds):null,St=q!==null||da!==null?(q??0)+(da??0):null,Cn=Math.round(f.target_amount*(kn/wn)*100)/100,Dn=f.target_amount>0?D/f.target_amount:null;return{dept_id:f.dept_id,dept_name:f.dept_name,parent_dept_name:h(f.dept_id),target_amount:f.target_amount,total_amount:D,yesterday_amount:L,douyin_amount:$&&$>0?$:null,tuifen_amount:St&&St>0?St:null,target_progress:Cn,completion_rate:Dn}}),xn=((s=p[0])==null?void 0:s.dept_name)??"",Nn=Nt.getMonth()+1,Sn=Nt.getDate();Ye.value={title:`${xn}诊金-${Nn}.${Sn}`,sections:jn}}catch{}finally{et.value=!1}}const Pa=z(()=>{var e;const t=(e=N.value)==null?void 0:e.leaderboards;return t?t.filter(n=>n.rows.length>0).length:0}),Et=[{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 Ra(t){const e=t.value();Y.value=[nt(e[0]),nt(e[1])],ze()}async function Oa(){ot.value=!0;try{const t=await Zn();he.value=(t||[]).sort((e,n)=>{const s=e.name.includes("中心")?-1:1,i=n.name.includes("中心")?-1:1;return s!==i?s-i:e.id-n.id})}catch{}finally{ot.value=!1}}async function Ma(){st.value=!0;try{const t=await el(),e=(t==null?void 0:t.groups)||[];We.value=e}catch{}finally{st.value=!1}}async function Bt(t){oe.value=!0;try{const e={start_date:t.start,end_date:t.end};A.value.length>0&&(e.dept_ids=A.value.join(",")),x.value&&(e.channel_code=x.value);const n=await nl(e);N.value={start_date:n.start_date,end_date:n.end_date,channel_code:n.channel_code||"",channel_name:n.channel_name||"",channel_filter_note:n.channel_filter_note||"",range_note:n.range_note||"",leaderboards:n.leaderboards||[]}}catch(e){if(ie.isCancel(e))return;N.value=null}finally{oe.value=!1}}async function ze(){le.value=!0,N.value=null;try{const t={};if(A.value.length>0&&(t.dept_ids=A.value.join(",")),x.value&&(t.channel_code=x.value),Y.value&&Y.value[0]&&Y.value[1]){const[s,i]=Y.value,h={...t,start_date:s,end_date:i},g=await tl(h);re.value=[{label:s===i?s:`${s} ~ ${i}`,start_date:g.start_date,end_date:g.end_date,channel_code:g.channel_code||"",channel_name:g.channel_name||"",channel_group:g.channel_group||"",channel_filter_note:g.channel_filter_note||"",rows:g.rows||[],total:g.total}],await Bt({start:g.start_date,end:g.end_date});return}const e=await He(t);re.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=nt(new Date);await Bt({start:n,end:n})}catch(t){if(ie.isCancel(t))return;const e=t;Re.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{le.value=!1,Ce.value?It():(U.value=[],Le.value={},Ke.value=null)}}function Ia(){A.value=[],Y.value=null,x.value="",ze()}function Ta(t){return t<=0?!1:he.value.some(e=>Number(e.pid)===t)}function Va(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function tt(t){return t==null||!Number.isFinite(Number(t))?"—":Number(t).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function Fa(t){return(X.value-1)*Ze.value+t+1}function Ea(t){const e=(t==null?void 0:t.appointment_date)!=null&&String(t.appointment_date)!==""?String(t.appointment_date):"",n=(t==null?void 0:t.period)!=null&&String(t.period)!==""?String(t.period):"",s=(t==null?void 0:t.appointment_time)!=null&&String(t.appointment_time)!==""?String(t.appointment_time):"",i=[n,s].filter(Boolean).join(" ");return e&&i?`${e} ${i}`:e||i||"—"}function Yt(t){if(!t)return"";const e=t.channel_dict_value;if(e!=null&&e!==""){const i=Number(e);if(Number.isFinite(i))return String(Math.trunc(i))}const n=t.channel_source;if(n==null)return"";const s=String(n).trim();return s===""||!/^\d+$/.test(s)?"":String(parseInt(s,10))}function Ba(t){if(t==null||t==="")return"—";const e=Number(t);if(Number.isFinite(e)&&e>=1e9&&e<1e15){const s=e<1e12?e*1e3:e,i=new Date(s);if(!Number.isNaN(i.getTime())){const h=i.getFullYear(),g=String(i.getMonth()+1).padStart(2,"0"),k=String(i.getDate()).padStart(2,"0"),B=String(i.getHours()).padStart(2,"0"),I=String(i.getMinutes()).padStart(2,"0");return`${h}-${g}-${k} ${B}:${I}`}}const n=String(t);return n.length>=16?n.slice(0,16):n}function Ut(){const t=Be.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,A.value.length>0&&(e.dept_ids=A.value.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&&te.value&&G.value==="channel"&&(e.channel_code=x.value),e}async function Ya(){const t=Ut();if(!t||!x.value)return;const e={...t,channel_code:x.value,page_no:1,page_size:1};try{const n=await ua(e),s=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null;s&&s.stats_yeji_drawer_total_performance_amount!=null&&(H.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 me(){const t=Ut();if(t){x.value&&G.value==="total"&&(H.value=null),_e.value=!0;try{const e={...t,page_no:X.value,page_size:Ze.value},n=await ua(e);pe.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],Qe.value=Number((n==null?void 0:n.count)??0),ae.value=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null,x.value&&G.value==="channel"&&ae.value&&ae.value.stats_yeji_drawer_total_performance_amount!=null&&(H.value={totalAmount:Number(ae.value.stats_yeji_drawer_total_performance_amount),totalOrderCount:Number(ae.value.stats_yeji_drawer_total_performance_order_count??0),channelAmount:Number(ae.value.stats_order_amount_performance??0),channelOrderCount:Number((n==null?void 0:n.count)??0)}),x.value&&te.value&&G.value==="total"&&await Ya()}catch(e){if(ie.isCancel(e))return;const n=e;Re.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载业务订单失败"),pe.value=[],Qe.value=0,ae.value=null}finally{_e.value=!1}}}function Ht(t,e,n){const s=!!(x.value&&t.channel_name);G.value=s?(n==null?void 0:n.listTab)??"channel":"channel",H.value=null,Be.value={mode:"dept",deptId:e.dept_id,deptName:e.dept_name,start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(i=>i.dept_id).filter(i=>typeof i=="number"&&i>0)},Fe.value=`业务订单 · ${e.dept_name}`,Ee.value=`创建时间:${t.start_date} ~ ${t.end_date} · 与「合计业绩 / 接诊诊单」同口径:订单创建人人事部门 ∈ 本部门子树 · 不含履约 4/9/10`,X.value=1,te.value=!0,me()}function Ua(t,e,n){const s=!!(x.value&&t.channel_name);G.value=s?n:"channel",H.value=null,Be.value={mode:"dept",deptId:e,deptName:"当前展示合计",start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(i=>i.dept_id).filter(i=>typeof i=="number"&&i>0)},Fe.value="业务订单 · 当前展示合计",Ee.value=`创建时间:${t.start_date} ~ ${t.end_date} · 已选展示部门 1 个根节点(含其下全部展示行)· 不含履约 4/9/10`,X.value=1,te.value=!0,me()}function gt(t,e,n){return!(ve(e)||e.dept_id<=0||n==="channel"&&!t.channel_name)}function wt(t,e){return!(A.value.length!==1||e==="channel"&&!t.channel_name)}function Wt(t,e,n){if(!gt(t,e,n))return;Ht(t,e,{listTab:n==="total"?"total":"channel"})}function qt(t,e){if(!wt(t,e))return;const n=A.value[0];if(!n)return;Ua(t,n,e==="total"?"total":"channel")}function Ha(t,e,n){G.value="channel",H.value=null,Be.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n},Fe.value=`业务订单 · ${t.name}`,Ee.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与排行榜诊金同口径)· 不含履约 4/9/10`,X.value=1,te.value=!0,me()}function kt(t,e,n,s){G.value="channel",H.value=null,Be.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n,erCenterRevisitSlot:s};const i=s===0?"复诊合计":qe(s);Fe.value=`业务订单 · ${t.name} · ${i}`,Ee.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与部门表 / 排行榜复诊同口径)· 仅二中心复诊口径 · ${i} · 不含履约 4/9/10`,X.value=1,te.value=!0,me()}function Wa(t){if(!t||t.admin_id<=0||!N.value||Number(t.revisit_count??0)<=0)return;const{start_date:e,end_date:n}=N.value;kt({admin_id:t.admin_id,name:t.name},e,n,0)}function qa(t,e){if(!t||t.admin_id<=0||!N.value||ee(t,e)<=0)return;const{start_date:n,end_date:s}=N.value;kt({admin_id:t.admin_id,name:t.name},n,s,e)}function Ga(){X.value=1,me()}function Ja(t){X.value=t,me()}function Ka(t){Ze.value=t,X.value=1,me()}function ve(t){return t.dept_id<=0&&t.dept_name==="未归属中心"}function Xa(t,e){e.dept_id<=0||ve(e)||Number(e.revisit_count??0)<=0||Jt(t,e,0)}function Qa(t,e,n){e.dept_id<=0||ve(e)||ee(e,n)<=0||Jt(t,e,n)}function Gt(t){const e=zt.value;!e||Number(t.order_count)<=0||kt({admin_id:t.admin_id,name:t.name},e.start,e.end,e.revisitSlot)}async function Jt(t,e,n){const s=n===0?"复诊合计":qe(n);Lt.value=`${e.dept_name} · ${s} · ${t.start_date} ~ ${t.end_date}`,zt.value={start:t.start_date,end:t.end_date,revisitSlot:n},Me.value="",ke.value=[],ut.value=!0,we.value=!0;try{const i={start_date:t.start_date,end_date:t.end_date,dept_id:e.dept_id,revisit_slot:n};A.value.length>0&&(i.dept_ids=A.value.join(",")),x.value&&(i.channel_code=x.value);const h=await al(i);ke.value=Array.isArray(h==null?void 0:h.rows)?h.rows:[],Me.value=typeof(h==null?void 0:h.note)=="string"?h.note:""}catch(i){if(ie.isCancel(i))return;const h=i;Re.error((h==null?void 0:h.msg)||(h==null?void 0:h.message)||"加载复诊拆解失败"),ke.value=[],Me.value=""}finally{we.value=!1}}function Kt(t){const e=[`区间:${t.start_date} ~ ${t.end_date}`];return x.value&&e.push(`渠道:${t.channel_name||x.value}`),A.value.length>0&&e.push(`已选展示部门 ${A.value.length} 个`),e.join(" · ")}async function Za(t){Dt.value=Kt(t),Oe.value="",ge.value=[],dt.value=!0,be.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date};A.value.length>0&&(e.dept_ids=A.value.join(",")),x.value&&(e.channel_code=x.value);const n=await ll(e);ge.value=Array.isArray(n==null?void 0:n.rows)?n.rows:[],Oe.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(ie.isCancel(e))return;const n=e;Re.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载未归属拆解失败"),ge.value=[],Oe.value=""}finally{be.value=!1}}function en(t,e,n){n.dept_id<=0||Number(n.lead_count)<=0||(t.stopPropagation(),tn(e,n))}async function jt(){const t=At.value;if(!t)return;const{tb:e,row:n}=t;de.value=!0;try{const s={start_date:e.start_date,end_date:e.end_date,dept_id:n.dept_id,page:Ve.value,page_size:Ge.value};A.value.length>0&&(s.dept_ids=A.value.join(",")),x.value&&(s.channel_code=x.value);const i=await ol(s);je.value=Array.isArray(i==null?void 0:i.lists)?i.lists:[],Te.value=Number((i==null?void 0:i.count)??0),Ie.value=typeof(i==null?void 0:i.note)=="string"?i.note:""}catch(s){if(ie.isCancel(s))return;const i=s;Re.error((i==null?void 0:i.msg)||(i==null?void 0:i.message)||"加载进线明细失败"),je.value=[],Te.value=0,Ie.value=""}finally{de.value=!1}}async function tn(t,e){At.value={tb:t,row:e},$t.value=`${e.dept_name} · ${Kt(t)}`,Ie.value="",je.value=[],Te.value=0,Ve.value=1,Ge.value=20,ct.value=!0,await jt()}function an(t){Ve.value=t,jt()}function nn(t){Ge.value=t,Ve.value=1,jt()}function ln(t){return(ce.value-1)*Se.value+t+1}function Xt(t){return ve(t)?!0:t.dept_id>0}async function at(){const t=pt.value;if(t){ue.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date,page:ce.value,page_size:Se.value};t.mode==="dept"?e.dept_id=t.dept_id:e.assistant_id=t.assistant_id,A.value.length>0&&(e.dept_ids=A.value.join(",")),x.value&&(e.channel_code=x.value);const n=await sl(e);se.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],Ne.value=Number((n==null?void 0:n.count)??0),xe.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(ie.isCancel(e))return;const n=e;Re.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载挂号明细失败"),se.value=[],Ne.value=0,xe.value=""}finally{ue.value=!1}}}function on(t){if(!t||t.admin_id<=0||!N.value||Number(t.appointment_count??0)<=0)return;const e=N.value;pt.value={mode:"assistant",assistant_id:t.admin_id,name:t.name,start_date:e.start_date,end_date:e.end_date},_t.value=`${t.name} · 医助 · ${e.start_date} ~ ${e.end_date}`,xe.value="",se.value=[],Ne.value=0,ce.value=1,Se.value=20,Je.value=!0,at()}function sn(t,e){!Xt(e)||Number(e.appointment_booked_count??0)<=0||(pt.value={mode:"dept",dept_id:e.dept_id,dept_name:e.dept_name,start_date:t.start_date,end_date:t.end_date},_t.value=`${e.dept_name} · ${t.start_date} ~ ${t.end_date}`,xe.value="",se.value=[],Ne.value=0,ce.value=1,Se.value=20,Je.value=!0,at())}function rn(t){ce.value=t,at()}function dn(t){Se.value=t,ce.value=1,at()}function un(t,e){if(ve(e)){Za(t);return}if(!(e.dept_id<=0)){if(Ta(e.dept_id)){A.value=[e.dept_id],ze();return}Ht(t,e)}}function cn(t){if(!t||t.admin_id<=0||!N.value)return;const{start_date:e,end_date:n}=N.value;Ha(t,e,n)}function Qt(t){const e=t.channel_name?` · ${t.channel_name}`:"";return`${t.label}${e}`}function _n(t){const e=t.rows.filter(g=>g.dept_id>0),n=e.map(g=>g.dept_name.length>10?`${g.dept_name.slice(0,10)}…`:g.dept_name),s=["#64748b","#38bdf8","#6366f1"],i=[{name:"进线",type:"bar",data:e.map(g=>g.lead_count),yAxisIndex:0,barMaxWidth:16},{name:"接诊",type:"bar",data:e.map(g=>g.consult_count),yAxisIndex:0,barMaxWidth:16},{name:"成交单",type:"bar",data:e.map(g=>g.deal_order_count),yAxisIndex:0,barMaxWidth:16},{name:"合计业绩",type:"bar",data:e.map(g=>g.performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#d97706"}}];t.channel_name&&i.push({name:`${t.channel_name}业绩`,type:"bar",data:e.map(g=>g.completed_performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#0d9488"}});const h=e.length>10;return{color:[...s,"#d97706","#0d9488"],tooltip:{trigger:"axis",axisPointer:{type:"cross"}},legend:{top:8,type:"scroll",textStyle:{fontSize:11}},grid:{left:52,right:52,top:48,bottom:h?56:28,containLabel:!1},dataZoom:h?[{type:"slider",bottom:4,start:0,end:Math.min(100,Math.ceil(12/Math.max(e.length,1)*100))}]:[],xAxis:{type:"category",data:n,axisLabel:{rotate:n.length>8?28:0,fontSize:10}},yAxis:[{type:"value",name:"数量",splitLine:{lineStyle:{type:"dashed",opacity:.55}}},{type:"value",name:"金额",splitLine:{show:!1}}],series:i}}function pn(t,e){const n=[...t.rows].sort((s,i)=>Number(i.fee_amount)-Number(s.fee_amount)).slice(0,15);return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${Number(s).toLocaleString("zh-CN")} 元`},grid:{left:8,right:20,top:12,bottom:8,containLabel:!0},xAxis:{type:"value",splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:n.map(s=>s.name.length>8?`${s.name.slice(0,8)}…`:s.name).reverse(),axisLabel:{fontSize:11}},series:[{name:"诊金",type:"bar",data:n.map(s=>Number(s.fee_amount??0)).reverse(),barMaxWidth:20,itemStyle:{borderRadius:[0,6,6,0]}}]}}function Zt(t){return t.rows.some(e=>Number(e.fee_amount)>0)}function mn(t,e){const s=[...t.rows].filter(i=>Number(i.fee_amount)>0).sort((i,h)=>Number(h.fee_amount)-Number(i.fee_amount)).slice(0,10).map(i=>({name:i.name.length>6?`${i.name.slice(0,6)}…`:i.name,value:Number(i.fee_amount)}));return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5"],tooltip:{trigger:"item",formatter:"{b}: {c} 元 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:9}},series:[{name:"诊金",type:"pie",radius:["38%","64%"],center:["50%","42%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
{d}%`,fontSize:10}}]}}function ea(t){return Number(t.total.lead_count)+Number(t.total.consult_count)+Number(t.total.deal_order_count)>0}function vn(t){const e=Number(t.total.lead_count??0),n=Number(t.total.consult_count??0),s=Number(t.total.deal_order_count??0);return{tooltip:{trigger:"item",formatter:"{b}: {c}"},color:["#2563eb","#38bdf8","#0d9488"],series:[{type:"funnel",left:"8%",width:"84%",minSize:"12%",sort:"none",gap:6,label:{show:!0,position:"inside",formatter:`{b}
{c}`,fontSize:11},data:[{value:e,name:"进线"},{value:n,name:"接诊"},{value:s,name:"成交单"}]}]}}function ta(t){return t.rows.some(e=>e.dept_id>0&&Number(e.performance_amount)>0)}function fn(t){const e=t.rows.filter(i=>i.dept_id>0&&Number(i.performance_amount)>0).sort((i,h)=>Number(h.performance_amount)-Number(i.performance_amount));if(!e.length)return{series:[{type:"pie",data:[]}]};const s=e.slice(0,10).map(i=>({name:i.dept_name.length>8?`${i.dept_name.slice(0,8)}…`:i.dept_name,value:Number(i.performance_amount)}));if(e.length>10){const i=e.slice(10).reduce((h,g)=>h+Number(g.performance_amount),0);i>0&&s.push({name:"其它",value:i})}return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}
{c} 元({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:10}},series:[{type:"pie",radius:["36%","62%"],center:["50%","44%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
diff --git a/server/public/admin/index.html b/server/public/admin/index.html
index b1f04e4d..c68b2f10 100644
--- a/server/public/admin/index.html
+++ b/server/public/admin/index.html
@@ -60,7 +60,7 @@
document.head.appendChild(link);
})();
-
+